diff --git a/.checkpackageignore b/.checkpackageignore index 405e1c5677c7..c172750ba734 100644 --- a/.checkpackageignore +++ b/.checkpackageignore @@ -1,200 +1,1570 @@ -package/alsamixergui/0001-misc-fixes.patch Sob +board/aarch64-efi/post-image.sh Shellcheck +board/amarula/vyasa/post-build.sh Shellcheck +board/andes/ae350/patches/uboot/0001-mmc-ftsdc010_mci-Support-DTS-of-ftsdc010-driver-for-.patch Upstream +board/andes/ae350/patches/uboot/0002-spl-Align-device-tree-blob-address-at-8-byte-boundar.patch Upstream +board/andes/ae350/post-build.sh Shellcheck +board/arcturus/aarch64-ucls1012a/post-build.sh Shellcheck +board/arcturus/aarch64-ucls1012a/post-image.sh Shellcheck +board/aspeed/common/post-image.sh Shellcheck +board/asus/tinker/post-build.sh Shellcheck +board/atmel/flasher.sh Shellcheck +board/beaglebone/patches/linux/0001-keep-jtag-clock-alive-for-debugger.patch Upstream +board/beaglebone/post-build.sh Shellcheck +board/beagleboneai/patches/uboot/0001-am57xx_evm-fixes.patch Upstream +board/beagleboneai/post-build.sh Shellcheck +board/beaglev/post-build.sh Shellcheck +board/beelink/gs1/post-build.sh Shellcheck +board/boundarydevices/common/post-build.sh Shellcheck +board/boundarydevices/common/post-image.sh Shellcheck +board/broadcom/northstar/post-image.sh Shellcheck +board/bsh/imx8mn-bsh-smm-s2-pro/flash.sh EmptyLastLine Shellcheck +board/bsh/imx8mn-bsh-smm-s2-pro/post-build.sh Shellcheck +board/bsh/imx8mn-bsh-smm-s2-pro/post-image.sh Shellcheck +board/bsh/imx8mn-bsh-smm-s2/flash.sh EmptyLastLine Shellcheck +board/bsh/imx8mn-bsh-smm-s2/post-build.sh Shellcheck +board/canaan/k210-soc/post-build.sh Shellcheck +board/canaan/k210-soc/rootfs_overlay/sbin/init Shellcheck +board/chromebook/elm/sign.sh Shellcheck +board/chromebook/mksd.sh Shellcheck +board/chromebook/snow/linux-4.15-dts-tpm.patch ApplyOrder Upstream +board/chromebook/snow/sign.sh Shellcheck +board/ci20/patches/uboot/0001-mips-Remove-default-endiannes.patch Upstream +board/cubietech/cubieboard2/post-image.sh Shellcheck +board/freescale/common/imx/imx8-bootloader-prepare.sh Shellcheck +board/freescale/common/imx/post-image.sh Shellcheck +board/freescale/common/mxs/post-image.sh Shellcheck +board/freescale/imx6sabre/patches/uboot/0001-mx6qsabre_common-boot-Linux-to-init-in-mfgtools-mode.patch Upstream +board/friendlyarm/nanopi-r2s/post-build.sh Shellcheck +board/hardkernel/odroidc2/post-image.sh Shellcheck +board/hardkernel/odroidc2/rootfs_overlay/etc/init.d/S09modload Shellcheck Variables +board/hardkernel/odroidxu4/post-image.sh EmptyLastLine Shellcheck +board/intel/galileo/patches/linux/0001-x86-relocs-Make-per_cpu_load_addr-static.patch Upstream +board/intel/galileo/post-build.sh Shellcheck +board/intel/galileo/rootfs_overlay/etc/init.d/S09modload Shellcheck Variables +board/kontron/bl-imx8mm/post-build.sh Shellcheck +board/kontron/pitx-imx8m/patches/uboot/2022.04/0001-tools-mkeficapsule-use-pkg-config-to-get-luuid-and-l.patch NumberedSubject Upstream +board/kontron/pitx-imx8m/post-build.sh Shellcheck +board/kontron/smarc-sal28/post-build.sh Shellcheck +board/lego/ev3/post-image.sh Shellcheck +board/lemaker/bananapro/patches/linux/0001-arch-arm-boot-dts-sun7i-a20-bananapro.dts-disable-00.patch Upstream +board/lemaker/bananapro/post-build.sh Shellcheck +board/lemaker/bananapro/post-image.sh Shellcheck +board/mender/x86_64/post-image-efi.sh ConsecutiveEmptyLines +board/minnowboard/post-build.sh Shellcheck +board/nexbox/a95x/post-build.sh Shellcheck +board/nexbox/a95x/post-image.sh Shellcheck +board/octavo/osd32mp1-brk/patches/uboot/0001-Add-OSD32MP1-BRK-device-tree-support.patch NumberedSubject Upstream +board/octavo/osd32mp1-brk/patches/uboot/0002-Add-OSD32MP1-BRK-build-config.patch NumberedSubject Upstream +board/octavo/osd32mp1-red/patches/uboot/0001-Add-OSD32MP1-RED-Device-Tree-support.patch NumberedSubject Upstream +board/octavo/osd32mp1-red/patches/uboot/0002-configs-stm32mp15_trusted_defconfig-disable-environm.patch NumberedSubject Upstream +board/olimex/a13_olinuxino/post-build.sh Shellcheck +board/olimex/a20_olinuxino/post-build.sh Shellcheck +board/olimex/a33_olinuxino/post-build.sh Shellcheck +board/olpc/post-build.sh Shellcheck +board/orangepi/common/post-build.sh Shellcheck +board/orangepi/orangepi-lite2/post-build.sh Shellcheck +board/orangepi/orangepi-one-plus/post-build.sh Shellcheck +board/orangepi/orangepi-zero/patches/linux/0001-ARM-dts-orange-pi-zero-interrupt-triggering-xr819.patch Upstream +board/orangepi/orangepi-zero/patches/linux/0002-ARM-dts-orange-pi-zero-enable-spi-nor.patch Upstream +board/orangepi/orangepi-zero/patches/linux/0003-ARM-dts-orange-pi-zero-enable-spidev.patch Upstream +board/orangepi/orangepi-zero/patches/linux/0004-ARM-dts-orange-pi-zero-enable-uart.patch Upstream +board/pine64/rock64/patches/uboot/0001-Makefile-rk3328-needs-itb-image-to-boot-properly.patch Upstream +board/pine64/rock64/post-build.sh Shellcheck +board/pine64/rockpro64/post-build.sh Shellcheck +board/qemu/aarch64-sbsa/assemble-flash-images Shellcheck +board/qemu/microblazebe-mmu/0001-net-xilinx-xemaclite-add-2.00.b-revision.patch Upstream +board/qemu/microblazeel-mmu/0001-net-xilinx-xemaclite-add-2.00.b-revision.patch Upstream +board/qemu/x86/post-build.sh Shellcheck +board/qemu/x86_64/post-build.sh Shellcheck +board/qmtech/zynq/patches/linux/0001-DTS-for-QMTech-Zynq-starter-kit.patch Upstream +board/radxa/rockpi-n8/post-build.sh Shellcheck +board/raspberrypi/post-build.sh Shellcheck +board/raspberrypi/post-image.sh Shellcheck +board/roseapplepi/patches/uboot/0001-compiler-.h-sync-include-linux-compiler-.h-with-Linu.patch Upstream +board/roseapplepi/post-build.sh Shellcheck +board/seeed/stm32mp157c-odyssey/patches/linux/0001-ARM-dts-stm32-fix-stm32mp157c-odyssey-card-detect.patch Upstream +board/sheevaplug/patches/uboot/0001-Remove-redundant-YYLOC-global-declaration.patch Upstream +board/sifive/hifive-unleashed/post-build.sh Shellcheck +board/solidrun/clearfog/post-build.sh Shellcheck +board/solidrun/macchiatobin/post-build-mainline.sh Shellcheck +board/solidrun/macchiatobin/post-build.sh Shellcheck +board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh Shellcheck +board/stmicroelectronics/common/stm32mp157/post-image.sh Shellcheck +board/stmicroelectronics/stm32f429-disco/flash.sh Shellcheck +board/stmicroelectronics/stm32f469-disco/flash_sd.sh Shellcheck +board/stmicroelectronics/stm32f469-disco/flash_xip.sh Shellcheck +board/stmicroelectronics/stm32f469-disco/post-build.sh Shellcheck +board/synopsys/axs10x/post-build.sh Shellcheck +board/technologic/ts4900/post-image.sh Shellcheck +board/toradex/apalis-imx6/post-image.sh Shellcheck +board/udoo/common/post-build.sh Shellcheck +board/udoo/mx6qdl/patches/linux/0000-udoo-disable-usbh1.patch Upstream +boot/afboot-stm32/0003-Makefile-disable-stack-protector.patch Upstream +boot/at91bootstrap/0001-eabi-fix.patch Upstream +boot/at91bootstrap/0002-gcc-4.6.x-ldscript-fix.patch Upstream +boot/at91bootstrap/0003-u-boot-relocation-fix.patch Upstream +boot/at91dataflashboot/0001-do-not-install.patch Upstream +boot/at91dataflashboot/0002-eabi-fixes.patch Upstream +boot/grub2/0001-Makefile-Make-grub_fstest.pp-depend-on-config-util.h.patch Upstream +boot/optee-os/3.13.0/0001-core-zlib-fix-build-warning-when-_LFS64_LARGEFILE-is.patch Upstream +boot/syslinux/0001-bios-Fix-alignment-change-with-gcc-5.patch Upstream +boot/syslinux/0002-Disable-PIE-to-avoid-FTBFS-on-amd64.patch Upstream +boot/syslinux/0003-memdisk-Force-ld-output-format-to-32-bits.patch Upstream +boot/syslinux/0004-utils-Use-the-host-toolchain-to-build.patch Upstream +boot/syslinux/0005-lzo-Use-the-host-toolchain-for-prepcore.patch Upstream +boot/syslinux/0006-The-VPrint-definition-is-now-part-of-the-exports-of-.patch Upstream +boot/syslinux/0007-Update-the-longjump-calls-to-fit-the-new-declaration.patch Upstream +boot/syslinux/0008-efi-wrapper-build-it-with-the-host-toolchain.patch Upstream +boot/syslinux/0011-extlinux-Use-the-host-toolchain-to-build.patch Upstream +boot/syslinux/0012-pull-in-sys-sysmacros-h-for-major-minor-makedev.patch Upstream +boot/syslinux/0013-Fix-build-with-gnu-efi-version-3.0.9.patch Upstream +boot/syslinux/0014-Fix-build-with-binutils-note-gnu-property-section.patch Upstream +boot/syslinux/0016-Workaround-multiple-definition-of-symbol-errors.patch Upstream +boot/syslinux/0017-Replace-builtin-strlen-that-appears-to-get-optimized.patch Upstream +linux/5.10.162-cip24-rt10/0001-arch-microblaze-mm-init.c-fix-build.patch Upstream +package/18xx-ti-utils/0001-plt.h-fix-build-with-gcc-10.patch Upstream +package/4th/0001-avoid-regen-during-install.patch Upstream +package/acl/0001-Build-with-old-GCC-versions.patch Upstream +package/acpid/0001-dont-use-isfdtype.patch Upstream +package/alchemy/0001-toolchains-remove-hash-style-management.patch Upstream +package/alsamixergui/0001-misc-fixes.patch Sob Upstream +package/alsamixergui/0002-configure-fix-detection-of-fltk-libs.patch Upstream +package/am335x-pru-package/0001-install-does-not-build.patch Upstream +package/am33x-cm3/0001-fix-makefile.patch Upstream +package/am33x-cm3/0002-Makefile-unconditionally-disable-SSP.patch Upstream +package/am33x-cm3/0003-Makefile-unconditionally-disable-PIE.patch Upstream +package/am33x-cm3/0004-Makefile-add-fno-builtin.patch Upstream package/am33x-cm3/S93-am335x-pm-firmware-load Variables -package/android-tools/0008-Include-sysmacros.h-to-compile-with-glibc-2.28.patch Sob +package/android-tools/0001-Fix-makefiles-for-out-of-tree-build.patch Upstream +package/android-tools/0002-Fix-adbd-for-non-Ubuntu-systems.patch Upstream +package/android-tools/0003-Fix-build-issue-with-uclibc.patch Upstream +package/android-tools/0004-Fix-build-issue-with-musl.patch Upstream +package/android-tools/0005-Use-pkgconf-to-get-libs-deps.patch Upstream +package/android-tools/0006-fix-big-endian-build.patch Upstream +package/android-tools/0007-include-cdefs-h-when-needed.patch Upstream +package/android-tools/0008-Include-sysmacros.h-to-compile-with-glibc-2.28.patch Sob Upstream +package/android-tools/0009-Fix-makefiles-for-out-of-tree-ext4_utils-build.patch Upstream +package/android-tools/0010-adb-added-patch-for-openssl-1.1.0-compatibility.patch Upstream +package/aoetools/0001-Change-shell-script-interpreter-from-bin-bash-to-bin.patch Upstream +package/apache/0001-cross-compile.patch Upstream +package/apache/0002-nios2_is_not_os2.patch Upstream package/apache/S50apache Indent Shellcheck Variables +package/apitrace/0001-thirdparty-libbacktrace-backtrace-h-include-config.h.patch Upstream +package/apitrace/0002-gltrace-Avoid-__libc_dlsym-and-__libc_dlopen_mode-on-GLIBC-2-34.patch Upstream +package/apr-util/0001-remove-checkapr.patch Upstream +package/apr/0001-sys-param-h.patch Upstream +package/apr/0002-Revert-Backport-r1872164.-Fix-the-name-of-libtool-wh.patch Upstream +package/apr/0003-Revert-Add-the-ability-to-cross-compile-APR.patch Upstream +package/arptables/0001-Fix-musl-build-issue.patch Upstream +package/arptables/0002-libarptc-libarptc_incl.c-fix-build-with-O0.patch Upstream +package/asterisk/0001-sounds-do-not-download-and-check-sha1s.patch Upstream +package/asterisk/0002-configure-fix-detection-of-libcrypt.patch Upstream +package/asterisk/0003-build-ensure-target-directory-for-modules-exists.patch Upstream +package/asterisk/0004-install-samples-need-the-data-files.patch Upstream +package/asterisk/0005-configure-fix-detection-of-re-entrant-resolver-funct.patch Upstream +package/asterisk/0006-main-iostream.c-fix-build-with-libressl.patch Upstream +package/at/0001-Makefile.in-fix-make-install-for-non-root-don-t-stri.patch Upstream package/at/S99at Indent Variables +package/atest/0001-seq.h-fix-build-with-gcc-10.patch Upstream +package/attr/0001-build-with-older-GCCs.patch Upstream package/audit/S02auditd Shellcheck Variables +package/aufs-util/0001-remove-user-settings.patch Upstream +package/aufs-util/0002-no-check-ver.patch Upstream +package/aufs-util/0003-no-strip-lib.patch Upstream +package/aumix/0001-fix-incorrect-makefile-am.patch Upstream +package/autoconf/0001-dont-add-dirty-to-version.patch Upstream +package/automake/0001-noman.patch Upstream +package/avahi/0001-Fix-NULL-pointer-crashes-from-175.patch Upstream package/avahi/S05avahi-setup.sh Indent Variables package/avahi/S50avahi-daemon Indent Variables package/babeld/S50babeld Indent Shellcheck Variables +package/babeltrace2/0001-configure-simplify-warning-flags-detection.patch Upstream +package/bandwidthd/0001-src-bandwidthd.h-fix-build-with-gcc-10.patch Upstream +package/bash/0001-input.h-add-missing-include-on-stdio.h.patch Upstream +package/bash/0002-parse.y-fix-compilation-for-non-multibyte-builds.patch Upstream +package/bash/0003-configure-invert-condition-for-strtoimax-builtin.patch Upstream +package/bayer2rgb-neon/0001-add-some-_always_inline_-annotations.patch Upstream +package/bc/0001-bc-use-MAKEINFO-variable-for-docs.patch Upstream +package/bc/0002-notice-read-and-write-errors-on-input-and-output.patch Upstream +package/bc/0003-dc-fix-exit-code-of-q-command.patch Upstream +package/bc/0004-no-gen-libmath.patch Upstream +package/bcache-tools/0001-Don-t-inline-crc64-for-gcc-5-compatability.patch Upstream +package/bctoolbox/0001-Fix-Libs.private-flags-for-mbedtls.patch Upstream +package/bcusdk/0001-fd_set-requires-inclusion-of-sys-select.h.patch Upstream +package/bcusdk/0002-eibd-fix-endless-recursion-when-using-USB-backends.patch Upstream +package/bearssl/0001-Fix-missing-objdir-dependency.patch Upstream +package/beecrypt/0001-cppglue.cxx-cplusplus-only.patch Upstream +package/beecrypt/0002-build-system.patch Upstream +package/beecrypt/0003-don-t-check-for-cplusplus-compiler.patch Upstream +package/benejson/0001-c-std.patch Upstream +package/benejson/0002-Use-print-as-a-function-for-Py3-compatibility.patch Upstream +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/bluez5_utils/S40bluetooth NotExecutable 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/binutils/arc-2020.09-release/0001-poison-system-directories.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 +package/bmx7/0002-Fix-linking-error.patch Upstream +package/bmx7/0003-Reorder-includes-to-avoid-ethhdr-collision.patch Upstream package/boinc/S99boinc-client Indent Shellcheck Variables +package/botan/0001-Add-superh-alias-needed-by-Debian.patch Upstream +package/botan/0002-src-build-data-arch-superh.txt-add-sh4-eb-aeb.patch Upstream package/brickd/S70brickd Indent Shellcheck Variables +package/bridge-utils/0001-fix-build-on-musl.patch Upstream +package/brltty/0001-Fix-linking-error-on-mips64el.patch Upstream package/brltty/S10brltty Indent Shellcheck Variables +package/bsdiff/0001-Add-missing-header-for-u_char.patch Upstream +package/bustle/0001-Makefile-fix-pcap-config-call.patch Upstream +package/busybox/0001-networking-libiproute-use-linux-if_packet.h-instead-.patch Upstream +package/busybox/0002-Makefile.flags-strip-non-l-arguments-returned-by-pkg.patch Upstream +package/busybox/0003-libbb-sockaddr2str-ensure-only-printable-characters-.patch Upstream +package/busybox/0004-nslookup-sanitize-all-printed-strings-with-printable.patch Upstream package/busybox/S02sysctl Variables package/busybox/S10mdev ConsecutiveEmptyLines Indent Shellcheck package/busybox/S15watchdog Indent Variables package/busybox/S50telnet Indent Shellcheck Variables package/busybox/udhcpc.script Shellcheck +package/bzip2/0001-build-objects-twice.patch Upstream +package/bzip2/0002-improve-build-system.patch Upstream +package/c-icap/0001-Required-fixes-to-compile-and-run-under-cygwin.patch Upstream package/c-icap/S96cicap Indent Shellcheck Variables +package/ca-certificates/0001-mozilla-certdata2pem.py-make-cryptography-module-opt.patch Upstream +package/cache-calibrator/0001-Fix-conflicting-round-function.patch Upstream +package/cairo/0001-fix-nofork-build.patch Upstream +package/cairo/0002-ft-Use-FT_Done_MM_Var-instead-of-free-when-available-in-cairo_ft_apply_variation.patch Upstream +package/cairo/0003-_arc_max_angle_for_tolerance_normalized-fix-infinite.patch Upstream +package/cairo/0004-Fix-mask-usage-in-image-compositor.patch Upstream +package/caps/0001-Fix-stdint-types-with-musl.patch Upstream +package/catatonit/0002-fix-build-with-kernel-5.9.patch Upstream +package/cdrkit/0001-no-rcmd.patch Upstream +package/cdrkit/0002-define-__THROW-to-avoid-build-issue-with-musl.patch Upstream +package/cdrkit/0003-Add-extern-to-char-outfile-declaration-to-fix-build-.patch Upstream package/cfm/S65cfm Indent Variables +package/cgic/0001-prepare_makefile.patch Upstream +package/cgic/0002-file_enhancements.patch Upstream +package/cgic/0003-restore-cgiFormFileGetTempfileName.patch Upstream package/cgroupfs-mount/S30cgroupfs Indent Shellcheck Variables +package/chipmunk/0001-Fix-build-failure-on-musl.patch Upstream +package/chocolate-doom/0001-Remove-redundant-demoextend-definition.patch Upstream package/chrony/S49chrony Indent Shellcheck Variables +package/cmake/0001-rename-cmake-rootfile.patch Upstream +package/cmocka/0001-Don-t-redefine-uintptr_t.patch Upstream +package/collectd/0001-src-netlink.c-remove-REG_NOERROR.patch Upstream package/connman/S45connman Variables +package/copas/0001-Do-not-load-coxpcall-for-LuaJIT.patch Upstream package/coremark-pro/coremark-pro.sh.in Shellcheck -package/curlftpfs/0001-fix-CURLOPT_INFILESIZE.patch Sob -package/curlftpfs/0002-free_ftpfs_file-memleak-fix.patch Sob -package/curlftpfs/0003-nocache-memleak-fix.patch Sob +package/cppdb/0001-mysql-library-suffix.patch Upstream +package/cpulimit/0001-Fix-crash-and-compiler-warnings.patch Upstream +package/cpulimit/0002-Remove-sys-sysctl.h-and-add-missing-libgen.h-include.patch Upstream +package/cpulimit/0003-Fix-an-infrequent-crash.patch Upstream +package/cpulimit/0004-Remove-procfs.h-inclusion.patch Upstream +package/crda/0001-crda-support-python-3-in-utils-key2pub.py.patch Upstream +package/crda/0002-drop-ldconfig-call.patch Upstream +package/crda/0003-drop-werror.patch Upstream +package/ctorrent/0001-fix-musl-build.patch Upstream +package/cups/0001-Remove-man-from-BUILDDIRS-in-configure.patch Upstream +package/cups/0002-Do-not-use-genstrings.patch Upstream +package/cups/0003-Sanitize-the-installation-process.patch Upstream +package/cups/0004-Remove-PIE-flags-from-the-build.patch Upstream +package/curlftpfs/0001-fix-CURLOPT_INFILESIZE.patch Sob Upstream +package/curlftpfs/0002-free_ftpfs_file-memleak-fix.patch Sob Upstream +package/curlftpfs/0003-nocache-memleak-fix.patch Sob Upstream +package/curlftpfs/0004-fix-musl-build-off-t.patch Upstream +package/cutelyst/0001-server-CMakeLists.txt-don-t-override-CMAKE_EXE_LINKE.patch Upstream +package/cwiid/0001-wmdemo-fix-linking-by-adding-the-missing-lbluetooth-.patch Upstream +package/cwiid/0002-configure-make-wmgui-build-optional.patch Upstream +package/dahdi-linux/0001-drivers-dahdi-Kbuild-fix-HOTPLUG_FIRMWARE-definition.patch Upstream +package/dahdi-linux/0002-fix-build-with-32-bits-kernel.patch Upstream +package/dahdi-linux/0003-Fixed-compilation-issues-on-linux-kernel-5-18-0.patch Upstream +package/dahdi-linux/0004-next-fix-kernel-6-1-build.patch Upstream +package/dahdi-tools/0001-no-build-docs.patch Upstream +package/dahdi-tools/0002-no-perl-manpages.patch Upstream +package/dante/0001-fix-sparc-compile.patch Upstream +package/dante/0002-osdep-m4-Remove-getaddrinfo-too-low-checks.patch Upstream package/dante/S50dante Indent Shellcheck Variables +package/daq/0001-Fix-build-against-the-musl-C-library.patch Upstream +package/daq/0002-parallel-grammar.patch Upstream package/darkhttpd/S50darkhttpd Indent Shellcheck Variables +package/davfs2/0001-src-Makefile.am-do-not-hardcode-fstack-protector-str.patch Upstream +package/dbus-cpp/0001-gcc4.7.patch Upstream +package/dbus-cpp/0002-cross-compile-tools.patch Upstream +package/dbus-cpp/0003-src-pipe.c-fix-build-error-with-gcc-7.x.patch Upstream package/dbus/S30dbus Indent Shellcheck TrailingSpace Variables +package/dc3dd/0001-no_man.patch Upstream +package/dc3dd/0002-fix-autoreconf.patch Upstream +package/dc3dd/0003-fix-for-glibc-2.28.patch Upstream +package/dcron/0001-main.c-add-newline-to-logfile-openning-error-message.patch Upstream package/dcron/S90dcron Variables package/dhcp/S80dhcp-relay Shellcheck Variables package/dhcp/S80dhcp-server Shellcheck Variables package/dhcp/dhclient-script Shellcheck TrailingSpace package/dhcpcd/S41dhcpcd Indent Variables -package/dhrystone/0001-cmdline-nruns.patch Sob -package/dhrystone/0002-HZ.patch Sob -package/dhrystone/0003-exit.patch Sob -package/dhrystone/0004-headers.patch Sob -package/dhrystone/0005-prototypes.patch Sob -package/directfb-examples/0001-remove-bzero.patch Sob +package/dhcpdump/0001-use-non-bsd-structures.patch Upstream +package/dhrystone/0001-cmdline-nruns.patch Sob Upstream +package/dhrystone/0002-HZ.patch Sob Upstream +package/dhrystone/0003-exit.patch Sob Upstream +package/dhrystone/0004-headers.patch Sob Upstream +package/dhrystone/0005-prototypes.patch Sob Upstream +package/dht/0001-cmake.patch Upstream +package/dillo/0001-usr-local-include.patch Upstream +package/dillo/0002-Fix-openssl-detection.patch Upstream +package/dillo/0004-fix-build-with-gcc-10.patch Upstream +package/directfb-examples/0001-remove-bzero.patch Sob Upstream +package/directfb/0001-fix-missing-davinci-voodoo-header.patch Upstream +package/directfb/0002-imlib2-config.patch Upstream +package/directfb/0003-setregion-lock.patch Upstream +package/directfb/0004-use-gcc-link.patch Upstream +package/directfb/0005-add-missing-idivine-header.patch Upstream +package/directfb/0006-fix-client-gfx_state-initialisation.patch Upstream +package/dmalloc/0001-configure-fix-build-on-mips.patch Upstream +package/dmalloc/0003-configure-allow-overriding-some-tests.patch Upstream +package/dmalloc/0004-Makefile-use-the-configure-detected-or-user-supplied.patch Upstream +package/dmalloc/0005-configure-use-LD-instead-of-hard-coding-ld.patch Upstream +package/dmraid/0001-fix-compilation-under-musl.patch Upstream package/dmraid/S20dmraid Variables -package/dnsmasq/S80dnsmasq Shellcheck Variables +package/dnsmasq/S80dnsmasq Shellcheck package/docker-engine/S60dockerd Indent Shellcheck Variables +package/docopt-cpp/0001-only-build-one-target-use-BUILD_SHARED_LIBS-where-appropriate.patch Upstream package/domoticz/S99domoticz Shellcheck +package/dovecot/0001-auth-Fix-handling-passdbs-with-identical-driver-args.patch Upstream +package/dracut/0001-dracut.sh-don-t-unset-LD_PRELOAD.patch Upstream package/dracut/merged-usr-module-setup.sh Shellcheck package/dropbear/S50dropbear Indent Shellcheck Variables +package/dt/0001-adjust-os-symlink.patch Upstream +package/dt/0002-dt-default-source-define.patch Upstream +package/dtc/0001-Fix-include-guards-for-older-kernel-u-boot-sources.patch Upstream +package/duma/0001-fix-cross-compilation.patch Upstream +package/duma/0002-no-tests.patch Upstream +package/duma/0003-fix-C++14.patch Upstream +package/duma/0004-Fix-build-with-latest-glibc.patch Upstream +package/dvb-apps/0001-Fix-generate-keynames.patch Upstream +package/dvb-apps/0002-Fix-compiler-warning-flags.patch Upstream +package/dvb-apps/0003-handle-static-shared-only-build.patch Upstream +package/dvb-apps/0004-Makefile-remove-test.patch Upstream +package/dvb-apps/0005-utils-fix-build-with-kernel-headers-4.14.patch Upstream +package/dvb-apps/0006-fix-glibc-2.31.patch Upstream +package/dvblast/0001-missing-lm.patch Upstream +package/dvblast/0002-fix-int-types.patch Upstream +package/dvbsnoop/0001-musl-types-h.patch Upstream +package/dvdrw-tools/0001-limits.h.patch Upstream +package/dvdrw-tools/0002-Include-sysmacros.h-to-compile-with-newer-gcc.patch Upstream +package/earlyoom/0001-main.c-fix-build-with-kernel-4.3.patch Upstream package/earlyoom/S02earlyoom Indent Shellcheck +package/ebtables/0001-replace-ebtables-save-perl-script-with-bash.patch Upstream +package/ebtables/0002-ebtables.h-restore-KERNEL_64_USERSPACE_32-checks.patch Upstream +package/ebtables/0003-configure.ac-add-option-enable-kernel-64-userland-32.patch Upstream +package/ecryptfs-utils/0001-musl.patch Upstream +package/ecryptfs-utils/0002-openssl110.patch Upstream +package/ecryptfs-utils/0003-fix-parallel-build-issue.patch Upstream +package/efivar/0001-Allow-build-with-uClibc.patch Upstream +package/efivar/0002-gcc.specs-drop-Werror.patch Upstream +package/efivar/0003-efivar-isolate-makeguids-host-tool-build.patch Upstream +package/efivar/0004-efisecdb-fix-build-with-musl-libc.patch Upstream +package/efl/0001-ecore_evas-engines-drm-meson.build-use-gl_deps-as-en.patch Upstream +package/efl/0002-ecore_evas-engines-drm-meson.build-fix-gl_drm-includ.patch Upstream +package/efl/0003-ecore_fb-fix-build-with-tslib.patch Upstream +package/eigen/0001-Adds-new-CMake-Options-for-controlling-build-components.patch Upstream +package/ejabberd/0001-Makefile.in-do-not-download-or-compile-dependencies.patch Upstream +package/ejabberd/0002-fix-ejabberdctl.patch Upstream +package/ejabberd/0003-correct-includes.patch Upstream package/ejabberd/S50ejabberd Indent Shellcheck Variables package/ejabberd/check-erlang-lib Shellcheck +package/elftosb/0001-fixes-includes.patch Upstream +package/elftosb/0002-force-cxx-compiler.patch Upstream +package/elfutils/0001-Add-a-enable-disable-progs-configure-option.patch Upstream +package/elfutils/0002-Really-make-Werror-conditional-to-BUILD_WERROR.patch Upstream +package/empty/0001-respect-LDFLAGS.patch Upstream +package/erlang-p1-sip/0001-correct-include.patch Upstream +package/erlang-p1-xmpp/0001-fix-includes.patch Upstream +package/erlang-rebar/0001-src-rebar_port_compiler-add-fPIC-to-LDFLAGS-by-defau.patch Upstream +package/espeak/0001-Fix-build-of-shared-library-on-architectures-needing.patch Upstream +package/espeak/0002-tr_languages-cast-string_ordinal-init-values.patch Upstream package/eudev/S10udev ConsecutiveEmptyLines Indent Shellcheck Variables +package/evemu/0001-Include-limits.h-for-PATH_MAX.patch Upstream +package/evemu/0002-evemu-Update-struct-input_event.patch Upstream +package/evemu/0003-src-evemu.c-fix-build-with-kernels-4.16.patch Upstream +package/evemu/0004-src-evemu.c-fix-build-with-kernels-4.16.patch Upstream +package/exim/0001-Build-buildconfig-for-the-host.patch Upstream +package/exim/0002-Don-t-make-backup-copies-of-installed-files.patch Upstream +package/exim/0003-Skip-version-check-and-symlink-installation.patch Upstream +package/exim/0004-exim_lock-fix-lstat-related-build-errors.patch Upstream +package/exim/0005-sieve-fix-build-errors.patch Upstream +package/exim/0006-Fix-regex-n-use-after-free.-Bug-2915.patch Upstream +package/exim/0007-Fix-non-WITH_CONTENT_SCAN-build.patch Upstream +package/exim/0008-Fix-non-WITH_CONTENT_SCAN-build-2.patch Upstream +package/exim/0009-Fix-non-WITH_CONTENT_SCAN-build-3.patch Upstream package/exim/S86exim Indent Variables +package/expect/0001-enable-cross-compilation.patch Upstream +package/expect/0002-allow-tcl-build-directory.patch Upstream +package/faifa/0001-sha2.c-explicitly-include-endian.h-for-BYTE_ORDER-ma.patch Upstream +package/faifa/0002-hpav_cfg.c-do-not-include-linux-if_ether.h-for-musl-.patch Upstream +package/faifa/0003-Makefile.in-fix-asbolute-symlink-of-libfaifa.so.patch Upstream package/fail2ban/S60fail2ban Shellcheck Variables package/fakedate/fakedate Shellcheck -package/fbv/0001-cross.patch Sob -package/fbv/0002-fix-24bpp-support-on-big-endian.patch Sob -package/fbv/0005-include.patch Sob +package/falcosecurity-libs/0001-cmake-Permit-setting-GRPC_CPP_PLUGIN.patch Upstream +package/fbgrab/0001-fix-static-build.patch Upstream +package/fbset/0001-Fix-musl-compile.patch Upstream +package/fbterm/0001-fbio.cpp-improxy.cpp-fbterm.cpp-fix-musl-compile.patch Upstream +package/fbterm/0002-mouse.cpp-fix-musl-compile.patch Upstream +package/fbterm/0003-C++11-compliance.patch Upstream +package/fbterm/0004-iconv.patch Upstream +package/fbv/0001-cross.patch Sob Upstream +package/fbv/0002-fix-24bpp-support-on-big-endian.patch Sob Upstream +package/fbv/0003-fix-bgr555.patch Upstream +package/fbv/0004-giflib.patch Upstream +package/fbv/0005-include.patch Sob Upstream +package/fbv/0006-libpng15.patch Upstream +package/fbv/0007-gif.c-fic-build-with-gcc-10.patch Upstream +package/fcgiwrap/0001-use-LIBS-from-configure.patch Upstream +package/fcgiwrap/0002-link-with-libsystemd-instead-of-libsystemd-daemon.patch Upstream +package/ffmpeg/0001-swscale-x86-yuv2rgb-Fix-build-without-SSSE3.patch Upstream +package/ffmpeg/0002-avcodec-vaapi_h264-skip-decode-if-pic-has-no-slices.patch Upstream +package/ffmpeg/0003-libavutil-Fix-mips-build.patch Upstream +package/ffmpeg/0004-configure-add-extralibs-to-extralibs_xxx.patch Upstream +package/ficl/0001-fix-Makefile.patch Upstream +package/ficl/0002-Makefile.linux-pass-LDFLAGS.patch Upstream +package/flatbuffers/0001-include-flatbuffers-base.h-fix-build-on-musl.patch Upstream +package/flex/0001-build-AC_USE_SYSTEM_EXTENSIONS-in-configure.ac.patch Upstream +package/flex/0002-build-make-it-possible-to-disable-the-build-of-the-f.patch Upstream +package/flex/0003-build-make-it-possible-to-disable-the-build-of-the-d.patch Upstream +package/flite/0001-fix-alsa-static.patch Upstream +package/fltk/0001-disable-tests.patch Upstream +package/fluxbox/0001-fixes-bug-1138.patch Upstream +package/freeradius-client/0001-fix-for-nettle.patch Upstream +package/freerdp/0001-Fix-variable-declaration-in-loop.patch Upstream +package/freerdp/0002-Fixed-variable-declaration-in-loop.patch Upstream +package/freerdp/0003-winpr-include-winpr-file.h-fix-build-on-uclibc.patch Upstream +package/freescale-imx/imx-kobs/0001-Fix-musl-build.patch Upstream +package/freescale-imx/imx-kobs/0002-Fix-build-for-recent-toolchains.patch Upstream package/freescale-imx/imx-uuc/S80imx-uuc Indent Shellcheck Variables +package/freescale-imx/imx-vpu-hantro/0001-Fix-ion.h-header-inclusion-to-be-standard.patch Upstream +package/freescale-imx/imx-vpu-hantro/0002-Fix-build-with-uclibc-toolchain.patch Upstream +package/freescale-imx/imx-vpu-hantro/0003-Fix-Linux-kernel-version-header.patch Upstream +package/freeswitch/0001-libs-srtp-crypto-hash-hmac_ossl.c-fix-build-with-lib.patch Upstream package/frr/S50frr Shellcheck -package/gamin/0002-no-const-return.patch Sob -package/gcc/arc-2020.09-release/0002-libsanitizer-Remove-cyclades-from-libsanitizer.patch Sob -package/genromfs/0001-build-system.patch Sob +package/fstrcmp/0001-disable-rpath.patch Upstream +package/ftop/0001-overflow.patch Upstream +package/fwts/0001-build-do-not-use-Werror.patch Upstream +package/fxdiv/0001-CMake-don-t-enable-CXX-unless-building-tests-benchma.patch Upstream +package/fxload/0001-fix-static-build.patch Upstream +package/gamin/0001-no-abstract-sockets.patch Upstream +package/gamin/0002-no-const-return.patch Sob Upstream +package/gamin/0003-fix-missing-PTHREAD_MUTEX_RECURSIVE_NP.patch Upstream +package/gcc/11.4.0/0001-or1k-Add-mcmodel-option-to-handle-large-GOTs.patch Upstream +package/gcc/11.4.0/0004-disable-split-stack-for-non-thread-builds.patch Upstream +package/gcc/12.3.0/0001-disable-split-stack-for-non-thread-builds.patch Upstream +package/gcc/13.2.0/0001-disable-split-stack-for-non-thread-builds.patch Upstream +package/gcc/8.4.0/0001-xtensa-fix-PR-target-91880.patch Upstream +package/gcc/8.4.0/0002-Revert-re-PR-target-92095-internal-error-with-O1-mcp.patch Upstream +package/gcc/8.4.0/0003-libsanitizer-Remove-cyclades-from-libsanitizer.patch Upstream +package/gcc/8.4.0/0004-disable-split-stack-for-non-thread-builds.patch Upstream +package/gcc/arc-2020.09-release/0001-arc-Refurbish-adc-sbc-patterns.patch Upstream +package/gcc/arc-2020.09-release/0002-libsanitizer-Remove-cyclades-from-libsanitizer.patch Sob Upstream +package/gcc/arc-2020.09-release/0100-uclibc-conf.patch Upstream +package/gcr/0001-meson-Fix-unknown-kw-argument-in-gnome.generate_gir.patch Upstream +package/gdal/0001-fix-uclibc-build-without-NPTL.patch Upstream +package/gdb/11.2/0001-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch Upstream +package/gdb/11.2/0002-sh-ptrace-Define-pt_-dsp-regs-uapi_pt_-dsp-regs-on-G.patch Upstream +package/gdb/11.2/0003-use-asm-sgidefs.h.patch Upstream +package/gdb/11.2/0004-gdbserver-fix-build-for-m68k.patch Upstream +package/gdb/11.2/0005-nat-fork-inferior-include-linux-ptrace.h.patch Upstream +package/gdb/11.2/0006-Fix-getrandom-compile-for-uclibc-v1.0.35.patch Upstream +package/gdb/11.2/0007-fix-musl-build-on-riscv.patch Upstream +package/gdb/11.2/0008-gdbserver-Makefile.in-fix-NLS-build.patch Upstream +package/gdb/11.2/0009-gdb-Fix-native-build-on-xtensa.patch Upstream +package/gdb/12.1/0001-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch Upstream +package/gdb/12.1/0002-sh-ptrace-Define-pt_-dsp-regs-uapi_pt_-dsp-regs-on-G.patch Upstream +package/gdb/12.1/0003-use-asm-sgidefs.h.patch Upstream +package/gdb/12.1/0004-gdbserver-fix-build-for-m68k.patch Upstream +package/gdb/12.1/0005-nat-fork-inferior-include-linux-ptrace.h.patch Upstream +package/gdb/12.1/0006-Fix-getrandom-compile-for-uclibc-v1.0.35.patch Upstream +package/gdb/12.1/0007-fix-musl-build-on-riscv.patch Upstream +package/gdb/12.1/0008-gdbserver-Makefile.in-fix-NLS-build.patch Upstream +package/gdb/12.1/0009-gdb-Fix-native-build-on-xtensa.patch Upstream +package/gdb/13.2/0001-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch Upstream +package/gdb/13.2/0002-sh-ptrace-Define-pt_-dsp-regs-uapi_pt_-dsp-regs-on-G.patch Upstream +package/gdb/13.2/0003-use-asm-sgidefs.h.patch Upstream +package/gdb/13.2/0004-gdbserver-fix-build-for-m68k.patch Upstream +package/gdb/13.2/0005-nat-fork-inferior-include-linux-ptrace.h.patch Upstream +package/gdb/13.2/0006-Fix-getrandom-compile-for-uclibc-v1.0.35.patch Upstream +package/gdb/13.2/0007-fix-musl-build-on-riscv.patch Upstream +package/gdb/13.2/0008-gdbserver-Makefile.in-fix-NLS-build.patch Upstream +package/gdb/13.2/0009-gdb-Fix-native-build-on-xtensa.patch Upstream +package/gengetopt/0001-configure.ac-add-disable-doc-option.patch Upstream +package/genpart/0001-fix-return-code.patch Upstream +package/genromfs/0001-build-system.patch Sob Upstream +package/gensio/0001-Fix-missing-EVP_PKEY_ED25519-build-error-on-libressl.patch Upstream package/gerbera/S99gerbera Indent +package/giblib/0001-fix-imlib2-detection.patch Upstream +package/giflib/0001-Makefile-add-targets-to-manage-static-building.patch Upstream +package/git-crypt/0001-fix-build-with-libressl-3.5.0.patch Upstream +package/gli/0001-Optional-building-tests.patch Upstream +package/glog/0001-added-emscripten-support.patch Upstream +package/glorytun/0001-Add-support-for-Apple-silicon.patch Upstream +package/glorytun/0002-aegis256.c-fix-aarch64-build-with-uclibc.patch Upstream +package/gnu-efi/0001-Make.defaults-don-t-override-ARCH-when-cross-compili.patch Upstream +package/gnupg/0001-build-Always-use-EXTERN_UNLESS_MAIN_MODULE-pattern.patch Upstream +package/gnuplot/0001-configure-add-without-demo-option.patch Upstream +package/go/0001-build.go-explicit-option-for-crosscompilation.patch Upstream +package/gob2/0001-dont-include-from-prefix.patch Upstream +package/gobject-introspection/0001-disable-tests.patch Upstream +package/gobject-introspection/0002-Add-rpath-links-to-ccompiler.patch Upstream +package/gobject-introspection/0003-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch Upstream package/google-breakpad/gen-syms.sh Shellcheck +package/gpm/0001-Added-musl-support-to-libgpm-and-the-daemon.patch Upstream +package/gpm/0002-Install-unversioned-solibrary.patch Upstream +package/gpm/0003-src-Makefile.in-Really-install-unversioned-solibrary.patch Upstream +package/gpm/0004-Use-sigemptyset-API-instead-of-__sigemptyset.patch Upstream +package/gpm/0005-fix-building-w-newer-glibc.patch Upstream +package/gpm/0006-src-headers-daemon.h-avoid-redefinition-of-last_sele.patch Upstream package/gpsd/S50gpsd Indent Shellcheck Variables +package/gptfdisk/0001-gptcurses-partially-revert-Tweaks-for-building-on-th.patch Upstream +package/gptfdisk/0002-Fix-failure-crash-of-sgdisk-when-compiled-with-lates.patch Upstream +package/graphite2/0001-don-t-install-a-libtool-file-with-static-library.patch Upstream +package/grpc/0002-wrap_memcpy.cc-add-GPR_DISABLE_WRAPPED_MEMCPY.patch Upstream +package/grpc/0003-host-grpc-only-cpp-plugin.patch Upstream +package/grpc/0004-disable-unconditionally-downloading-api-repos.patch Upstream +package/gstreamer1/gstd/0001-Don-t-require-gstd-check-user-xenv.sh-for-systemd-se.patch Upstream +package/guile/0001-calculate-csqrt_manually.patch Upstream +package/guile/0002-Makefile.am-fix-build-without-makeinfo.patch Upstream +package/gumbo-parser/0001-configure.ac-fix-build-without-C.patch Upstream +package/gutenprint/0001-use-pregen-xmli18n-header.patch Upstream +package/gutenprint/0002-cups-support-replaces-static-with-static-libtool-lib.patch Upstream +package/gvfs/0001-build-Remove-incorrect-i18n.merge_file-argument.patch Upstream +package/harfbuzz/0001-meson.build-check-for-pthread.h.patch Upstream +package/haserl/0001-add-haserl_lualib.inc.patch Upstream package/haveged/S21haveged Shellcheck Variables +package/heirloom-mailx/0001-fix-libressl-support.patch Upstream +package/highway/0001-Fix-compilation-for-armv7-with-gcc-8.patch Upstream +package/highway/0002-Fix-compilation-for-armv7-targets-with-vfp-v4-and-gc.patch Upstream +package/hplip/0001-build-use-pkg-config-to-discover-libusb.patch Upstream +package/hplip/0002-configure.in-fix-AM_INIT_AUTOMAKE-call.patch Upstream package/htpdate/S43htpdate Shellcheck +package/httping/0001-fix-math-library-linking.patch Upstream +package/httping/0002-Makefile-allow-build-without-gettext.patch Upstream package/i2pd/S99i2pd Indent Shellcheck Variables -package/ifplugd/0001-cross.patch Sob -package/ifplugd/0002-fix-headers.patch Sob +package/i7z/0001-fix-build-with-gcc-10.patch Upstream +package/ibm-sw-tpm2/0001-Use-LONG_BIT-to-define-RADIX_BITS.patch Upstream +package/ibrcommon/0001-ibrcommon-data-File.cpp-support-POSIX-basename-call.patch Upstream +package/ibrcommon/0002-ibrcommon-added-openssl-1.1-compatibility-264.patch Upstream +package/ibrcommon/0003-ibrcommon-ssl-gcm-fix-static-build-with-openssl.patch Upstream +package/icu/0001-dont-build-static-dynamic-twice.patch Upstream +package/icu/0002-workaround-toolchain-bugs.patch Upstream +package/icu/0003-link-icudata-as-data-only.patch Upstream +package/icu/0004-fix-static-linking-with-icu-uc.patch Upstream +package/ifmetric/0001-Fix-issue-NETLINK-Packet-too-small-or-truncated-92-1.patch Upstream +package/ifplugd/0001-cross.patch Sob Upstream +package/ifplugd/0002-fix-headers.patch Sob Upstream +package/ifplugd/0003-no-cxx.patch Upstream +package/ifplugd/0004-musl-fix-types.patch Upstream +package/ifplugd/0005-src-interface.h-fix-build-with-gcc-10.patch Upstream +package/iftop/0001-ui_common.h-fix-build-with-gcc-10.patch Upstream +package/iftop/0002-Rename-pcap_filter-to-iftop_pcap_filter.patch Upstream package/ifupdown-scripts/S40network EmptyLastLine Indent Shellcheck Variables package/ifupdown-scripts/network/if-pre-up.d/wait_iface EmptyLastLine Shellcheck package/ifupdown-scripts/nfs_check Shellcheck +package/ifupdown/0001-archcommon-define-GNU-only-FNM_EXTMATCH-to-zero-on-n.patch Upstream +package/ifupdown/0001-dont-use-dpkg-architecture.patch Upstream package/igd2-for-linux/S99upnpd Indent Shellcheck Variables +package/imx-mkimage/0001-Add-unused-fake-version.patch Upstream package/inadyn/S70inadyn Indent NotExecutable package/initscripts/init.d/rcK ConsecutiveEmptyLines EmptyLastLine Shellcheck package/initscripts/init.d/rcS ConsecutiveEmptyLines EmptyLastLine Shellcheck package/input-event-daemon/S99input-event-daemon ConsecutiveEmptyLines Indent Variables +package/intel-gmmlib/0001-Drop-hardening-related-flags.patch Upstream +package/intel-mediasdk/0001-Don-t-force-fstack-protector.patch Upstream +package/intltool/0001-perl-5.26-compatibility.patch Upstream +package/iotop/0001-Fix-build-error-with-Python-3.patch Upstream +package/iozone/0001-Add-new-targets-for-iozone.patch Upstream +package/iperf/0001-fix-single-threaded-compile-breakage.patch Upstream +package/ipmitool/0001-configure.ac-fix-readline-static-build.patch Upstream +package/ipmitool/0002-Fix-enterprise-numbers-URL.patch Upstream +package/ipmitool/0003-Do-not-require-the-IANA-PEN-registry-file.patch Upstream +package/ipmitool/0004-configure.ac-allow-disabling-registry-downloads.patch Upstream +package/iprutils/0001-configure.ac-add-AC_USE_SYSTEM_EXTENSIONS.patch Upstream package/iptables/S35iptables Shellcheck -package/irda-utils/0001-daemon.patch Sob -package/irda-utils/0002-nommu.patch Sob -package/irda-utils/0003-subdir.patch Sob +package/irda-utils/0001-daemon.patch Sob Upstream +package/irda-utils/0002-nommu.patch Sob Upstream +package/irda-utils/0003-subdir.patch Sob Upstream +package/irda-utils/0004-musl.patch Upstream package/irqbalance/S13irqbalance Indent Shellcheck Variables +package/irrlicht/0001-override-CPPFLAGS-CXXFLAGS-and-CFLAGS-in-Makefile.patch Upstream +package/irrlicht/0002-makefile-override-LDFLAGS-and-remove-obsolete-X11R6-.patch Upstream package/iucode-tool/S00iucode-tool Variables package/iwd/S40iwd Shellcheck Variables -package/keyutils/0002-cifs.patch Sob +package/jack2/0001-Remove-usage-of-U-mode-bit-for-opening-files-in-pyth.patch Upstream +package/janus-gateway/0001-disable-ssp.patch Upstream +package/janus-gateway/0002-Add-test-for-Wunused-but-set-variable.patch Upstream +package/jose/0001-lib-hsh.c-rename-hsh-local-variable.patch Upstream +package/jose/0002-man-add-option-to-skip-building-man-pages.patch Upstream +package/kexec-lite/0001-clean-restart.patch Upstream +package/keyutils/0001-fix-install-rule.patch Upstream +package/keyutils/0002-cifs.patch Sob Upstream +package/kmod/0001-fix-O_CLOEXEC.patch Upstream +package/kodi-texturepacker/0001-texturepacker.patch Upstream +package/kodi-texturepacker/0002-fix-texture-packer-cmake-source-dir.patch Upstream package/kodi/S50kodi Shellcheck Variables -package/libart/0001-art-config-cross.patch Sob -package/libcgicc/0001-disable-documentation-option.patch Sob -package/libfcgi/0002-disable-examples.patch Sob -package/libftdi/0001-pkgconfig_libusb.patch Sob -package/libftdi/0002-libftdi.pc-requires-libusb-fix-static-build.patch Sob +package/latencytop/0001-makefile.patch Upstream +package/lbase64/0001-retro-compatible-with-Lua-5.1.patch Upstream +package/lcdproc/0001-LCDd.conf.patch Upstream +package/lcdproc/0002-Add-missing-ioctl-header.patch Upstream +package/lcdproc/0003-Fixcompilation-with-GCC-10-x.patch Upstream +package/leafnode2/0001-cross_makefile.patch Upstream +package/let-me-create/0001-fix-build-with-musl-C-library.patch Upstream +package/leveldb/0001-Fix-compilation-with-g-4.8.2.patch Upstream +package/leveldb/0002-CMake-install-libmemenv.a.patch Upstream +package/leveldb/0003-CMakeLists.txt-check-for-atomic-library.patch Upstream +package/lftp/0001-Fix-build-with-LibreSSL-following-commit-537f37898.patch Upstream +package/lftp/0002-src-lftp_ssl.c-fix-build-with-libressl-2.7.0.patch Upstream +package/libabseil-cpp/0001-force-position-independent-code.patch Upstream +package/libargon2/0001-libargon2-dont-fail-on-existing-symlink.patch Upstream +package/libart/0001-art-config-cross.patch Sob Upstream +package/libatasmart/0001-strpool-cross-flags.patch Upstream +package/libavl/0001-fix-makefile.patch Upstream +package/libb64/0001-Integer-overflows.patch Upstream +package/libb64/0002-Initialize-C++-objects.patch Upstream +package/libblockdev/0001-Provide-replacement-function-for-strerror_l.patch Upstream +package/libcdaudio/0001-libcdaudio-enable-autoreconf.patch Upstream +package/libcec/0001-cecloader-h-fix-null-return.patch Upstream +package/libcgi/0001-CMakeLists.txt-honour-BUILD_TESTING.patch Upstream +package/libcgicc/0001-disable-documentation-option.patch Sob Upstream +package/libconfuse/0001-Fix-163-unterminated-username-used-with-getpwnam.patch Upstream +package/libcorrect/0002-CMakeLists.txt-conditionally-use-fsanitize-address.patch Upstream +package/libcuefile/0001-fix-static-link.patch Upstream +package/libdaemon/0001-testd-use-unistd-h-instead-of-sys-unistd-h.patch Upstream +package/libdnet/0001-python-makefile.patch Upstream +package/libdrm/0001-tests-meson.build-disable-nouveau-tests-for-static-b.patch Upstream +package/libdvbcsa/0001-altivec-powerpc64.patch Upstream +package/libeXosip2/0001-src-eXtl_dtls.c-fix-build-with-libressl-3.4.1.patch Upstream +package/libedit/0001-check-bsd-functions-in-libbsd.patch Upstream +package/libevent/0001-Don-t-define-BIO_get_init-for-LibreSSL-3-5.patch Upstream +package/libfcgi/0001-link-against-math.patch Upstream +package/libfcgi/0002-disable-examples.patch Sob Upstream +package/libffi/0001-Fix-installation-location-of-libffi.patch Upstream +package/libffi/0002-Fix-use-of-compact-eh-frames-on-MIPS.patch Upstream +package/libffi/0003-libffi-enable-hardfloat-in-the-MIPS-assembly-code.patch Upstream +package/libfm/0001-modules-fix-cross-compilation.patch Upstream +package/libfreeimage/0001-no-root-install.patch Upstream +package/libfreeimage/0002-fix-cpuid-x86.patch Upstream +package/libfreeimage/0003-fix-big-endian-os.patch Upstream +package/libfreeimage/0004-fixed-C-11-warnings.patch Upstream +package/libftdi/0001-pkgconfig_libusb.patch Sob Upstream +package/libftdi/0002-libftdi.pc-requires-libusb-fix-static-build.patch Sob Upstream +package/libftdi1/0001-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch Upstream +package/libftdi1/0002-CMakeLists.txt-fix-paths-when-FTDIPP-is-set.patch Upstream +package/libftdi1/0003-CMakeLists.txt-fix-static-build-with-libusb-and-lato.patch Upstream +package/libfuse/0001-fix-aarch64-build.patch Upstream +package/libfuse/0002-util-ulockmgr_server-c-conditionally-define-closefrom-fix-glibc-2-34.patch Upstream +package/libgcrypt/0001-configure.ac-add-an-option-to-disable-tests.patch Upstream +package/libglfw/0001-Wayland-Remove-extra-cmake-modules-dependency.patch Upstream +package/libglfw/0002-src-CMakeLists.txt-allow-override-of-wayland-pkgdata.patch Upstream +package/libgpiod/0001-build-add-a-configure-switch-for-building-examples.patch Upstream +package/libgsm/0001-misc-fixes-from-archlinux.patch Upstream +package/libgtk2/0001-reduce-dependencies.patch Upstream +package/libgtk3/0001-Remove-Gdk-dependency-from-gtk-encode-symbolic-svg.patch Upstream +package/libhdhomerun/0001-dont-strip.patch Upstream +package/libhid/0001-dont-fiddle-with-debug-flags.patch Upstream +package/libhid/0002-no-newline-in-ldflags.patch Upstream +package/libhid/0003-uclinux.patch Upstream +package/libical/0001-no-tests.patch Upstream +package/libical/0002-icaltypes-c-icalreqstattype_from_string-copy-the-reqstattype.patch Upstream package/libiio/S99iiod Shellcheck Variables -package/libmad/0001-mips-h-constraint-removal.patch Sob +package/libiqrf/0001-cmake-handle-static-library-and-find-required-thread.patch Upstream +package/libiqrf/0002-use-only-c-language.patch Upstream +package/libjson/0001-fix-broken-makefile.patch Upstream +package/libjxl/0001-djxl-fix-segmentation-fault-when-JPEG-is-disabled.patch Upstream +package/libkcapi/0001-lib-kcapi-kernel-if.c-fix-uclibc-build.patch Upstream +package/libkcapi/0002-Add-disable-werror.patch Upstream +package/libkcapi/0003-Fix-symver-build-error-on-non-ELF-platforms.patch Upstream +package/libks/0001-CMakeLists.txt-honour-BUILD_TESTING.patch Upstream +package/liblinear/0001-build-static-lib.patch Upstream +package/liblockfile/0001-Makefile.in-fix-cross-compilation.patch Upstream +package/liblog4c-localtime/0001-log4c.m4-fix-underquoted-definition-of-AM_PATH_LOG4C.patch Upstream +package/liblog4c-localtime/0002-Fix-linking-error-without-pthread.patch Upstream +package/liblog4c-localtime/0003-Fix-debug-mode-build-with-uClibc.patch Upstream +package/liblog4c-localtime/0004-Add-AC_CONFIG_MACRO_DIR-to-configure.in.patch Upstream +package/liblog4c-localtime/0005-Fix-C-support.patch Upstream +package/libloki/0001-allow-to-install-to-a-specific-location-using-DESTDI.patch Upstream +package/libloki/0002-use-ln-snf.patch Upstream +package/libmad/0001-mips-h-constraint-removal.patch Sob Upstream +package/libmad/0002-configure-ac-automake-foreign.patch Upstream +package/libmanette/0001-Meson-Un-hardcode-building-a-shared-library.patch Upstream +package/libmng/0001-jpeg-9a.patch Upstream +package/libmodsecurity/0001-configure.ac-drop-usage-of-git-at-configure-time.patch Upstream +package/libmodsecurity/0002-modsecurity.pc.in-add-lstdc.patch Upstream +package/libmpd/0001-Fix-build-on-archlinux-missing-include.patch Upstream +package/libmpeg2/0001-altivec.patch Upstream +package/libmpeg2/0002-armv4l.patch Upstream +package/libmpeg2/0003-fix-arm-detection.patch Upstream +package/libmpeg2/0004-fix-sparc.patch Upstream +package/libnetfilter_conntrack/0001-conntrack-fix-build-with-kernel-5-15-and-musl.patch Upstream +package/libnfc/0001-autotools-make-example-build-optional.patch Upstream +package/libnids/0001-libpcap-use-pkg-config.patch Upstream +package/libnl/0001-Add-musl-workaround-to-the-libc-compat.h-copy.patch Upstream +package/libnss/0001-Bug-1801182-Allow-overriding-OS_ARCH-OS_TEST-and-OS_.patch Upstream +package/liboauth/0001-Fixes-build-issue-with-OpenSSL-1.1.0.patch Upstream +package/libodb-mysql/0001-fix-syntax-issue-while-checking-ldflags.patch Upstream +package/libodb-mysql/0002-mariadb-FTBFS-fix.patch Upstream +package/libopenssl/0001-Dont-waste-time-building-manpages-if-we-re-not-going.patch Upstream +package/libopenssl/0002-Reproducible-build-do-not-leak-compiler-path.patch Upstream +package/libopenssl/0004-Configure-use-ELFv2-ABI-on-some-ppc64-big-endian-sys.patch Upstream +package/liboping/0001-fix-utf8-support.patch Upstream +package/liboping/0002-Open-raw-sockets-when-adding-hosts-not-when-doing-th.patch Upstream +package/liboping/0003-Fix-compile-break-with-GCC-7-buffer-overflow-with-snprintf.patch Upstream +package/liboping/0004-Fix-compile-error-on-GCC-7.patch Upstream +package/liboping/0005-src-oping.c-always-use-s-style-format-for-printf-sty.patch Upstream +package/libp11/0001-src-p11_attr.c-fix-build-with-gcc-4.8.patch Upstream +package/libplatform/0001-cmake-require-c-11-as-the-minimum-standard.patch Upstream +package/libpng/0001-Disable-pngfix-and-png-fix-itxt.patch Upstream +package/libpthsem/0001-fix-build-on-linux-3.x-host.patch Upstream +package/libressl/0001-always-expose-SSL_OP_NO_TLSv1_3.patch Upstream +package/libroxml/0001-src-roxml_mem.h-add-missing-extern.patch Upstream +package/librsvg/0001-gdk-pixbuf-loader-Makefile.am-set-GDK_PIXBUF_MODULED.patch Upstream +package/librtlsdr/0001-Makefile.am-respect-DESTDIR-with-install-udev-rules.patch Upstream +package/libselinux/0001-fix-musl-build.patch Upstream +package/libselinux/0002-Do-not-use-PYCEXT-and-rely-on-the-installed-file-nam.patch Upstream +package/libsepol/0001-support-static-only.patch Upstream +package/libserial/0001-SerialPort.cpp-fix-build-when-size_t-is-an-unsigned-.patch Upstream +package/libserial/0002-SerialPort.cpp-don-t-use-high-baudrates-when-not-ava.patch Upstream +package/libserialport/0001-uclinux-detection.patch Upstream +package/libshdata/0001-backend-Add-missing-include-files.patch Upstream +package/libshdata/0002-examples-stress_test-Fix-build-with-musl-libc.patch Upstream +package/libsidplay2/0001-sidplay2-libs-2.1.1.patch Upstream +package/libsidplay2/0002-pkg-config.patch Upstream +package/libsidplay2/0003-gcc6.patch Upstream +package/libsigrok/0001-Support-glibmm-2.68.patch Upstream +package/libsigrokdecode/0001-configure-ac-Add-support-for-Python-3-9.patch Upstream +package/libsigrokdecode/0002-configure-Add-python-3-10-support.patch Upstream +package/libsigrokdecode/0003-configure-ac-Use-python3-embed-pc-as-a-fallback.patch Upstream +package/libsoup/0001-meson.build-set-c_std-to-gnu99.patch Upstream +package/libsoxr/0001-Add-Libs.private-for-static-linking.patch Upstream +package/libspatialindex/0001-allow-building-static-libs.patch Upstream +package/libspatialindex/0002-CMakeLists.txt-fix-CMAKE_BUILD_TYPE.patch Upstream +package/libsquish/0001-Makefile-add-f-option-for-ln-to-remove-existing-dest.patch Upstream +package/libsvg/0001-fix-expat-static-declaration.patch Upstream +package/libsvg/0002-Fix-undefined-symbol-png_set_gray_1_2_4_to_8.patch Upstream +package/libsvgtiny/0001-disable-debug-printfs.patch Upstream +package/libsvgtiny/0002-Remove-Werror.patch Upstream +package/libsvgtiny/0003-Hopefully-silence-warnings-about-inlines-and-non-inlines-calling-one.patch Upstream +package/libsvgtiny/0004-Build-Include-gperf-generated-code-directly.patch Upstream +package/libtalloc/0001-buildtools-wafsamba-add-disable-stack-protector-opti.patch Upstream +package/libtelnet/0001-fix-compilation-without-zlib.patch Upstream +package/libtheora/0001-link-libtheoradec.patch Upstream +package/libtheora/0002-fix-autoreconf.patch Upstream +package/libtomcrypt/0001-fix-CVE-2019-17362.patch Upstream +package/libtommath/0001-Build-test-bn_mp_set_double-c-on-more-platforms.patch Upstream +package/libtorrent/0001-libtorrent.pc.in-add-Libs.Private.patch Upstream +package/libubootenv/0001-src-CMakeLists.txt-do-not-force-the-build-of-a-share.patch Upstream +package/libuhttpd/0001-add-compatibility-for-wolfssl-5-0.patch Upstream +package/libuio/0001-configure.ac-set-automake-strictness-to-foreign.patch Upstream +package/liburcu/0001-Only-blacklist-ARM-gcc-4.8.0-and-4.8.1.patch Upstream +package/libusbgx/0001-Add-include-of-sys-sysmacro.h.patch Upstream +package/libuwsc/0001-CMakeLists.txt-add-BUILD_EXAMPLE.patch Upstream +package/libuwsc/0002-fix-bad-indentation.patch Upstream +package/libvpx/0001-vpx_mem-vpx_mem.h-Fix-compilation-with-uClibc.patch Upstream +package/libwebsock/0001-Switch-to-use-pkg-config-to-detect-libevent-and-open.patch Upstream +package/libwebsock/0002-fix-ssl.patch Upstream +package/libwebsock/0003-fix-incorrect-inline.patch Upstream +package/libwebsockets/0001-lib-tls-CMakeLists.txt-fix-build-without-threads.patch Upstream +package/libyuv/0001-i386-sse2.patch Upstream +package/lighttpd/0001-Modify-the-default-lighttpd-configuration-file-to-ha.patch Upstream package/lighttpd/S50lighttpd EmptyLastLine Indent Shellcheck Variables -package/linux-tools/S10hyperv Indent Variables +package/linknx/0001-configure-ac-tweak-CPPUNIT-conditional.patch Upstream +package/linknx/0002-src-Makefile.am-fix-linking-with-log4cpp.patch Upstream +package/linphone/0001-src-core-paths-paths.cpp-fix-powerpc-build.patch Upstream +package/linux-fusion/0001-fix-for-linux-4-and-above.patch Upstream +package/linux-fusion/0002-Fix-mismatched-conversion-spec-and-value-in-printk.patch Upstream +package/linux-fusion/0003-Fix-fusion-Unknown-symbol-tasklist_lock-err-0.patch Upstream +package/linux-fusion/0004-Port-one-one_udp.c-to-Linux-4.1.patch Upstream +package/linux-zigbee/0001-test-serial-Remove-test-serial.patch Upstream +package/linux-zigbee/0002-addrdb-coord-config-parse.y-add-missing-time.h-inclu.patch Upstream package/linuxptp/S65ptp4l Indent Shellcheck package/linuxptp/S66phc2sys Indent Shellcheck +package/lirc-tools/0001-plugins-devinput.c-fix-build-with-musl-1.2.0.patch Upstream +package/lirc-tools/0002-configure-add-disable-doc-option.patch Upstream package/lirc-tools/S25lircd Indent Variables -package/lite/0001-dfbspy-stat.patch Sob -package/lite/0002-no-tests.patch Sob -package/lite/0003-pkg-config.patch Sob +package/lite/0001-dfbspy-stat.patch Sob Upstream +package/lite/0002-no-tests.patch Sob Upstream +package/lite/0003-pkg-config.patch Sob Upstream +package/live555/0001-Add-a-pkg-config-file-for-the-shared-libraries.patch Upstream package/lldpd/S60lldpd Indent Shellcheck Variables -package/lockfile-progs/0001-sus3v-legacy.patch Sob -package/madplay/0001-switch-to-new-alsa-api.patch Sob +package/llvm-project/clang/0001-lib-Driver-ToolChains-Gnu-Use-GCC_INSTALL_PREFIX-in-.patch Upstream +package/llvm-project/libclc/0001-support-out-of-tree-build.patch Upstream +package/lm-sensors/0001-static-build.patch Upstream +package/lm-sensors/0002-no-host-ldconfig.patch Upstream +package/lmbench/0001-scripts-build-use-bin-bash-as-shell.patch Upstream +package/lmbench/0002-src-Makefile-add-lmbench-to-list-of-executables.patch Upstream +package/lmbench/0003-TOO_LONG-100-usec-to-prevent-memsize-from-timingout-.patch Upstream +package/lmbench/0004-Fix-garbage-pointer-for-lat_rpc-S-localhost.patch Upstream +package/localedef/0002-relax-dependency-on-GCC-to-4.8-and-binutils-to-2.24.patch Upstream +package/lockdev/0001-Makefile-install-static-library-and-headers-separate.patch Upstream +package/lockfile-progs/0001-sus3v-legacy.patch Sob Upstream +package/lshw/0001-solve-Compile-error-when-g-version-is-less-than-5.patch Upstream +package/ltrace/0001-arm-plt.patch Upstream +package/ltrace/0002-sparc-add-missing-library.h-include.patch Upstream +package/ltrace/0003-configure.ac-fix-autoreconf-with-autoconf-2.70.patch Upstream +package/lttng-babeltrace/0001-tests-lib-Makefile.am-remove-unneeded-static-flag.patch Upstream +package/lttng-babeltrace/0002-configure.ac-fix-popt-static-build.patch Upstream +package/lttng-libust/0001-configure.ac-add-disable-tests.patch Upstream +package/lttng-tools/0001-configure.ac-add-disable-tests.patch Upstream +package/lua-gd/0001-Protect-declaration-of-LgdImageCreateFromPng-with-GD.patch Upstream +package/lua-lunix/0001-remove-link-with-librt.patch Upstream +package/lua-sdl2/0001-Do-not-reference-host-directory-for-headers.patch Upstream +package/lua-sdl2/0002-CMakeLists-do-not-require-C.patch Upstream +package/lua/5.1.5/0001-root-path.patch Upstream +package/lua/5.1.5/0002-shared-libs-for-lua.patch Upstream +package/lua/5.1.5/0011-linenoise.patch Upstream +package/lua/5.1.5/0012-fix-reader-at-eoz.patch Upstream +package/lua/5.3.6/0001-root-path.patch Upstream +package/lua/5.3.6/0002-shared-libs-for-lua.patch Upstream +package/lua/5.3.6/0003-linenoise.patch Upstream +package/lua/5.4.6/0001-root-path.patch Upstream +package/lua/5.4.6/0002-shared-libs-for-lua.patch Upstream +package/lua/5.4.6/0011-linenoise.patch Upstream +package/luajit/0001-no-bin-symlink.patch Upstream +package/luajit/0002-install-inc.patch Upstream +package/luasyslog/0001-remove-AX_LUA_LIBS.patch Upstream +package/luasyslog/0002-build-ax_lua.m4-fix-cross-compilation.patch Upstream +package/lugaru/0001-ImageIO-fix-invalid-conversion.patch Upstream +package/lugaru/0002-Fix-mismatched-usage-length-build-fail-on-g.patch Upstream +package/lvm2/0001-clang-possible-better-compilation-with-musl-c.patch Upstream +package/lvm2/0002-mm-preallocate-memory-only-with-glibc.patch Upstream +package/lvm2/0003-cmdline-use-freopen-to-reopen-standard-streams.patch Upstream +package/lvm2/0004-log-use-freopen-to-reopen-standard-streams.patch Upstream +package/lz4/0001-build-Support-BUILD_SHARED-no.patch Upstream +package/lzma/0001-Remove-static-from-LDFLAGS.patch Upstream +package/lzop/0001-allow-overriding-modification-time.patch Upstream +package/macchanger/0001-Fix-missing-include-for-caddr_t.patch Upstream +package/madplay/0001-switch-to-new-alsa-api.patch Sob Upstream +package/madplay/0002-configure-ac-automake-foreign.patch Upstream +package/madplay/0003-configure-ac-use-pkg-config-to-find-id3tag.patch Upstream +package/madplay/0004-configure-ac-call-AM_MKINSTALLDIRS.patch Upstream +package/makedumpfile/0002-Handle-__mips64.patch Upstream +package/mariadb/0001-add-extra-check-for-librt.patch Upstream package/mariadb/S97mysqld Indent Shellcheck Variables package/matchbox-keyboard/mb-applet-kbd-wrapper.sh Shellcheck TrailingSpace +package/matchbox-lib/0001-index-is-legacy.patch Upstream +package/matchbox-panel/0001-index-is-legacy.patch Upstream +package/matchbox-panel/0002-mb-applet-wireless.patch Upstream +package/matchbox-panel/0003-mb-applet-battery.patch Upstream +package/matchbox-startup-monitor/0001-true-false.patch Upstream +package/matchbox/0001-defaulttheme.patch Upstream +package/matchbox/0002-src-Fix-build-with-gcc-10.patch Upstream +package/mediastreamer/0001-src-videofilters-nowebcam.c-fix-build-without-ffmpeg.patch Upstream +package/mediastreamer/0002-Use-AV_INPUT_BUFFER_PADDING_SIZE-to-determine-paddin.patch Upstream +package/memstat/0001-PATH_MAX.patch Upstream package/mender-connect/S43mender-connect Shellcheck -package/mii-diag/0001-strchr.patch Sob +package/menu-cache/0001-Support-gcc10-compilation.patch Upstream +package/mesa3d-demos/0001-demos-makes-opengl-an-optional-component.patch Upstream +package/mesa3d/0001-meson-Set-proper-value-for-LIBCLC_INCLUDEDIR.patch Upstream +package/meson-tools/0001-amlbootenc-gxl-remove-non-std-C-convention-in-for.patch Upstream +package/meson/0001-Prefer-ext-static-libs-when-default-library-static.patch Upstream +package/meson/0002-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch Upstream +package/metacity/0001-add-libm-reference.patch Upstream +package/metacity/0002-gconf.patch Upstream +package/metacity/0003-mag-add-libm-reference.patch Upstream +package/mfgtools/0001-lnx_def.h-fix-conflicting-declaration-of-__time64_t.patch Upstream +package/midori/0001-disable-vala-fatal-warnings.patch Upstream +package/midori/0002-add-option-to-specify-path-to-g-ir-compiler.patch Upstream +package/mii-diag/0001-strchr.patch Sob Upstream +package/mimic/0001-Fix-linking-on-gcc-10.2.0-or-newer.patch Upstream +package/mini-snmpd/0001-linux.c-fix-musl-build.patch Upstream package/minidlna/S60minidlnad Indent Shellcheck Variables package/minissdpd/S50minissdpd Indent Shellcheck Variables package/modem-manager/S44modem-manager Shellcheck Variables +package/mongodb/0001-ssl_manager.cpp-fix-build-with-gcc-7-and-fpermissive.patch Upstream +package/mongodb/0002-src-mongo-db-exec-plan_stats.h-fix-build-with-gcc-11.patch Upstream +package/mongrel2/0001-Do-not-run-tests.patch Upstream +package/mongrel2/0002-Fix-Makefiles-for-cross-compilation.patch Upstream +package/mongrel2/0003-fix-build-with-gcc-4.8.patch Upstream +package/monit/0001-no-force-static.patch Upstream +package/mono-gtksharp3/0001-Fixes-MONO_PROFILE_ENTER_LEAVE-undeclared.patch Upstream +package/mono-gtksharp3/0002-Mono-compilation-error-branch.patch Upstream +package/mono/0001-Fix-linkage-with-a-system-libatomic_ops-shared-library.patch Upstream +package/mono/0002-Ongoing-work-on-the-cmake-build.patch Upstream package/mosquitto/S50mosquitto Indent Shellcheck Variables package/motion/S99motion Indent Shellcheck Variables +package/mpd/0001-src-event-meson.build-add-atomic-dependency-for-spar.patch Upstream package/mpd/S95mpd Variables +package/mpir/0001-mpn-arm-udiv.asm-workaround-binutils-bug-14887.patch Upstream +package/mpv/0001-fix-powerpc64-altivec.patch Upstream +package/mraa/0001-include-Declare-gVERSION-global-as-extern.patch Upstream package/mrouted/S41mrouted NotExecutable package/mrp/S65mrp Indent Variables +package/mstpd/0001-bridge-stp.in-support-different-versions-of-pidof-13.patch Upstream package/multipath-tools/S60multipathd Shellcheck +package/musepack/0001-shared.patch Upstream +package/musepack/0002-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch Upstream +package/musepack/0003-include-fpu-control-with-glibc-only.patch Upstream +package/musepack/0004-missing-sys-select.patch Upstream +package/musepack/0005-fix-build-with-gcc-10.patch Upstream +package/musl/0001-avoid-kernel-if_ether.h.patch Upstream +package/musl/0002-package-musl-Make-scheduler-functions-Linux-compatib.patch Upstream +package/nano/0001-lib-getrandom.c-fix-build-with-uclibc-1.0.35.patch Upstream +package/nanocom/0001-fix-build-with-gcc-10.patch Upstream +package/ncftp/0001-fix-gcc-10.patch Upstream +package/ncmpc/0001-meson.build-add-atomic-dependency-for-sparc.patch Upstream +package/ne10/0001-CMakeLists-don-t-hard-code-thumb-code-generation.patch Upstream +package/ne10/0002-fix-build-without-C.patch Upstream package/neard/S53neard Indent Shellcheck Variables +package/neardal/0001-lib-neardal.h-fix-build-with-gcc-10.patch Upstream package/netatalk/S50netatalk EmptyLastLine Indent Variables -package/netcat/0001-signed-bit-counting.patch Sob +package/netcat/0001-signed-bit-counting.patch Sob Upstream package/netopeer2/S52netopeer2 Shellcheck Variables -package/netplug/0001-makefile-flags.patch Sob +package/netperf/0001-src-nettest_omni.c-fix-compilation-with-GCC10.patch Upstream +package/netplug/0001-makefile-flags.patch Sob Upstream +package/netplug/0002-add-missing-time-include.patch Upstream +package/netplug/0003-remove-assert-fail.patch Upstream package/netplug/S29netplug Indent Shellcheck Variables package/netplug/netplug-script ConsecutiveEmptyLines Shellcheck +package/netsniff-ng/0001-Detect-libpcap-dependencies-using-pkg-config.patch Upstream package/netsnmp/S59snmpd Indent Shellcheck Variables +package/netsurf/0001-avoid-system-perl-dependencies.patch Upstream +package/netsurf/0002-do-not-cross-compile-nsgenbind.patch Upstream +package/netsurf/0003-fix-compilation-without-curl.patch Upstream +package/netsurf/0004-framebuffer-Fix-internal-font-generated-source-for-GCC-10.patch Upstream +package/nettle/0001-disable-testsuite-examples.patch Upstream package/network-manager/S45network-manager ConsecutiveEmptyLines EmptyLastLine Shellcheck Variables package/nfs-utils/S60nfs ConsecutiveEmptyLines Shellcheck Variables +package/nginx-modsecurity/0001-config-use-pkg-config.patch Upstream +package/nginx/0001-auto-type-sizeof-rework-autotest-to-be-cross-compila.patch Upstream +package/nginx/0002-auto-feature-add-mechanism-allowing-to-force-feature.patch Upstream +package/nginx/0003-auto-set-ngx_feature_run_force_result-for-each-featu.patch Upstream +package/nginx/0004-auto-lib-libxslt-conf-use-pkg-config.patch Upstream +package/nginx/0005-auto-unix-make-sys_nerr-guessing-cross-friendly.patch Upstream +package/nginx/0006-auto-lib-openssl-conf-use-pkg-config.patch Upstream +package/nginx/0007-auto-lib-libgd-conf-use-pkg-config.patch Upstream +package/nginx/0008-src-os-unix-ngx_linux_config.h-only-include-dlfcn.h-.patch Upstream +package/nginx/0009-auto-os-linux-fix-build-with-libxcrypt.patch Upstream +package/nginx/0010-Allow-forcing-of-endianness-for-cross-compilation.patch Upstream package/nginx/S50nginx Indent Variables +package/ngrep/0001-Fix-typo-in-configure-in-when-testing-for-use_pcre.patch Upstream +package/ngrep/0002-Check-for-libnet_init-in-configure-in.patch Upstream +package/ngrep/0003-fix-disable-tcpkill.patch Upstream +package/nilfs-utils/0001-nilfs_cleanerd-link-dynamically.patch Upstream +package/nmap/0001-libdnet-wrapper-configure.patch Upstream +package/nodejs/nodejs-src/0001-add-qemu-wrapper-support.patch Upstream +package/nodejs/nodejs-src/0002-check-if-uclibc-has-backtrace-support.patch Upstream +package/nodejs/nodejs-src/0003-include-obj-name-in-shared-intermediate.patch Upstream +package/nodejs/nodejs-src/0004-lib-internal-modules-cjs-loader.js-adjust-default-pa.patch Upstream package/nodm/S90nodm Indent Shellcheck Variables +package/norm/0001-protolib-drop-linux-version-check.patch Upstream +package/norm/0002-Use-print-as-function-call-for-Python3-compatibility.patch Upstream +package/norm/0003-Fix-mixed-tabs-spaces-in-protolib-wscript.patch Upstream package/nss-pam-ldapd/S45nslcd EmptyLastLine Indent Shellcheck Variables +package/ntp/0001-nano.patch Upstream +package/ntp/0002-ntp-syscalls-fallback.patch Upstream package/ntp/S49ntp.in Variables +package/ntpsec/0001-wscript-remove-checks-for-bsd-string.h-fixes-host-co.patch Upstream +package/ntpsec/0002-wscript-fix-build-without-stack-protector.patch Upstream +package/numactl/0001-link-with-latomic-if-needed-again.patch Upstream +package/nuttcp/0001-susv3-legacy.patch Upstream +package/nvidia-driver/0001-use-LDFLAGS.patch Upstream +package/octave/0001-Fix-BLAS-library-integer-size-detection.patch Upstream +package/odb/0001-tm.h-include-in-gcc.hxx-appears-to-be-no-longer-nece.patch Upstream +package/odb/0002-Remove-gratuitous-classes.patch Upstream +package/odb/0003-Initial-work-to-make-ODB-compatible-with-GCC-6.patch Upstream +package/odb/0004-Make-compilable-with-GCC-6-in-C-14-mode.patch Upstream +package/odb/0005-Fix-bug-in-GCC-6-input_location-translation.patch Upstream +package/odb/0006-Adapt-to-changes-in-GCC-8.patch Upstream +package/odb/0007-Switch-to-C-11-get-rid-of-auto_ptr-use.patch Upstream +package/odb/0008-Fix-GCC-8-adaptation-to-be-compatible-with-previous-.patch Upstream +package/odb/0009-Handle-namespace-aliases-when-parsing-GCC-tree.patch Upstream +package/odb/0010-Add-initial-support-for-GCC-9.patch Upstream +package/odb/0011-Adjust-to-changes-in-GCC-10.patch Upstream +package/odb/0012-Adjust-to-changes-in-GCC-11.patch Upstream +package/odb/0013-Resolve-name-lookup-ambiguity-causing-error-with-GCC.patch Upstream +package/ofono/0001-uclibc-backtrace.patch Upstream package/ofono/S46ofono Variables +package/ola/0001-ola-fix-compilation-with-musl-1-2-3.patch Upstream +package/olsr/0001-olsrd-migrate-to-using-bison-3.7.1.patch Upstream +package/olsr/0002-lib-pud-Makefile-fix-parallel-build.patch Upstream +package/olsr/0003-pud-adapt-to-API-changes-in-gpsd-3-20.patch Upstream +package/olsr/0005-lib-pud-src-gpsdclient.c-drop-handling-of-gpsdata-fi.patch Upstream +package/olsr/0006-build-patch-for-gpsd-3-25.patch Upstream package/olsr/S50olsr Indent Shellcheck Variables +package/omxplayer/0001-Update-Makefile-to-be-compatible-with-buildroot.patch Upstream +package/open-plc-utils/0001-Remove-OWNER-and-GROUPS-parameters-to-install.patch Upstream +package/open2300/0001-fix-makefile.patch Upstream +package/openjdk/17.0.9+9/0001-Add-ARCv2-ISA-processors-support-to-Zero.patch Upstream +package/openjdk/21.0.1+12/0001-Add-ARCv2-ISA-processors-support-to-Zero.patch Upstream +package/openldap/0001-fix-bignum.patch Upstream +package/openldap/0002-disable-docs.patch Upstream package/openntpd/S49ntp Shellcheck Variables +package/openocd/0001-configure-enable-build-on-uclinux.patch Upstream +package/openpgm/0001-Rename-openpgm-5.2.pc.in.patch Upstream +package/openpgm/0002-openpgm-pgm-checksum.c-fix-build-with-32-bits-MMX.patch Upstream +package/openpgm/0003-fix-build-on-macOS-ARM.patch Upstream +package/openpowerlink/0001-install-the-stack-libraries-to-lib-subdirectory.patch Upstream +package/openpowerlink/0002-cmake-install-oplk-headers-files.patch Upstream +package/openpowerlink/0003-Add-top-level-CMakeLists.txt.patch Upstream +package/openrc/0001-init.d-sysctl.in-add-support-for-busybox-sysctl.patch Upstream +package/openrc/0002-sh-init.sh.Linux.in-change-run-lock-from-root-uucp-t.patch Upstream +package/openrc/0003-init.d-agetty-replace-sbin-agetty-by-sbin-getty.patch Upstream +package/openrc/0004-init.d-agetty-start-agetty-after-all-sevices.patch Upstream +package/openrc/0005-runlevels-do-not-add-agetty.tty-1-6-if-MKSYSVINIT-ye.patch Upstream +package/openrc/0006-Also-create-run-lock-subsys-directory.patch Upstream package/openssh/S50sshd EmptyLastLine Indent Variables +package/openswan/0001-lib-libopenswan-constants.c-workaround-missing-ns_t_.patch Upstream +package/opentyrian/0001-Move-definitions-that-don-t-need-to-be-exposed-from-opl-h-to-opl-c.patch Upstream +package/openvmtools/0001-no_cflags_werror.patch Upstream +package/openvmtools/0002-dont-force-cppflags.patch Upstream +package/openvmtools/0003-Rename-poll-h-into-vm_poll-h-to-fix-build-failure-on-musl.patch Upstream +package/openvmtools/0004-Remove-assumptions-about-glibc-being-only-libc-imple.patch Upstream +package/openvmtools/0005-Use-configure-test-for-struct-timespec.patch Upstream +package/openvmtools/0006-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch Upstream +package/openvmtools/0007-Use-configure-to-test-for-feature-instead-of-platfor.patch Upstream +package/openvmtools/0008-Use-configure-test-for-sys-stat.h-include.patch Upstream +package/openvmtools/0011-open-vm-tools-vmhgfs-fuse-fsutils.h-fix-build-on-mus.patch Upstream +package/openvmtools/0012-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch Upstream package/openvmtools/shutdown Shellcheck package/openvpn/S60openvpn Indent Shellcheck Variables +package/oprofile/0001-musl.patch Upstream +package/opusfile/0001-Propagate-allocation-failure-from-ogg_sync_buffer.patch Upstream +package/oracle-mysql/0000-ac_cache_check.patch Upstream +package/oracle-mysql/0001-configure-ps-cache-check.patch Upstream +package/oracle-mysql/0002-use-new-readline-iface.patch Upstream +package/oracle-mysql/0003-ac_stack_direction-is-unset.patch Upstream +package/oracle-mysql/0004-Fix-gen_lex_hash-execution.patch Upstream +package/oracle-mysql/0005-bison_3_breaks_mysql_server_build.patch Upstream +package/oracle-mysql/0006-no-force-static-build.patch Upstream +package/oracle-mysql/0007-dont-install-in-mysql-directory.patch Upstream +package/oracle-mysql/0008-fix-type-conversion.patch Upstream +package/oracle-mysql/0009-gcc7.patch Upstream +package/oracle-mysql/0010-fix-build-without-zlib.patch Upstream package/oracle-mysql/S97mysqld Shellcheck Variables package/owfs/S55owserver Shellcheck Variables package/owfs/S60owfs Shellcheck Variables +package/owl-linux/0001-fix-for-linux-3.3.x.patch Upstream +package/patch/0001-Fix-segfault-with-mangled-rename-patch.patch Upstream +package/patch/0002-Allow-input-files-to-be-missing-for-ed-style-patches.patch Upstream +package/patch/0003-Fix-arbitrary-command-execution-in-ed-style-patches-.patch Upstream +package/patch/0004-Invoke-ed-directly-instead-of-using-the-shell.patch Upstream +package/patch/0005-Don-t-follow-symlinks-unless--follow-symlinks-is-given.patch Upstream +package/patchelf/0001-Add-option-to-make-the-rpath-relative-under-a-specif.patch Upstream +package/paxtest/0001-genpaxtest-move-log-location.patch Upstream +package/paxtest/0002-paxtest-page-alignment-ARM-and-NIOS2-arch.patch Upstream +package/pcm-tools/0001-pmu-query.py-fix-python3-errors-add-linux-platform-s.patch Upstream +package/pcmanfm/0001-po-de-po-fix-build-with-gettext-tiny.patch Upstream +package/pcre/0001-Kill-compatibility-bits.patch Upstream +package/pcre/0002-Disable-C-unit-tests.patch Upstream +package/pdmenu/0001-autoconf-makeinfo.in-link-with-INTLLIBS-if-needed.patch Upstream +package/pdmenu/0002-Makefile-autoconf-makeinfo.in-support-build-install-.patch Upstream +package/perl-net-ssleay/0001-fix-build-system.patch Upstream +package/perl-sys-cpu/0001-remove-extraneous-include.patch Upstream +package/perl-xml-libxml/0001-Makefile-PL.patch Upstream +package/php-geoip/0001-add-build-support-for-php8.patch Upstream +package/php-lua/0001-ZEND_ACC_ALLOW_STATIC-ZEND_ACC_STATIC-for-static-met.patch Upstream +package/php-lua/0002-php8-explicitly-declare-arginfo.patch Upstream +package/php-zmq/0001-updates-for-php7.4-and-php8.0.patch Upstream +package/php-zmq/0002-fix-for-php-7.3.patch Upstream +package/php-zmq/0003-fix-for-php-8.0.0beta2.patch Upstream +package/php/0001-acinclude.m4-don-t-unset-variables.patch Upstream +package/php/0002-iconv-tweak-iconv-detection.patch Upstream +package/php/0003-configure-disable-the-phar-tool.patch Upstream +package/php/0004-Call-apxs-with-correct-prefix.patch Upstream +package/php/0005-allow-opcache-cross-compiling.patch Upstream +package/picocom/0001-Compile-with-libc-s-without-cispeed-cospeed.patch Upstream +package/pifmrds/0001-Makefile-cross-compile-friendly.patch Upstream +package/pifmrds/0002-Makefile-use-LDFLAGS.patch Upstream +package/pifmrds/0003-Makefile-fix-static-link.patch Upstream package/pigpio/S50pigpio Shellcheck Variables +package/pistache/0001-src-common-transport.cc-fallback-value-for-RUSAGE_TH.patch Upstream +package/pistache/0002-src-server-listener.cc-fix-libressl-build.patch Upstream +package/pixman/0001-Disable-tests.patch Upstream +package/pkcs11-helper/0001-openssl-libressl-3-5-0-does-not-have-DSA_meth_set1_name.patch Upstream +package/pkgconf/0001-Only-prefix-with-the-sysroot-a-subset-of-variables.patch Upstream +package/pkgconf/0002-Revert-main-assume-modversion-insted-of-version-if-o.patch Upstream package/pkgconf/pkg-config.in Shellcheck -package/poco/0001-Fix-optional-JSON-support-for-MySQL-3753.patch Sob +package/poke/0001-configure.ac-HELP2MAN-replace-by-true-when-cross-com.patch Upstream +package/poke/0002-lib-getrandom.c-fix-build-with-uclibc-1.0.35.patch Upstream +package/policycoreutils/0001-Add-DESTDIR-to-all-paths-that-use-an-absolute-path.patch Upstream +package/policycoreutils/0002-Add-PREFIX-to-host-paths.patch Upstream package/postgresql/S50postgresql Variables +package/pptp-linux/0001-susv3-legacy.patch Upstream +package/pptp-linux/0002-fix-parallel-build.patch Upstream +package/prboom/0001-libpng-1.4.patch Upstream +package/prboom/0002-configure-remove-predefined-O2-optimization-flag.patch Upstream +package/prelink-cross/0001-src-rtld-dl-tls.c-Fix-TLS-offsets-computation-for-s3.patch Upstream +package/procps-ng/0001-configure-Add--disable-w.patch Upstream +package/procps-ng/0002-escape-c-Fix-missing-nl_langinfo-on-certain-configs.patch Upstream +package/procps-ng/0003-fix-pifd_open-check.patch Upstream package/procps-ng/S02sysctl Variables package/proftpd/S50proftpd Indent Shellcheck Variables +package/prosody/0001-enable-syslog.patch Upstream +package/prosody/0002-add-pidfile.patch Upstream package/prosody/S50prosody Indent Shellcheck Variables +package/protozero/0001-CMakeLists.txt-protobuf-is-only-needed-for-tests.patch Upstream +package/proxychains-ng/0001-add-configure-check-for-non-POSIX-compliant-getnameinfo-signature.patch Upstream package/ptpd/S65ptpd Indent Shellcheck Variables +package/ptpd2/0001-musl.patch Upstream +package/ptpd2/0002-ntp_isc_md5-rename-EVP_MD_CTX-into-PTPD_EVP_MD_CTX.patch Upstream +package/ptpd2/0003-Solve-issue-25-Removing-type-U64-from-net-snmp-relat.patch Upstream package/ptpd2/S65ptpd2 Indent Shellcheck Variables +package/pulseaudio/0001-shm.c-use-_Static_assert-instead-of-static_assert-fo.patch Upstream +package/pulseaudio/0002-build-sys-Fix-atomic-support-detection.patch Upstream +package/pulseaudio/0003-build-sys-Add-missing-libatomic_ops-dependencies.patch Upstream +package/pulseaudio/0004-meson.build-fix-build-without-C.patch Upstream package/pulseaudio/S50pulseaudio ConsecutiveEmptyLines EmptyLastLine Indent Variables +package/pulseview/0001-Replace-obsolete-deprecated-Qt-methods.patch Upstream +package/pulseview/0002-Fix-broken-build-due-to-C-template-behind-C-linkage.patch Upstream +package/pulseview/0003-Support-glibmm-2.68.patch Upstream +package/python-aiohttp-remotes/0001-Fix-flit_core-build-requires-backend.patch Upstream +package/python-automat/0001-Remove-uneeded-dependency-to-wheel.patch Upstream +package/python-crossbar/0001-Avoid-intentional-syntax-error.patch Upstream +package/python-crossbar/0002-requirements-min.txt-drop-indirect-dependencies.patch Upstream +package/python-crossbar/0003-crossbar-webservice-wap-use-markupsafe-instead-of-we.patch Upstream +package/python-daphne/0001-remove-pytest-runner-requirement.patch Upstream +package/python-pybind/0001-pybind11-commands.py-support-STAGING_DIR.patch Upstream +package/python-pylibftdi/0001-do-not-use-find-library.patch Upstream +package/python-pyqt5/0001-configure-skip-qtdetail.patch Upstream +package/python-pyqt5/0002-fix-QtCoremod.sip-syntax-error.patch Upstream +package/python-pyudev/0001-Workaround-finding-libudev-on-systems-without-ldconf.patch Upstream +package/python-pyzmq/0001-detect.py-fix-the-ZMQ-version-check-to-the-ZMQ-versi.patch Upstream +package/python-scipy/0001-build-sh4-FE.patch Upstream +package/python-setuptools/0001-add-executable.patch Upstream +package/python-sip/0001-remove-join-from-sip-h-files-string.patch Upstream package/python-web2py/S51web2py Shellcheck Variables -package/rdesktop/0001-8bit-colors.patch Sob +package/python-ws4py/0001-Adjust-ws4py-for-Python-3.7-syntax.patch Upstream +package/python3/0001-Make-the-build-of-pyc-files-conditional.patch Upstream +package/python3/0002-Disable-buggy_getaddrinfo-configure-test-when-cross-.patch Upstream +package/python3/0003-Add-infrastructure-to-disable-the-build-of-certain-e.patch Upstream +package/python3/0004-Adjust-library-header-paths-for-cross-compilation.patch Upstream +package/python3/0005-Don-t-look-in-usr-lib-termcap-for-libraries.patch Upstream +package/python3/0006-Don-t-add-multiarch-paths.patch Upstream +package/python3/0007-Abort-on-failed-module-build.patch Upstream +package/python3/0008-Serial-ioctl-workaround.patch Upstream +package/python3/0009-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch Upstream +package/python3/0010-Misc-python-config.sh.in-ensure-sed-invocations-only.patch Upstream +package/python3/0011-Add-an-option-to-disable-pydoc.patch Upstream +package/python3/0012-Add-an-option-to-disable-lib2to3.patch Upstream +package/python3/0013-Add-option-to-disable-the-sqlite3-module.patch Upstream +package/python3/0014-Add-an-option-to-disable-the-tk-module.patch Upstream +package/python3/0015-Add-an-option-to-disable-the-curses-module.patch Upstream +package/python3/0016-Add-an-option-to-disable-expat.patch Upstream +package/python3/0017-Add-an-option-to-disable-CJK-codecs.patch Upstream +package/python3/0018-Add-an-option-to-disable-NIS.patch Upstream +package/python3/0019-Add-an-option-to-disable-unicodedata.patch Upstream +package/python3/0020-Add-an-option-to-disable-IDLE.patch Upstream +package/python3/0021-Add-an-option-to-disable-decimal.patch Upstream +package/python3/0022-Add-an-option-to-disable-the-ossaudiodev-module.patch Upstream +package/python3/0023-Add-an-option-to-disable-openssl-support.patch Upstream +package/python3/0024-Add-an-option-to-disable-the-readline-module.patch Upstream +package/python3/0025-Add-options-to-disable-zlib-bzip2-and-xz-modules.patch Upstream +package/python3/0026-python-config.sh-don-t-reassign-prefix.patch Upstream +package/python3/0027-Add-an-option-to-disable-uuid-module.patch Upstream +package/python3/0028-fix-building-on-older-distributions.patch Upstream +package/python3/0029-configure.ac-fixup-CC-print-multiarch-output-for-mus.patch Upstream +package/python3/0030-Add-an-option-to-disable-the-berkeleydb-module.patch Upstream +package/python3/0031-lib-crypt-uClibc-ng-doesn-t-set-errno-when-encryptio.patch Upstream +package/qemu/0001-tests-fp-disable-fp-bench-build-by-default.patch Upstream +package/qemu/0002-softmmu-qemu-seccomp.c-add-missing-header-for-CLONE_.patch Upstream +package/qextserialport/0001-Create-a-main-include-file-QExtSerialPort.patch Upstream +package/qextserialport/0002-Tell-qmake-to-add-a-pkgconfig-file-to-ease-usage-wit.patch Upstream +package/qt5/qt5base/0001-qtbase-Fix-build-error-when-using-EGL.patch Upstream +package/qt5/qt5base/0002-double-conversion-enable-for-microblaze.patch Upstream +package/qt5/qt5base/0003-double-conversion-enable-for-nios2.patch Upstream +package/qt5/qt5base/0004-double-conversion-enable-for-xtensa.patch Upstream +package/qt5/qt5base/0005-eglfs-avoid-breaking-compilation-for-obscure-EGLNativeDisplayType-types.patch Upstream +package/qt5/qt5base/0006-Fix-build-on-riscv32.patch Upstream +package/qt5/qt5base/0007-src-corelib-configure.json-fix-atomicfptr-detection.patch Upstream +package/qt5/qt5base/0008-eglconvenience-add-missing-QList-include.patch Upstream +package/qt5/qt5declarative/0001-qsgtexture-fix-debug-build-with-uclibc.patch Upstream +package/qt5/qt5declarative/0002-qv4regexp_p-needs-c-limits-include-instead-of-plain-.patch Upstream +package/qt5/qt5enginio/0001-Do-not-use-deprecated-QLinkedList.patch Upstream +package/qt5/qt5location/0001-3rdparty-mapbox-gl-native-fix-musl-compile-pthread_g.patch Upstream +package/qt5/qt5script/0001-Detect-32-bits-armv8-a-architecture.patch Upstream +package/qt5/qt5tools/0001-Disable-designer-tool-fixes-configure-error.patch Upstream +package/qt5/qt5webengine-chromium/0001-Add-python3-build-support.patch Upstream +package/qt5/qt5webengine-chromium/0002-Don-t-rebase-sysroot-path.patch Upstream +package/qt5/qt5webengine/0001-gn.pro-don-t-link-statically-with-libstc.patch Upstream +package/qt5/qt5webengine/0002-Add-python3-build-support.patch Upstream +package/qt5/qt5webkit/0001-WinCairo-PlayStation-ICU-68.1-no-longer-exposes-FALS.patch Upstream +package/qt5/qt5webkit/0002-Fix-compilation-with-Python-3.9-avoid-passing-encodi.patch Upstream +package/qt5/qt5webkit/0003-Let-Bison-generate-the-header-directly-to-fix-build-.patch Upstream +package/qt5/qt5webkit/0004-Remove-invalid-g_object-declarations-to-fix-build-wi.patch Upstream +package/qt5/qt5webkit/0005-Add-support-for-ARC-processors.patch Upstream +package/qt5/qt5webkit/0006-Warnings-due-to-AppSinkCallbacks-struct-growth-https.patch Upstream +package/qt5cinex/0001-Fix-execution-problem-with-Qt5.3.patch Upstream +package/quagga/0001-fix-ipctl-forwarding.patch Upstream +package/quagga/0002-lib-prefix.h-fix-build-with-gcc-10.patch Upstream +package/quagga/0003-Fix-build-with-gcc-10.patch Upstream +package/quotatool/0001-fix-missing-__P-definition-for-musl-compile.patch Upstream +package/racehound/0001-Fix-module-install-path-lib-instead-of-usr-lib-prefi.patch Upstream +package/rapidxml/0001-ensure-internal-print-operations-are-declared-before.patch Upstream +package/raspberrypi-usbboot/0001-Makefile-allow-passing-CFLAGS-LDFLAGS.patch Upstream +package/rdesktop/0001-8bit-colors.patch Sob Upstream +package/read-edid/0001-Fix-install-file-list.patch Upstream +package/read-edid/0002-Fix-compiler-check.patch Upstream +package/read-edid/0003-fix-build-with-gcc-10.patch Upstream +package/readline/0001-curses-link.patch Upstream +package/redis/0001-uclibc.patch Upstream +package/redis/0002-largefile-conditional-define.patch Upstream +package/redis/0003-redis.conf-adjust-defauts-for-buildroot.patch Upstream package/redis/S50redis Shellcheck Variables package/restorecond/S02restorecond Shellcheck +package/ripgrep/0001-puts-jemalloc-allocator-behind-a-cargo-feature-flag.patch Upstream +package/riscv-isa-sim/0001-riscv-disable-precompiled-headers.patch Upstream package/rng-tools/S21rngd Shellcheck Variables +package/rocksdb/0001-build_tools-build_detect_platform-fix-C-tests.patch Upstream +package/rp-pppoe/0001-src-pppoe.h-fix-build-with-musl-libc.patch Upstream +package/rpcbind/0001-Remove-yellow-pages-support.patch Upstream package/rpcbind/S30rpcbind EmptyLastLine Indent Variables -package/rubix/0002-misc-fixes.patch Sob +package/rpi-userland/0001-Add-.pc-files-for-the-OpenGLESv2-EGL-and-bcm_host-li.patch Upstream +package/rpi-userland/0002-interface-remove-faulty-assert-to-make-weston-happy-.patch Upstream +package/rpi-userland/0003-Disable-Werror-everywhere.patch Upstream +package/rpi-userland/0004-host-applications-disable-missing-applications.patch Upstream +package/rpi-userland/0005-dtmerge-add-missing-include-for-va_list.patch Upstream +package/rpi-userland/0006-interface-vcos-pthreads-CMakeLists.txt-fix-build-wit.patch Upstream +package/rpi-userland/0007-GLES2-gl2ext.h-add-GLint64-GLuint64-and-GLsync-typed.patch Upstream +package/rt-tests/0001-Fix-a-build-issue-with-uClibc-ng.patch Upstream +package/rt-tests/0002-Makefile-drop-explicit-undefine-PYLIB-for-compatibil.patch Upstream +package/rtl_433/0001-CMakeLists.txt-use-pkg-config-to-detect-openssl-when.patch Upstream +package/rtl_433/0002-minor-Fix-mongoose-build-without-threads.patch Upstream +package/rtmpdump/0001-include-limits.h.patch Upstream +package/rtorrent/0001-Added--disable-execinfo-option-to-configure.patch Upstream +package/rtty/0001-CMakeLists.txt-prefer-pkg_check_modules.patch Upstream +package/rubix/0001-dont-use-legacy-functions.patch Upstream +package/rubix/0002-misc-fixes.patch Sob Upstream +package/ruby/0001-Fix-build-with-LibreSSL-3-5.patch Upstream +package/rygel/0001-build-Add-man_pages-build-options.patch Upstream +package/rygel/0002-meson.build-fix-g_ir_compiler-calls.patch Upstream package/rygel/S99rygel Indent Shellcheck Variables +package/s6-linux-init/0001-configure-add-D_GNU_SOURCE.patch Upstream +package/s6-linux-utils/0001-src-s6-linux-utils-rngseed.c-fix-build-with-glibc.patch Upstream +package/safeclib/0001-fix-armv7-asm-inline-error-GH-115.patch Upstream +package/samba4/0001-libreplace-disable-libbsd-support.patch Upstream +package/samba4/0002-build-find-pre-built-heimdal-build-tools-in-case-of-.patch Upstream +package/samba4/0003-ldap_message_test.c-include-stdint.h-before-cmoka.h.patch Upstream package/samba4/S91smb Indent Shellcheck Variables +package/sane-backends/0001-sane_backend-add-missing-config.h.patch Upstream +package/screen/0001-Do-not-use-memcpy-as-an-alternative-for-bcopy-memmov.patch Upstream +package/screen/0002-Do-not-create-backup-of-old-installed-binary.patch Upstream +package/screen/0003-Change-binary-permission-flags-even-if-chown-fails.patch Upstream +package/screen/0004-Support-overriding-SCREEN-to-get-a-non-versioned-bin.patch Upstream +package/screen/0005-Renamed-sched.h-to-eventqueue.h.patch Upstream +package/screen/0006-comm.h-now-depends-on-term.h.patch Upstream +package/screen/0007-comm.h-needed-for-list_-display-generic-.o.patch Upstream +package/scrub/0001-configure-ac-make-sure-m4-macros-are-included-in-the-build.patch Upstream +package/sdl/0001-use-correct-directfb-config.patch Upstream +package/sdl/0002-fix-compilation-with-libx11.patch Upstream +package/sdl/0003-SDL_x11yuv.c-fix-possible-use-after-free.patch Upstream +package/sdl_mixer/0001-Add-Libs.private-field-to-pkg-config-file.patch Upstream +package/sdl_mixer/0002-configure__set_macro_directory.patch Upstream +package/sdl_mixer/0003-configure.ac-fix-static-linking-with-tremor.patch Upstream +package/sdl_sound/0001-fix-constness.patch Upstream +package/sdl_sound/0002-remove-werror.patch Upstream +package/sdl_sound/0003-renamed-physfs-export.patch Upstream package/seatd/S70seatd NotExecutable Variables +package/sedutil/0001-Common-log.h-time-2-needs-time.h.patch Upstream +package/sentry-native/0001-sentry.h-include-ucontext.h.patch Upstream package/ser2net/S50ser2net Indent Shellcheck Variables +package/setools/0001-Do-not-export-use-setools.InfoFlowAnalysis-and-setoo.patch Upstream +package/setserial/0001-build-system-fix.patch Upstream +package/setserial/0002-tiocghayesesp-build-fix.patch Upstream +package/shadowsocks-libev/0001-configure.ac-use-pkg-config-to-find-netfilter_conntr.patch Upstream +package/shadowsocks-libev/0002-fix-maybe-uninitialized-errors.patch Upstream +package/shadowsocks-libev/0003-lib-Makefile.am-remove-static-from-LDFLAGS.patch Upstream +package/shairport-sync/0001-configure.ac-find-sndfile-through-pkg-config.patch Upstream package/shairport-sync/S99shairport-sync Indent Shellcheck Variables +package/shapelib/0001-Remove-double-free-in-contrib-shpsrt.patch Upstream +package/shared-mime-info/0001-Remove-incorrect-dependency-from-install-data-hook.patch Upstream +package/shellinabox/0001-Makefile-disable-always-building-statically.patch Upstream +package/shellinabox/0002-CVE-2018-16789-fix-for-broken-multipart-form-data.patch Upstream package/skeleton-init-systemd/fakeroot_tmpfiles.sh Shellcheck +package/slang/0001-slsh-libs.patch Upstream package/smcroute/S41smcroute Indent NotExecutable Variables +package/smstools3/0001-fix-Makefile.patch Upstream +package/smstools3/0002-fix-build-with-gcc-10.x.patch Upstream package/smstools3/S50smsd Shellcheck Variables -package/solarus/0002-Add-a-basic-FindOpenGLES2.cmake.patch Sob +package/snmppp/0001-fix-build-without-v3.patch Upstream +package/snort/0001-configure.in-Avoid-path-poisoning-with-libpcap.patch Upstream +package/snort/0002-configure.in-Allow-to-override-the-INADDR_NONE-check.patch Upstream +package/snort/0003-configure.in-convert-AC_RUN_IFELSE-to-AC_CHECK_MEMBE.patch Upstream +package/snort/0004-configure.in-convert-AC_RUN_IFELSE-to-AC_COMPILE_IFE.patch Upstream +package/snort/0005-fix-sparc.patch Upstream +package/snort/0006-Fix-compile-error-when-building-against-uclibc-or-mu.patch Upstream +package/snort/0007-Fix-error-when-building-on-a-Fedora-host-machine.patch Upstream +package/snort/0008-Fix-NO-OPTIMIZE.patch Upstream +package/socat/0001-no-documentation.patch Upstream +package/socat/0002-compat-set-NETDB_INTERNAL.patch Upstream +package/socketcand/0001-Fix-GCC10-build-failure.patch Upstream +package/softether/0001-Create-autotools-plumbing-for-SoftEther.patch Upstream +package/softether/0002-Create-libsoftether.so-and-dynamically-link.patch Upstream +package/softether/0003-use-fhs-install-directories.patch Upstream +package/softether/0004-create-non-forking-softetherd-for-upstart-and-systemd.patch Upstream +package/softether/0005-change-GetExeDir-to-GetStateDir-in-Cedar-and-Mayaqua.patch Upstream +package/softether/0006-cross-compile.patch Upstream +package/softether/0007-iconv.patch Upstream +package/softether/0008-librt.patch Upstream +package/softether/0009-uclibc-ai-addrconfig.patch Upstream +package/solarus/0001-cmake-remove-Werror.patch Upstream +package/solarus/0002-Add-a-basic-FindOpenGLES2.cmake.patch Sob Upstream +package/sox/0001-uclibc.patch Upstream +package/sox/0002-configure.ac-put-back-disable-stack-protector.patch Upstream +package/sox/0003-configure.ac-fix-static-linking-with-id3tag.patch Upstream +package/sox/0004-configure.ac-fix-static-linking-with-magic.patch Upstream +package/sox/0005-configure.ac-fix-static-linking-with-sndfile.patch Upstream +package/sp-oops-extract/0001-Make-the-Makefile-more-cross-compiler-friendly.patch Upstream +package/sp-oops-extract/0002-stdint-cleanup.patch Upstream +package/spandsp/0001-configure.ac-fix-AVX-SSE-and-MMX-options.patch Upstream +package/speex/0001-thumb2-support.patch Upstream package/squid/S97squid Indent Shellcheck Variables +package/sredird/0001-termio.patch Upstream +package/sscep/0001-Fix-getopt-linking-error.patch Upstream package/sshguard/S49sshguard Indent package/sslh/S35sslh Indent Shellcheck Variables +package/start-stop-daemon/0001-add-uclibc-alias-and-musl.patch Upstream +package/start-stop-daemon/0002-just-warn-on-missing-arch.patch Upstream +package/statserial/0001-ncurses-link.patch Upstream package/stunnel/S50stunnel Indent Shellcheck Variables +package/sudo/0001-configure.ac-fix-openssl-static-build.patch Upstream package/supervisor/S99supervisord Variables +package/suricata/0001-configure.ac-allow-the-user-to-override-RUST_TARGET.patch Upstream package/suricata/S99suricata Shellcheck package/swupdate/swupdate.sh Shellcheck +package/sylpheed/0001-harden-link-checker-before-accepting-click.patch Upstream +package/sysprof/0001-define-NT_GNU_BUILD_ID.patch Upstream package/sysrepo/S51sysrepo-plugind Indent Shellcheck +package/sysvinit/0001-Makefile-disable-stack-protector-strong.patch Upstream +package/tar/0001-lib-getrandom.c-fix-build-with-uclibc-1.0.35.patch Upstream package/targetcli-fb/S50target Shellcheck Variables +package/taskd/0001-Fix-missing-cmakedefine-HAVE_GET_CURRENT_DIR_NAME.patch Upstream +package/taskd/0002-Use-correct-variables-for-GnuTLS-detection.patch Upstream +package/taskd/0003-CMakeLists-use-pkg-config-uuid-detection.patch Upstream package/tcf-agent/S55tcf-agent Shellcheck Variables +package/tcl/0001-Disable-tcl-compatibility-layers.patch Upstream +package/tesseract-ocr/0001-Check-if-platform-supports-feenableexcept.patch Upstream +package/tesseract-ocr/0002-configure.ac-fix-build-on-aarch64_be.patch Upstream +package/tftpd/0001-Use-extern-qualifier-to-fix-gcc-10.x-build.patch Upstream package/tftpd/S80tftpd-hpa Indent Shellcheck Variables +package/ti-gfx/0001-newclkapi.patch Upstream +package/ti-gfx/0002-fix-build-omaplfb-linux.patch Upstream +package/ti-gfx/0003-km_install_modules.patch Upstream package/ti-gfx/S80ti-gfx Shellcheck Variables package/ti-gfx/esrev.sh Shellcheck +package/ti-sgx-um/0001-Makefile-do-not-install-init-script.patch Upstream package/ti-sgx-um/S80ti-sgx Variables +package/ti-utils/0001-plt.h-fix-build-with-gcc-10.patch Upstream +package/tinyalsa/0001-include-time.h-before-asound.h.patch Upstream +package/tinycbor/0001-Makefile-add-DISABLE_WERROR.patch Upstream +package/tinycompress/0001-wave-add-time.h-missing-header-inclusion.patch Upstream +package/tinydtls/0001-sha2-sha2.c-fix-build-on-big-endian.patch Upstream +package/tinymembench/0001-arm-fix-build-on-Thumb-only-architectures.patch Upstream +package/tinyproxy/0001-prevent-junk-from-showing-up-in-error-page-in-invalid-requests.patch Upstream +package/tinyxml/0001-In-stamp-always-advance-the-pointer-if-p-0xef.patch Upstream package/tpm2-abrmd/S80tpm2-abrmd Indent Shellcheck Variables +package/tpm2-tss/0001-Temporary-fix-for-build-without-C.patch Upstream package/transmission/S92transmission ConsecutiveEmptyLines Indent Shellcheck Variables package/triggerhappy/S10triggerhappy Indent Shellcheck Variables +package/trinity/0001-Fix-build-with-GCC-10.patch Upstream +package/trinity/0002-net-proto-ip-raw.c-fix-build-with-kernel-5.13.patch Upstream +package/trinity/0003-Use-fcntl-h-for-dev_t-mode_t.patch Upstream +package/trinity/0004-drop-decnet.patch Upstream +package/trousers/0001-Check-if-the-compiler-understands-pie-and-relro-options.patch Upstream +package/trousers/0002-Check-that-getpwent_r-is-available-before-using-it.patch Upstream +package/trousers/0003-Fix-build-with-LibreSSL-2-7.patch Upstream +package/tstools/0001-build-get-along-with-buildroot.patch Upstream +package/tvheadend/0001-no-check_config.patch Upstream package/tvheadend/S99tvheadend Indent Shellcheck Variables +package/uboot-tools/0001-drop-configh-from-tools.patch Upstream +package/uboot-tools/0002-tools-only-in-no-dot-config-targets.patch Upstream +package/uboot-tools/0003-tools-Makefile-fix-C-LD-FLAGS-with-CROSS_BUILD_TOOLS.patch Upstream +package/ubus/0001-Install-server-and-client-examples.patch Upstream +package/udpcast/0001-fix-musl-build.patch Upstream +package/uemacs/01-clear-ixon-termios-flag.patch Upstream +package/uhd/0001-host-CMakeLists-add-boost-unit_test_framework-requir.patch Upstream +package/uhttpd/0001-Remove-Werror.patch Upstream +package/uhttpd/0002-Fix-TCP_FASTOPEN-related-compile-error.patch Upstream +package/umtprd/0001-Fix-output_dir-make-dependency.patch Upstream package/unbound/S70unbound Shellcheck +package/unifdef/0001-Makefile-fix-error-on-install.patch Upstream package/unscd/S46unscd Indent Shellcheck Variables +package/unzip/0001-Add-a-CMakeFile.txt-to-ease-cross-compilation.patch Upstream package/upmpdcli/S99upmpdcli Indent Shellcheck Variables +package/uqmi/0001-uqmi-avoid-gcc-12.x-false-error-reporting-storing-th.patch Upstream +package/urg/0001-select-h.patch Upstream +package/urg/0002-urg-gcc6-fix-narrowing-conversion.patch Upstream +package/usb_modeswitch/0001-fix-systemd-detection.patch Upstream package/usbguard/S20usbguard Indent Shellcheck Variables +package/usbmount/0001-rules-fix.patch Upstream +package/usbmount/0002-use-udev-environment-instead-of-blkid.patch Upstream +package/ushare/0001-Don-t-build-po-files-if-NLS-is-disabled.patch Upstream +package/ussp-push/0001-fix-build-against-bluez-4.patch Upstream +package/ussp-push/0002-fix-build-again-obex-bluez.patch Upstream +package/ussp-push/0003-add-OBEX_CharToUnicode.patch Upstream +package/vala/0001-dont-add-dirty-to-valac-version.patch Upstream package/vala/vala-wrapper Shellcheck +package/valgrind/0001-workaround-SIGSEGV-on-PPC.patch Upstream +package/valgrind/0002-Define-PTRACE_GETSIGINFO-on-PowerPC-when-not-availab.patch Upstream +package/vboot-utils/0001-Add-missing-definition-of-MTD_CHAR_MAJOR.patch Upstream +package/vboot-utils/0002-Add-missing-header-include-for-ssize_t.patch Upstream +package/vboot-utils/0003-Avoid-RSA-type-redefinition.patch Upstream +package/vboot-utils/0004-Disable-static-futility.patch Upstream +package/vboot-utils/0005-include-sys-sysmacros.h-for-major.patch Upstream +package/vboot-utils/0006-Update-for-openssl-1.1.patch Upstream +package/vboot-utils/0007-Make-vboot_version-extern-in-header.patch Upstream +package/vdr/0001-getloadavg.patch Upstream +package/vlc/0001-Disable-building-of-statically-linked-vlc-binary.patch Upstream +package/vlc/0002-automake-add-subdir-objects-option.patch Upstream +package/vlc/0003-build-use-pkg-config-to-get-tremor-libs.patch Upstream +package/vlc/0004-Fix-build-error-using-uClibc-by-adding-sys-types.h.patch Upstream +package/vlc/0005-Don-t-assume-strerror_l-is-available.patch Upstream +package/vlc/0006-posix-remove-ancient-run-time-fallback-to-real-time-.patch Upstream +package/vlc/0007-Add-support-for-freerdp2.patch Upstream +package/vlc/0008-configure.ac-also-use-AC_PATH_PROG-to-check-for-wayl.patch Upstream +package/vlc/0009-modules-video_filter-opencv_example.cpp-fix-build-wi.patch Upstream +package/vlc/0010-opengl-missing-library-check.patch Upstream +package/vpnc/0001-Makefile-allow-to-override-the-PREFIX-variable.patch Upstream +package/vpnc/0002-Makefile-allow-to-override-the-version.patch Upstream +package/vpnc/0003-Makefile-allow-passing-custom-CFLAGS-CPPFLAGS.patch Upstream +package/vpnc/0004-Makefile-provide-an-option-to-not-build-manpages.patch Upstream +package/vpnc/0005-Makefile-allow-passing-a-custom-path-to-libgcrypt-co.patch Upstream +package/vpnc/0006-config.c-Replace-deprecated-SUSv3-functions-with-POS.patch Upstream +package/vpnc/0007-sysdep.h-don-t-assume-error.h-is-available-on-all-Li.patch Upstream +package/vpnc/0008-sysdep.c-don-t-include-linux-if_tun.h-on-Linux.patch Upstream +package/vpnc/0009-config.c-add-missing-sys-ttydefaults.h-include.patch Upstream +package/vsftpd/0001-utmpx-builddef.patch Upstream +package/vsftpd/0002-fix-CVE-2015-1419.patch Upstream +package/vsftpd/0003-Prevent-hang-in-SIGCHLD-handler.patch Upstream package/vsftpd/S70vsftpd Indent Shellcheck Variables +package/vte/0001-build-Fix-build-with-kernel-headers-from-linux-4-13.patch Upstream +package/vte/0002-build-Fix-check-for-fstack-protector-compiler-support.patch Upstream +package/vtun/0001-fix-installation.patch Upstream +package/vtun/0002-fix-ssl-headers-checks.patch Upstream +package/vtun/0003-openssl11.patch Upstream +package/w_scan/0001-musl.patch Upstream +package/w_scan/0002-si_types-h-fix-build-with-gcc-10.patch Upstream +package/waffle/0001-cmake-forward-cflags-from-.pc-files-to-waffle-cflags.patch Upstream +package/waffle/0002-wayland-fix-build-against-version-1-20.patch Upstream +package/waffle/0003-drop-C-dependency.patch Upstream +package/wampcc/0001-Add-RISC-V-endian-detection.patch Upstream +package/wampcc/0002-include-wampcc-platform.h-fix-build-with-musl-1.2.0.patch Upstream +package/wampcc/0003-Broken-build-on-Windows.patch Upstream package/watchdogd/S01watchdogd Indent NotExecutable +package/webrtc-audio-processing/0001-Proper-detection-of-cxxabi.h-and-execinfo.h.patch Upstream +package/wget/0001-lib-getrandom.c-fix-build-with-uclibc-1.0.35.patch Upstream +package/wilc-driver/0001-cfg80211.c-fix-missing-prandom_u32-with-Linux-6.1.0.patch Upstream +package/wilc-driver/0002-spi.c-fix-build-failure-on-remove-callback.patch Upstream +package/wilc-driver/0003-cfg80211.c-fix-build-failure-with-Linux-5.19-and-6.1.patch Upstream +package/wilc-driver/0004-Fix-struct-station_parameters-Linux-6.1-build-failur.patch Upstream +package/wilc-driver/0005-Fix-cast-warnings.patch Upstream +package/wipe/0001-musl.patch Upstream +package/wireless_tools/0001-remove-bzero.patch Upstream +package/wireshark/0001-cmake-lemon-wipe-CMAKE_-EXE_LINKER_FLAGS-SYSROOT-if-.patch Upstream +package/wlroots/0001-Add-feature-macros-to-more-C-files-.patch Upstream +package/woff2/0001-CMake-Handle-multiple-libraries-being-returned-for-B.patch Upstream +package/wpa_supplicant/0001-build-re-enable-options-for-libwpa_client.so-and-.patch Upstream package/wpa_supplicant/ifupdown.sh Shellcheck +package/wpewebkit/0001-FELightningNEON.cpp-fails-to-build-NEON-fast-path-se.patch Upstream +package/x11r7/xapp_luit/0001-posix-openpt.patch Upstream package/x11r7/xapp_xdm/S99xdm Indent Variables -package/x11r7/xdriver_xf86-video-mach64/0001-cross-compile.patch Sob -package/x11r7/xdriver_xf86-video-savage/0001-cross-compile.patch Sob -package/x11r7/xdriver_xf86-video-tdfx/0001-cross.patch Sob +package/x11r7/xcursor-transparent-theme/0001-fix-symlink.patch Upstream +package/x11r7/xdriver_xf86-input-evdev/0001-build-get-rid-of-sdkdir.patch Upstream +package/x11r7/xdriver_xf86-input-joystick/0001-build-get-rid-of-sdkdir.patch Upstream +package/x11r7/xdriver_xf86-input-libinput/0001-build-get-rid-of-sdkdir.patch Upstream +package/x11r7/xdriver_xf86-input-mouse/0001-build-get-rid-of-sdkdir.patch Upstream +package/x11r7/xdriver_xf86-input-synaptics/0001-build-get-rid-of-sdkdir.patch Upstream +package/x11r7/xdriver_xf86-video-fbturbo/0001-sunxi_x_g2d-drop-unused-dri2-include.patch Upstream +package/x11r7/xdriver_xf86-video-fbturbo/0002-Use-own-thunk-functions-instead-of-fbdevHW-Weak.patch Upstream +package/x11r7/xdriver_xf86-video-fbturbo/0003-Update-for-1.20-ABI.patch Upstream +package/x11r7/xdriver_xf86-video-fbturbo/0004-xorg.conf-add-mandatory-modules-fb-shadow-fbdevhw.patch Upstream +package/x11r7/xdriver_xf86-video-fbturbo/0005-backing_store_tuner-struct-_Window-backStorage-is-go.patch Upstream +package/x11r7/xdriver_xf86-video-imx/0001-Update-to-newer-swap-macros.patch Upstream +package/x11r7/xdriver_xf86-video-imx/0002-Fix-error-unknown-type-name-uint.patch Upstream +package/x11r7/xdriver_xf86-video-imx/0003-support-glibc-2.20.patch Upstream +package/x11r7/xdriver_xf86-video-imx/0004-Make-video-API-forward-and-backward-compatible.patch Upstream +package/x11r7/xdriver_xf86-video-imx/0005-xf86-video-imxfb-fix-m4-hardcodded-paths.patch Upstream +package/x11r7/xdriver_xf86-video-imx/0006-xserver-1.14-compat.patch Upstream +package/x11r7/xdriver_xf86-video-mach64/0001-cross-compile.patch Sob Upstream +package/x11r7/xdriver_xf86-video-nouveau/0001-nouveau-fixup-driver-for-new-X-server-ABI.patch Upstream +package/x11r7/xdriver_xf86-video-tdfx/0001-cross.patch Sob Upstream +package/x11r7/xserver_xorg-server/0001-include-misc.h-fix-uClibc-build.patch Upstream package/x11r7/xserver_xorg-server/S40xorg Shellcheck Variables +package/x11vnc/0001-Fix-build-on-32bit-arches-with-64bit-time_t.patch Upstream +package/x11vnc/0002-scan-limit-access-to-shared-memory-segments-to-current-user.patch Upstream +package/x265/0001-fix-gcc-options.patch Upstream +package/xen/0001-9pfs-include-linux-limits.h-for-XATTR_SIZE_MAX.patch Upstream +package/xen/0002-Fix-build-with-64-bits-time_t.patch Upstream +package/xen/0003-libs-light-fix-tv_sec-printf-format.patch Upstream +package/xen/0004-libs-light-fix-tv_sec-fprintf-format.patch Upstream +package/xenomai/3.0.10/0001-lib-boilerplate-iniparser-Allow-building-with-GCC-10-2-2020101.patch Upstream +package/xenomai/3.0.10/0002-Add-disable-demo-testsuite-options.patch Upstream +package/xenomai/3.0.10/0003-lib-cobalt-copperplate-Use-valid-addresses-for-pthread_setspecific.patch Upstream +package/xfsprogs/0001-mdrestore-do-not-do-dynamic-linking-of-libtool-libra.patch Upstream +package/xfsprogs/0002-libxfs-do-not-try-to-run-the-crc32selftest.patch Upstream +package/xinetd/0001-ar.patch Upstream +package/xinetd/0002-destdir.patch Upstream +package/xinetd/0003-rpc-fix.patch Upstream +package/xinetd/0004-configure-rlim_t.patch Upstream +package/xinetd/0005-CVE-2013-4342-xinetd-ignores-user-and-group-directiv.patch Upstream package/xl2tp/xl2tpd TrailingSpace +package/xml-security-c/0001-fix-build-with-libressl-3.5.0.patch Upstream +package/yajl/0001-Let-the-shared-and-the-static-library-have-the-same-.patch Upstream +package/yajl/0002-cmake-disable-shared-library-build-when-BUILD_SHARED.patch Upstream +package/yajl/0003-Link-with-shared-libyajl-in-a-shared-build.patch Upstream +package/yajl/0004-Link-libyajl-_s-with-libm-when-isnan-is-not-brought-.patch Upstream +package/ympd/0001-only-c-language.patch Upstream +package/ympd/0002-added-forward-declarations.patch Upstream +package/zabbix/0001-m4-netsnmp.m4-fix-shared-netsnmp-build.patch Upstream +package/zabbix/0002-fix-build-with-libressl-3.5.0.patch Upstream +package/zbar/0001-python-enum-fix-build-for-Python-3.11.patch Upstream +package/zic/0001-remove-dependency-check-on-version-file.patch Upstream +package/zip/0001-configure-Remove-Check-C-compiler-type-optimization-.patch Upstream +package/zip/0002-configure-Don-t-use-host-CPP.patch Upstream +package/zip/0003-Makefile-Use-CFLAGS-from-command-line.patch Upstream +package/zip/0004-configure-use-LDFLAGS-from-command-line.patch Upstream +package/zip/0005-unix-configure-remove-GID-UID-size-check.patch Upstream +package/zip/0006-unix-configure-borrow-the-LFS-test-from-autotools.patch Upstream +package/zip/0007-timezone.c-needs-time.h-fixes-musl-compile.patch Upstream +package/zip/0008-fix-musl-static-build.patch Upstream +package/zmqpp/0001-Allow-building-shared-or-static-library-only.patch Upstream +package/znc/0001-LibreSSL-3.5-opaqued-structures.patch Upstream +package/znc/0002-Fix-build-with-libressl.patch Upstream +package/znc/0003-DH_set0_pqg-and-DH_get0_key-have-existed-since-Libre.patch Upstream +package/zziplib/0001-implant-ZZIP_LIBLATEST-for-zzip_lib.patch Upstream +support/dependencies/check-host-asciidoc.sh Shellcheck +support/dependencies/check-host-cmake.sh Shellcheck +support/dependencies/check-host-gzip.sh Shellcheck +support/dependencies/check-host-lzip.sh Shellcheck +support/dependencies/check-host-make.sh Shellcheck +support/dependencies/check-host-python3.sh Shellcheck +support/dependencies/check-host-tar.sh Shellcheck +support/dependencies/check-host-xzcat.sh Shellcheck +support/dependencies/dependencies.sh Shellcheck +support/download/bzr ConsecutiveEmptyLines Shellcheck +support/download/cargo-post-process Shellcheck +support/download/check-hash Shellcheck +support/download/cvs Shellcheck +support/download/dl-wrapper Shellcheck +support/download/file Shellcheck +support/download/go-post-process Shellcheck +support/download/hg Shellcheck +support/download/scp Shellcheck +support/download/sftp Shellcheck +support/download/wget Shellcheck +support/gnuconfig/update Shellcheck +support/libtool/buildroot-libtool-v1.5.patch ApplyOrder Sob Upstream +support/libtool/buildroot-libtool-v2.2.patch ApplyOrder Sob Upstream +support/libtool/buildroot-libtool-v2.4.4.patch ApplyOrder Upstream +support/libtool/buildroot-libtool-v2.4.patch ApplyOrder Sob Upstream +support/misc/relocate-sdk.sh Shellcheck +support/scripts/apply-patches.sh Shellcheck +support/scripts/br2-external Shellcheck +support/scripts/check-bin-arch Shellcheck +support/scripts/check-host-rpath Shellcheck +support/scripts/expunge-gconv-modules Shellcheck +support/scripts/fix-configure-powerpc64.sh EmptyLastLine +support/scripts/generate-gitlab-ci-yml Shellcheck +support/scripts/mkmakefile ConsecutiveEmptyLines Shellcheck +support/scripts/mkusers Shellcheck +support/scripts/setlocalversion Shellcheck +support/testing/tests/core/post-build.sh Shellcheck +support/testing/tests/package/test_opkg/post-build.sh Shellcheck +support/testing/tests/utils/test_get_developers/0001-package-binutils-change-.mk.patch NumberedSubject Upstream +utils/checkpackagelib/lib_patch.py Flake8 diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 000000000000..4acaf3486be0 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,29 @@ +root = true + +[*] +charset = utf-8 +end_of_line = lf +indent_style = space +indent_size = 4 +tab_width = 8 +trim_trailing_whitespace = true +insert_final_newline = true + +[DEVELOPERS] +indent_style = tab +indent_size = tab + +[{Config*.in*,linux/Config.ext.in}] +indent_style = tab +indent_size = tab + +[{Makefile*,*.mk}] +indent_style = tab +indent_size = tab + +[S{0..9}{0..9}*] +indent_style = tab +indent_size = tab + +[*.adoc] +trim_trailing_whitespace = false diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ed17bb14b9a4..3d7719568f06 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -10,6 +10,11 @@ stages: generate-gitlab-ci-yml: stage: generate-gitlab-ci script: ./support/scripts/generate-gitlab-ci-yml support/misc/gitlab-ci.yml.in > generated-gitlab-ci.yml + retry: + max: 2 + when: + - runner_system_failure + - stuck_or_timeout_failure artifacts: when: always paths: diff --git a/CHANGES b/CHANGES index a03a4876b8a0..f927b7df659b 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,736 @@ +2023.11, released December 4th, 2023 + + Various fixes. + + Defconfigs: Toradex apalis i.mx6: Add download hashes for + Linux and U-Boot. + + Updated/fixed packages: cog, freescale-imx, imagemagick, + libde265, libmemcached, libpjsip, libusb-compat, + libzenoh-pico, linux-tools, lttng-modules, mariadb, monit, + openfpgaloader, perl, putty, python-numpy, rtty, speechd, + wireshark, xenomai, xtables-addons, zfs + +2023.11-rc2, released November 29th, 2023 + + Fixes all over the tree. + + Defconfigs: Raspberry pi: Fix bluetooth autoprobing, + rockpro64: Fix U-Boot build, bump rootfs size, vim3: Use + device tree from Linux rather than from U-Boot. + + Updated/fixed packages: erlang, exfatprogs, flutter-engine, + flutter-sdk-bin, gcc, gsl, intel-microcode, janet, + kodi-pvr-hts, libgdiplus, libpam-tacplus, libxml2, + libzenoh-pico, memcached, motion, netsnmp, nodejs, oatpp, + openrc, opensc, perl, postgresql, python-msgpack, qemu, + refpolicy, samba4, squid, vim, vlc, xwayland, zfs + + Issues resolved (http://bugs.uclibc.org): + + #15856: Using BR2_CONFIG= on a different file-system... + +2023.11-rc1, released November 14th, 2023 + + Fixes all over the tree and new features. + + Architecture: MIPS IV (re-)added. The mutually exclusive ABI + selection dropped for PowerPC. + + Toolchain: + + - Support for GDB 13.2, make GDB 12.x the default + + - Glibc bumped to 2.38 + + - Bootlin external toolchains updated to 2023.08, bringing + support for Aarch64 BE with musl. + + - Motorola 68K w/MMU support added for glibc and musl. + + - License info added for GCC + + Infrastructure: + + - The CMake infrastructure now supports building packages with + ninja instead of make (based on _CMAKE_BACKEND). + + - The RPATH fixup done at the end of the build is now done in + parallel (according to BR2_JLEVEL). + + - Packages downloaded from Subversion repos no longer + retrieves svn:externals unless _SVN_EXTERNALS is set to + YES. + + - Packages where a free-form version/site can be specified + (E.G. Linux, U-Boot, ..) can now have the corresponding + tarballs of these custom downloads checked by the download + infrastructure based on .hash files in the global patch + directory. These hashes are optional unless + BR2_DOWNLOAD_FORCE_CHECK_HASHES is enabled. + + A utils/add-custom-hashes helper script has been added to + assist in managing such hash files. + + - Various improvements to utils/docker-run to handle external + (BR2_DL_DIR defined in environment) download directory, + proxy configuration, SELinux and out of tree (O=) builds. + + New defconfigs: AMD Zynq ZC702, ASUS Tinker-s rk3288, ICnova + A20-adb4006, Khadas vim3, Libre Computer ROC-RK3399-PC, + Microchip PolarFire SoC Icicle Kit, NXP imxrt1050-evk, Pine64 + pinecube, Sipeed LicheePi Nano, Synopsys ARC700 nSIM, TI + SK-AM62 and TI SK-AM64 + + New packages: ti-k3-boot-firmware, ti-k3-image-gen, + amlogic-boot-fip, criu, cutekeyboard, depot-tools, fft-eval, + firewalld, flutter-engine, flutter-gallery, flutter-pi, + flutter-sdk-bin, ledmon, libcanberra, libnvme, libsoup3, + libspdm, libucontext, libzenoh-pico, + microchip-hss-payload-generator, nodejs-bin, nushell, + nvidia-persistenced, oatpp, onevpl-intel-gpu, onevpl, + python-calver, python-distlib, python-jeepney, + python-jsonschema-specifications, python-kmod, + python-pysensors, python-referencing, python-segno, + python-tftpy, python-trove-classifiers, + python-types-python-dateutil, python-versioneer, + qoriq-fm-ucode, qt6core5compat, rauc-hawkbit-updater, + rust-bindgen, spirv-headers, spirv-tools, vulkan-loader, + vulkan-tools + + Removed packages: google-material-design-icons, libtextstyle, + python-pyxb + + Issues resolved (http://bugs.uclibc.org): + + #14366: Nodejs fails with "version `GLIBC_2.34' not found".. + #14741: e2fsck is failing during cronjob build where fail... + #15628: Missing dependencies in BR2_PACKAGE_PYTHON_MAKO + #15733: xfsprogs outdated + #15772: lz4 failed to compile with gcc 10.4.0 + #15778: strace comilation fails on Fedora39/gcc13 + #15787: atmel_sama5d3_xplained_mmc_defconfig: Missing... + #15790: at91sam9x5ek_dev_defconfig: Missing... + #15808: connman is not supported on musl + #15814: C++ not supported by bootlin toolchain + #15820: make linux-menuconfig does not modify correct .config.. + #15823: Installing nodejs modules with native extensions ... + #15826: nodejs modules with native extensions fail to install + #15835: Incompatibility between network-manager and libcurl 8.4 + +2023.08.3, released November 14th, 2023 + + Important / security related fixes. + + Per-package builds: Unbreak SDK relocation logic. Only drop + the hard links for the final host / target directory, fixing a + build time / size regression in 2023.08.2. + + Packages where a free-form version/site can be specified + (E.G. Linux, U-Boot, ..) can now have the corresponding + tarballs of these custom downloads checked by the download + infrastructure based on .hash files in the global patch + directory. These hashes are optional unless + BR2_DOWNLOAD_FORCE_CHECK_HASHES is enabled. + + A utils/add-custom-hashes helper script has been added to + assist in managing such hash files. + + Defconfigs: Avenger96: Downgrade to TF-A v2.5 to fix boot + issue since 2023.08, stm32mp157a-dk1, stm32mp157c-dk2: Unbreak + TF-A build, stm32mp157c-odessey: Use a fixed TF-A version for + reproducibility + + Updated/fixed packages: apache, arm-trusted-firmware, aufs, + aufs-util, azure-iot-sdk, casync, cjson, clamav, conmon, + cups-filters, dhcpcd, docker-cli, docker-engine, + freeradius-server, go, inadyn, ksmbd-tools, kvmtool, + libgdiplus, libgeos, libmemcached, libmdbx, libopenssl, + libosmium, libtommath, libupnp, libzlib, lightning, linux-pam, + lxc, mender, minizip-zlib, mpd, mxsldr, nano, nettle, + network-manager, nghttp2, nodejs-src, opencv4, + opencv4-contrib, openjdk-bin, openvpn, opusfile, paho-mqtt-c, + pango, perl-lwp-protocol-https, petitboot, php, pistache, + python-django, python-pycryptodomex, python-urllib3, + python-web2py, rabbitmq-c, redis, reproc, + riscv64-elf-toolchain, sedutil, snort3, suricata, tar, tiff, + tor, traceroute, vim, websocketpp, wireshark, wolfssl, + xdg-dbus-proxy, xen, xlib_libX11, xlib_libXpm, zabbix, zchunk + + Issues resolved (http://bugs.uclibc.org): + + #14741: e2fsck is failing during cronjob build where fail... + #15772: lz4 failed to compile with gcc 10.4.0 + #15787: atmel_sama5d3_xplained_mmc_defconfig: Missing... + #15790: at91sam9x5ek_dev_defconfig: Missing... + #15820: make linux-menuconfig does not modify correct .config.. + #15823: Installing nodejs modules with native extensions ... + #15835: Incompatibility between network-manager and libcurl 8.4 + +2023.08.2, released October 15th, 2023 + + Important / security related fixes. + + Defconfigs: Freescale ARM: Add ATF patch to fix build issue + with binutils 2.39+. QEMU Aarch64-virt: Enable ACPI support + for EDK2. Visionfive2: Bump kernel to fix build issue with GCC + 13. + + Per-package builds: Do not use hard links for host / target + dirs, fixing issues with package rebuilds or post-build + scripts modifications. + + Infrastructure: Explicitly disable shuffle mode for Make >= + 4.4 where needed. + + Urandom-scripts: Move seedrng init script to S01 for earlier + random number entrophy initialization. + + Updated/fixed packages: at91bootstrap, batman-adv, bind, cups, + efl, enlightenment, exim, gcc, glibc, gnu-efi, go, gptfdisk, + grub2, gst-omx, gst1-devtools, gst1-libav, gst1-plugins-bad, + gst1-plugins-base, gst1-plugins-good, gst1-plugins-ugly, + gst1-python, gst1-rstp-server, gst1-rtsp-vaapi, gstreamer1, + gstreamer1-editing-services, gtkmm3, libcue, libcurl, + libfastjson, libhtp, libmodplug, librsvg, libvpx, libyang, + linux-pam, linux-tools, mbedtls, mosquitto, mutt, neon, + netsnmp, nmap, nodejs, olsr, openblas, opkg-utils, php, pound, + powertop, python-mako, python3, rauc, rockchip-mali, samba4, + sslh, stress-ng, suricata, syslog-ng, systemd, tar, unifdef, + urandom-scripts, usbguard, webkitgtk, wilc-driver, + wireless-regdb, wpewebkit + + Issues resolved (http://bugs.uclibc.org): + + #15628: Missing dependencies in BR2_PACKAGE_PYTHON_MAKO + #15808: connman is not supported on musl + #15814: C++ not supported by bootlin toolchain + +2023.08.1, released September 27th, 2023 + + Important / security related fixes. + + Updated/fixed packages: agentpp, asterisk, bind, binutils, + conmon, cpio, docker-cli, docker-engine, e2fsprogs, erlang, + esp-hosted, expect, fail2ban, fio, freerdp, fstrcmp, gcc, gdb, + ghostscript, go, haproxy, hwloc, icu, irssi, libcoap, libcurl, + libde265, libheif, libiec61850, libjxl, libopenssl, libpjsip, + libqb, libraw, libssh, libuv, lldpd, mdadm, mutt, ne10, + netatalk, nodejs, nut, openblas, opensc, openvpn, petitboot, + php, pound, pppd, python-pytest, python3, qt5, + rtl8812au-aircrack-ng, sngrep, stress-ng, strongswan, sysstat, + tar, tcl, timescaledb, util-linux, vim, webkitgtk, webp, + wireshark, xserver_xorg-server, xterm, zbar, zxing-cpp, + zynaddsubfx + + Issues resolved (http://bugs.uclibc.org): + + #14366: Nodejs fails with "version `GLIBC_2.34' not found".. + #15787: atmel_sama5d3_xplained_mmc_defconfig: Missing... + #15790: at91sam9x5ek_dev_defconfig: Missing... + +2023.08, released September 6th, 2023 + + Various fixes. + + Defconfigs: BeagleV: Fix build issue with binutils >= + 2.38. Hifive unleashed: U-Boot needs OpenSSL + + Updated/fixed packages: dt, grub2, heirloom-mailx, libgpgme, + libtommath, libxcrypt, log4cxx, mesa3d-demos, openjdk, + openjdk-bin, pam, pcm-tools, pixman, poppler, python-django, + python-ipython, python-pip, python-tornado, zeromq + + New packages: libdecor + +2023.08-rc3, released August 29th, 2023 + + Fixes all over the tree. + + Defconfigs: Avenger96: Bump ATF to 2.9 to fix build warnings + with binutils >= 2.39. CI20: Bump kernel to 5.4.254 to fix + build issue with GCC 12. Hifive unleashed: Add missing + pylibfdt dependency / bump kernel to 5.10.109 to fix build + issue GCC 12. PC x86-64 bios/elf: Add missing libelf + dependency. Sipeed maix sdcard: Fix build issues with + binutils >= 2.38 + + Updated/fixed packages: check, clamav, cups, esp-hosted, + f2fs-tools, freeswitch, gcc, gmp, libks, libmodsecurity, + mosquitto, mpg123, network-manager, php, postgresql, python3, + ramspeed, rtl8189fs, rust, rust-bin, samba4, screen, zlib-ng + +2023.08-rc2, released August 20th, 2023 + + Fixes all over the tree. + + Toolchains: Only show external toolchains based on a GCC + version supporting the selected architecture + variant. Correctly mark Codescape MIPS external toolchains as + not providing a gdbserver. + + Defconfigs: Andes ae350_45: Drop custom U-Boot march setting, + breaking builds with GCC 12. Nitrogen*: Bump + U-Boot/Linux. Nitrogen8*: Use ATF 2.8, fixing array bounds + errors. QEMU m68k: Add Linux patch to fix build issue with + binutils >= 2.41. Raspberrypi*: Enable console on HDMI when + using systemd as well. + + Updated/fixed packages: at91dataflashboot, aubio, berkeleydb, + bwm-ng, ccache, check, chocolate-doom, compiler-rt, composer, + conmon, connman, dav1d, diffutils, dracut, e2fsprogs, elf2flt, + esp-hosted, flite, gcc, gdb, go-bootstrap-stage2, + intel-microcode, kodi-imagedecoder-heif, less, libcoap, + libedit, libglib2, libksba, liblo, libserial, log4cxx, lsof, + luvi, meson, mosquitto, mpd, mpv, mv-ddr-marvell, nftables, + ntpsec, openssh, optee-test, perftest, python-botocore, + python-docker, python-pylibfdt, python3, screenfetch, + sentry-cli, sngrep, stellarium, trinity, tvheadend, uboot, + uclibc, util-linux, xfsprogs, yajl + + New packages: nftables-python, xlib_libXpresent + + Removed packages: lpc32xxcdl + +2023.08-rc1, released August 5, 2023 + + Numerous package updates and fixes, additional runtime tests. + + Toolchain: + - Toolchains from ARM (for ARM, AArch64 and AArch64 BE) + updated to 12.2. + - Support for binutils 2.40 and 2.41 added, binutils 2.37 and + 2.38 removed, binutils 2.40 is now the default + - Support for gcc 13 added, gcc 10 removed, gcc 12 is now the + default + + Architectures: + - Additional x86-64 variants added + - RISC-V vector extension support added + + Infrastructure: + - Go now built in 3 stages to be able to update to Go 1.20.x. + + New defconfigs: rock5b + + Removed defconfigs: qemu_sparc_ss10 + + New packages: composer, conmon, dfu-programmer, esp-hosted, + kodi-imagedecoder-heif, kodi-imagedecoder-raw, libde2654, + libdisplay-info, libheif, llvm-cmake, llvm-libunwind, + lua-dkjson, mbpoll, mdnsd, mhz, opencsd, python-libconf, + python-blinker, python-midiutil, python-rdps-py, python-wheel, + qt6svg, redis-plus-plus, rockchip-rkbin, rtl8822cs, swaybg, + swugenerator + + Removed packages: libasplib, ocf-linux, tovid + +2023.05.3, released September 26th, 2023 + + Important / security related fixes. + + Defconfigs: PC x86-64 bios/efi: Needs libelf. Raspberrypi: + Also enable HDMI console when systemd is used. + + Updated/fixed packages: agentpp, asterisk, at91dataflashboot, + aubio, berkeleydb, bind, bwm-ng, chocolate-doom, clamav, + compiler-rt, connman, cpio, cups, dav1d, diffutils, dracut, + dt, expect, fail2ban, fio, flite, freerdp, freeswitch, + fstrcmp, gcc, gdb, ghostscript, gmp, go, grub2, haproxy, + heirloom-mailx, hwloc, icu, intel-microcode, irssi, less, + libcoap, libcurl, libglib2, libiec61850, libjxl, libks, + libksba, libmodsecurity, libpjsip, libqb, libraw, libssh, + libtommath, lldpd, log4cxx, lsof, mdadm, mosquitto, mpd, mpv, + mutt, mv-ddr-marvell, ne10, netatalk, network-manager, + nftables, nodejs, ntpsec, nut, openblas, openjdk, openjdk-bin, + opensc, openssh, pcm-tools, perftest, petitboot, php, pixman, + poppler, postgresql, python-django, python-ipython, + python-pip, python-pylibfdt, python-tornado, python3, qt5, + ramspeed, rtl8189fs, rtl8812au-aircrack-ng, samba4, screen, + screenfetch, sngrep, sofia-sip, stellarium, stress-ng, + strongswan, sysstat, tar, tcl, uboot, uclibc, vim, webkitgtk, + webp, wireshark, xfsprogs, xserver_xorg-server, xterm, yajl, + zbar, zxing-cpp + + New packages: xlib_libXpresent + +2023.05.2, released August 31th, 2023 + + Important / security related fixes. + + Toolchains: Correctly mark Bootlin external toolchains as + having OpenMP support. + + Arch: Mark Alderlake x86 variants as no AVX512 support. + + Utils: Ensure utils/docker-run correctly supports git + worktrees. + + Defconfigs: Beaglebone: U-Boot needs OpenSSL. Beaglebone qt5: + Enable support for green wireless variant. + + Updated/fixed packages: arm-trusted-firmware, bind, cairo, + cmocka, containerd, crudini, cryptodev-linux, dmidecode, + ffmpeg, firmware-imx, gcc, gdb, ghostscript, gkrellm, + gnuradio, go, igh-ethercat, iperf3, kodi, libcurl, libopenssl, + libssh, libubootenv, libuhttpd, linux-tools, mali-driver, + nfs-utils, ntp, openssh, php, pipewire, python-pysmb, + python-iniparse, python-iptables, rtl8189es, rtl8189fs, + sam-ba, samba4, seatd, shadow, speex, + sunxi-mali-utgard-driver, supertuxkart, sysdig, systemd, tor, + tpm2-tss, transmission, uboot, unzip, webkitgtk, + wireless-regdb, wolfssl, wpebackend-fdo, wpewebkit, xenomai, + yaml-cpp, yavta + + Issues resolved (http://bugs.uclibc.org): + + #15634: fluidsynths refers to missing libgomp.so.1 + +2023.05.1, released July 17th, 2023 + + Important / security related fixes. + + Defconfigs: Chiliboard, mx53loco: fix build on hosts without + openssl development headers. + Nitrogen*: fix build on hosts without openssl or pylibfdt. + Hifive unleased: Bump OpenSBI to 1.2 to fix a build issue. + Raspberrypi: Handle DTB overlays for all variants + + Updated/fixed packages: agentpp, alsa-plugins, assimp, audit, + bind, busybox, c-ares, check, cups, dav1d, dbus, fftw, + fluidsynth, freetype, fwts, ghostscript, gnupg2, gnuradio, + graphicsmagick, gupnp, haproxy, heimdal, hwdata, jhead, kodi, + libcap, libgcrypt, libgpg-error, libgtk3, libmdbx, libxslt, + mesa3d, mesa3d-demos, mpir, nodejs, php, pkgconf, + python-cryptography, python-dbus-fast, python-django, + python-docker, python-pyicu, python-requests, python3, qemu, + qt6, quickjs, rtl8192eu, samba4, sconeserver, syslog-ng, + taglib, tiff, wine, wireshark, xdriver_xf86-video-dummy, + xlib_libX11, + + Issues resolved (http://bugs.uclibc.org): + + #15643: ERROR: No hash found for linux-6.3.8.tar.xz + #15658: hifive_unleashed_defconfig: Linker errors in opensbi-0.9 + #15661: mx53loco_defconfig: Dependency on OpenSSL missing + #15664: Can't compile mesa3d with v3d driver + #15673: PKGCONF_SITE in pkgconf.mk points to parked domain + #15682: pkgconf: no longer able to download source from... + +2023.05, released June 7th, 2023 + + Fixes all over the tree. + + Infrastructure: Add BR2_HOST_CMAKE_AT_LEAST_* for packages + needing a newer host-cmake than what is currently enforced + (3.18) - Up to the version provided by the cmake package (3.22). + + Defconfigs: QEMU s390x: Bump rootfs size to 120MB to make room + for kernel modules. + + Updated/fixed packages: at-spi2-core, go, libdeflate, libjxl, + perl-http-message, php, redis + +2023.05-rc3, released June 4th, 2023 + + Fixes all over the tree. + + Updated/fixed packages: bird, containerd, earlyoom, gcc, + ipython, kexec, kodi-skin-confluence, libcurl, libopenssl, + mesa3d, minidlna, mpd, openjdk, openjdk-bin, + python-matplotlib, sdl2_net, vdr + + New packages: python-asttokens, python-executing, + python-pure-eval, python-stack-data + +2023.05-rc2, released May 28th, 2023 + + Fixes all over the tree. + + Updated/fixed packages: busybox, clamav, crudini, + kodi-pvr-vbox, libcurl, libmnl, libpqxx, libressl, libssh, + llvm, lua, mesa3d, perl-http-message, python-can, + python-django, sdl2_mixer, webkitgtk, zfs, znc + + New packages: perl-clone + + Issues resolved (http://bugs.uclibc.org): + + #15421: qemu_aarch64_ebbr_defconfig: Missing Linux kernel source.. + #15581: qemu_ppc_mpc8544ds_defconfig: Fails due to non-working patch + +2023.05-rc1, released May 15th, 2023 + + Fixes all over the tree and new features. + + Toolchain: + - glibc update to 2.37, uClibc-ng updated to 1.0.43 + - suppoert 6.2.x / 6.3.x kernel headers + + Infrastucture: + - go: Ensure go versions of os/user and net are used for + static builds so CGO is not used + + - rust / cargo: Correctly split up rust flags for host and + target builds + + New defconfigs: STM32F769 discovery + + New packages: petitboot, python-evdev, python-hwdata, + python-pyproject-hooks, shadow + + Removed packages: atk, at-spi2-atk, optee-benchmark, + python-pep517 + + Issues resolved (http://bugs.uclibc.org): + + #14356: cronstamp jobs are not performed with bumped version of... + #15191: pc_x86_64_efi_defconfig doesn't run on real hardware + #15306: glibc build fails in Docker container + #15321: docker-engine now requires libseccomp by default + #15376: Libiconv config + #15461: QtVirtualKeyboard segfaults + +2023.02.7, released November 14th, 2023 + + Important / security related fixes. + + Per-package builds: Unbreak SDK relocation logic. Only drop + the hard links for the final host / target directory, fixing a + build time / size regression in 2023.02.6. + + Packages where a free-form version/site can be specified + (E.G. Linux, U-Boot, ..) can now have the corresponding + tarballs of these custom downloads checked by the download + infrastructure based on .hash files in the global patch + directory. These hashes are optional unless + BR2_DOWNLOAD_FORCE_CHECK_HASHES is enabled. + + A utils/add-custom-hashes helper script has been added to + assist in managing such hash files. + + Defconfigs: stm32mp157a-dk1, stm32mp157c-dk2: Unbreak TF-A + build, stm32mp157c-odessey: Use a fixed TF-A version for + reproducibility + + Updated/fixed packages: apache, arm-trusted-firmware, aufs, + aufs-util, azure-iot-sdk, cjson, cups-filters, clamav, dhcpcd, + freeradius-server, go, htop, ksmbd-tools, kvmtool, libgdiplus, + libopenssl, libosmium, libtommath, libupnp, libzlib, lxc, + mender, minizip-zlib, mpd, mxsldr, nano, nettle, + network-manager, nghttp2, nodejs, opencv4, opencv4-contrib, + openjdk-bin, openvpn, opusfile, paho-mqtt-c, + perl-lwp-protocol-https, php, python-django, python-urllib3, + python-web2py, rabbitmq-c, redis, riscv64-elf-toolchain, + suricata, tar, tiff, tor, traceroute, vim, websocketpp, + wireshark, wolfssl, xdg-dbus-proxy, xen, xlib_libX11, + xlib_libXpm, zabbix, zchunk + + Issues resolved (http://bugs.uclibc.org): + + #14741: e2fsck is failing during cronjob build where fail... + #15772: lz4 failed to compile with gcc 10.4.0 + #15787: atmel_sama5d3_xplained_mmc_defconfig: Missing... + #15790: at91sam9x5ek_dev_defconfig: Missing... + #15820: make linux-menuconfig does not modify correct .config.. + #15823: Installing nodejs modules with native extensions ... + #15835: Incompatibility between network-manager and libcurl 8.4 + +2023.02.6, released October 16th, 2023 + + Important / security related fixes. + + Per-package builds: Do not use hard links for host / target + dirs, fixing issues with package rebuilds or post-build + scripts modifications. + + Infrastructure: Explicitly disable shuffle mode for Make >= + 4.4 where needed. + + Urandom-scripts: Move seedrng init script to S01 for earlier + random number entrophy initialization. + + Go: Bump to 1.20.x as 1.19.x is now EOL and affected by + security issues. + + Updated/fixed packages: at91bootstrap, bind, cups, efl, + enlightenment, exim, gcc, glibc, gnu-efi, go, go-bootstrap, + gptfdisk, gst-omx, gst1-devtools, gst1-libav, + gst1-plugins-bad, gst1-plugins-base, gst1-plugins-good, + gst1-plugins-ugly, gst1-python, gst1-rstp-server, + gst1-rtsp-vaapi, gstreamer1, gstreamer1-editing-services, + libcue, libcurl, libfastjson, libhtp, libmodplug, librsvg, + libvpx, libyang, linux-tools, mbedtls, mosquitto, mutt, neon, + netsnmp, nmap, nodejs, olsr, openblas, opkg-utils, php, + powertop, python-mako, python3, rockchip-mali, samba4, sslh, + suricata, tar, unifdef, unrandom-scripts, webkitgtk, + wireless-regdb, wpewebkit + + Issues resolved (http://bugs.uclibc.org): + + #15628: Missing dependencies in BR2_PACKAGE_PYTHON_MAKO + #15808: connman is not supported on musl + #15814: C++ not supported by bootlin toolchain + +2023.02.5, released September 27th, 2023 + + Important / security related fixes. + + Updated/fixed packages: agentpp, asterisk, at91dataflashboot, + aubio, berkeleydb, bind, bwm-ng, chocolate-doom, clamav, + compiler-rt, connman, cups, dav1d, diffutils, dracut, dt, + expect, fail2ban, fio, flite, freerdp, freeswitch, fstrcmp, + gcc, gdb, ghostscript, gmp, go, grub2, haproxy, + heirloom-mailx, hwloc, icu, intel-microcode, irssi, libcoap, + libcurl, libiec61850, libjxl, libks, libksba, libmodsecurity, + libpjsip, libqb, libraw, libssh, libtommath, less, lldpd, + log4cxx, lsof, mdadm, mosquitto, mpd, mutt, mv-ddr-marvell, + ne10, netatalk, network-manager, nftables, nodejs, ntpsec, + nut, openblas, openjdk, openjdk-bin, opensc, openssh, + pcm-tools, perftest, php, pixman, poppler, postgresql, pppd, + python-django, python-ipython, python-pip, python-pylibfdt, + python-tornado, python3, qt5, ramspeed, rtl8189fs, samba4, + screen, screenfetch, sngrep, sofia-sip, stellarium, + strongswan, sysstat, tar, tcl, uboot, uclibc, vim, webkitgtk, + webp, wireshark, xfsprogs, xserver_xorg-server, xterm, yajl, + zbar, zxing-cpp + + Issues resolved (http://bugs.uclibc.org): + + #14366: Nodejs fails with "version `GLIBC_2.34' not found".. + #15754: The docker-engine and docker-cli versions are not... + #15787: atmel_sama5d3_xplained_mmc_defconfig: Missing... + #15790: at91sam9x5ek_dev_defconfig: Missing... + +2023.02.4, released August 31th, 2023 + + Important / security related fixes. + + Toolchains: Correctly mark Bootlin external toolchains as + having OpenMP support. + + Arch: Mark Alderlake x86 variants as having no AVX512 support. + + Utils: Ensure utils/docker-run correctly supports git + worktrees. + + Defconfigs: Beaglebone qt5: Enable support for green wireless + variant. + + Updated/fixed packages: arm-trusted-firmware, bind, cairo, + cmocka, containerd, crudini, dmidecode, ffmpeg, freescale-imx, + gcc, gdb, ghostscript, gkrellm, gnuradio, go, heimdall, + iperf3, libcurl, libmodsecurity, libopenssl, libssh, + libubootenv, libuhttpd, linux-tools, ntp, openssh, php, + pipewire, python-iniparse, python-iptables, python-pysmb, + rtl8189fs, sam-ba, samba4, seatd, speex, supertuxkart, sysdig, + tor, tpm2-tss, uboot, unzip, webkitgtk, wireless-regdb, + wolfssl, wpebackend-fdo wpewebkit, xenomai, yaml-cpp, yavta + + Issues resolved (http://bugs.uclibc.org): + + #15634: fluidsynths refers to missing libgomp.so.1 + +2023.02.3, released July 17th, 2023 + + Important / security related fixes. + + Defconfigs: Chiliboard: fix build on hosts without openssl + development headers. + Nitrogen*: fix build on hosts without openssl or pylibfdt. + Raspberrypi: Handle DTB overlays for all variants + + Updated/fixed packages: agentpp, alsa-plugins, assimp, bind, + busybox, dbus, c-ares, check, dav1d, fluidsynth, fftw, fwts, + ghostscript, gnupg2, gnuradio, gupnp, haproxy, heimdal, + hwdata, jhead, libcap, libgcrypt, libgpg-error, libgtk3, + libxslt, mesa3d-demos, mpir, nodejs, php, pkgconf, + python-cryptography, python-dbus-fast, python-django, + python-pyicu, python-requests, python3, qt6, quickjs, + sconeserver, taglib, tiff, wireshark, xdriver_xf86-video-dummy + + Issues resolved (http://bugs.uclibc.org): + + #15643: ERROR: No hash found for linux-6.3.8.tar.xz + #15673: PKGCONF_SITE in pkgconf.mk points to parked domain + #15682: pkgconf: no longer able to download source from... + +2023.02.2, released June 16th, 2023 + + Important / security related fixes. + + Infrastructure: Add BR2_HOST_CMAKE_AT_LEAST_* for packages + needing a newer host-cmake than what is currently enforced + (3.18) - Up to the version provided by the cmake package (3.22). + + utils/docker-run: Now correctly handles git + workdirs/worktrees. + + Defconfigs: QEMU s390x: Bump rootfs size to make room for + kernel modules, Stm32f4xx: Tweak config to save RAM, Xilinx + Versal vck190: Use correct (A72) CPU variant + + Updated/fixed packages: atkmm, bird, busybox, cairomm1_14, + cmake, containerd, crudini, cups, delve, docker-cli, + docker-engine, earlyoom, edid-decode, fluent-bit, freeswitch, + gcc, gdb, glibmm_2_66, gnupg2, go, gptfdisk, graphicsmagick, + intel-microcode, libass, libcurl, libdeflate, libgeos, + libgtk3, libjxl, libnftl, libopenssl, libressl, libssh, llvm, + lua, mesa3d, micropython, minidlna, moby-buildkit, mpd, mupdf, + ncurses, nftables, openjdk, openjdk-bin, php, postgresql, + python-can, python-django, python-django, python-ipython, + python-matplotlib, python-mupdf, python-requests, python3, + qemu, redis, rpm, runc, sdl2_mixer, tzdata, uclibc, vdr, + wilc-firmware, xapp_xcalc, xapp_xdpyinfo, xapp_xinput, + xapp_xwininfo, xdata_xbitmaps, xdata_xcursor-themes, + xdriver_xf86-input-mouse, xdriver_xf86-video-ark, + xdriver_xf86-video-geode, xdriver_xf86-video-neomagic, + xfont_encodings, xlib_libX11, xlib_libXaw, xlib_libXi, + xlib_libXfixes, xlib_libXft, xlib_libXpm, zfs, znc + + New packages: perl-clone, perl-http-message, python-asttokens, + python-executing, python-pure-eval, python-stack-data + + Issues resolved (http://bugs.uclibc.org): + + #15421: qemu_aarch64_ebbr_defconfig: Missing Linux kernel source code + +2023.02.1, released May 9th, 2023 + + Important / security related fixes. + + Infrastucture: + - go: Ensure go versions of os/user and net are used for + static builds so CGO is not used + + - rust / cargo: Correctly split up rust flags for host and + target builds + + Defconfigs: Olimex a20 olinuxino lime*: Bring up network at + boot, stmf469 disco sd: Lock U-Boot version + + Updated/fixed packages: agentpp, apache, bluez5_utils, + ca-certificates, containerd, coremark, dcron, dnsmasq, + docker-cli, docker-engine, efivar, eudev, ffmpeg, flann, + fluidsynth, git, go, gst-omx, gst1-devtools, gst1-libav, + gst1-plugins-bad, gst1-plugins-base, gst1-plugins-good, + gst1-plugins-ugly, gst1-python, gst1-rtsp-server, gst1-vaapi, + gstreamer1, gstreamer1-editing-services, intel-microcode, + kexec, libcurl, libite, libgtk3, libmicrohttpd, libxml2, + linux-tools, lua, mali-driver, matio, mdadm, nginx, openocd, + openssh, php, poppler, postgresql, python-web2py, qt6base, + readline, rtl8189fs, rtl8723ds, rtl8812au-aircrack-ng, runc, + rust, rust-bin, s390-tools, samba4, sdl2, snmppp, sudo, + systemd, tcpdump, uclibc, vim, webkitgtk, wireshark, + wpewebkit, xr819-radio, xserver_xorg-server, zeek + + Issues resolved (http://bugs.uclibc.org): + + #14356: cronstamp jobs are not performed with bumped version of... + #15306: glibc build fails in Docker container + #15376: Libiconv config + #15461: QtVirtualKeyboard segfaults + 2023.02, released March 12th, 2023 Fixes all over the tree. @@ -132,6 +865,31 @@ #15301: Selecting NAND Flash boot media (NAND_BOOT) breaks the uboot.. #15331: Warning on python-flit-core license when generating legal info +2022.11.3, released March 18th, 2023 + + Important / security related fixes. + + Updated/fixed packages: ace, apache, apr, apr-util, asterisk, + at91dataflashboot, audit, bash, bind, bridge-utils, clamav, + dmalloc, efivar, erlang, exfat, exfat-utils, f2fs-tools, gcc, + gdal, gensio, gerbera, git, glslsandbox-player, go, haproxy, + hawktracer, intel-gmmlib, ipmiutil, less, libblockdev, + libcurl, libev, libgcrypt, libglfw, libmad, libmdbx, + libmodsecurity, libolm, libpjsip, lirc-tools, + lttng-babeltrace, mender, mpv, mutt, mxs-bootlets, netsurf, + ntpsec, nut, opensbi, opus, paho-mqtt-c, pcm-tools, php, + pistache, proftpd, proxychains-ng, pulseaudio, + python-cryptography, python-django, python-m2crypto, + python-numpy, python-werkzeug, qemu, quazip, quickjs, + rockchip-mali, rsync, s6-linux-utils, sudo, tiff, uacme, uqmi, + webkitgtk, wilc-driver, wpa_supplicant, wpewebkit, + xdriver_xf86-video-qxl, znc + + Issues resolved (http://bugs.uclibc.org): + + #15306: glibc build fails in Docker container + #15361: Buildroot linking error on Apple Silicon + 2022.11.2, released March 1st, 2023 Important / security related fixes. @@ -750,6 +1508,39 @@ #14731: BR2_PACKAGE_IOSTAT #14751: LVM2 Outdated Link +2022.02.12, released May 5th, 2023 + + Important / security related fixes. + + Updated/fixed packages: agentpp, apache, ca-certificates, + containerd, coremark, dcron, eudev, ffmpeg, git, + intel-microcode, kexec, lcdproc, libmicrohttpd, libosmium, + libxml2, linux-tools, matio, osm2pgsql, poppler, postgresql, + protozero, python-web2py, runc, s390-tools, samba4, snmppp, + sudo, tcpdump, uclibc, vim, webkitgtk, wpewebkit, + xserver_xorg-server + +2022.02.11, released March 19th, 2023 + + Important / security related fixes. + + Updated/fixed packages: apache, apr, apr-util, asterisk, + at91dataflashboot, audit, bash, bind, bridge-utils, clamav, + dmalloc, exfat, exfat-utils, f2fs-tools, gcc, git, + glslsandbox-player, go, haproxy, intel-gmmlib, ipmiutil, less, + libblockdev, libcurl, libev, libgcrypt, libmad, libmdbx, + libmodsecurity, libolm, libpjsip, lttng-babeltrace, mender, + mpv, mutt, mxs-bootlets, opensbi, opus, paho-mqtt-c, + pcm-tools, php, proxychains-ng, python-django, + python-m2crypto, python-werkzeug, quazip, quickjs, + rockchip-mali, rsync, sudo, tiff, uacme, uqmi, webkitgtk, + wpebackend-fdo, wpewebkit, xdriver_xf86-video-qxl, znc + + Issues resolved (http://bugs.uclibc.org): + + #15306: glibc build fails in Docker container + #15361: Buildroot linking error on Apple Silicon + 2022.02.10, released March 1st, 2023 Important / security related fixes. diff --git a/Config.in b/Config.in index 0d7641633c37..27f5deb16a69 100644 --- a/Config.in +++ b/Config.in @@ -55,6 +55,16 @@ config BR2_HOST_GCC_AT_LEAST_9 default y if BR2_HOST_GCC_VERSION = "9" select BR2_HOST_GCC_AT_LEAST_8 +config BR2_HOST_GCC_AT_LEAST_10 + bool + default y if BR2_HOST_GCC_VERSION = "10" + select BR2_HOST_GCC_AT_LEAST_9 + +config BR2_HOST_GCC_AT_LEAST_11 + bool + default y if BR2_HOST_GCC_VERSION = "11" + select BR2_HOST_GCC_AT_LEAST_10 + # When adding new entries above, be sure to update # the HOSTCC_MAX_VERSION variable in the Makefile. @@ -65,7 +75,7 @@ config BR2_NEEDS_HOST_JAVA # Hidden boolean selected by pre-built packages for x86, when they # need to run on x86-64 machines (example: pre-built external -# toolchains, binary tools like SAM-BA, etc.). +# toolchains, binary tools, etc.). config BR2_HOSTARCH_NEEDS_IA32_LIBS bool @@ -241,7 +251,7 @@ if !BR2_PRIMARY_SITE_ONLY config BR2_BACKUP_SITE string "Backup download site" - default "http://sources.buildroot.net" + default "https://sources.buildroot.net" help Backup site to download from. If this option is set then buildroot will fall back to download package sources from here @@ -664,12 +674,12 @@ config BR2_PACKAGE_OVERRIDE_FILE documentation for more details on this feature. config BR2_GLOBAL_PATCH_DIR - string "global patch directories" + string "global patch and hash directories" help You may specify a space separated list of one or more - directories containing global package patches. For a specific - version of a specific package , - patches are applied as follows: + directories containing global package patches and/or hashes. + For a specific version of a specific package + , patches are looked up as follows: First, the default Buildroot patch set for the package is applied from the package's directory in Buildroot. @@ -683,6 +693,8 @@ config BR2_GLOBAL_PATCH_DIR exists, then all *.patch files in the directory will be applied. + The hash files are looked up similarly to the patches. + menu "Advanced" config BR2_FORCE_HOST_BUILD @@ -697,6 +709,23 @@ config BR2_FORCE_HOST_BUILD This option will increase build time. +config BR2_DOWNLOAD_FORCE_CHECK_HASHES + bool "Force all downloads to have a valid hash" + depends on BR2_GLOBAL_PATCH_DIR != "" + help + For packages where a custom version or location can be set, + Buildroot does not carry a hash for those custom versions or + locations, so the integrity of such downloads is not verified. + + Say 'y' here to enforce downloads to have at least one valid + hash (and of course, that all hashes be valid). + + Those hashes are looked in files in BR2_GLOBAL_PATCH_DIR, + see above. + +comment "Forcing all downloads to have a valid hash needs a global patch and hash directory" + depends on BR2_GLOBAL_PATCH_DIR = "" + config BR2_REPRODUCIBLE bool "Make the build reproducible (experimental)" # SOURCE_DATE_EPOCH support in toolchain-wrapper requires GCC 4.4 @@ -736,6 +765,20 @@ config BR2_PER_PACKAGE_DIRECTORIES endmenu +config BR2_TIME_BITS_64 + bool "Build Y2038-ready code" + depends on BR2_TOOLCHAIN_USES_GLIBC && !BR2_ARCH_IS_64 + help + This option will pass -D_TIME_BITS=64 in the compiler flags + to ensure the glibc C library uses a 64-bit representation + for time_t and other time types, which ensures that + programs/libraries will correctly handle time past year + 2038. + + This option only has an effect with glibc >= 2.34, as + earlier glibc versions did not have support for 64-bit + time_t. + comment "Security Hardening Options" config BR2_PIC_PIE_ARCH_SUPPORTS diff --git a/Config.in.legacy b/Config.in.legacy index a31543d5fa1d..312d53943c1c 100644 --- a/Config.in.legacy +++ b/Config.in.legacy @@ -144,6 +144,127 @@ endif ############################################################################### +comment "Legacy options removed in 2023.11" + +config BR2_PACKAGE_PYTHON_PYXB + bool "python-pyxb removed" + select BR2_LEGACY + help + python-pyxb has been removed due to being abandoned and + distutils no longer being supported in python 3.12.0. + +config BR2_PACKAGE_OPENJDK_VERSION_11 + bool "openjdk 11 has been removed" + select BR2_LEGACY + help + Version 11 of OpenJDK is no longer supported, version 17 + should now be used as the new LTS release. + +config BR2_KERNEL_HEADERS_6_4 + bool "kernel headers version 6.4.x are no longer supported" + select BR2_LEGACY + help + Version 6.4.x of the Linux kernel headers are no longer + maintained upstream and are now removed. + +config BR2_PACKAGE_GOOGLE_MATERIAL_DESIGN_ICONS + bool "google-material-design-icons removed" + select BR2_LEGACY + help + The google-material-design-icons package has been removed. + +config BR2_GDB_VERSION_10 + bool "gdb 10.x removed" + select BR2_LEGACY + help + gdb 10.x has been removed, use a newer version. + +comment "Legacy options removed in 2023.08" + +config BR2_TARGET_LPC32XXCDL + bool "lpc32xxcdl has been removed" + select BR2_LEGACY + help + lpc32xxcdl has been removed, due to licensing concerns. + +config BR2_BINUTILS_VERSION_2_38_X + bool "binutils 2.38.x has been removed" + select BR2_LEGACY + help + binutils 2.38 has been removed, use a newer version. + +config BR2_GCC_VERSION_10_X + bool "gcc 10.x support removed" + select BR2_LEGACY + help + Support for gcc version 10.x has been removed. The current + default version (12.x or later) has been selected instead. + +config BR2_KERNEL_HEADERS_6_3 + bool "kernel headers version 6.3.x are no longer supported" + select BR2_LEGACY + help + Version 6.3.x of the Linux kernel headers are no longer + maintained upstream and are now removed. + +config BR2_PACKAGE_TOVID + bool "tovid removed" + select BR2_LEGACY + help + tovid was removed + +config BR2_PACKAGE_LIBASPLIB + bool "libasplib removed" + select BR2_LEGACY + help + libasplib is no longer needed. + +config BR2_PACKAGE_OCF_LINUX + bool "ocf-linux has been removed" + select BR2_LEGACY + help + ocf-linux is incompatible with newer kernels. + +config BR2_BINUTILS_VERSION_2_37_X + bool "binutils 2.37.x has been removed" + select BR2_LEGACY + help + binutils 2.37 has been removed, use a newer version. + +comment "Legacy options removed in 2023.05" + +config BR2_KERNEL_HEADERS_6_2 + bool "kernel headers version 6.2.x are no longer supported" + select BR2_LEGACY + help + Version 6.2.x of the Linux kernel headers are no longer + maintained upstream and are now removed. + +config BR2_PACKAGE_ATK + bool "atk removed" + select BR2_LEGACY + help + atk is now part of at-spi2-core. + +config BR2_PACKAGE_AT_SPI2_ATK + bool "at-spi2-atk removed" + select BR2_LEGACY + help + at-spi2-atk is now part of at-spi2-core. + +config BR2_PACKAGE_OPTEE_BENCHMARK + bool "optee-benchmark has been removed" + select BR2_LEGACY + help + optee-benchmark is no longer maintained upstream. + +config BR2_PACAKGE_OPENFPGALOADER_CMSIS + bool "openfpgaloader cmsis option name fixed" + select BR2_LEGACY + help + A typo on BR2_PACAKGE_OPENFPGALOADER_CMSIS was fixed by + renaming the option to BR2_PACKAGE_OPENFPGALOADER_CMSIS. + comment "Legacy options removed in 2023.02" config BR2_PACKAGE_PUGIXML_HEADER_ONLY @@ -325,6 +446,12 @@ config BR2_PACKAGE_USBREDIR_SERVER comment "Legacy options removed in 2022.11" +config BR2_BINUTILS_VERSION_2_36_X + bool "binutils 2.36.x has been removed" + select BR2_LEGACY + help + binutils 2.36 has been removed, use a newer version. + config BR2_PACKAGE_RABBITMQ_SERVER bool "rabbitmq-server removed" select BR2_LEGACY diff --git a/DEVELOPERS b/DEVELOPERS index 7ef8f79a718a..904c7ebf2d6c 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -26,6 +26,22 @@ # infrastructure, and will be CC'ed on all patches that add or # modify packages that use this infrastructure. +N: Adam Duskett +F: package/firewalld/ +F: package/vulkan-loader/ +F: package/vulkan-tools/ + +N: Adam Duskett +F: package/depot-tools/ +F: package/flutter-engine/ +F: package/flutter-gallery/ +F: package/flutter-pi/ +F: package/flutter-sdk-bin/ +F: package/python-kmod/ +F: package/python-versioneer/ +F: support/testing/tests/package/test_firewalld.py +F: support/testing/tests/package/test_flutter.py + N: Adam Heinrich F: package/jack1/ @@ -58,7 +74,11 @@ F: package/libmbim/ F: package/libqmi/ F: package/modem-manager/ +N: Alessandro Partesotti +F: package/oatpp/ + N: Alex Michel +F: package/libzenoh-pico/ F: package/network-manager-openvpn/ N: Alex Suykov @@ -121,6 +141,7 @@ N: Alistair Francis F: board/sifive/ F: boot/opensbi/ F: configs/hifive_unleashed_defconfig +F: package/libspdm/ F: package/xen/ N: Alvaro G. M @@ -129,7 +150,13 @@ F: package/libxmlrpc/ F: package/python-docopt/ N: Anand Gadiyar +F: board/ti/am62x-sk/ +F: board/ti/am64x-sk/ +F: boot/ti-k3-boot-firmware/ +F: boot/ti-k3-image-gen/ F: boot/ti-k3-r5-loader/ +F: configs/ti_am62x_sk_defconfig +F: configs/ti_am64x_sk_defconfig N: André Zwing F: package/libkrb5/ @@ -163,6 +190,7 @@ F: package/apparmor/ F: package/corkscrew/ F: package/cups/ F: package/cups-filters/ +F: package/cutekeyboard/ F: package/fail2ban/ F: package/grep/ F: package/htpdate/ @@ -273,6 +301,9 @@ F: package/orbit/ N: Attila Wagner F: package/python-canopen/ +N: Bagas Sanjaya +F: package/git/ + N: Bartosz Bilas F: board/stmicroelectronics/stm32mp157a-dk1/ F: configs/stm32mp157a_dk1_defconfig @@ -308,7 +339,7 @@ F: package/taskd/ N: Benjamin Kamath F: package/lapack/ -N: Bernd Kuhls +N: Bernd Kuhls F: package/alsa-lib/ F: package/alsa-utils/ F: package/apache/ @@ -318,19 +349,19 @@ F: package/apr-util/ F: package/bcg729/ F: package/bento4/ F: package/bitcoin/ -F: package/bluez-tools/ -F: package/boinc/ F: package/clamav/ F: package/dav1d/ F: package/dht/ F: package/dovecot/ F: package/dovecot-pigeonhole/ F: package/dtv-scan-tables/ +F: package/ethtool/ F: package/eudev/ F: package/exim/ F: package/fetchmail/ F: package/ffmpeg/ F: package/flac/ +F: package/flatbuffers/ F: package/freeswitch/ F: package/freeswitch-mod-bcg729/ F: package/freetype/ @@ -338,13 +369,10 @@ F: package/fstrcmp/ F: package/ghostscript/ F: package/giflib/ F: package/gkrellm/ -F: package/gli/ -F: package/glmark2/ F: package/gpsd/ F: package/gptfdisk/ -F: package/hdparm/ F: package/hddtemp/ -F: package/inih/ +F: package/hdparm/ F: package/intel-gmmlib/ F: package/intel-mediadriver/ F: package/intel-mediasdk/ @@ -352,18 +380,22 @@ F: package/intel-microcode/ F: package/jsoncpp/ F: package/kodi* F: package/lame/ +F: package/lcms2/ F: package/leafnode2/ F: package/libaacs/ -F: package/libasplib/ F: package/libass/ F: package/libbdplus/ F: package/libbluray/ F: package/libbroadvoice/ +F: package/libcap/ F: package/libcdio/ F: package/libcec/ F: package/libcodec2/ F: package/libcrossguid/ +F: package/libde265/ +F: package/libdecor/ F: package/libdeflate/ +F: package/libdisplay-info/ F: package/libdrm/ F: package/libdvbcsa/ F: package/libdvdcss/ @@ -371,11 +403,13 @@ F: package/libdvdnav/ F: package/libdvdread/ F: package/libebur128/ F: package/libfreeglut/ +F: package/libfribidi/ F: package/libg7221/ F: package/libglew/ F: package/libglfw/ F: package/libglu/ F: package/libhdhomerun/ +F: package/libheif/ F: package/libilbc/ F: package/libks/ F: package/libldns/ @@ -393,21 +427,29 @@ F: package/libsidplay2/ F: package/libsilk/ F: package/libsndfile/ F: package/libsoundtouch/ -F: package/libsquish/ F: package/libudfread/ F: package/libunibreak/ F: package/liburiparser/ F: package/libutp/ +F: package/libuv/ F: package/libva/ F: package/libva-intel-driver/ F: package/libva-utils/ F: package/libvorbis/ F: package/libvpx/ F: package/libyuv/ +F: package/linux-firmware/ +F: package/mc/ F: package/mesa3d/ F: package/minidlna/ F: package/mjpg-streamer/ +F: package/mpg123/ +F: package/ntp/ F: package/nut/ +F: package/onevpl/ +F: package/onevpl-intel-gpu/ +F: package/opus/ +F: package/pciutils/ F: package/perl-crypt-openssl-guess/ F: package/perl-crypt-openssl-random/ F: package/perl-crypt-openssl-rsa/ @@ -426,33 +468,34 @@ F: package/perl-io-html/ F: package/perl-lwp-mediatypes/ F: package/perl-mail-dkim/ F: package/perl-mailtools/ +F: package/perl-netaddr-ip/ F: package/perl-net-dns/ F: package/perl-net-http/ -F: package/perl-netaddr-ip/ F: package/perl-timedate/ F: package/perl-uri/ F: package/perl-www-robotrules/ F: package/php/ -F: package/pixman/ F: package/pngquant/ -F: package/pound/ +F: package/pppd/ +F: package/privoxy/ F: package/pure-ftpd/ F: package/python-couchdb/ F: package/python-cssutils/ F: package/python-glslang/ +F: package/python-mako/ F: package/python-mwclient/ F: package/python-mwscrape/ F: package/python-mwscrape2slob/ -F: package/python-mako/ F: package/python-oauthlib/ F: package/python-pyicu/ F: package/python-pylru/ F: package/python-requests-oauthlib/ F: package/python-slob/ +F: package/rrdtool/ F: package/rsync/ F: package/rtmpdump/ F: package/samba4/ -F: package/softether/ +F: package/sofia-sip/ F: package/spandsp/ F: package/sqlite/ F: package/stellarium/ @@ -462,13 +505,10 @@ F: package/tor/ F: package/transmission/ F: package/tvheadend/ F: package/unixodbc/ -F: package/utf8proc/ -F: package/vdr/ -F: package/vdr-plugin-vnsiserver/ F: package/vlc/ -F: package/vnstat/ -F: package/waylandpp/ -F: package/x11r7/ +F: package/wget/ +F: package/wireless-regdb/ +F: package/wireless_tools/ F: package/x264/ F: package/x265/ F: package/xmrig/ @@ -489,6 +529,11 @@ F: package/iftop/ F: package/ncdu/ N: Brandon Maier +F: board/freescale/ls1046a-frwy/ +F: configs/ls1046a-frwy_defconfig +F: package/python-pysensors/ +F: package/qoriq-fm-ucode/ +F: package/unifdef/ F: package/vmtouch/ N: Brock Williams @@ -535,11 +580,12 @@ F: package/syslog-ng/ N: Christian Kellermann F: package/python-pylibftdi/ -N: Christian Stewart +N: Christian Stewart F: package/balena-engine/ F: package/batman-adv/ F: package/catatonit/ F: package/cni-plugins/ +F: package/conmon/ F: package/containerd/ F: package/crun/ F: package/delve/ @@ -549,6 +595,8 @@ F: package/docker-engine/ F: package/embiggen-disk/ F: package/fuse-overlayfs/ F: package/go/ +F: package/go-bootstrap-stage1/ +F: package/go-bootstrap-stage2/ F: package/gocryptfs/ F: package/mbpfan/ F: package/moby-buildkit/ @@ -624,6 +672,10 @@ N: Clément Péron F: board/beelink/gs1/ F: configs/beelink_gs1_defconfig +N: Colin Foster +F: package/python-tftpy/ +F: package/rauc-hawkbit-updater/ + N: Corentin Guillevic F: package/libloki/ @@ -640,7 +692,7 @@ F: package/odroidc2-firmware/ N: Daniel J. Leach F: package/dacapo/ -N: Daniel Lang +N: Daniel Lang F: package/atkmm/ F: package/atkmm2_28/ F: package/cairomm/ @@ -651,15 +703,17 @@ F: package/glibmm2_66/ F: package/gtkmm3/ F: package/libsigc/ F: package/libsigc2/ +F: package/llvm-project/ F: package/paho-mqtt-cpp/ F: package/pangomm/ F: package/pangomm2_46/ +F: package/sam-ba/ N: Damien Lanson F: package/libvdpau/ F: package/log4cpp/ -N: Damien Le Moal +N: Damien Le Moal F: package/python-kflash/ F: board/canaan/ F: configs/canaan_kd233_defconfig @@ -699,8 +753,10 @@ F: package/xinetd/ N: Dario Binacchi F: board/bsh/ +F: board/stmicroelectronics/stm32f769-disco/ F: configs/imx8mn_bsh_smm_s2_defconfig F: configs/imx8mn_bsh_smm_s2_pro_defconfig +F: configs/stm32f769_disco_sd_defconfig F: package/sscep/ F: package/uuu/ @@ -805,7 +861,7 @@ F: package/bayer2rgb-neon/ F: package/gstreamer1/gst1-plugins-bayer2rgb-neon/ N: Eric Le Bihan -F: docs/manual/adding-packages-meson.txt +F: docs/manual/adding-packages-meson.adoc F: package/adwaita-icon-theme/ F: package/darkhttpd/ F: package/eudev/ @@ -857,9 +913,8 @@ F: package/szip/ N: Esben Haabendal F: package/python-kiwisolver/ -N: Etienne Carriere +N: Etienne Carriere F: boot/optee-os/ -F: package/optee-benchmark/ F: package/optee-client/ F: package/optee-examples/ F: package/optee-test/ @@ -1010,6 +1065,7 @@ F: package/tinycbor/ F: package/tinydtls/ F: package/tinymembench/ F: package/whois/ +F: package/x11r7/xlib_libXpresent/ F: package/zeek/ N: Fabrice Goucem @@ -1019,6 +1075,10 @@ F: configs/freescale_imx6ullevk_defconfig N: Falco Hyfing F: package/python-pymodbus/ +N: Flávio Tapajós +F: configs/asus_tinker-s_rk3288_defconfig +F: board/asus/tinker-s/ + N: Florian Fainelli F: package/cpulimit/ @@ -1036,7 +1096,9 @@ N: Francisco Gonzalez F: package/ser2net/ N: Francois Dugast +F: board/sipeed/licheepi_nano/ F: board/visionfive2/ +F: configs/sipeed_licheepi_nano_defconfig F: configs/visionfive2_defconfig N: Francois Perrad @@ -1146,23 +1208,38 @@ F: package/webp/ F: package/xapian/ N: Giulio Benetti +F: board/bananapi/bananapi-m2-ultra/ +F: board/freescale/imx6ullevk/ +F: board/freescale/imxrt1050evk/ F: board/olimex/a* +F: board/pine64/rockpro64 F: configs/amarula_vyasa_rk3288_defconfig F: configs/asus_tinker_rk3288_defconfig +F: configs/bananapi_m2_berry_defconfig +F: configs/bananapi_m2_ultra_defconfig +F: configs/freescale_imx6ullevk_defconfig +F: configs/imx6ullevk_defconfig +F: configs/imxrt1050-evk_defconfig F: configs/olimex_a* +F: configs/rockpro64_defconfig F: package/at/ F: package/binutils/ F: package/cryptsetup/ F: package/erlang-jiffy/ +F: package/esp-hosted/ F: package/gcc/ F: package/harfbuzz/ +F: package/libblockdev/ F: package/libfuse3/ F: package/libnspr/ F: package/libnss/ +F: package/libnvme/ F: package/mali-driver/ F: package/minicom/ +F: package/mongoose/ F: package/mmc-utils/ F: package/nfs-utils/ +F: package/python-libconf/ F: package/python-uvloop/ F: package/qt5/ F: package/rockchip-mali/ @@ -1177,6 +1254,8 @@ F: package/rtl8821cu/ F: package/sunxi-mali-utgard/ F: package/sunxi-mali-utgard-driver/ F: package/sunxi-tools/ +F: package/swugenerator/ +F: package/swupdate/ F: package/trace-cmd/ F: package/udisks/ F: package/wilc-driver/ @@ -1352,78 +1431,12 @@ F: package/fxdiv/ F: package/gensio/ F: package/lua-std-debug/ F: package/lua-std-normalize/ +F: package/libucontext/ F: package/lilv/ F: package/lv2/ F: package/neon-2-sse/ F: package/pipewire/ -F: package/python-aioconsole/ -F: package/python-aiodns/ -F: package/python-aiohttp/ -F: package/python-aiohttp-cors/ -F: package/python-aiohttp-debugtoolbar/ -F: package/python-aiohttp-jinja2/ -F: package/python-aiohttp-mako/ -F: package/python-aiohttp-remotes/ -F: package/python-aiohttp-security/ -F: package/python-aiohttp-session/ -F: package/python-aiohttp-sse/ -F: package/python-aiologstash/ -F: package/python-aiomonitor/ -F: package/python-aiojobs/ -F: package/python-aioprocessing/ -F: package/python-aiorwlock/ -F: package/python-aiosignal/ -F: package/python-aiozipkin/ -F: package/python-argon2-cffi/ -F: package/python-argon2-cffi-bindings/ -F: package/python-async-generator/ -F: package/python-async-lru/ -F: package/python-async-timeout/ -F: package/python-bidict/ -F: package/python-brotli/ -F: package/python-cbor2/ -F: package/python-cchardet/ -F: package/python-charset-normalizer/ -F: package/python-cssselect2/ -F: package/python-editables/ -F: package/python-flatbuffers/ -F: package/python-fonttools/ -F: package/python-frozenlist/ -F: package/python-greenlet/ -F: package/python-h11/ -F: package/python-hatchling/ -F: package/python-hatch-fancy-pypi-readme/ -F: package/python-hatch-vcs/ -F: package/python-installer/ -F: package/python-janus/ -F: package/python-logstash/ -F: package/python-maturin/ -F: package/python-multidict/ -F: package/python-mypy-extensions/ -F: package/python-outcome/ -F: package/python-pathspec/ -F: package/python-pep517/ -F: package/python-pycares/ -F: package/python-pydyf/ -F: package/python-pypa-build/ -F: package/python-pyphen/ -F: package/python-rtoml/ -F: package/python-selenium/ -F: package/python-snappy/ -F: package/python-sniffio/ -F: package/python-sockjs/ -F: package/python-terminaltables/ -F: package/python-tinycss2/ -F: package/python-tomli/ -F: package/python-trio/ -F: package/python-trio-websocket/ -F: package/python-typeguard/ -F: package/python-typing-inspect/ -F: package/python-uhid/ -F: package/python-weasyprint/ -F: package/python-wsproto/ -F: package/python-yarl/ -F: package/python-zopfli/ +F: package/python* F: package/rtl8192eu/ F: package/serd/ F: package/sord/ @@ -1436,14 +1449,23 @@ F: support/testing/tests/package/test_python_rtoml.py N: James Knight F: package/atkmm/ F: package/cairomm/ -F: package/google-material-design-icons/ F: package/glibmm/ F: package/gtkmm3/ F: package/libpqxx/ F: package/pangomm/ F: package/rpm/ +F: package/swaybg/ F: package/yad/ +N: Jamie Gibbons +F: board/microchip/mpfs_icicle/ +F: configs/microchip_mpfs_icicle_defconfig +F: package/microchip-hss-payload-generator/ + +N: Jan Havran +F: board/pine64/pinecube/ +F: configs/pine64_pinecube_defconfig + N: Jan Heylen F: package/opentracing-cpp/ @@ -1470,6 +1492,10 @@ F: package/quota/ N: Jason Pruitt F: package/librtlsdr/ +N: Javad Rahimi +F: board/orangepi/orangepi-pc2 +F: configs/orangepi_pc2_defconfig + N: Jean Burgat F: package/openfpgaloader/ @@ -1498,6 +1524,10 @@ F: package/strongswan/ F: package/wmctrl/ F: package/x11r7/xdriver_xf86-video-imx/ +N: Jesse Taube +F: board/freescale/imxrt1050evk/ +F: configs/imxrt1050-evk_defconfig + N: Jesse Van Gavere F: package/qt6/ @@ -1516,6 +1546,7 @@ F: package/libnet/ F: package/libteam/ F: package/libuev/ F: package/mg/ +F: package/mdnsd/ F: package/mini-snmpd/ F: package/mrouted/ F: package/netcalc/ @@ -1585,6 +1616,9 @@ N: John Faith F: package/python-inflection/ F: package/sdbusplus/ +N: Jon Ringle +F: package/mbpoll/ + N: Jonathan Ben Avraham F: arch/Config.in.xtensa F: package/autofs/ @@ -1610,28 +1644,14 @@ N: José Luis Salvador Rufo F: package/zfs/ F: support/testing/tests/package/test_zfs.py -N: José Pekkarinen -F: package/alfred/ -F: package/avocado/ -F: package/bmx7/ -F: package/opensc/ -F: package/python-aexpect/ -F: package/python-alembic/ -F: package/python-lark/ -F: package/softhsm2/ -F: support/testing/tests/package/sample_python_aexpect.py -F: support/testing/tests/package/test_avocado.py -F: support/testing/tests/package/test_python_aexpect.py - N: Joseph Kogut -F: package/at-spi2-atk/ F: package/at-spi2-core/ -F: package/clang/ F: package/earlyoom/ F: package/gconf/ F: package/libnss/ -F: package/lld/ -F: package/llvm/ +F: package/llvm-project/clang/ +F: package/llvm-project/lld/ +F: package/llvm-project/llvm/ F: package/python-cython/ F: package/python-pycups/ F: package/python-raven/ @@ -1704,15 +1724,19 @@ F: package/kexec/ F: package/libjxl/ F: package/octave/ F: package/ola/ +F: package/openblas/ +F: package/opencsd/ F: package/openmpi/ F: package/perftest/ F: package/ptm2human/ F: package/python-distro/ F: package/python-gnupg/ F: package/python-hkdf/ +F: package/python-hwdata/ F: package/python-magic-wormhole/ F: package/python-magic-wormhole-mailbox-server/ F: package/python-magic-wormhole-transit-relay/ +F: package/python-midiutil/ F: package/python-pyalsa/ F: package/python-spake2/ F: package/rdma-core/ @@ -1722,27 +1746,73 @@ F: package/z3/ F: package/zynaddsubfx/ F: support/testing/tests/package/sample_python_distro.py F: support/testing/tests/package/sample_python_gnupg.py +F: support/testing/tests/package/sample_python_hwdata.py +F: support/testing/tests/package/sample_python_midiutil.py F: support/testing/tests/package/sample_python_pyalsa.py F: support/testing/tests/package/sample_python_spake2.py +F: support/testing/tests/package/test_acpica.py +F: support/testing/tests/package/test_acpica/ +F: support/testing/tests/package/test_brotli.py +F: support/testing/tests/package/test_bzip2.py +F: support/testing/tests/package/test_compressor_base.py +F: support/testing/tests/package/test_ddrescue.py +F: support/testing/tests/package/test_ddrescue/ +F: support/testing/tests/package/test_dos2unix.py +F: support/testing/tests/package/test_fluidsynth.py +F: support/testing/tests/package/test_fluidsynth/ +F: support/testing/tests/package/test_gawk.py +F: support/testing/tests/package/test_glslsandbox_player.py +F: support/testing/tests/package/test_glslsandbox_player/ F: support/testing/tests/package/test_gnupg2.py +F: support/testing/tests/package/test_gnuradio.py +F: support/testing/tests/package/test_gnuradio/ +F: support/testing/tests/package/test_gzip.py F: support/testing/tests/package/test_highway.py F: support/testing/tests/package/test_hwloc.py +F: support/testing/tests/package/test_iperf3.py +F: support/testing/tests/package/test_kexec.py +F: support/testing/tests/package/test_kexec/ +F: support/testing/tests/package/test_kmscube.py +F: support/testing/tests/package/test_kmscube/ +F: support/testing/tests/package/test_less.py +F: support/testing/tests/package/test_libgpgme.py F: support/testing/tests/package/test_libjxl.py +F: support/testing/tests/package/test_lrzip.py +F: support/testing/tests/package/test_lzip.py +F: support/testing/tests/package/test_lsof.py +F: support/testing/tests/package/test_lz4.py +F: support/testing/tests/package/test_lzop.py +F: support/testing/tests/package/test_mtools.py F: support/testing/tests/package/test_ncdu.py +F: support/testing/tests/package/test_nftables.py +F: support/testing/tests/package/test_nftables/ F: support/testing/tests/package/test_octave.py F: support/testing/tests/package/test_ola.py F: support/testing/tests/package/test_ola/ +F: support/testing/tests/package/test_openblas.py F: support/testing/tests/package/test_perftest.py +F: support/testing/tests/package/test_pigz.py F: support/testing/tests/package/test_python_distro.py F: support/testing/tests/package/test_python_gnupg.py F: support/testing/tests/package/test_python_hkdf.py +F: support/testing/tests/package/test_python_hwdata.py F: support/testing/tests/package/test_python_magic_wormhole.py +F: support/testing/tests/package/test_python_midiutil.py F: support/testing/tests/package/test_python_pyalsa.py F: support/testing/tests/package/test_python_spake2.py F: support/testing/tests/package/test_rdma_core.py F: support/testing/tests/package/test_rdma_core/ +F: support/testing/tests/package/test_screen.py +F: support/testing/tests/package/test_stress_ng.py +F: support/testing/tests/package/test_tcl.py +F: support/testing/tests/package/test_tcl/ +F: support/testing/tests/package/test_weston.py +F: support/testing/tests/package/test_weston/ +F: support/testing/tests/package/test_xz.py F: support/testing/tests/package/test_z3.py F: support/testing/tests/package/test_z3/ +F: support/testing/tests/package/test_zchunk.py +F: support/testing/tests/package/test_zstd.py N: Julien Viard de Galbert F: package/dieharder/ @@ -1769,6 +1839,11 @@ F: package/ramsmp/ N: Kieran Bingham F: package/libcamera/ +N: Kilian Zinnecker +F: package/rockchip-rkbin/ +F: configs/rock5b_defconfig +F: board/radxa/rock5b/ + N: Klaus Heinrich Kiwi F: package/wqy-zenhei/ @@ -1797,6 +1872,9 @@ F: package/aircrack-ng/ N: Laurent Charpentier F: package/open-lldp/ +N: Laurent Vivier +F: package/petitboot/ + N: Lee Jones F: boot/afboot-stm32/ @@ -1855,6 +1933,7 @@ F: configs/zynqmp_zcu106_defconfig F: package/agentpp/ F: package/exim/ F: package/libpjsip/ +F: package/linux-tools/linux-tool-usbtools.mk.in F: package/qpid-proton/ F: package/rtl8188eu/ F: package/snmppp/ @@ -1883,6 +1962,10 @@ F: package/python-simplejson/ F: package/python-versiontools/ F: package/wilc-firmware/ +N: Ludwig Kormann +F: board/in-circuit/ +F: configs/icnova* + N: Maeva Manuel F: board/freescale/imx8qmmek/ F: configs/freescale_imx8qmmek_defconfig @@ -1902,8 +1985,10 @@ F: package/ecryptfs-utils/ N: Marcin Niestroj F: board/grinn/ F: board/orangepi/orangepi-zero-plus/ +F: board/orangepi/orangepi-zero3/ F: configs/grinn_* F: configs/orangepi_zero_plus_defconfig +F: configs/orangepi_zero3_defconfig F: package/argparse/ F: package/dt-utils/ F: package/easydbus/ @@ -1937,6 +2022,7 @@ F: support/testing/tests/package/test_python_pytest.py F: support/testing/tests/package/test_python_pytest_asyncio.py N: Marcus Folkesson +F: package/criu/ F: package/libcamera/ F: package/libcamera-apps/ F: package/libostree/ @@ -2026,6 +2112,9 @@ F: package/python-txaio/ F: package/python-ujson/ F: package/python-wsaccel/ +N: Maksim Kiselev +F: package/ledmon/ + N: Max Filippov F: arch/Config.in.xtensa @@ -2060,11 +2149,6 @@ F: package/protobuf/ F: package/re2/ F: package/spdlog/ -N: Michael Rommel -F: package/knock/ -F: package/python-crc16/ -F: package/python-pyzmq/ - N: Michael Trimarchi F: board/bsh/ F: configs/imx8mn_bsh_smm_s2_defconfig @@ -2091,8 +2175,8 @@ F: package/openrc/ F: package/skeleton-init-openrc/ N: Michel Stempin -F: board/licheepi/ -F: configs/licheepi_zero_defconfig +F: board/sipeed/licheepi_zero/ +F: configs/sipeed_licheepi_zero_defconfig N: Mike Frampton F: package/qcom-db410c-firmware/ @@ -2124,12 +2208,12 @@ N: Neal Frager F: board/versal/ F: board/zynq/ F: board/zynqmp/ -F: board/zynqmp/kria/ F: configs/versal_vck190_defconfig +F: configs/zynq_zc702_defconfig F: configs/zynq_zc706_defconfig +F: configs/zynqmp_kria_kv260_defconfig F: configs/zynqmp_zcu102_defconfig F: configs/zynqmp_zcu106_defconfig -F: configs/zynqmp_kria_kv260_defconfig F: package/bootgen/ F: package/versal-firmware/ @@ -2142,6 +2226,7 @@ F: configs/galileo_defconfig N: Nicolas Carrier F: package/bmap-tools/ +F: package/composer/ F: package/libdbi/ F: package/libdbi-drivers/ F: package/lua-augeas/ @@ -2283,6 +2368,7 @@ F: configs/roseapplepi_defconfig F: configs/sheevaplug_defconfig F: configs/visionfive_defconfig F: package/bats-core/ +F: package/dfu-programmer/ F: package/docker-compose/ F: package/dump1090/ F: package/fatcat/ @@ -2317,6 +2403,8 @@ F: support/testing/tests/package/test_docker_compose.py N: Peter Seiderer F: package/dotconf/ +F: package/fft-eval/ +F: package/python-blinker/ F: package/qt5/qt5speech/ F: package/speechd/ @@ -2393,11 +2481,14 @@ F: package/tree/ N: Pieter De Gendt F: package/libvips/ -N: Pieterjan Camerlynck +N: Pieterjan Camerlynck F: package/libdvbpsi/ F: package/mraa/ F: package/synergy/ +N: Prabhu Sannachi +F: package/redis-plus-plus/ + N: Rafal Susz F: board/avnet/s6lx9_microboard/ F: configs/s6lx9_microboard_defconfig @@ -2438,6 +2529,8 @@ F: support/testing/tests/package/test_python_rsa.py F: support/testing/tests/package/test_python_s3transfer.py N: Raphael Pavlidis +F: package/nvidia-persistenced/ +F: package/shadow/ F: package/slirp4netns/ F: package/sway/ F: package/x11r7/xwayland/ @@ -2476,10 +2569,15 @@ F: package/azmq/ N: Robert Marko F: package/mdio-tools/ +F: package/mhz/ N: Robert Rose F: package/grpc/ +N: Roberto Medina +F: board/firefly/roc-rk3399-pc/ +F: configs/roc_pc_rk3399_defconfig + N: Rodrigo Rebello F: package/chocolate-doom/ F: package/irssi/ @@ -2492,7 +2590,6 @@ F: package/alure/ F: package/aubio/ F: package/binutils/ F: package/bullet/ -F: package/clang/ F: package/clinfo/ F: package/efl/ F: package/enet/ @@ -2506,12 +2603,13 @@ F: package/irrlicht/ F: package/liblinear/ F: package/lensfun/ F: package/libbpf/ -F: package/libclc/ F: package/libgta/ F: package/libiec61850/ F: package/libspatialindex/ F: package/linux-syscall-support/ -F: package/llvm/ +F: package/llvm-project/clang/ +F: package/llvm-project/libclc/ +F: package/llvm-project/llvm/ F: package/lugaru/ F: package/mcelog/ F: package/mesa3d/ @@ -2533,8 +2631,11 @@ F: package/upower/ F: package/waffle/ F: package/xenomai/ F: package/zziplib/ +F: support/testing/tests/package/sample_python_mako.py +F: support/testing/tests/package/sample_python_mako_ext.py F: support/testing/tests/package/test_glxinfo.py F: support/testing/tests/package/test_openssh.py +F: support/testing/tests/package/test_python_mako.py F: toolchain/ N: Rufus Segar @@ -2543,6 +2644,10 @@ F: package/agent-proxy/ N: Ryan Wilkins F: package/biosdevname/ +N: Saeed Kazemi +F: package/eza/ +F: package/procs/ + N: Sam Lancia F: package/lrzip/ @@ -2563,6 +2668,14 @@ F: support/misc/toolchainfile.cmake.in N: Sam Voss F: package/ripgrep/ +N: Sebastian Weyer +F: package/amlogic-boot-fip/ +F: package/nushell/ +F: package/rust-bindgen/ +F: package/spirv-headers/ +F: support/testing/tests/package/sample_nu.nu +F: support/testing/tests/package/test_nu.py + N: Sébastien Szymanski F: package/mmc-utils/ F: package/python-flask-jsonrpc/ @@ -2665,6 +2778,10 @@ F: package/libvpx/ F: package/mesa3d-demos/ F: package/ti-gfx/ +N: Stefan Nickl +F: board/freescale/imx8dxlevk/ +F: configs/freescale_imx8dxlevk_defconfig + N: Stefan Ott F: package/unbound/ @@ -2698,7 +2815,6 @@ F: package/dvdauthor/ F: package/dvdrw-tools/ F: package/memtest86/ F: package/mjpegtools/ -F: package/tovid/ F: package/udftools/ F: package/xorriso/ @@ -2725,6 +2841,10 @@ F: package/reproc/ F: package/termcolor/ F: package/tl-expected/ +N: Takumi Takahashi +F: package/gsettings-desktop-schemas/ +F: package/libcanberra/ + N: Tan En De F: package/libkcapi/ @@ -2790,6 +2910,7 @@ F: toolchain/ N: Thomas Devoogdt F: package/fluent-bit/ +F: package/libsoup3/ N: Thomas Huth F: board/qemu/m68k-mcf5208/ @@ -2847,6 +2968,7 @@ F: package/msmtp/ F: package/musl/ F: package/musl-fts/ F: package/ne10/ +F: package/nodejs/ F: package/pkg-python.mk F: package/pkg-autotools.mk F: package/pkg-generic.mk @@ -2919,14 +3041,17 @@ F: package/gettext-tiny/ F: package/tinyssh/ N: Valentin Korenblit -F: package/clang/ F: package/clinfo/ -F: package/libclc/ -F: package/llvm/ +F: package/llvm-project/clang/ +F: package/llvm-project/libclc/ +F: package/llvm-project/llvm/ N: Vanya Sergeev F: package/lua-periphery/ +N: Viacheslav Bocharov +F: package/rtl8822cs/ + N: Victor Huesca F: support/testing/tests/core/test_root_password.py @@ -2972,6 +3097,7 @@ F: package/mksh/ F: package/ruby/ F: package/uclibc/ F: package/uclibc-ng-test/ +F: support/testing/tests/package/test_ruby.py N: Will Newton F: package/enchant/ @@ -2983,6 +3109,11 @@ F: package/time/ N: Will Wagner F: package/yaffs2utils/ +N: Witold Lipieta +F: package/python-segno/ +F: support/testing/tests/package/sample_python_segno.py +F: support/testing/tests/package/test_python_segno.py + N: Wojciech M. Zabolotny F: package/avrdude/ F: package/jack2/ @@ -2992,8 +3123,18 @@ F: package/python-pyusb/ N: Wojciech Niziński F: package/fwup/ +N: Woodrow Douglass +F: package/opencv4 +F: package/opencv4-contrib + N: Xuanhao Shi +F: board/ti/am62x-sk/ +F: board/ti/am64x-sk/ +F: boot/ti-k3-boot-firmware/ +F: boot/ti-k3-image-gen/ F: boot/ti-k3-r5-loader/ +F: configs/ti_am62x_sk_defconfig +F: configs/ti_am64x_sk_defconfig N: Yair Ben Avraham F: package/casync/ @@ -3050,6 +3191,7 @@ F: package/zisofs-tools/ F: support/download/ N: Yann E. MORIN +F: .editorconfig F: package/gpsd/ N: Yegor Yefremov @@ -3104,11 +3246,13 @@ F: package/zlog/ F: support/testing/tests/package/sample_python_dicttoxml2.py F: support/testing/tests/package/sample_python_dtschema.py F: support/testing/tests/package/sample_python_munch.py +F: support/testing/tests/package/sample_python_pysmb.py F: support/testing/tests/package/test_libftdi1.py F: support/testing/tests/package/test_python_can.py F: support/testing/tests/package/test_python_dicttoxml2.py F: support/testing/tests/package/test_python_dtschema.py F: support/testing/tests/package/test_python_munch.py +F: support/testing/tests/package/test_python_pysmb.py F: utils/scanpypi N: Yunhao Tian @@ -3122,6 +3266,7 @@ F: package/libusb-compat/ F: package/proj/ F: package/python-iniparse/ F: package/qjson/ +F: package/qt6/qt6core5compat/ F: package/quazip/ F: package/shapelib/ F: package/simple-mail/ diff --git a/Makefile b/Makefile index 634780b42124..e422e97214ab 100644 --- a/Makefile +++ b/Makefile @@ -90,9 +90,9 @@ all: .PHONY: all # Set and export the version string -export BR2_VERSION := 2023.02 +export BR2_VERSION := 2023.11 # Actual time the release is cut (for reproducible builds) -BR2_VERSION_EPOCH = 1678652000 +BR2_VERSION_EPOCH = 1701677000 # Save running make version since it's clobbered by the make package RUNNING_MAKE_VERSION := $(MAKE_VERSION) @@ -123,7 +123,7 @@ endif noconfig_targets := menuconfig nconfig gconfig xconfig config oldconfig randconfig \ defconfig %_defconfig allyesconfig allnoconfig alldefconfig syncconfig release \ randpackageconfig allyespackageconfig allnopackageconfig \ - print-version olddefconfig distclean manual manual-% check-package check-flake8 + print-version olddefconfig distclean manual manual-% check-package # Some global targets do not trigger a build, but are used to collect # metadata, or do various checks. When such targets are triggered, @@ -227,8 +227,6 @@ LEGAL_MANIFEST_CSV_HOST = $(LEGAL_INFO_DIR)/host-manifest.csv LEGAL_WARNINGS = $(LEGAL_INFO_DIR)/.warnings LEGAL_REPORT = $(LEGAL_INFO_DIR)/README -CPE_UPDATES_DIR = $(BASE_DIR)/cpe-updates - BR2_CONFIG = $(CONFIG_DIR)/.config # Pull in the user's configuration file @@ -353,7 +351,7 @@ export HOSTARCH := $(shell LC_ALL=C $(HOSTCC_NOCCACHE) -v 2>&1 | \ # When adding a new host gcc version in Config.in, # update the HOSTCC_MAX_VERSION variable: -HOSTCC_MAX_VERSION := 9 +HOSTCC_MAX_VERSION := 11 HOSTCC_VERSION := $(shell V=$$($(HOSTCC_NOCCACHE) --version | \ sed -n -r 's/^.* ([0-9]*)\.([0-9]*)\.([0-9]*)[ ]*.*/\1 \2/p'); \ @@ -594,8 +592,13 @@ world: target-post-image .PHONY: prepare-sdk prepare-sdk: world @$(call MESSAGE,"Rendering the SDK relocatable") - PER_PACKAGE_DIR=$(PER_PACKAGE_DIR) $(TOPDIR)/support/scripts/fix-rpath host - PER_PACKAGE_DIR=$(PER_PACKAGE_DIR) $(TOPDIR)/support/scripts/fix-rpath staging + PARALLEL_JOBS=$(PARALLEL_JOBS) \ + PER_PACKAGE_DIR=$(PER_PACKAGE_DIR) \ + $(TOPDIR)/support/scripts/fix-rpath host + PARALLEL_JOBS=$(PARALLEL_JOBS) \ + PER_PACKAGE_DIR=$(PER_PACKAGE_DIR) \ + $(TOPDIR)/support/scripts/fix-rpath staging + $(call ppd-fixup-paths,$(BASE_DIR)) $(INSTALL) -m 755 $(TOPDIR)/support/misc/relocate-sdk.sh $(HOST_DIR)/relocate-sdk.sh mkdir -p $(HOST_DIR)/share/buildroot echo $(HOST_DIR) > $(HOST_DIR)/share/buildroot/sdk-location @@ -712,7 +715,7 @@ STAGING_DIR_FILES_LISTS = $(sort $(wildcard $(BUILD_DIR)/*/.files-list-staging.t .PHONY: host-finalize host-finalize: $(PACKAGES) $(HOST_DIR) $(HOST_DIR_SYMLINK) @$(call MESSAGE,"Finalizing host directory") - $(call per-package-rsync,$(sort $(PACKAGES)),host,$(HOST_DIR)) + $(call per-package-rsync,$(sort $(PACKAGES)),host,$(HOST_DIR),copy) .PHONY: staging-finalize staging-finalize: $(STAGING_DIR_SYMLINK) @@ -720,7 +723,7 @@ staging-finalize: $(STAGING_DIR_SYMLINK) .PHONY: target-finalize target-finalize: $(PACKAGES) $(TARGET_DIR) host-finalize @$(call MESSAGE,"Finalizing target directory") - $(call per-package-rsync,$(sort $(PACKAGES)),target,$(TARGET_DIR)) + $(call per-package-rsync,$(sort $(PACKAGES)),target,$(TARGET_DIR),copy) $(foreach hook,$(TARGET_FINALIZE_HOOKS),$($(hook))$(sep)) rm -rf $(TARGET_DIR)/usr/include $(TARGET_DIR)/usr/share/aclocal \ $(TARGET_DIR)/usr/lib/pkgconfig $(TARGET_DIR)/usr/share/pkgconfig \ @@ -765,7 +768,9 @@ endif ln -sf ../usr/lib/os-release $(TARGET_DIR)/etc @$(call MESSAGE,"Sanitizing RPATH in target tree") - PER_PACKAGE_DIR=$(PER_PACKAGE_DIR) $(TOPDIR)/support/scripts/fix-rpath target + PARALLEL_JOBS=$(PARALLEL_JOBS) \ + PER_PACKAGE_DIR=$(PER_PACKAGE_DIR) \ + $(TOPDIR)/support/scripts/fix-rpath target # For a merged /usr, ensure that /lib, /bin and /sbin and their /usr # counterparts are appropriately setup as symlinks ones to the others. @@ -831,7 +836,7 @@ legal-info-clean: .PHONY: legal-info-prepare legal-info-prepare: $(LEGAL_INFO_DIR) @$(call MESSAGE,"Buildroot $(BR2_VERSION_FULL) Collecting legal info") - @$(call legal-license-file,buildroot,buildroot,support/legal-info/buildroot.hash,COPYING,COPYING,HOST) + @$(call legal-license-file,HOST,buildroot,buildroot,COPYING,COPYING,support/legal-info/buildroot.hash) @$(call legal-manifest,TARGET,PACKAGE,VERSION,LICENSE,LICENSE FILES,SOURCE ARCHIVE,SOURCE SITE,DEPENDENCIES WITH LICENSES) @$(call legal-manifest,HOST,PACKAGE,VERSION,LICENSE,LICENSE FILES,SOURCE ARCHIVE,SOURCE SITE,DEPENDENCIES WITH LICENSES) @$(call legal-manifest,HOST,buildroot,$(BR2_VERSION_FULL),GPL-2.0+,COPYING,not saved,not saved) @@ -927,14 +932,6 @@ pkg-stats: --html $(O)/pkg-stats.html \ --nvd-path $(DL_DIR)/buildroot-nvd -.PHONY: missing-cpe -missing-cpe: - $(Q)mkdir -p $(CPE_UPDATES_DIR) - $(Q)cd "$(CONFIG_DIR)" ; \ - $(TOPDIR)/support/scripts/gen-missing-cpe \ - --nvd-path $(DL_DIR)/buildroot-nvd \ - --output $(CPE_UPDATES_DIR) - else # ifeq ($(BR2_HAVE_DOT_CONFIG),y) # Some subdirectories are also package names. To avoid that "make linux" @@ -1105,8 +1102,7 @@ show-vars: clean: rm -rf $(BASE_TARGET_DIR) $(BINARIES_DIR) $(HOST_DIR) $(HOST_DIR_SYMLINK) \ $(BUILD_DIR) $(BASE_DIR)/staging \ - $(LEGAL_INFO_DIR) $(GRAPHS_DIR) $(PER_PACKAGE_DIR) $(CPE_UPDATES_DIR) \ - $(O)/pkg-stats.* + $(LEGAL_INFO_DIR) $(GRAPHS_DIR) $(PER_PACKAGE_DIR) $(O)/pkg-stats.* .PHONY: distclean distclean: clean @@ -1191,7 +1187,6 @@ help: @echo ' legal-info - generate info about license compliance' @echo ' show-info - generate info about packages, as a JSON blurb' @echo ' pkg-stats - generate info about packages as JSON and HTML' - @echo ' missing-cpe - generate XML snippets for missing CPE identifiers' @echo ' printvars - dump internal variables selected with VARS=...' @echo ' show-vars - dump all internal variables as a JSON blurb; use VARS=...' @echo ' to limit the list to variables names matching that pattern' @@ -1249,13 +1244,6 @@ release: print-version: @echo $(BR2_VERSION_FULL) -check-flake8: - $(Q)git ls-tree -r --name-only HEAD \ - | xargs file \ - | grep 'Python script' \ - | cut -d':' -f1 \ - | xargs -- python3 -m flake8 --statistics - check-package: $(Q)./utils/check-package `git ls-tree -r --name-only HEAD` \ --ignore-list=$(TOPDIR)/.checkpackageignore @@ -1270,4 +1258,7 @@ include docs/manual/manual.mk .PHONY: $(noconfig_targets) +# .WAIT was introduced in make 4.4. For older make, define it as phony. +.PHONY: .WAIT + endif #umask / $(CURDIR) / $(O) diff --git a/arch/Config.in b/arch/Config.in index 1c0c400a9876..e37f4dab1d86 100644 --- a/arch/Config.in +++ b/arch/Config.in @@ -216,6 +216,11 @@ config BR2_sh config BR2_sparc bool "SPARC" select BR2_USE_MMU + # uClibc-ng broken on sparc due to recent gcc changes + # that need to be reverted since gcc 8.4, 9.3 and 10.1. + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98784 + # gcc <= 10.x has been removed from Buildroot. + select BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT help SPARC (from Scalable Processor Architecture) is a RISC instruction set architecture (ISA) developed by Sun @@ -304,6 +309,10 @@ config BR2_ARCH_NEEDS_GCC_AT_LEAST_12 bool select BR2_ARCH_NEEDS_GCC_AT_LEAST_11 +config BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + bool + select BR2_ARCH_NEEDS_GCC_AT_LEAST_12 + # The following string values are defined by the individual # Config.in.$ARCH files config BR2_ARCH diff --git a/arch/Config.in.mips b/arch/Config.in.mips index 19a56d555436..8e5654a5f3bf 100644 --- a/arch/Config.in.mips +++ b/arch/Config.in.mips @@ -40,8 +40,8 @@ choice help Specific CPU variant to use - 64bit capable: 64, 64r2, 64r3, 64r5, 64r6 - non-64bit capable: 32, 32r2, 32r3, 32r5, 32r6 + 64bit capable: mips4, 64, 64r2, 64r3, 64r5, 64r6 + non-64bit capable: mips4, 32, 32r2, 32r3, 32r5, 32r6 config BR2_mips_32 bool "Generic MIPS32" @@ -99,6 +99,8 @@ config BR2_mips_xburst fixed in the JZ4760B SoC. See http://www.ingenic.com/en/?xburst.html +config BR2_mips4 + bool "MIPS IV" config BR2_mips_64 bool "Generic MIPS64" depends on BR2_ARCH_IS_64 @@ -263,6 +265,7 @@ config BR2_GCC_TARGET_ARCH default "octeon2" if BR2_mips_octeon2 default "octeon3" if BR2_mips_octeon3 default "p6600" if BR2_mips_p6600 + default "mips4" if BR2_mips4 config BR2_MIPS_OABI32 bool diff --git a/arch/Config.in.powerpc b/arch/Config.in.powerpc index d4e204a463ae..3f4d348d5fc8 100644 --- a/arch/Config.in.powerpc +++ b/arch/Config.in.powerpc @@ -146,21 +146,6 @@ config BR2_powerpc_power9 select BR2_ARCH_NEEDS_GCC_AT_LEAST_6 endchoice -choice - prompt "Target ABI" - default BR2_powerpc_SPE if BR2_POWERPC_CPU_HAS_SPE - default BR2_powerpc_CLASSIC - help - Application Binary Interface to use - -config BR2_powerpc_CLASSIC - bool "Classic" - depends on !BR2_POWERPC_CPU_HAS_SPE -config BR2_powerpc_SPE - bool "SPE" - depends on BR2_POWERPC_CPU_HAS_SPE -endchoice - config BR2_POWERPC_SOFT_FLOAT bool "Use soft-float" select BR2_SOFT_FLOAT diff --git a/arch/Config.in.riscv b/arch/Config.in.riscv index b5e84389e0a0..d62e4ebc6c91 100644 --- a/arch/Config.in.riscv +++ b/arch/Config.in.riscv @@ -1,23 +1,5 @@ # RISC-V CPU ISA extensions. -config BR2_RISCV_ISA_RVI - bool - -config BR2_RISCV_ISA_RVM - bool - -config BR2_RISCV_ISA_RVA - bool - -config BR2_RISCV_ISA_RVF - bool - -config BR2_RISCV_ISA_RVD - bool - -config BR2_RISCV_ISA_RVC - bool - choice prompt "Target Architecture Variant" default BR2_riscv_g @@ -35,35 +17,33 @@ config BR2_riscv_g config BR2_riscv_custom bool "Custom architecture" select BR2_RISCV_ISA_RVI - select BR2_RISCV_ISA_CUSTOM_RVA endchoice -if BR2_riscv_custom - comment "Instruction Set Extensions" -config BR2_RISCV_ISA_CUSTOM_RVM +config BR2_RISCV_ISA_RVI + bool "Base Integer (I)" + +config BR2_RISCV_ISA_RVM bool "Integer Multiplication and Division (M)" - select BR2_RISCV_ISA_RVM -config BR2_RISCV_ISA_CUSTOM_RVA +config BR2_RISCV_ISA_RVA bool "Atomic Instructions (A)" - select BR2_RISCV_ISA_RVA -config BR2_RISCV_ISA_CUSTOM_RVF +config BR2_RISCV_ISA_RVF bool "Single-precision Floating-point (F)" - select BR2_RISCV_ISA_RVF -config BR2_RISCV_ISA_CUSTOM_RVD +config BR2_RISCV_ISA_RVD bool "Double-precision Floating-point (D)" depends on BR2_RISCV_ISA_RVF - select BR2_RISCV_ISA_RVD -config BR2_RISCV_ISA_CUSTOM_RVC +config BR2_RISCV_ISA_RVC bool "Compressed Instructions (C)" - select BR2_RISCV_ISA_RVC -endif + +config BR2_RISCV_ISA_RVV + bool "Vector Instructions (V)" + select BR2_ARCH_NEEDS_GCC_AT_LEAST_12 choice prompt "Target Architecture Size" diff --git a/arch/Config.in.x86 b/arch/Config.in.x86 index c770ae3ffe37..49823fe88532 100644 --- a/arch/Config.in.x86 +++ b/arch/Config.in.x86 @@ -19,12 +19,20 @@ config BR2_X86_CPU_HAS_AVX bool config BR2_X86_CPU_HAS_AVX2 bool + +# BR2_X86_CPU_HAS_AVX512 implies the following AVX512 extensions: +# AVX512F, AVX512BW, AVX512CD, AVX512DQ, AVX512VL +# This subset is common to Intel Xeon (excl Xeon Phi), AMD Zen 4, and +# the x86-64-v4 psABI. +# +# Only select BR2_X86_CPU_HAS_AVX512 if the CPU supports this entire +# subset of extensions. config BR2_X86_CPU_HAS_AVX512 bool # This list of CPU architecture variant is (loosely) ordered according # to the gcc documentation at -# https://gcc.gnu.org/onlinedocs/gcc-11.2.0/gcc/x86-Options.html +# https://gcc.gnu.org/onlinedocs/gcc-13.2.0/gcc/x86-Options.html choice prompt "Target Architecture Variant" default BR2_x86_i586 if BR2_i386 @@ -227,6 +235,17 @@ config BR2_x86_sandybridge select BR2_X86_CPU_HAS_SSE42 select BR2_X86_CPU_HAS_AVX select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9 +config BR2_x86_ivybridge + bool "ivybridge" + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_SSE + select BR2_X86_CPU_HAS_SSE2 + select BR2_X86_CPU_HAS_SSE3 + select BR2_X86_CPU_HAS_SSSE3 + select BR2_X86_CPU_HAS_SSE4 + select BR2_X86_CPU_HAS_SSE42 + select BR2_X86_CPU_HAS_AVX + select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9 config BR2_x86_core_avx2 bool "core-avx2" select BR2_X86_CPU_HAS_MMX @@ -335,6 +354,54 @@ config BR2_x86_tremont select BR2_X86_CPU_HAS_SSE4 select BR2_X86_CPU_HAS_SSE42 select BR2_ARCH_NEEDS_GCC_AT_LEAST_9 +config BR2_x86_sierraforest + bool "sierraforest" + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_SSE + select BR2_X86_CPU_HAS_SSE2 + select BR2_X86_CPU_HAS_SSE3 + select BR2_X86_CPU_HAS_SSSE3 + select BR2_X86_CPU_HAS_SSE4 + select BR2_X86_CPU_HAS_SSE42 + select BR2_X86_CPU_HAS_AVX + select BR2_X86_CPU_HAS_AVX2 + select BR2_ARCH_NEEDS_GCC_AT_LEAST_13 +config BR2_x86_grandridge + bool "grandridge" + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_SSE + select BR2_X86_CPU_HAS_SSE2 + select BR2_X86_CPU_HAS_SSE3 + select BR2_X86_CPU_HAS_SSSE3 + select BR2_X86_CPU_HAS_SSE4 + select BR2_X86_CPU_HAS_SSE42 + select BR2_X86_CPU_HAS_AVX + select BR2_X86_CPU_HAS_AVX2 + select BR2_ARCH_NEEDS_GCC_AT_LEAST_13 +config BR2_x86_knightslanding + bool "knightslanding" + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_SSE + select BR2_X86_CPU_HAS_SSE2 + select BR2_X86_CPU_HAS_SSE3 + select BR2_X86_CPU_HAS_SSSE3 + select BR2_X86_CPU_HAS_SSE4 + select BR2_X86_CPU_HAS_SSE42 + select BR2_X86_CPU_HAS_AVX + select BR2_X86_CPU_HAS_AVX2 + select BR2_ARCH_NEEDS_GCC_AT_LEAST_5 +config BR2_x86_knightsmill + bool "knightsmill" + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_SSE + select BR2_X86_CPU_HAS_SSE2 + select BR2_X86_CPU_HAS_SSE3 + select BR2_X86_CPU_HAS_SSSE3 + select BR2_X86_CPU_HAS_SSE4 + select BR2_X86_CPU_HAS_SSE42 + select BR2_X86_CPU_HAS_AVX + select BR2_X86_CPU_HAS_AVX2 + select BR2_ARCH_NEEDS_GCC_AT_LEAST_8 config BR2_x86_skylake_avx512 bool "skylake-avx512" select BR2_X86_CPU_HAS_MMX @@ -439,6 +506,8 @@ config BR2_x86_sapphirerapids select BR2_X86_CPU_HAS_AVX2 select BR2_X86_CPU_HAS_AVX512 select BR2_ARCH_NEEDS_GCC_AT_LEAST_11 + help + Use for Sapphire Rapids, Emerald Rapids config BR2_x86_alderlake bool "alderlake" select BR2_X86_CPU_HAS_MMX @@ -450,8 +519,9 @@ config BR2_x86_alderlake select BR2_X86_CPU_HAS_SSE42 select BR2_X86_CPU_HAS_AVX select BR2_X86_CPU_HAS_AVX2 - select BR2_X86_CPU_HAS_AVX512 select BR2_ARCH_NEEDS_GCC_AT_LEAST_11 + help + Use for Alder Lake, Raptor Lake, Meteor Lake config BR2_x86_rocketlake bool "rocketlake" select BR2_X86_CPU_HAS_MMX @@ -465,6 +535,32 @@ config BR2_x86_rocketlake select BR2_X86_CPU_HAS_AVX2 select BR2_X86_CPU_HAS_AVX512 select BR2_ARCH_NEEDS_GCC_AT_LEAST_11 +config BR2_x86_graniterapids + bool "graniterapids" + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_SSE + select BR2_X86_CPU_HAS_SSE2 + select BR2_X86_CPU_HAS_SSE3 + select BR2_X86_CPU_HAS_SSSE3 + select BR2_X86_CPU_HAS_SSE4 + select BR2_X86_CPU_HAS_SSE42 + select BR2_X86_CPU_HAS_AVX + select BR2_X86_CPU_HAS_AVX2 + select BR2_X86_CPU_HAS_AVX512 + select BR2_ARCH_NEEDS_GCC_AT_LEAST_13 +config BR2_x86_graniterapids_d + bool "graniterapids-d" + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_SSE + select BR2_X86_CPU_HAS_SSE2 + select BR2_X86_CPU_HAS_SSE3 + select BR2_X86_CPU_HAS_SSSE3 + select BR2_X86_CPU_HAS_SSE4 + select BR2_X86_CPU_HAS_SSE42 + select BR2_X86_CPU_HAS_AVX + select BR2_X86_CPU_HAS_AVX2 + select BR2_X86_CPU_HAS_AVX512 + select BR2_ARCH_NEEDS_GCC_AT_LEAST_13 config BR2_x86_k6 bool "k6" depends on !BR2_x86_64 @@ -502,6 +598,13 @@ config BR2_x86_barcelona select BR2_X86_CPU_HAS_SSE select BR2_X86_CPU_HAS_SSE2 select BR2_X86_CPU_HAS_SSE3 +config BR2_x86_bobcat + bool "bobcat" + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_SSE + select BR2_X86_CPU_HAS_SSE2 + select BR2_X86_CPU_HAS_SSE3 + select BR2_X86_CPU_HAS_SSSE3 config BR2_x86_jaguar bool "jaguar" select BR2_X86_CPU_HAS_MMX @@ -511,6 +614,25 @@ config BR2_x86_jaguar select BR2_X86_CPU_HAS_SSSE3 select BR2_X86_CPU_HAS_SSE4 select BR2_X86_CPU_HAS_SSE42 + select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 +config BR2_x86_bulldozer + bool "bulldozer" + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_SSE + select BR2_X86_CPU_HAS_SSE2 + select BR2_X86_CPU_HAS_SSE3 + select BR2_X86_CPU_HAS_SSSE3 + select BR2_X86_CPU_HAS_SSE4 + select BR2_X86_CPU_HAS_SSE42 +config BR2_x86_piledriver + bool "piledriver" + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_SSE + select BR2_X86_CPU_HAS_SSE2 + select BR2_X86_CPU_HAS_SSE3 + select BR2_X86_CPU_HAS_SSSE3 + select BR2_X86_CPU_HAS_SSE4 + select BR2_X86_CPU_HAS_SSE42 config BR2_x86_steamroller bool "steamroller" select BR2_X86_CPU_HAS_MMX @@ -520,12 +642,73 @@ config BR2_x86_steamroller select BR2_X86_CPU_HAS_SSSE3 select BR2_X86_CPU_HAS_SSE4 select BR2_X86_CPU_HAS_SSE42 + select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 +config BR2_x86_excavator + bool "excavator" + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_SSE + select BR2_X86_CPU_HAS_SSE2 + select BR2_X86_CPU_HAS_SSE3 + select BR2_X86_CPU_HAS_SSSE3 + select BR2_X86_CPU_HAS_SSE4 + select BR2_X86_CPU_HAS_SSE42 + select BR2_X86_CPU_HAS_AVX + select BR2_X86_CPU_HAS_AVX2 + select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9 +config BR2_x86_zen + bool "zen" + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_SSE + select BR2_X86_CPU_HAS_SSE2 + select BR2_X86_CPU_HAS_SSE3 + select BR2_X86_CPU_HAS_SSSE3 + select BR2_X86_CPU_HAS_SSE4 + select BR2_X86_CPU_HAS_SSE42 + select BR2_X86_CPU_HAS_AVX + select BR2_X86_CPU_HAS_AVX2 + select BR2_ARCH_NEEDS_GCC_AT_LEAST_6 +config BR2_x86_zen2 + bool "zen 2" + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_SSE + select BR2_X86_CPU_HAS_SSE2 + select BR2_X86_CPU_HAS_SSE3 + select BR2_X86_CPU_HAS_SSSE3 + select BR2_X86_CPU_HAS_SSE4 + select BR2_X86_CPU_HAS_SSE42 + select BR2_X86_CPU_HAS_AVX + select BR2_X86_CPU_HAS_AVX2 + select BR2_ARCH_NEEDS_GCC_AT_LEAST_9 +config BR2_x86_zen3 + bool "zen 3" + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_SSE + select BR2_X86_CPU_HAS_SSE2 + select BR2_X86_CPU_HAS_SSE3 + select BR2_X86_CPU_HAS_SSSE3 + select BR2_X86_CPU_HAS_SSE4 + select BR2_X86_CPU_HAS_SSE42 + select BR2_X86_CPU_HAS_AVX + select BR2_X86_CPU_HAS_AVX2 + select BR2_ARCH_NEEDS_GCC_AT_LEAST_11 +config BR2_x86_zen4 + bool "zen 4" + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_SSE + select BR2_X86_CPU_HAS_SSE2 + select BR2_X86_CPU_HAS_SSE3 + select BR2_X86_CPU_HAS_SSSE3 + select BR2_X86_CPU_HAS_SSE4 + select BR2_X86_CPU_HAS_SSE42 + select BR2_X86_CPU_HAS_AVX + select BR2_X86_CPU_HAS_AVX2 + select BR2_X86_CPU_HAS_AVX512 + select BR2_ARCH_NEEDS_GCC_AT_LEAST_13 config BR2_x86_geode - bool "geode" - # Don't include MMX support because there several variant of geode - # processor, some with MMX support, some without. - # See: http://en.wikipedia.org/wiki/Geode_%28processor%29 + bool "AMD Geode" depends on !BR2_x86_64 + select BR2_X86_CPU_HAS_MMX + select BR2_X86_CPU_HAS_3DNOW config BR2_x86_c3 bool "Via/Cyrix C3 (Samuel/Ezra cores)" depends on !BR2_x86_64 @@ -593,6 +776,7 @@ config BR2_GCC_TARGET_ARCH default "nehalem" if BR2_x86_nehalem default "corei7-avx" if BR2_x86_corei7_avx default "sandybridge" if BR2_x86_sandybridge + default "ivybridge" if BR2_x86_ivybridge default "core-avx2" if BR2_x86_core_avx2 default "haswell" if BR2_x86_haswell default "broadwell" if BR2_x86_broadwell @@ -604,6 +788,10 @@ config BR2_GCC_TARGET_ARCH default "goldmont" if BR2_x86_goldmont default "goldmont-plus" if BR2_x86_goldmont_plus default "tremont" if BR2_x86_tremont + default "sierraforest" if BR2_x86_sierraforest + default "grandridge" if BR2_x86_grandridge + default "knl" if BR2_x86_knightslanding + default "knm" if BR2_x86_knightsmill default "skylake-avx512" if BR2_x86_skylake_avx512 default "cannonlake" if BR2_x86_cannonlake default "icelake-client" if BR2_x86_icelake_client @@ -614,11 +802,21 @@ config BR2_GCC_TARGET_ARCH default "sapphirerapids" if BR2_x86_sapphirerapids default "alderlake" if BR2_x86_alderlake default "rocketlake" if BR2_x86_rocketlake + default "graniterapids" if BR2_x86_graniterapids + default "graniterapids-d" if BR2_x86_graniterapids_d default "k8" if BR2_x86_opteron default "k8-sse3" if BR2_x86_opteron_sse3 default "barcelona" if BR2_x86_barcelona + default "btver1" if BR2_x86_bobcat default "btver2" if BR2_x86_jaguar + default "bdver1" if BR2_x86_bulldozer + default "bdver2" if BR2_x86_piledriver default "bdver3" if BR2_x86_steamroller + default "bdver4" if BR2_x86_excavator + default "znver1" if BR2_x86_zen + default "znver2" if BR2_x86_zen2 + default "znver3" if BR2_x86_zen3 + default "znver4" if BR2_x86_zen4 default "k6" if BR2_x86_k6 default "k6-2" if BR2_x86_k6_2 default "athlon" if BR2_x86_athlon diff --git a/arch/arch.mk.riscv b/arch/arch.mk.riscv index 8d2236147c84..ee5c434b9711 100644 --- a/arch/arch.mk.riscv +++ b/arch/arch.mk.riscv @@ -26,6 +26,9 @@ endif ifeq ($(BR2_RISCV_ISA_RVC),y) GCC_TARGET_ARCH := $(GCC_TARGET_ARCH)c endif +ifeq ($(BR2_RISCV_ISA_RVV),y) +GCC_TARGET_ARCH := $(GCC_TARGET_ARCH)v +endif # Starting from gcc 12.x, csr and fence instructions have been # separated from the base I instruction set, and special -march diff --git a/board/arm/foundation-v8/readme.txt b/board/arm/foundation-v8/readme.txt index b5106f015ef8..cb0fe08b8755 100644 --- a/board/arm/foundation-v8/readme.txt +++ b/board/arm/foundation-v8/readme.txt @@ -3,14 +3,14 @@ ARM software simulator of the AArch64 architecture. First, one has to download the AArch64 software simulator from: - https://silver.arm.com/download/download.tm?pv=4807186 + https://armkeil.blob.core.windows.net/developer/Files/downloads/ecosystem-models/Foundation_Platform_11.20_15_Linux64.tgz Then, use the arm_foundationv8_defconfig configuration to build your Buildroot system. Finally, boot your system with: - ${LOCATION_OF_FOUNDATIONV8_SIMULATOR}/models/Linux64_GCC-6.4/Foundation_Platform \ + ${LOCATION_OF_FOUNDATIONV8_SIMULATOR}/models/Linux64_GCC-9.3/Foundation_Platform \ --image output/images/linux-system.axf \ --block-device output/images/rootfs.ext2 \ --network=nat \ diff --git a/board/arrow/avenger96/patches/arm-trusted-firmware/0001-stm32mp157a-avenger96.dts-enable-hash-device-to-unbr.patch b/board/arrow/avenger96/patches/arm-trusted-firmware/0001-stm32mp157a-avenger96.dts-enable-hash-device-to-unbr.patch new file mode 100644 index 000000000000..8cec0af3b1ff --- /dev/null +++ b/board/arrow/avenger96/patches/arm-trusted-firmware/0001-stm32mp157a-avenger96.dts-enable-hash-device-to-unbr.patch @@ -0,0 +1,51 @@ +From 336dc301e02d64507447f82020ce7a349797bef3 Mon Sep 17 00:00:00 2001 +From: Peter Korsgaard +Date: Sun, 5 Nov 2023 14:59:16 +0100 +Subject: [PATCH] stm32mp157a-avenger96.dts: enable hash device to unbreak boot + issue + +The avenger96 board was forgotten when authentication support was added with +commit 4bdb1a7a6a1325343 (stm32mp1: add authentication support for +stm32image), causing a panic when stm32mp_init_auth() is called, so fix it +similar to how it was done for the STM32MP157C-ED1 board with: + +commit b37b52ef8bc05bfd8dcca992d4ba84cd7c5d23bb +Author: Yann Gautier +Date: Tue Oct 13 18:05:06 2020 +0200 + + fdts: add missing hash node in STM32MP157C-ED1 board DT + + Without this node, the board fails to boot and panics in the function + stm32mp_init_auth(). + + Change-Id: Ia54924410dac2a8c94dd6e45d7e93977fe7d87e2 + Signed-off-by: Yann Gautier + +Upstream: N/A - Upstream reworked authentication to skip it for MP157A + variant since v2.7, see "feat(st): disable authentication based on + part_number" + (https://github.com/ARM-software/arm-trusted-firmware/commit/49abdfd8cececb91a4bc7e7b29a30c09dce461c7) + +Signed-off-by: Peter Korsgaard +--- + fdts/stm32mp157a-avenger96.dts | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/fdts/stm32mp157a-avenger96.dts b/fdts/stm32mp157a-avenger96.dts +index b967736e4..76edecb83 100644 +--- a/fdts/stm32mp157a-avenger96.dts ++++ b/fdts/stm32mp157a-avenger96.dts +@@ -271,6 +271,10 @@ + }; + }; + ++&hash1 { ++ status = "okay"; ++}; ++ + &rng1 { + status = "okay"; + }; +-- +2.39.2 + diff --git a/board/asus/tinker-s/extlinux.conf b/board/asus/tinker-s/extlinux.conf new file mode 100644 index 000000000000..5a2d05b811a9 --- /dev/null +++ b/board/asus/tinker-s/extlinux.conf @@ -0,0 +1,4 @@ +label Tinker linux + kernel /boot/uImage + devicetree /boot/rk3288-tinker-s.dtb + append console=ttyS2,115200n8 root=179:1 rootwait diff --git a/board/asus/tinker-s/post-build.sh b/board/asus/tinker-s/post-build.sh new file mode 100755 index 000000000000..f938876625c0 --- /dev/null +++ b/board/asus/tinker-s/post-build.sh @@ -0,0 +1,9 @@ +#!/bin/sh + +MKIMAGE=$HOST_DIR/bin/mkimage +BOARD_DIR="$(dirname "$0")" + +$MKIMAGE -n rk3288 -T rksd -d "$BINARIES_DIR"/u-boot-tpl.bin "$BINARIES_DIR"/u-boot-tpl.img +cat "$BINARIES_DIR"/u-boot-tpl.img "$BINARIES_DIR"/u-boot-spl-dtb.bin > "$BINARIES_DIR"/u-boot-tpl-spl-dtb.img + +install -m 0644 -D "$BOARD_DIR"/extlinux.conf "$TARGET_DIR"/boot/extlinux/extlinux.conf diff --git a/board/asus/tinker-s/readme.txt b/board/asus/tinker-s/readme.txt new file mode 100644 index 000000000000..3dffa12b45f5 --- /dev/null +++ b/board/asus/tinker-s/readme.txt @@ -0,0 +1,43 @@ +Tinker S RK3288 +============= + +Tinker Board is a Single Board Computer (SBC) in an ultra-small form +factor that offers class-leading performance while leveraging outstanding +mechanical compatibility. The "S" variant of the Tinker Board has eMMC + +Tinker link: +https://www.asus.com/br/motherboards-components/single-board-computer/all-series/tinker-board-s/ + +Wiki link: +https://openedev.amarulasolutions.com/display/ODWIKI/Tinker+RK3288 + +How to build it +=============== + + $ make asus_tinker-s_rk3288_defconfig + +Then you can edit the build options using + + $ make menuconfig + +Compile all and build rootfs image: + + $ make + +Prepare your SDCard +=================== + +Buildroot generates a ready-to-use SD card image that you can flash directly to +the card. The image will be in output/images/sdcard.img. +You can write this image directly to an SD card device (i.e. /dev/xxx): + + $ sudo dd if=output/images/sdcard.img of=/dev/xxx + $ sudo sync + +Finally, you can insert the SD card to the Tinker RK3288 board and boot it. + +NOTE: +USB power supply requires more than the standard 500mA USB current, so +this board must be supplied from a capable port or from an external +AC/DC adapter. Otherwise it will hang forever while loading the kernel +image. diff --git a/board/bananapi/bananapi-m2-berry/extlinux.conf b/board/bananapi/bananapi-m2-berry/extlinux.conf new file mode 100644 index 000000000000..1f1b4f5cf36a --- /dev/null +++ b/board/bananapi/bananapi-m2-berry/extlinux.conf @@ -0,0 +1,4 @@ +label Bananapi M2 Berry linux + kernel /boot/zImage + devicetree /boot/sun8i-v40-bananapi-m2-berry.dtb + append console=ttyS0,115200n8 root=/dev/mmcblk0p1 rootwait diff --git a/board/bananapi/bananapi-m2-berry/genimage.cfg b/board/bananapi/bananapi-m2-berry/genimage.cfg new file mode 100644 index 000000000000..92c867754568 --- /dev/null +++ b/board/bananapi/bananapi-m2-berry/genimage.cfg @@ -0,0 +1,16 @@ +image sdcard.img { + hdimage { + } + + partition u-boot { + in-partition-table = "no" + image = "u-boot-sunxi-with-spl.bin" + offset = 8K + size = 1016K # 1MB - 8KB + } + + partition rootfs { + partition-type = 0x83 + image = "rootfs.ext4" + } +} diff --git a/board/bananapi/bananapi-m2-berry/post-build.sh b/board/bananapi/bananapi-m2-berry/post-build.sh new file mode 100755 index 000000000000..21a2b0d8e7ea --- /dev/null +++ b/board/bananapi/bananapi-m2-berry/post-build.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +BOARD_DIR="$(dirname "$0")" + +install -m 644 -D "${BOARD_DIR}"/extlinux.conf \ + "${TARGET_DIR}"/boot/extlinux/extlinux.conf diff --git a/board/bananapi/bananapi-m2-berry/readme.txt b/board/bananapi/bananapi-m2-berry/readme.txt new file mode 100644 index 000000000000..838675ed94cb --- /dev/null +++ b/board/bananapi/bananapi-m2-berry/readme.txt @@ -0,0 +1,35 @@ +Intro +===== + +This default configuration will allow you to start experimenting with the +buildroot environment for the Bananapi M2 Berry. With the current +configuration it will bring-up the board, and allow access through the +serial console. + +Bananapi M2 Berry link: +https://wiki.banana-pi.org/Banana_Pi_BPI-M2_Berry + +This configuration uses U-Boot mainline and kernel mainline. + +How to build +============ + + $ make bananapi_m2_berry_defconfig + $ make + +Note: you will need access to the internet to download the required +sources. + +How to write the SD card +======================== + +Once the build process is finished you will have an image called "sdcard.img" +in the output/images/ directory. + +Copy the bootable "sdcard.img" onto an SD card with "dd": + + $ sudo dd if=output/images/sdcard.img of=/dev/sdX + $ sudo sync + +Insert the micro SDcard in your Bananapi M2 Berry and power it up. The console +is on the serial line, 115200 8N1. diff --git a/board/bananapi/bananapi-m2-ultra/boot.cmd b/board/bananapi/bananapi-m2-ultra/boot.cmd deleted file mode 100644 index 9c24eabff6f8..000000000000 --- a/board/bananapi/bananapi-m2-ultra/boot.cmd +++ /dev/null @@ -1,7 +0,0 @@ -setenv bootargs console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait - -mmc dev 0 -fatload mmc 0 $kernel_addr_r zImage -fatload mmc 0 $fdt_addr_r sun8i-r40-bananapi-m2-ultra.dtb - -bootz $kernel_addr_r - $fdt_addr_r diff --git a/board/bananapi/bananapi-m2-ultra/extlinux.conf b/board/bananapi/bananapi-m2-ultra/extlinux.conf new file mode 100644 index 000000000000..f5f35c1d8fcb --- /dev/null +++ b/board/bananapi/bananapi-m2-ultra/extlinux.conf @@ -0,0 +1,4 @@ +label Bananapi M2 Ultra linux + kernel /boot/zImage + devicetree /boot/sun8i-r40-bananapi-m2-ultra.dtb + append console=ttyS0,115200n8 root=/dev/mmcblk0p1 rootwait diff --git a/board/bananapi/bananapi-m2-ultra/genimage.cfg b/board/bananapi/bananapi-m2-ultra/genimage.cfg index 88324f1f24a7..92c867754568 100644 --- a/board/bananapi/bananapi-m2-ultra/genimage.cfg +++ b/board/bananapi/bananapi-m2-ultra/genimage.cfg @@ -1,15 +1,3 @@ -image boot.vfat { - vfat { - files = { - "zImage", - "sun8i-r40-bananapi-m2-ultra.dtb", - "boot.scr" - } - } - - size = 64M -} - image sdcard.img { hdimage { } @@ -21,12 +9,6 @@ image sdcard.img { size = 1016K # 1MB - 8KB } - partition boot { - partition-type = 0xC - bootable = "true" - image = "boot.vfat" - } - partition rootfs { partition-type = 0x83 image = "rootfs.ext4" diff --git a/board/bananapi/bananapi-m2-ultra/post-build.sh b/board/bananapi/bananapi-m2-ultra/post-build.sh new file mode 100755 index 000000000000..21a2b0d8e7ea --- /dev/null +++ b/board/bananapi/bananapi-m2-ultra/post-build.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +BOARD_DIR="$(dirname "$0")" + +install -m 644 -D "${BOARD_DIR}"/extlinux.conf \ + "${TARGET_DIR}"/boot/extlinux/extlinux.conf diff --git a/board/beaglev/patches/uboot/0001-riscv-Fix-build-against-binutils-2.38.patch b/board/beaglev/patches/uboot/0001-riscv-Fix-build-against-binutils-2.38.patch new file mode 100644 index 000000000000..52b496f05475 --- /dev/null +++ b/board/beaglev/patches/uboot/0001-riscv-Fix-build-against-binutils-2.38.patch @@ -0,0 +1,58 @@ +From 0cf11f3c0478f4286adcfb09bf9137f8b00212e3 Mon Sep 17 00:00:00 2001 +From: Alexandre Ghiti +Date: Mon, 3 Oct 2022 18:07:54 +0200 +Subject: [PATCH] riscv: Fix build against binutils 2.38 + +The following description is copied from the equivalent patch for the +Linux Kernel proposed by Aurelien Jarno: + +>From version 2.38, binutils default to ISA spec version 20191213. This +means that the csr read/write (csrr*/csrw*) instructions and fence.i +instruction has separated from the `I` extension, become two standalone +extensions: Zicsr and Zifencei. As the kernel uses those instruction, +this causes the following build failure: + +arch/riscv/cpu/mtrap.S: Assembler messages: +arch/riscv/cpu/mtrap.S:65: Error: unrecognized opcode `csrr a0,scause' +arch/riscv/cpu/mtrap.S:66: Error: unrecognized opcode `csrr a1,sepc' +arch/riscv/cpu/mtrap.S:67: Error: unrecognized opcode `csrr a2,stval' +arch/riscv/cpu/mtrap.S:70: Error: unrecognized opcode `csrw sepc,a0' + +Signed-off-by: Alexandre Ghiti +Reviewed-by: Bin Meng +Tested-by: Heinrich Schuchardt +Tested-by: Heiko Stuebner +Tested-by: Christian Stewart +Reviewed-by: Rick Chen +(cherry picked from commit 1dde977518f13824b847e23275001191139bc384) +Upstream: https://gitlab.com/u-boot/u-boot/-/commit/1dde977518f13824b847e23275001191139bc384 +Signed-off-by: Romain Naour +--- + arch/riscv/Makefile | 11 ++++++++++- + 1 file changed, 10 insertions(+), 1 deletion(-) + +diff --git a/arch/riscv/Makefile b/arch/riscv/Makefile +index 0b80eb8d864..53d1194ffb6 100644 +--- a/arch/riscv/Makefile ++++ b/arch/riscv/Makefile +@@ -24,7 +24,16 @@ ifeq ($(CONFIG_CMODEL_MEDANY),y) + CMODEL = medany + endif + +-ARCH_FLAGS = -march=$(ARCH_BASE)$(ARCH_A)$(ARCH_C) -mabi=$(ABI) \ ++RISCV_MARCH = $(ARCH_BASE)$(ARCH_A)$(ARCH_C) ++ ++# Newer binutils versions default to ISA spec version 20191213 which moves some ++# instructions from the I extension to the Zicsr and Zifencei extensions. ++toolchain-need-zicsr-zifencei := $(call cc-option-yn, -mabi=$(ABI) -march=$(RISCV_MARCH)_zicsr_zifencei) ++ifeq ($(toolchain-need-zicsr-zifencei),y) ++ RISCV_MARCH := $(RISCV_MARCH)_zicsr_zifencei ++endif ++ ++ARCH_FLAGS = -march=$(RISCV_MARCH) -mabi=$(ABI) \ + -mcmodel=$(CMODEL) + + PLATFORM_CPPFLAGS += $(ARCH_FLAGS) +-- +2.41.0 + diff --git a/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0001-include-configs-Remove-rootwait-1-to-all-the-affecte.patch b/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0001-include-configs-Remove-rootwait-1-to-all-the-affecte.patch deleted file mode 100644 index 59db559b9301..000000000000 --- a/board/bsh/imx8mn-bsh-smm-s2/patches/uboot/0001-include-configs-Remove-rootwait-1-to-all-the-affecte.patch +++ /dev/null @@ -1,160 +0,0 @@ -From 3878b941c6bde84e29b2725e4261d85bea828752 Mon Sep 17 00:00:00 2001 -From: Michael Trimarchi -Date: Sun, 22 May 2022 15:22:08 +0200 -Subject: [PATCH] include/configs: Remove rootwait=1 to all the affected boards - -rootwait=1 is not a valid kernel boot parameters. According -to the documenation is only rootwait - -rootwait [KNL] Wait (indefinitely) for root device to show up. - Useful for devices that are detected asynchronously - (e.g. USB and MMC devices). - -Fix: -Unknown kernel command line parameters "rootwait=1", will be passed to user space. - -Signed-off-by: Michael Trimarchi -Reviewed-by: Heiko Schocher -Link: https://patchwork.ozlabs.org/project/uboot/patch/20220520110013.32811-1-michael@amarulasolutions.com/ -Signed-off-by: Dario Binacchi ---- - include/configs/am335x_evm.h | 2 +- - include/configs/am43xx_evm.h | 2 +- - include/configs/baltos.h | 2 +- - include/configs/chiliboard.h | 2 +- - include/configs/etamin.h | 2 +- - include/configs/imx8mn_bsh_smm_s2.h | 2 +- - include/configs/siemens-am33x-common.h | 4 ++-- - include/configs/ti_armv7_keystone2.h | 2 +- - include/environment/ti/nand.h | 2 +- - 9 files changed, 10 insertions(+), 10 deletions(-) - -diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h -index fd5b209a52db..f301a6dc835b 100644 ---- a/include/configs/am335x_evm.h -+++ b/include/configs/am335x_evm.h -@@ -34,7 +34,7 @@ - "root=${nandroot} " \ - "rootfstype=${nandrootfstype}\0" \ - "nandroot=ubi0:rootfs rw ubi.mtd=NAND.file-system,2048\0" \ -- "nandrootfstype=ubifs rootwait=1\0" \ -+ "nandrootfstype=ubifs rootwait\0" \ - "nandboot=echo Booting from nand ...; " \ - "run nandargs; " \ - "nand read ${fdtaddr} NAND.u-boot-spl-os; " \ -diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h -index 5057441f7506..1f5c3cd04e88 100644 ---- a/include/configs/am43xx_evm.h -+++ b/include/configs/am43xx_evm.h -@@ -166,7 +166,7 @@ - "root=${nandroot} " \ - "rootfstype=${nandrootfstype}\0" \ - "nandroot=ubi0:rootfs rw ubi.mtd=NAND.file-system,4096\0" \ -- "nandrootfstype=ubifs rootwait=1\0" \ -+ "nandrootfstype=ubifs rootwait\0" \ - "nandboot=echo Booting from nand ...; " \ - "run nandargs; " \ - "nand read ${fdtaddr} NAND.u-boot-spl-os; " \ -diff --git a/include/configs/baltos.h b/include/configs/baltos.h -index b881d8c03fd7..7b43741fde7c 100644 ---- a/include/configs/baltos.h -+++ b/include/configs/baltos.h -@@ -37,7 +37,7 @@ - "root=${nandroot} " \ - "rootfstype=${nandrootfstype}\0" \ - "nandroot=ubi0:rootfs rw ubi.mtd=5\0" \ -- "nandrootfstype=ubifs rootwait=1\0" \ -+ "nandrootfstype=ubifs rootwait\0" \ - "nandboot=echo Booting from nand ...; " \ - "run nandargs; " \ - "setenv loadaddr 0x84000000; " \ -diff --git a/include/configs/chiliboard.h b/include/configs/chiliboard.h -index 82acda595f09..8bad0f9ac4b6 100644 ---- a/include/configs/chiliboard.h -+++ b/include/configs/chiliboard.h -@@ -20,7 +20,7 @@ - "root=${nandroot} " \ - "rootfstype=${nandrootfstype}\0" \ - "nandroot=ubi0:rootfs rw ubi.mtd=NAND.file-system\0" \ -- "nandrootfstype=ubifs rootwait=1\0" \ -+ "nandrootfstype=ubifs rootwait\0" \ - "nandboot=echo Booting from nand ...; " \ - "run nandargs; " \ - "nand read ${fdt_addr} NAND.u-boot-spl-os; " \ -diff --git a/include/configs/etamin.h b/include/configs/etamin.h -index 9cf93924df93..1c0a86d1ed10 100644 ---- a/include/configs/etamin.h -+++ b/include/configs/etamin.h -@@ -113,7 +113,7 @@ - "nand_active_ubi_vol=rootfs_a\0" \ - "rootfs_name=rootfs\0" \ - "kernel_name=uImage\0"\ -- "nand_root_fs_type=ubifs rootwait=1\0" \ -+ "nand_root_fs_type=ubifs rootwait\0" \ - "nand_args=run bootargs_defaults;" \ - "mtdparts default;" \ - "setenv ${partitionset_active} true;" \ -diff --git a/include/configs/imx8mn_bsh_smm_s2.h b/include/configs/imx8mn_bsh_smm_s2.h -index d09c2ab01610..0dc514f00684 100644 ---- a/include/configs/imx8mn_bsh_smm_s2.h -+++ b/include/configs/imx8mn_bsh_smm_s2.h -@@ -22,7 +22,7 @@ - "root=${nandroot} " \ - "rootfstype=${nandrootfstype}\0" \ - "nandroot=ubi0:root rw ubi.mtd=nandrootfs\0" \ -- "nandrootfstype=ubifs rootwait=1\0" \ -+ "nandrootfstype=ubifs rootwait\0" \ - "nandboot=echo Booting from nand ...; " \ - "run nandargs; " \ - "nand read ${fdt_addr_r} nanddtb; " \ -diff --git a/include/configs/siemens-am33x-common.h b/include/configs/siemens-am33x-common.h -index 08c4d52d658f..9f1a6cd51b40 100644 ---- a/include/configs/siemens-am33x-common.h -+++ b/include/configs/siemens-am33x-common.h -@@ -237,7 +237,7 @@ - "nand_active_ubi_vol=rootfs_a\0" \ - "nand_active_ubi_vol_A=rootfs_a\0" \ - "nand_active_ubi_vol_B=rootfs_b\0" \ -- "nand_root_fs_type=ubifs rootwait=1\0" \ -+ "nand_root_fs_type=ubifs rootwait\0" \ - "nand_src_addr=0x280000\0" \ - "nand_src_addr_A=0x280000\0" \ - "nand_src_addr_B=0x780000\0" \ -@@ -314,7 +314,7 @@ - "nand_active_ubi_vol=rootfs_a\0" \ - "rootfs_name=rootfs\0" \ - "kernel_name=uImage\0"\ -- "nand_root_fs_type=ubifs rootwait=1\0" \ -+ "nand_root_fs_type=ubifs rootwait\0" \ - "nand_args=run bootargs_defaults;" \ - "mtdparts default;" \ - "setenv ${partitionset_active} true;" \ -diff --git a/include/configs/ti_armv7_keystone2.h b/include/configs/ti_armv7_keystone2.h -index 57f013cbf846..133daecf7164 100644 ---- a/include/configs/ti_armv7_keystone2.h -+++ b/include/configs/ti_armv7_keystone2.h -@@ -180,7 +180,7 @@ - "sf write ${loadaddr} 0 ${filesize}\0" \ - "burn_uboot_nand=nand erase 0 0x100000; " \ - "nand write ${loadaddr} 0 ${filesize}\0" \ -- "args_all=setenv bootargs console=ttyS0,115200n8 rootwait=1 " \ -+ "args_all=setenv bootargs console=ttyS0,115200n8 rootwait " \ - KERNEL_MTD_PARTS \ - "args_net=setenv bootargs ${bootargs} rootfstype=nfs " \ - "root=/dev/nfs rw nfsroot=${serverip}:${nfs_root}," \ -diff --git a/include/environment/ti/nand.h b/include/environment/ti/nand.h -index 11dcefcc41ca..7d00afa2b10f 100644 ---- a/include/environment/ti/nand.h -+++ b/include/environment/ti/nand.h -@@ -14,7 +14,7 @@ - "root=${nandroot} " \ - "rootfstype=${nandrootfstype}\0" \ - "nandroot=ubi0:rootfs rw ubi.mtd=NAND.file-system,2048\0" \ -- "nandrootfstype=ubifs rootwait=1\0" \ -+ "nandrootfstype=ubifs rootwait\0" \ - "nandboot=echo Booting from nand ...; " \ - "run nandargs; " \ - "nand read ${fdtaddr} NAND.u-boot-spl-os; " \ --- -2.32.0 - diff --git a/board/bsh/imx8mn-bsh-smm-s2/readme.txt b/board/bsh/imx8mn-bsh-smm-s2/readme.txt index 37081091e849..6b8cd0319907 100644 --- a/board/bsh/imx8mn-bsh-smm-s2/readme.txt +++ b/board/bsh/imx8mn-bsh-smm-s2/readme.txt @@ -2,7 +2,7 @@ i.MX8MN BSH SMM S2 ================== This tutorial describes how to use the predefined Buildroot -configuration for the i.MX8MN BSH SMM S2 PRO board. +configuration for the i.MX8MN BSH SMM S2 board. Building -------- diff --git a/board/canaan/k210-soc/patches/uboot/0001-riscv-Fix-build-against-binutils-2.38.patch b/board/canaan/k210-soc/patches/uboot/0001-riscv-Fix-build-against-binutils-2.38.patch new file mode 100644 index 000000000000..52b496f05475 --- /dev/null +++ b/board/canaan/k210-soc/patches/uboot/0001-riscv-Fix-build-against-binutils-2.38.patch @@ -0,0 +1,58 @@ +From 0cf11f3c0478f4286adcfb09bf9137f8b00212e3 Mon Sep 17 00:00:00 2001 +From: Alexandre Ghiti +Date: Mon, 3 Oct 2022 18:07:54 +0200 +Subject: [PATCH] riscv: Fix build against binutils 2.38 + +The following description is copied from the equivalent patch for the +Linux Kernel proposed by Aurelien Jarno: + +>From version 2.38, binutils default to ISA spec version 20191213. This +means that the csr read/write (csrr*/csrw*) instructions and fence.i +instruction has separated from the `I` extension, become two standalone +extensions: Zicsr and Zifencei. As the kernel uses those instruction, +this causes the following build failure: + +arch/riscv/cpu/mtrap.S: Assembler messages: +arch/riscv/cpu/mtrap.S:65: Error: unrecognized opcode `csrr a0,scause' +arch/riscv/cpu/mtrap.S:66: Error: unrecognized opcode `csrr a1,sepc' +arch/riscv/cpu/mtrap.S:67: Error: unrecognized opcode `csrr a2,stval' +arch/riscv/cpu/mtrap.S:70: Error: unrecognized opcode `csrw sepc,a0' + +Signed-off-by: Alexandre Ghiti +Reviewed-by: Bin Meng +Tested-by: Heinrich Schuchardt +Tested-by: Heiko Stuebner +Tested-by: Christian Stewart +Reviewed-by: Rick Chen +(cherry picked from commit 1dde977518f13824b847e23275001191139bc384) +Upstream: https://gitlab.com/u-boot/u-boot/-/commit/1dde977518f13824b847e23275001191139bc384 +Signed-off-by: Romain Naour +--- + arch/riscv/Makefile | 11 ++++++++++- + 1 file changed, 10 insertions(+), 1 deletion(-) + +diff --git a/arch/riscv/Makefile b/arch/riscv/Makefile +index 0b80eb8d864..53d1194ffb6 100644 +--- a/arch/riscv/Makefile ++++ b/arch/riscv/Makefile +@@ -24,7 +24,16 @@ ifeq ($(CONFIG_CMODEL_MEDANY),y) + CMODEL = medany + endif + +-ARCH_FLAGS = -march=$(ARCH_BASE)$(ARCH_A)$(ARCH_C) -mabi=$(ABI) \ ++RISCV_MARCH = $(ARCH_BASE)$(ARCH_A)$(ARCH_C) ++ ++# Newer binutils versions default to ISA spec version 20191213 which moves some ++# instructions from the I extension to the Zicsr and Zifencei extensions. ++toolchain-need-zicsr-zifencei := $(call cc-option-yn, -mabi=$(ABI) -march=$(RISCV_MARCH)_zicsr_zifencei) ++ifeq ($(toolchain-need-zicsr-zifencei),y) ++ RISCV_MARCH := $(RISCV_MARCH)_zicsr_zifencei ++endif ++ ++ARCH_FLAGS = -march=$(RISCV_MARCH) -mabi=$(ABI) \ + -mcmodel=$(CMODEL) + + PLATFORM_CPPFLAGS += $(ARCH_FLAGS) +-- +2.41.0 + diff --git a/board/firefly/roc-rk3399-pc/extlinux.conf b/board/firefly/roc-rk3399-pc/extlinux.conf new file mode 100644 index 000000000000..50a358fadcc9 --- /dev/null +++ b/board/firefly/roc-rk3399-pc/extlinux.conf @@ -0,0 +1,4 @@ +label RK3399RocPC linux + kernel /boot/Image + devicetree /boot/rk3399-roc-pc.dtb + append earlycon=uart8250,mmio32,0xff1a0000 root=/dev/mmcblk0p1 rootwait diff --git a/board/firefly/roc-rk3399-pc/genimage.cfg b/board/firefly/roc-rk3399-pc/genimage.cfg new file mode 100644 index 000000000000..966c869273f3 --- /dev/null +++ b/board/firefly/roc-rk3399-pc/genimage.cfg @@ -0,0 +1,22 @@ +image sdcard.img { + hdimage { + } + + partition u-boot-tpl-spl-dtb { + in-partition-table = "no" + image = "idbloader.img" + offset = 32K + } + + partition u-boot-dtb { + in-partition-table = "no" + image = "u-boot.itb" + offset = 8M + size = 30M + } + + partition rootfs { + partition-type = 0x83 + image = "rootfs.ext4" + } +} diff --git a/board/firefly/roc-rk3399-pc/post-build.sh b/board/firefly/roc-rk3399-pc/post-build.sh new file mode 100755 index 000000000000..d84a5da0b0f5 --- /dev/null +++ b/board/firefly/roc-rk3399-pc/post-build.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +BOARD_DIR="$(dirname "$0")" + +install -m 0644 -D "$BOARD_DIR"/extlinux.conf "$TARGET_DIR"/boot/extlinux/extlinux.conf diff --git a/board/firefly/roc-rk3399-pc/readme.txt b/board/firefly/roc-rk3399-pc/readme.txt new file mode 100644 index 000000000000..8a6f1cdee6bd --- /dev/null +++ b/board/firefly/roc-rk3399-pc/readme.txt @@ -0,0 +1,40 @@ +Libre Computer Board ROC-RK3399-PC +=================================== + +Build: + + $ make roc_pc_rk3399_defconfig + $ make + +Files created in output directory +================================= + +output/images + +├── bl31.elf +├── idbloader.img +├── Image +├── rk3399-roc-pc.dtb +├── rootfs.ext2 +├── rootfs.ext4 -> rootfs.ext2 +├── rootfs.tar +├── sdcard.img +├── u-boot.bin +└── u-boot.itb + +Creating bootable SD card: +========================== + +Simply invoke (as root) + +sudo dd if=output/images/sdcard.img of=/dev/sdX && sync + +Where X is your SD card device + +Serial console +-------------- + +Baudrate for this board is 1500000 + +Wiki link: +https://wiki.amarulasolutions.com/bsp/rockchip/rk3399/roc-rk3399-pc.html diff --git a/board/freescale/common/imx/imx8-bootloader-prepare.sh b/board/freescale/common/imx/imx8-bootloader-prepare.sh index ace0f6d6102c..7ebf15b6ffe8 100755 --- a/board/freescale/common/imx/imx8-bootloader-prepare.sh +++ b/board/freescale/common/imx/imx8-bootloader-prepare.sh @@ -63,6 +63,8 @@ main () dd if=${BINARIES_DIR}/u-boot-hash.bin of=${BINARIES_DIR}/u-boot-atf.bin bs=1K seek=128 if grep -Eq "^BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8=y$" ${BR2_CONFIG}; then ${HOST_DIR}/bin/mkimage_imx8 -soc QM -rev B0 -append ${BINARIES_DIR}/ahab-container.img -c -scfw ${BINARIES_DIR}/mx8qm-mek-scfw-tcm.bin -ap ${BINARIES_DIR}/u-boot-atf.bin a53 0x80000000 -out ${BINARIES_DIR}/imx8-boot-sd.bin + elif grep -Eq "^BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8DXL=y$" ${BR2_CONFIG}; then + ${HOST_DIR}/bin/mkimage_imx8 -soc DXL -rev B0 -append ${BINARIES_DIR}/ahab-container.img -c -scfw ${BINARIES_DIR}/mx8dxl-evk-scfw-tcm.bin -ap ${BINARIES_DIR}/u-boot-atf.bin a35 0x80000000 -out ${BINARIES_DIR}/imx8-boot-sd.bin else ${HOST_DIR}/bin/mkimage_imx8 -soc QX -rev B0 -append ${BINARIES_DIR}/ahab-container.img -c -scfw ${BINARIES_DIR}/mx8qx-mek-scfw-tcm.bin -ap ${BINARIES_DIR}/u-boot-atf.bin a35 0x80000000 -out ${BINARIES_DIR}/imx8-boot-sd.bin fi diff --git a/board/freescale/common/imx/post-image.sh b/board/freescale/common/imx/post-image.sh index d36f82917ecc..c359ef6032a6 100755 --- a/board/freescale/common/imx/post-image.sh +++ b/board/freescale/common/imx/post-image.sh @@ -46,6 +46,8 @@ genimage_type() echo "genimage.cfg.template_imx8" elif grep -Eq "^BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8X=y$" ${BR2_CONFIG}; then echo "genimage.cfg.template_imx8" + elif grep -Eq "^BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8DXL=y$" ${BR2_CONFIG}; then + echo "genimage.cfg.template_imx8" elif grep -Eq "^BR2_LINUX_KERNEL_INSTALL_TARGET=y$" ${BR2_CONFIG}; then if grep -Eq "^BR2_TARGET_UBOOT_SPL=y$" ${BR2_CONFIG}; then echo "genimage.cfg.template_no_boot_part_spl" diff --git a/board/freescale/common/patches/arm-trusted-firmware/0001-feat-build-add-support-for-new-binutils-versions.patch b/board/freescale/common/patches/arm-trusted-firmware/0001-feat-build-add-support-for-new-binutils-versions.patch new file mode 100644 index 000000000000..335c18553ac3 --- /dev/null +++ b/board/freescale/common/patches/arm-trusted-firmware/0001-feat-build-add-support-for-new-binutils-versions.patch @@ -0,0 +1,61 @@ +From 0f75b03c008eacb9818af3a56dc088e72a623d17 Mon Sep 17 00:00:00 2001 +From: Marco Felsch +Date: Wed, 9 Nov 2022 12:59:09 +0100 +Subject: [PATCH] feat(build): add support for new binutils versions + +Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces +of a new warning when linking the bl*.elf in the form: + + ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack + ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker + ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions + ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions + +These new warnings are enbaled by default to secure elf binaries: + - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107 + - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774 + +Fix it in a similar way to what the Linux kernel does, see: +https://lore.kernel.org/all/20220810222442.2296651-1-ndesaulniers@google.com/ + +Following the reasoning there, we set "-z noexecstack" for all linkers +(although LLVM's LLD defaults to it) and optional add +--no-warn-rwx-segments since this a ld.bfd related. + +Signed-off-by: Marco Felsch +Signed-off-by: Robert Schwebel +Change-Id: I9430f5fa5036ca88da46cd3b945754d62616b617 +Signed-off-by: Heiko Thiery +Upstream: https://github.com/ARM-software/arm-trusted-firmware/commit/1f49db5f25cdd4e43825c9bcc0575070b80f628c +--- + Makefile | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 1ddb7b844..470956b19 100644 +--- a/Makefile ++++ b/Makefile +@@ -416,6 +416,8 @@ endif + + GCC_V_OUTPUT := $(shell $(CC) -v 2>&1) + ++TF_LDFLAGS += -z noexecstack ++ + # LD = armlink + ifneq ($(findstring armlink,$(notdir $(LD))),) + TF_LDFLAGS += --diag_error=warning --lto_level=O1 +@@ -442,7 +444,10 @@ TF_LDFLAGS += $(subst --,-Xlinker --,$(TF_LDFLAGS_$(ARCH))) + + # LD = gcc-ld (ld) or llvm-ld (ld.lld) or other + else +-TF_LDFLAGS += --fatal-warnings -O1 ++# With ld.bfd version 2.39 and newer new warnings are added. Skip those since we ++# are not loaded by a elf loader. ++TF_LDFLAGS += $(call ld_option, --no-warn-rwx-segments) ++TF_LDFLAGS += -O1 + TF_LDFLAGS += --gc-sections + # ld.lld doesn't recognize the errata flags, + # therefore don't add those in that case +-- +2.30.2 + diff --git a/board/freescale/common/patches/arm-trusted-firmware/0002-LF-7968-01-fix-Makefile-Suppress-array-bounds-error.patch b/board/freescale/common/patches/arm-trusted-firmware/0002-LF-7968-01-fix-Makefile-Suppress-array-bounds-error.patch new file mode 100644 index 000000000000..7a7a7bbc2851 --- /dev/null +++ b/board/freescale/common/patches/arm-trusted-firmware/0002-LF-7968-01-fix-Makefile-Suppress-array-bounds-error.patch @@ -0,0 +1,51 @@ +From b2a94de52ae4a940a87d569815b19d3fa92dd32a Mon Sep 17 00:00:00 2001 +From: Tom Hochstein +Date: Mon, 16 May 2022 13:45:16 -0500 +Subject: [PATCH] LF-7968-01 fix(Makefile): Suppress array-bounds error + +The array-bounds error is triggered now in cases where it was silent +before, causing errors like: + +``` +plat/imx/imx8m/hab.c: In function 'imx_hab_handler': +plat/imx/imx8m/hab.c:64:57: error: array subscript 0 is outside array bounds of 'uint32_t[0]' {aka 'unsigned int[]'} [-Werror=array-bounds] + 64 | #define HAB_RVT_CHECK_TARGET_ARM64 ((unsigned long)*(uint32_t *)(HAB_RVT_BASE + 0x18)) + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +``` + +The error is a false-positive and is entered as a bug [1]. The problem +is fixed partially in GCC 12 and fully in GCC 13 [2]. + +The partial fix does not work here because the constant addresses used +are less than the 4kB boundary chosen for the partial fix, so suppress +the error until GCC is upgraded to 13. + +[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99578 +[2] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99578#c39 + +Upstream-Status: Inappropriate [other] +Signed-off-by: Tom Hochstein +Signed-off-by: Jacky Bai +Reviewed-by: Ye Li +Signed-off-by: Brandon Maier +Upstream: https://github.com/nxp-imx/imx-atf/commit/058bf0f104115037d03e277f079825ef3659c5b9 +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index c87c3ae08..2d6b90f47 100644 +--- a/Makefile ++++ b/Makefile +@@ -346,7 +346,7 @@ WARNINGS += -Wshift-overflow -Wshift-sign-overflow \ + endif + + ifneq (${E},0) +-ERRORS := -Werror ++ERRORS := -Werror -Wno-error=array-bounds + endif + + CPPFLAGS = ${DEFINES} ${INCLUDES} ${MBEDTLS_INC} -nostdinc \ +-- +2.41.0 + diff --git a/board/freescale/imx8dxlevk/readme.txt b/board/freescale/imx8dxlevk/readme.txt new file mode 100644 index 000000000000..33ceb6693184 --- /dev/null +++ b/board/freescale/imx8dxlevk/readme.txt @@ -0,0 +1,69 @@ +****************************** +Freescale i.MX8DXL WEVK board +****************************** + +This file documents the Buildroot support for the Freescale i.MX8DXL WEVK +board. + +Build +===== + +First, configure Buildroot for the i.MX8DXL WEVK board: + + make freescale_imx8dxlevk_defconfig + +Build all components: + + make + +You will find in output/images/ the following files: + - ahab-container.img + - bl31.bin + - boot.vfat + - Image + - imx8-boot-sd.bin + - imx8dxl-evk.dtb + - mkimg.commit + - mx8dxl-ddr3-evk-scfw-tcm.bin + - mx8dxl-evk-scfw-tcm.bin + - mx8dxl-phantom-mek-scfw-tcm.bin + - mx8dxl-val-scfw-tcm.bin + - rootfs.ext2 + - rootfs.ext4 + - rootfs.tar + - sdcard.img + - u-boot-atf.bin + - u-boot.bin + - u-boot-hash.bin + +Create a bootable SD card +========================= + +To determine the device associated to the SD card have a look in the +/proc/partitions file: + + cat /proc/partitions + +Buildroot prepares a bootable "sdcard.img" image in the output/images/ +directory, ready to be dumped on a SD card. Launch the following +command as root: + + dd if=output/images/sdcard.img of=/dev/ + +*** WARNING! This will destroy all the card content. Use with care! *** + +For details about the medium image layout, see the definition in +board/freescale/common/imx/genimage.cfg.template_imx8. + +Boot the i.MX8DXL WEVK board +============================ + +To boot your newly created system: +- insert the SD card in the SD slot of the board; +- Configure the boot switch as follows: +SW1: ON ON OFF OFF +- put a micro USB cable into the Debug USB Port and connect using a terminal + emulator at 115200 bps, 8n1; +- power on the board. + +Enjoy! diff --git a/board/freescale/imx8mpevk/uboot-fragment.config b/board/freescale/imx8mpevk/uboot-fragment.config new file mode 100644 index 000000000000..b4683be9ef7f --- /dev/null +++ b/board/freescale/imx8mpevk/uboot-fragment.config @@ -0,0 +1,3 @@ +# Use the upstream devicetree name for EVK board +# Revert https://github.com/nxp-imx/uboot-imx/commit/a60e787a6e35b9c14c391e03d41468e4ad63d598 +CONFIG_DEFAULT_FDT_FILE="imx8mp-evk.dtb" diff --git a/board/freescale/imxrt1050evk/genimage.cfg b/board/freescale/imxrt1050evk/genimage.cfg new file mode 100644 index 000000000000..daa51bdbe0ef --- /dev/null +++ b/board/freescale/imxrt1050evk/genimage.cfg @@ -0,0 +1,40 @@ +image boot.vfat { + vfat { + files = { + "uImage", + "imxrt1050-evk.dtb", + } + } + + size = 8M +} + +image sdcard.img { + hdimage { + } + + partition SPL { + in-partition-table = "no" + image = "SPL" + offset = 1K + size = 127K + } + + partition u-boot { + in-partition-table = "no" + image = "u-boot.img" + offset = 128K + size = 512K + } + + partition boot { + partition-type = 0xc + bootable = "true" + image = "boot.vfat" + } + + partition rootfs { + partition-type = 0x83 + image = "rootfs.ext4" + } +} diff --git a/board/freescale/imxrt1050evk/readme.txt b/board/freescale/imxrt1050evk/readme.txt new file mode 100644 index 000000000000..1fc4edd88b6f --- /dev/null +++ b/board/freescale/imxrt1050evk/readme.txt @@ -0,0 +1,30 @@ +NXP i.MXRT1050 EVK board +------------------------ + +i.MX RT1050 are NXP's crossover MCUs. They combine the high performance and high +level of integration of an applications processors with the ease-of-use and +real-time functionality of a microcontroller. The i.MX RT1050 MCU runs on the Arm +Cortex-M7 core at 600 MHz. +https://www.nxp.com/design/development-boards/i-mx-evaluation-and-development-boards/i-mx-rt1050-evaluation-kit:MIMXRT1050-EVK + +To build a minimal support for this board: + +$ make imxrt1050-evk_defconfig +$ make + +Buildroot prepares a bootable "sdcard.img" image in the output/images/ +directory, ready to be flashed into the SD card: + +$ dd if=output/images/sdcard.img of=/dev/sdX +Where 'sdX' is the device node of the uSD. + +Jumper settings: + + SW7: 1 0 1 0 + +Where 0 means bottom position and 1 means top position (from the +switch label numbers reference). + +Connect the USB cable between the EVK and the PC for the console. + +Insert the micro SD card in the board, power it up and U-Boot messages should come up. diff --git a/board/freescale/imxrt1050evk/uboot.fragment b/board/freescale/imxrt1050evk/uboot.fragment new file mode 100644 index 000000000000..1c5bb6af354e --- /dev/null +++ b/board/freescale/imxrt1050evk/uboot.fragment @@ -0,0 +1,2 @@ +CONFIG_USE_BOOTCOMMAND=y +CONFIG_BOOTCOMMAND="setenv bootargs console=ttyLP0 root=/dev/mmcblk0p2 rw earlycon rootwait;load mmc 0:1 0x80800000 imxrt1050-evk.dtb;load mmc 0:1 0x80000000 uImage;bootm 0x80000000 - 0x80800000" diff --git a/board/freescale/ls1046a-frwy/genimage.cfg b/board/freescale/ls1046a-frwy/genimage.cfg new file mode 100644 index 000000000000..63cca042b288 --- /dev/null +++ b/board/freescale/ls1046a-frwy/genimage.cfg @@ -0,0 +1,29 @@ +image sdcard.img { + hdimage { + } + + partition fsbl { + offset = 4K + in-partition-table = "no" + image = "bl2_sd.pbl" + } + + partition ssbl { + offset = 1M + in-partition-table = "no" + image = "fip.bin" + } + + partition fman { + offset = 9M + in-partition-table = "no" + image = "fsl_fman_ucode_ls1046_r1.0_106_4_18.bin" + } + + partition rootfs { + offset = 16M + partition-type = 0x83 + bootable = "true" + image = "rootfs.ext4" + } +} diff --git a/board/freescale/ls1046a-frwy/readme.txt b/board/freescale/ls1046a-frwy/readme.txt new file mode 100644 index 000000000000..fbcfdb1b8578 --- /dev/null +++ b/board/freescale/ls1046a-frwy/readme.txt @@ -0,0 +1,90 @@ +************** +NXP LS1046A-FRWY +************** + +This file documents the Buildroot support for the LS1046A Freeway Board. + +for more details about the board and the QorIQ Layerscape SoC, see the following pages: + - https://www.nxp.com/design/software/qoriq-developer-resources/ls1046a-freeway-board:FRWY-LS1046A + - https://www.nxp.com/FRWY-LS1046A + - https://www.nxp.com/docs/en/quick-reference-guide/FRWY-LS1046AGSG.pdf + +for the software NXP LSDK (Layerscape Software Development Kit), see + - https://www.nxp.com/docs/en/user-guide/LSDKUG_Rev21.08.pdf + +the components from NXP are: + - rcw, LSDK 21.08 + - atf (fork), LSDK 21.08 + - uboot (fork), LSDK 21.08 + - qoriq-fm-ucode (blob), LSDK 21.08 + - linux (fork), LSDK 21.08 + +Build +===== + +First, configure Buildroot for the LS1046A-FRWY board: + + make ls1046a-frwy_defconfig + +Build all components: + + make + +You will find in output/images/ the following files: + - bl2_sd.pbl + - fip.bin + - fsl_fman_ucode_ls1046_r1.0_106_4_18.bin + - fsl_fman_ucode_ls1046_r1.0_108_4_9.bin + - fsl-ls1046a-frwy.dtb + - fsl-ls1046a-frwy-sdk.dtb + - Image + - PBL.bin + - rootfs.ext2 + - rootfs.ext4 + - sdcard.img + - u-boot.bin + +Create a bootable SD card +========================= + +To determine the device associated to the SD card have a look in the +/proc/partitions file: + + cat /proc/partitions + +Buildroot prepares a bootable "sdcard.img" image in the output/images/ +directory, ready to be dumped on a SD card. Launch the following +command as root: + + dd if=output/images/sdcard.img of=/dev/sdX + +*** WARNING! This will destroy all the card content. Use with care! *** + +For details about the medium image layout, see the definition in +board/freescale/ls1046a-frwy/genimage.cfg. + +Boot the LS1046A-FRWY board +========================= + +To boot your newly created system: +- insert the SD card in the SD slot of the board; +- Configure the switches SW1[1:9] = 0_0100_0000 (select SD Card boot option) +- put a Micro-USB cable into UART1 Port and connect using a terminal emulator + at 115200 bps, 8n1. Or remove the jumper on J72, connect a USB to TTL cable + to J73, and connect using a terminal emualtor at 115200 bps, 8n1. +- power on the board. + +The front panel Ethernet connectors are off at boot, to bring them up run the +following commands. + +1G PORT1 + ip link set eth1 up + +1G PORT2 + ip link set eth2 up + +1G PORT3 + ip link set eth0 up + +1G PORT4 + ip link set eth3 up diff --git a/board/freescale/ls1046a-frwy/rootfs_overlay/boot/extlinux/extlinux.conf b/board/freescale/ls1046a-frwy/rootfs_overlay/boot/extlinux/extlinux.conf new file mode 100644 index 000000000000..536d62b6c589 --- /dev/null +++ b/board/freescale/ls1046a-frwy/rootfs_overlay/boot/extlinux/extlinux.conf @@ -0,0 +1,4 @@ +label ls1046afrwy-buildroot + kernel /boot/Image + devicetree /boot/fsl-ls1046a-frwy-sdk.dtb + append console=ttyS0,115200 root=/dev/mmcblk0p1 earlycon=uart8250,mmio,0x21c0500 rootwait diff --git a/board/in-circuit/icnova-a20-adb4006/boot.cmd b/board/in-circuit/icnova-a20-adb4006/boot.cmd new file mode 100644 index 000000000000..93d32a5e5fcc --- /dev/null +++ b/board/in-circuit/icnova-a20-adb4006/boot.cmd @@ -0,0 +1,5 @@ +setenv fdt_high ffffffff +setenv bootargs console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait +fatload mmc 0 $kernel_addr_r zImage +fatload mmc 0 $fdt_addr_r sun7i-a20-icnova-a20-adb4006.dtb +bootz $kernel_addr_r - $fdt_addr_r diff --git a/board/in-circuit/icnova-a20-adb4006/genimage.cfg b/board/in-circuit/icnova-a20-adb4006/genimage.cfg new file mode 100644 index 000000000000..4975d679be05 --- /dev/null +++ b/board/in-circuit/icnova-a20-adb4006/genimage.cfg @@ -0,0 +1,38 @@ +# Minimal SD card image for the ICnova A20 SomPi on ADB4006 +# Based in the Cubieboard2 genimage.cfg + +image boot.vfat { + vfat { + files = { + "zImage", + "sun7i-a20-icnova-a20-adb4006.dtb", + "boot.scr" + } + } + + size = 10M +} + +image sdcard.img { + hdimage { + } + + partition u-boot { + in-partition-table = "no" + image = "u-boot-sunxi-with-spl.bin" + offset = 8K + size = 1016K # 1MB - 8KB + } + + partition boot { + partition-type = 0xC + bootable = "true" + image = "boot.vfat" + } + + partition rootfs { + partition-type = 0x83 + image = "rootfs.ext4" + size = 512M + } +} diff --git a/board/in-circuit/icnova-a20-adb4006/linux.fragment b/board/in-circuit/icnova-a20-adb4006/linux.fragment new file mode 100644 index 000000000000..1c99df12e62b --- /dev/null +++ b/board/in-circuit/icnova-a20-adb4006/linux.fragment @@ -0,0 +1 @@ +CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE=y diff --git a/board/in-circuit/icnova-a20-adb4006/sun7i-a20-icnova-a20-adb4006.dts b/board/in-circuit/icnova-a20-adb4006/sun7i-a20-icnova-a20-adb4006.dts new file mode 100644 index 000000000000..577ead1d02a0 --- /dev/null +++ b/board/in-circuit/icnova-a20-adb4006/sun7i-a20-icnova-a20-adb4006.dts @@ -0,0 +1,137 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +// Copyright (C) 2023 In-Circuit GmbH + +/dts-v1/; + +#include "sun7i-a20-icnova-a20.dtsi" + +#include +#include + +/ { + model = "In-Circuit ICnova A20 ADB4006"; + compatible = "incircuit,icnova-a20-adb4006", "incircuit,icnova-a20", + "allwinner,sun7i-a20"; + + aliases { + serial0 = &uart0; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + hdmi-connector { + compatible = "hdmi-connector"; + type = "a"; + + port { + hdmi_con_in: endpoint { + remote-endpoint = <&hdmi_out_con>; + }; + }; + }; + + leds { + compatible = "gpio-leds"; + + led-0 { + function = LED_FUNCTION_POWER; + color = ; + gpios = <&pio 7 21 GPIO_ACTIVE_HIGH>; /* PH21 */ + default-state = "on"; + }; + + led-1 { + function = LED_FUNCTION_HEARTBEAT; + color = ; + gpios = <&pio 7 20 GPIO_ACTIVE_HIGH>; /* PH20 */ + linux,default-trigger = "heartbeat"; + }; + }; +}; + +&ahci { + target-supply = <®_ahci_5v>; + status = "okay"; +}; + +&codec { + status = "okay"; +}; + +&de { + status = "okay"; +}; + +&ehci0 { + status = "okay"; +}; + +&ehci1 { + status = "okay"; +}; + +&hdmi { + status = "okay"; +}; + +&hdmi_out { + hdmi_out_con: endpoint { + remote-endpoint = <&hdmi_con_in>; + }; +}; + +&mmc0 { + vmmc-supply = <®_vcc3v3>; + bus-width = <4>; + cd-gpios = <&pio 7 1 GPIO_ACTIVE_LOW>; /* PH1 */ + status = "okay"; +}; + +&ohci0 { + status = "okay"; +}; + +&ohci1 { + status = "okay"; +}; + +&otg_sram { + status = "okay"; +}; + +®_ahci_5v { + status = "okay"; +}; + +&ac_power_supply { + status = "okay"; +}; + +®_usb1_vbus { + status = "okay"; +}; + +®_usb2_vbus { + status = "okay"; +}; + +&uart0 { + pinctrl-names = "default"; + pinctrl-0 = <&uart0_pb_pins>; + status = "okay"; +}; + +&usb_otg { + dr_mode = "otg"; + status = "okay"; +}; + +&usbphy { + usb0_id_det-gpios = <&pio 7 4 GPIO_ACTIVE_HIGH>; /* PH4 */ + usb0_vbus_det-gpios = <&pio 7 5 GPIO_ACTIVE_HIGH>; /* PH5 */ + usb1_vbus-supply = <®_usb1_vbus>; + usb2_vbus-supply = <®_usb2_vbus>; + status = "okay"; +}; diff --git a/board/in-circuit/icnova-a20-adb4006/sun7i-a20-icnova-a20-adb4006_uboot_defconfig b/board/in-circuit/icnova-a20-adb4006/sun7i-a20-icnova-a20-adb4006_uboot_defconfig new file mode 100644 index 000000000000..f70ffe45ab78 --- /dev/null +++ b/board/in-circuit/icnova-a20-adb4006/sun7i-a20-icnova-a20-adb4006_uboot_defconfig @@ -0,0 +1,20 @@ +CONFIG_ARM=y +CONFIG_ARCH_SUNXI=y +CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-icnova-a20-adb4006" +CONFIG_SPL=y +CONFIG_MACH_SUN7I=y +CONFIG_DRAM_CLK=384 +CONFIG_AHCI=y +# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set +CONFIG_SPL_I2C=y +CONFIG_SCSI_AHCI=y +CONFIG_SYS_I2C_MVTWSI=y +CONFIG_SYS_I2C_SLAVE=0x7f +CONFIG_SYS_I2C_SPEED=400000 +CONFIG_ETH_DESIGNWARE=y +CONFIG_MII=y +CONFIG_SUN7I_GMAC=y +CONFIG_AXP_ALDO4_VOLT=2800 +CONFIG_SCSI=y +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_OHCI_HCD=y diff --git a/board/in-circuit/icnova-a20-adb4006/sun7i-a20-icnova-a20.dtsi b/board/in-circuit/icnova-a20-adb4006/sun7i-a20-icnova-a20.dtsi new file mode 100644 index 000000000000..46616c6bc899 --- /dev/null +++ b/board/in-circuit/icnova-a20-adb4006/sun7i-a20-icnova-a20.dtsi @@ -0,0 +1,62 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) +// Copyright (C) 2023 In-Circuit GmbH + +#include "sun7i-a20.dtsi" +#include "sunxi-common-regulators.dtsi" + +#include + +&cpu0 { + cpu-supply = <®_dcdc2>; +}; + +&gmac { + pinctrl-names = "default"; + pinctrl-0 = <&gmac_mii_pins>; + phy-handle = <&phy1>; + phy-mode = "mii"; + status = "okay"; +}; + +&i2c0 { + status = "okay"; + + axp209: pmic@34 { + reg = <0x34>; + interrupt-parent = <&nmi_intc>; + interrupts = <0 IRQ_TYPE_LEVEL_LOW>; + }; +}; + +&gmac_mdio { + phy1: ethernet-phy@1 { + reg = <1>; + }; +}; + +#include "axp209.dtsi" + +®_dcdc2 { + regulator-always-on; + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1400000>; + regulator-name = "vdd-cpu"; +}; + +®_dcdc3 { + regulator-always-on; + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1400000>; + regulator-name = "vdd-int-dll"; +}; + +®_ldo1 { + regulator-name = "vdd-rtc"; +}; + +®_ldo2 { + regulator-always-on; + regulator-min-microvolt = <3000000>; + regulator-max-microvolt = <3000000>; + regulator-name = "avcc"; +}; diff --git a/board/intel/galileo/linux-3.14.config b/board/intel/galileo/linux-3.14.config index e7aa9cf232d1..c658afb88ecb 100644 --- a/board/intel/galileo/linux-3.14.config +++ b/board/intel/galileo/linux-3.14.config @@ -154,9 +154,9 @@ CONFIG_TUN=y # CONFIG_NET_VENDOR_SILAN is not set # CONFIG_NET_VENDOR_SIS is not set # CONFIG_NET_VENDOR_SMSC is not set -CONFIG_STMMAC_ETH=m +CONFIG_STMMAC_ETH=y # CONFIG_STMMAC_PLATFORM is not set -CONFIG_STMMAC_PCI=m +CONFIG_STMMAC_PCI=y # CONFIG_NET_VENDOR_SUN is not set # CONFIG_NET_VENDOR_TEHUTI is not set # CONFIG_NET_VENDOR_TI is not set @@ -306,3 +306,6 @@ CONFIG_SECURITY=y CONFIG_SECURITY_NETWORK=y # CONFIG_VIRTUALIZATION is not set CONFIG_CRC_T10DIF=y +CONFIG_NFS_FS=y +CONFIG_ROOT_NFS=y +CONFIG_IP_PNP=y diff --git a/board/khadas/vim3/extlinux.conf b/board/khadas/vim3/extlinux.conf new file mode 100644 index 000000000000..2b1544a5cc67 --- /dev/null +++ b/board/khadas/vim3/extlinux.conf @@ -0,0 +1,5 @@ +default buildroot +label buildroot + kernel /Image + devicetree /meson-g12b-a311d-khadas-vim3.dtb +append root=/dev/mmcblk0p2 rootwait console=ttyAML0,115200 diff --git a/board/khadas/vim3/genimage.cfg b/board/khadas/vim3/genimage.cfg new file mode 100644 index 000000000000..79d7f9ca0765 --- /dev/null +++ b/board/khadas/vim3/genimage.cfg @@ -0,0 +1,33 @@ +image boot.vfat { + vfat { + files = { + "Image", + "meson-g12b-a311d-khadas-vim3.dtb", + "extlinux" + } + + label = "boot" + } + + size = 64M +} + +image sdcard.img { + hdimage { + } + + partition boot { + partition-type = 0xC + bootable = "true" + image="boot.vfat" + size = 64M + offset = 2M + } + + partition rootfs { + partition-type = 0x83 + image = "rootfs.ext2" + size = 128M + offset = 0 + } +} diff --git a/board/khadas/vim3/post-build.sh b/board/khadas/vim3/post-build.sh new file mode 100755 index 000000000000..8dae08a47cd8 --- /dev/null +++ b/board/khadas/vim3/post-build.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +BOARD_DIR="$(dirname "$0")" + +install -m 0644 -D "$BOARD_DIR"/extlinux.conf "$BINARIES_DIR"/extlinux/extlinux.conf diff --git a/board/khadas/vim3/post-image.sh b/board/khadas/vim3/post-image.sh new file mode 100755 index 000000000000..db38421494d4 --- /dev/null +++ b/board/khadas/vim3/post-image.sh @@ -0,0 +1,23 @@ +#!/bin/sh + +BOARD_DIR="$(dirname "$0")" + +support/scripts/genimage.sh -c "${BOARD_DIR}/genimage.cfg" + +AMLOGIC_DIR=${BINARIES_DIR}/amlogic-boot-fip +FIP_DIR=${BINARIES_DIR}/fip + +mkdir -p "${FIP_DIR}" + +(cd "${AMLOGIC_DIR}" && \ + ./build-fip.sh khadas-vim3 \ + "${BINARIES_DIR}"/u-boot.bin \ + "${FIP_DIR}") + +dd if="${FIP_DIR}"/u-boot.bin.sd.bin \ + of="${BINARIES_DIR}"/sdcard.img \ + conv=fsync,notrunc bs=1 count=444 + +dd if="${FIP_DIR}"/u-boot.bin.sd.bin \ + of="${BINARIES_DIR}"/sdcard.img \ + conv=fsync,notrunc bs=512 skip=1 seek=1 diff --git a/board/khadas/vim3/readme.txt b/board/khadas/vim3/readme.txt new file mode 100644 index 000000000000..cc9b513644ac --- /dev/null +++ b/board/khadas/vim3/readme.txt @@ -0,0 +1,71 @@ +Khadas VIM3 + +Description +=========== + +This configuration builds a complete image for the Khadas VIM3 to be flashed +on an SD-card. + +How to build it +=============== + +Select the default configuration for the target: +$ make khadas_vim3_defconfig + +Optional: modify the configuration: +$ make menuconfig + +Build: +$ make + +Result of the build +=================== +output/images/ ++-- amlogic-boot-fip ++ +-- build-fip.sh ++ +-- g12a.inc ++ `-- khadas-vim3 ++ +-- acs.bin ++ +-- acs_tool.py ++ +-- aml_ddr.fw ++ +-- aml_encrypt_g12b ++ +-- bl2.bin ++ +-- bl301.bin ++ +-- bl30.bin ++ +-- bl31.bin ++ +-- bl31.img ++ +-- blx_fix.sh ++ +-- ddr3_1d.fw ++ +-- ddr4_1d.fw ++ +-- ddr4_2d.fw ++ +-- diag_lpddr4.fw ++ +-- lpddr3_1d.fw ++ +-- lpddr4_1d.fw ++ +-- lpddr4_2d.fw ++ +-- Makefile ++ `-- piei.fw ++-- boot.vfat ++-- extlinux ++ `-- extlinux.conf ++-- fip ++ +-- u-boot.bin ++ +-- u-boot.bin.sd.bin ++ +-- u-boot.bin.usb.bl2 ++ `-- u-boot.bin.usb.tpl ++-- Image ++-- meson-g12b-a311d-khadas-vim3.dtb ++-- rootfs.ext2 ++-- rootfs.ext4 -> rootfs.ext2 ++-- rootfs.tar ++-- sdcard.img +`-- u-boot.bin + +The post-image script uses the files in the amlogic-boot-fip folder to sign +the bootloader image before integrating it into the sdcard image. + +To copy the image file to the sdcard use dd: +$ dd if=output/images/sdcard.img of=/dev/sdX + +Tested hardware +=============== +Khadas vim3 (rev. 14) diff --git a/board/licheepi/readme.txt b/board/licheepi/readme.txt deleted file mode 100644 index 6b8bf94b4514..000000000000 --- a/board/licheepi/readme.txt +++ /dev/null @@ -1,62 +0,0 @@ -Intro -===== - -This directory contains a buildroot configuration for building a -LicheePi Zero. - -How to build it -=============== - -Configure Buildroot -------------------- - - $ make licheepi_zero_defconfig - -Build the rootfs ----------------- - -Note: you will need to have access to the network, since Buildroot -will download the packages' sources. - -You may now build your rootfs with: - - $ make - -(This may take a while, consider getting yourself a coffee ;-) ) - -Result of the build -------------------- - -After building, you should obtain this tree: - - output/images/ - +-- boot.scr - +-- boot.vfat - +-- rootfs.ext2 - +-- rootfs.ext4 -> rootfs.ext2 - +-- rootfs.tar - +-- sdcard.img - +-- sun8i-v3s-licheepi-zero-dock.dtb - +-- sun8i-v3s-licheepi-zero.dtb - +-- u-boot.bin - +-- u-boot-sunxi-with-spl.bin - `-- zImage - -How to write the SD card -======================== - -Once the build process is finished you will have an image called -"sdcard.img" in the output/images/ directory. - -Copy the bootable "sdcard.img" onto an SD card with "dd": - - $ sudo dd if=output/images/sdcard.img of=/dev/sdX - -Alternatively, you can use the Etcher graphical tool to burn the image -to the SD card safely and on any platform: - -https://etcher.io/ - -Once the SD card is burned, insert it into your LicheePi Zero board, -and power it up. Your new system should come up now and start a -console on the UART0 serial port. diff --git a/board/microchip/mpfs_icicle/README.txt b/board/microchip/mpfs_icicle/README.txt new file mode 100644 index 000000000000..de20ecc410f5 --- /dev/null +++ b/board/microchip/mpfs_icicle/README.txt @@ -0,0 +1,62 @@ +Microchip PolarFire SoC Icicle Kit +================================== + +This file describes how to use the pre-defined Buildroot +configuration for Microchip's PolarFire SoC Icicle Kit. + +Further information about the PolarFire SoC Icicle Kit can be found +at https://github.com/polarfire-soc/polarfire-soc-documentation + +Building +======== + +Configure Buildroot using the default board configuration: + + '$ make microchip_mpfs_icicle_defconfig' + +Customise the build as necessary: + + '$ make menuconfig' + +Start the build: + + '$ make' + +Result of the build +=================== + +Once the build has finished you will have the following files: + + output/images/ + +-- boot.scr + +-- boot.vfat + +-- Image + +-- mpfs_icicle.itb + +-- mpfs_icicle.its + +-- mpfs-icicle-kit.dtb + +-- payload.bin + +-- rootfs.ext2 + +-- rootfs.ext4 + +-- rootfs.tar + +-- sdcard.img + +-- u-boot.bin + + +Creating a bootable SD card with genimage +========================================= + +By default Buildroot builds a SD card image for you. The first partition +of this image contains a U-Boot binary, embedded in a Hart Software +Services (HSS) payload. The second partition contains a FAT filesystem +with a U-Boot env and an ITB file containing the kernel and the device +tree. The third partition contains the file system. This image can be +written directly to the eMMC or an SD card. All you need to do is dd the +image to the eMMC or your SD card, which can be done with the following +command on your development host: + + '$ sudo dd if=output/images/sdcard.img of=/dev/sdb bs=1M' + +For instructions on how to transfer the image to the eMMC/SD, please refer to +the "Programming the Linux image" section of our guide on updating +PolarFire SoC dev kits: +https://github.com/polarfire-soc/polarfire-soc-documentation/blob/master/reference-designs-fpga-and-development-kits/updating-mpfs-kit.md. diff --git a/board/microchip/mpfs_icicle/config.yaml b/board/microchip/mpfs_icicle/config.yaml new file mode 100644 index 000000000000..5fccdfd34f87 --- /dev/null +++ b/board/microchip/mpfs_icicle/config.yaml @@ -0,0 +1,28 @@ +# +# HSS Payload Generator - buildroot configuration file +# + +# First, we can optionally set a name for our image, otherwise one will be created dynamically +set-name: 'PolarFire-SoC-HSS::U-Boot' + +# +# Next, we'll define the entry point addresses for each hart, as follows: +# +hart-entry-points: {u54_1: '0x80200000', u54_2: '0x80200000', u54_3: '0x80200000', u54_4: '0x80200000'} +# +# Finally, we'll define a payloads (source binary file) that will be placed at certain regions in memory +# The payload section is defined with the keyword payloads, and then a number of individual +# payload descriptors. +# +# Each payload has a name (path to its ELF/bin file), an owner-hart, and optionally 1-3 secondary-harts. +# +# Additionally, it has a privilege mode in which it will start execution. +# * Valid privilege modes are PRV_M, PRV_S and PRV_U. +# +# +# In this case, the only payload is the u-boot s-mode binary. +# +# Case only matters for the ELF path names, not the keywords. +# +payloads: + u-boot.bin: {exec-addr: '0x80200000', owner-hart: u54_1, secondary-hart: u54_2, secondary-hart: u54_3, secondary-hart: u54_4, priv-mode: prv_s} diff --git a/board/microchip/mpfs_icicle/genimage.cfg b/board/microchip/mpfs_icicle/genimage.cfg new file mode 100644 index 000000000000..6955d3365a35 --- /dev/null +++ b/board/microchip/mpfs_icicle/genimage.cfg @@ -0,0 +1,34 @@ +# Image for eMMC or SDCard boot on the Microchip PolarFire SOC Icicle Board +# +image boot.vfat { + vfat { + files = { + "mpfs_icicle.itb", + } + + file boot.scr { + image = "boot.scr" + } + } + size = 60M +} + +image sdcard.img { + hdimage { + gpt = true + } + + partition uboot { + partition-type-uuid = 21686148-6449-6E6F-744E-656564454649 + image = "payload.bin" + } + + partition kernel { + bootable = "true" + image = "boot.vfat" + } + + partition root { + image = "rootfs.ext4" + } +} diff --git a/board/microchip/mpfs_icicle/linux.fragment b/board/microchip/mpfs_icicle/linux.fragment new file mode 100644 index 000000000000..0cecddb61b0d --- /dev/null +++ b/board/microchip/mpfs_icicle/linux.fragment @@ -0,0 +1 @@ +CONFIG_POLARFIRE_SOC_DMA_NONCOHERENT=y diff --git a/board/microchip/mpfs_icicle/mpfs_icicle.its b/board/microchip/mpfs_icicle/mpfs_icicle.its new file mode 100644 index 000000000000..a62b079fa12e --- /dev/null +++ b/board/microchip/mpfs_icicle/mpfs_icicle.its @@ -0,0 +1,53 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Flattened Image Tree file for Icicle Kit + * + */ + +/dts-v1/; + +/ { + description = "U-Boot fitImage for the MPFS"; + address-cells = <1>; + + images { + kernel { + description = "Linux kernel"; + data = /incbin/("./Image"); + type = "kernel"; + arch = "riscv"; + os = "linux"; + compression = "none"; + load = <0x80200000>; + entry = <0x80200000>; + hash-1 { + algo = "sha256"; + }; + }; + base_fdt { + description = "Flattened Device Tree blob"; + data = /incbin/("./mpfs-icicle-kit.dtb"); + type = "flat_dt"; + arch = "riscv"; + compression = "none"; + load = <0x8a000000>; + hash-1 { + algo = "sha256"; + }; + }; + }; + + configurations { + default = "kernel_dtb"; + kernel_dtb { + description = "1 Linux kernel, FDT blob"; + kernel = "kernel"; + fdt = "base_fdt"; + }; + + base_dtb { + description = "Base FDT blob for MPFS Icicle board"; + fdt = "base_fdt"; + }; + }; +}; diff --git a/board/microchip/mpfs_icicle/post-image.sh b/board/microchip/mpfs_icicle/post-image.sh new file mode 100755 index 000000000000..596bb21d78d4 --- /dev/null +++ b/board/microchip/mpfs_icicle/post-image.sh @@ -0,0 +1,13 @@ +#!/bin/bash +set -e + +HSS_PAYLOAD_GENERATOR="${HOST_DIR}"/bin/hss-payload-generator +MKIMAGE="${HOST_DIR}"/bin/mkimage +BOARD_DIR="$(pwd)"/"${0%/*}" + +pushd "${BINARIES_DIR}" +"${HSS_PAYLOAD_GENERATOR}" -c "${BOARD_DIR}"/config.yaml payload.bin +cp "${BOARD_DIR}"/mpfs_icicle.its "${BINARIES_DIR}"/mpfs_icicle.its +"${MKIMAGE}" -f mpfs_icicle.its mpfs_icicle.itb +popd +support/scripts/genimage.sh -c "${BOARD_DIR}"/genimage.cfg diff --git a/board/microchip/mpfs_icicle/uboot-env.txt b/board/microchip/mpfs_icicle/uboot-env.txt new file mode 100644 index 000000000000..8a655085ed18 --- /dev/null +++ b/board/microchip/mpfs_icicle/uboot-env.txt @@ -0,0 +1,16 @@ +# this assumes ${scriptaddr} is already set!! + +# Try to boot a fitImage from eMMC/SD + +setenv fdt_high 0xffffffffffffffff +setenv initrd_high 0xffffffffffffffff + +load mmc 0:${distro_bootpart} ${scriptaddr} mpfs_icicle.itb; +bootm start ${scriptaddr}#kernel_dtb; +bootm loados ${scriptaddr}; +# Try to load a ramdisk if available inside fitImage +bootm ramdisk; +bootm prep; +fdt set /soc/ethernet@20112000 mac-address ${icicle_mac_addr0}; +fdt set /soc/ethernet@20110000 mac-address ${icicle_mac_addr1}; +bootm go; diff --git a/board/microchip/mpfs_icicle/uboot-fragment-rootfs.config b/board/microchip/mpfs_icicle/uboot-fragment-rootfs.config new file mode 100644 index 000000000000..e2a5eb94385d --- /dev/null +++ b/board/microchip/mpfs_icicle/uboot-fragment-rootfs.config @@ -0,0 +1,3 @@ +CONFIG_USE_BOOTARGS=y +CONFIG_BOOTARGS="root=/dev/mmcblk0p3 rootwait uio_pdrv_genirq.of_id=generic-uio" +CONFIG_MPFS_PRIORITISE_QSPI_BOOT=n diff --git a/board/orangepi/orangepi-lite2/readme.txt b/board/orangepi/orangepi-lite2/readme.txt index bed561b5620d..7f88250418e0 100644 --- a/board/orangepi/orangepi-lite2/readme.txt +++ b/board/orangepi/orangepi-lite2/readme.txt @@ -6,7 +6,7 @@ buildroot environment for the Orangepi Lite2. With the current configuration it will bring-up the board, and allow access through the serial console. Orangepi Lite2 link: -http://www.orangepi.org/Orange%20Pi%20Lite%202/ +http://www.orangepi.org/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-Lite-2.html Wiki link: https://openedev.amarulasolutions.com/display/ODWIKI/Orangepi+Lite2 diff --git a/board/orangepi/orangepi-one-plus/readme.txt b/board/orangepi/orangepi-one-plus/readme.txt index 87f6de851007..547f87428807 100644 --- a/board/orangepi/orangepi-one-plus/readme.txt +++ b/board/orangepi/orangepi-one-plus/readme.txt @@ -6,7 +6,7 @@ buildroot environment for the Orangepi One Plus. With the current configuration it will bring-up the board, and allow access through the serial console. Orangepi One Plus link: -http://www.orangepi.org/OrangePiOneplus/ +http://www.orangepi.org/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-One-Plus.html Wiki link: https://openedev.amarulasolutions.com/display/ODWIKI/Orangepi+One+Plus diff --git a/board/orangepi/orangepi-pc2/readme.txt b/board/orangepi/orangepi-pc2/readme.txt new file mode 100644 index 000000000000..6c699244ceb5 --- /dev/null +++ b/board/orangepi/orangepi-pc2/readme.txt @@ -0,0 +1,37 @@ +Intro +===== + +This default configuration will allow you to start experimenting with the +buildroot environment for the Orangepi PC2. With the current configuration +it will bring-up the board, and allow access through the serial console. + +Orangepi PC2 link: +http://www.orangepi.org/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-PC-2.html + +Sunxi Wiki link: +https://linux-sunxi.org/Xunlong_Orange_Pi_PC_2 + +This configuration uses U-Boot mainline and kernel mainline. + +How to build +============ + + $ make orangepi_pc2_defconfig + $ make + +Note: you will need access to the internet to download the required +sources. + +How to write the SD card +======================== + +Once the build process is finished you will have an image called "sdcard.img" +in the output/images/ directory. + +Copy the bootable "sdcard.img" onto an SD card with "dd": + + $ sudo dd if=output/images/sdcard.img of=/dev/sdX + $ sudo sync + +Insert the micro SDcard in your Orangepi PC2 and power it up. The console +is on the serial line, 115200 8N1. diff --git a/board/orangepi/orangepi-zero-plus/readme.txt b/board/orangepi/orangepi-zero-plus/readme.txt index 5556eae8907b..1e60e0f825ba 100644 --- a/board/orangepi/orangepi-zero-plus/readme.txt +++ b/board/orangepi/orangepi-zero-plus/readme.txt @@ -6,7 +6,7 @@ buildroot environment for the Orangepi Zero Plus. With the current configuration it will bring-up the board, and allow access through the serial console. Orangepi Zero Plus link: -http://www.orangepi.org/OrangePiZeroPlus/ +http://www.orangepi.org/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-Zero-Plus.html This configuration uses U-Boot mainline and kernel mainline. diff --git a/board/orangepi/orangepi-zero-plus2/readme.txt b/board/orangepi/orangepi-zero-plus2/readme.txt index 322ba0e12ae4..2df6dd9b112a 100644 --- a/board/orangepi/orangepi-zero-plus2/readme.txt +++ b/board/orangepi/orangepi-zero-plus2/readme.txt @@ -6,7 +6,7 @@ buildroot environment for the Orangepi Zero Plus2. With the current configuratio it will bring-up the board, and allow access through the serial console. Orangepi Zero Plus2 link: -http://www.orangepi.org/OrangePiZeroPlus2/ +http://www.orangepi.org/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-Zero-Plus-2.html Wiki link: https://openedev.amarulasolutions.com/display/ODWIKI/Orangepi+Zero+Plus2 diff --git a/board/orangepi/orangepi-zero3/linux.config b/board/orangepi/orangepi-zero3/linux.config new file mode 100644 index 000000000000..09b7a93a5a57 --- /dev/null +++ b/board/orangepi/orangepi-zero3/linux.config @@ -0,0 +1 @@ +CONFIG_MFD_AC200=y diff --git a/board/orangepi/orangepi-zero3/readme.txt b/board/orangepi/orangepi-zero3/readme.txt new file mode 100644 index 000000000000..4872a363e7df --- /dev/null +++ b/board/orangepi/orangepi-zero3/readme.txt @@ -0,0 +1,34 @@ +Intro +===== + +This default configuration will allow you to start experimenting with the +buildroot environment for the Orangepi Zero3. With the current configuration +it will bring-up the board, and allow access through the serial console. + +Orangepi Zero3 link: +http://www.orangepi.org/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-Zero-3.html + +This configuration uses Orangepi's fork of U-Boot and Linux kernel. + +How to build +============ + + $ make orangepi_zero3_defconfig + $ make + +Note: you will need access to the internet to download the required +sources. + +How to write the SD card +======================== + +Once the build process is finished you will have an image called "sdcard.img" +in the output/images/ directory. + +Copy the bootable "sdcard.img" onto an SD card with "dd": + + $ sudo dd if=output/images/sdcard.img of=/dev/sdX + $ sudo sync + +Insert the micro SDcard in your Orangepi Zero3 and power it up. The console +is on the serial line, 115200 8N1. diff --git a/board/pc/linux.config b/board/pc/linux.config index f86352e1ea71..43b15c94be49 100644 --- a/board/pc/linux.config +++ b/board/pc/linux.config @@ -15,6 +15,7 @@ CONFIG_IP_NF_FILTER=y CONFIG_CFG80211=m CONFIG_CFG80211_WEXT=y CONFIG_MAC80211=m +CONFIG_PCI=y CONFIG_DEVTMPFS=y CONFIG_DEVTMPFS_MOUNT=y CONFIG_VIRTIO_BLK=y @@ -63,7 +64,10 @@ CONFIG_DRM_I915=y CONFIG_DRM_QXL=y CONFIG_DRM_BOCHS=y CONFIG_DRM_VIRTIO_GPU=y +CONFIG_FB=y +CONFIG_FIRMWARE_EDID=y CONFIG_FB_VESA=y +CONFIG_FB_EFI=y CONFIG_SOUND=y CONFIG_SND=y CONFIG_SND_HDA_INTEL=y diff --git a/board/pine64/pinecube/extlinux.conf b/board/pine64/pinecube/extlinux.conf new file mode 100644 index 000000000000..6a18d9a2cb9d --- /dev/null +++ b/board/pine64/pinecube/extlinux.conf @@ -0,0 +1,4 @@ +label buildroot + kernel /zImage + devicetree /sun8i-s3-pinecube.dtb + append console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootwait rw diff --git a/board/pine64/pinecube/genimage.cfg b/board/pine64/pinecube/genimage.cfg new file mode 100644 index 000000000000..398d45e2f7e7 --- /dev/null +++ b/board/pine64/pinecube/genimage.cfg @@ -0,0 +1,34 @@ +image boot.vfat { + vfat { + files = { + "zImage", + "sun8i-s3-pinecube.dtb", + "extlinux" + } + } + + size = 8M +} + +image sdcard.img { + hdimage { + } + + partition u-boot { + in-partition-table = "no" + image = "u-boot-sunxi-with-spl.bin" + offset = 8K + size = 504K # 512KB - 8KB + } + + partition boot { + partition-type = 0xC + bootable = "true" + image = "boot.vfat" + } + + partition rootfs { + partition-type = 0x83 + image = "rootfs.ext4" + } +} diff --git a/board/pine64/pinecube/post-build.sh b/board/pine64/pinecube/post-build.sh new file mode 100755 index 000000000000..8dae08a47cd8 --- /dev/null +++ b/board/pine64/pinecube/post-build.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +BOARD_DIR="$(dirname "$0")" + +install -m 0644 -D "$BOARD_DIR"/extlinux.conf "$BINARIES_DIR"/extlinux/extlinux.conf diff --git a/board/pine64/pinecube/readme.txt b/board/pine64/pinecube/readme.txt new file mode 100644 index 000000000000..4cf6df211072 --- /dev/null +++ b/board/pine64/pinecube/readme.txt @@ -0,0 +1,31 @@ +Intro +===== + +This directory contains a Buildroot configuration for building a +Pine64 PineCube. + +Board homepage: https://www.pine64.org/cube/ +Board wiki: https://wiki.pine64.org/wiki/PineCube + +How to build it +=============== + + $ make pine64_pinecube_defconfig + $ make + +Note: you will need access to the internet to download the required +sources. + +How to write the SD card +======================== + +Once the build process is finished you will have an image called "sdcard.img" +in the output/images/ directory. + +Copy the bootable "sdcard.img" onto an SD card with "dd": + + $ sudo dd if=output/images/sdcard.img of=/dev/sdX + $ sudo sync + +Insert the micro SDcard in your PineCube and power it up. The console +is on the serial port 2, 115200 8N1 (check Wiki for board pinout). diff --git a/board/pine64/rockpro64/extlinux.conf b/board/pine64/rockpro64/extlinux.conf index ea081a1f0b67..83467ef43c2a 100644 --- a/board/pine64/rockpro64/extlinux.conf +++ b/board/pine64/rockpro64/extlinux.conf @@ -1,4 +1,4 @@ label RK3399_ROCKPRO64 linux kernel /Image devicetree /rk3399-rockpro64.dtb - append earlycon=uart8250,mmio32,0xff1a0000 root=/dev/mmcblk0p4 rw rootwait + append earlycon=uart8250,mmio32,0xff1a0000 root=/dev/mmcblk1p4 rw rootwait diff --git a/board/qemu/aarch64-ebbr/readme.txt b/board/qemu/aarch64-ebbr/readme.txt index a2027dad4486..76d566045d44 100644 --- a/board/qemu/aarch64-ebbr/readme.txt +++ b/board/qemu/aarch64-ebbr/readme.txt @@ -33,7 +33,7 @@ Run the emulation with: -device virtio-net-device,netdev=eth0 \ -device virtio-rng-device,rng=rng0 \ -drive file=output/images/disk.img,if=none,format=raw,id=hd0 \ - -m 1024 \ + -m 2048 \ -netdev user,id=eth0 \ -no-acpi \ -nographic \ @@ -72,7 +72,7 @@ Then run the OS installer iso image on emulation with: -device virtio-rng-device,rng=rng0 \ -drive file=,if=none,format=raw,readonly=on,id=hd0 \ -drive file=disk.qcow2,if=none,id=hd1 \ - -m 1024 \ + -m 2048 \ -netdev user,id=eth0 \ -no-acpi \ -nographic \ @@ -100,4 +100,4 @@ Firmware update is currently not supported. [1]: https://github.com/ARM-software/ebbr [2]: https://developer.arm.com/Architectures/Arm%20SystemReady%20IR [3]: https://github.com/ARM-software/arm-systemready/tree/main/IR/prebuilt_images -[4]: https://developer.arm.com/documentation/DUI1101/1-1/?lang=en +[4]: https://developer.arm.com/documentation/DUI1101/latest/ diff --git a/board/qemu/aarch64-ebbr/u-boot.config b/board/qemu/aarch64-ebbr/u-boot.fragment similarity index 100% rename from board/qemu/aarch64-ebbr/u-boot.config rename to board/qemu/aarch64-ebbr/u-boot.fragment diff --git a/board/qemu/aarch64-sbsa/grub.cfg b/board/qemu/aarch64-sbsa/grub.cfg index cd486caf4c52..d99e19c4cd52 100644 --- a/board/qemu/aarch64-sbsa/grub.cfg +++ b/board/qemu/aarch64-sbsa/grub.cfg @@ -2,5 +2,5 @@ set default="0" set timeout="5" menuentry "Buildroot" { - linux /Image root=/dev/sda2 rootwait console=ttyAMA0 + linux /Image root=PARTLABEL=root rootwait } diff --git a/board/qemu/aarch64-virt/linux.config b/board/qemu/aarch64-virt/linux.config index f9763b73b7bf..971b9fcf8682 100644 --- a/board/qemu/aarch64-virt/linux.config +++ b/board/qemu/aarch64-virt/linux.config @@ -12,8 +12,7 @@ CONFIG_SCHED_AUTOGROUP=y CONFIG_PROFILING=y CONFIG_ARCH_VEXPRESS=y CONFIG_COMPAT=y -CONFIG_FW_CFG_SYSFS=y -CONFIG_FW_CFG_SYSFS_CMDLINE=y +CONFIG_ACPI=y CONFIG_MODULES=y CONFIG_MODULE_UNLOAD=y CONFIG_BLK_DEV_BSGLIB=y @@ -34,6 +33,8 @@ CONFIG_PCI=y CONFIG_PCI_HOST_GENERIC=y CONFIG_DEVTMPFS=y CONFIG_DEVTMPFS_MOUNT=y +CONFIG_FW_CFG_SYSFS=y +CONFIG_FW_CFG_SYSFS_CMDLINE=y CONFIG_VIRTIO_BLK=y CONFIG_BLK_DEV_SD=y CONFIG_CHR_DEV_SG=y diff --git a/board/qemu/arm-ebbr/readme.txt b/board/qemu/arm-ebbr/readme.txt index 085e723fe6c8..dc2b0647a2a9 100644 --- a/board/qemu/arm-ebbr/readme.txt +++ b/board/qemu/arm-ebbr/readme.txt @@ -68,4 +68,4 @@ Firmware update is currently not supported. [1]: https://github.com/ARM-software/ebbr [2]: https://developer.arm.com/Architectures/Arm%20SystemReady%20IR [3]: https://github.com/ARM-software/arm-systemready/tree/main/IR/prebuilt_images -[4]: https://developer.arm.com/documentation/DUI1101/1-1/?lang=en +[4]: https://developer.arm.com/documentation/DUI1101/latest/ diff --git a/board/qemu/arm-ebbr/u-boot.fragment b/board/qemu/arm-ebbr/u-boot.fragment index bfc382cde902..66fe910f169a 100644 --- a/board/qemu/arm-ebbr/u-boot.fragment +++ b/board/qemu/arm-ebbr/u-boot.fragment @@ -31,5 +31,5 @@ CONFIG_PARTITION_TYPE_GUID=y CONFIG_RNG_OPTEE=y CONFIG_RTC_EMULATION=y CONFIG_SCMI_FIRMWARE=y -CONFIG_SYS_TEXT_BASE=0x60000000 CONFIG_TEE=y +CONFIG_TEXT_BASE=0x60000000 diff --git a/board/qemu/arm-vexpress-tz/readme.txt b/board/qemu/arm-vexpress-tz/readme.txt index 3036dd54cabd..3e84fe63919e 100644 --- a/board/qemu/arm-vexpress-tz/readme.txt +++ b/board/qemu/arm-vexpress-tz/readme.txt @@ -62,7 +62,7 @@ consoles over telnet connections: -serial telnet:127.0.0.1:1235,server \ -serial telnet:127.0.0.1:1236,server \ -netdev user,id=vmnic -device virtio-net-device,netdev=vmnic \ - -semihosting-config enable,target=native \ + -semihosting-config enable=on,target=native \ -bios flash.bin QEMU is now waiting for the telnet connection. From another shell, open a @@ -91,7 +91,7 @@ From a first shell: -smp 1 -s -m 1024 -d unimp \ -serial stdio \ -netdev user,id=vmnic -device virtio-net-device,netdev=vmnic \ - -semihosting-config enable,target=native \ + -semihosting-config enable=on,target=native \ -bios flash.bin \ -S @@ -123,7 +123,7 @@ Emulation has started, TF-A has loaded OP-TEE and U-boot images in memory and has booted OP-TEE. Emulation stopped at OP-TEE core entry. Note: QEMU hosts a GDB service listening to TCP port 1234, as set through -qemu-system-arm command line option -s. +qemu-system-arm command line option -S. Note: To build the GDB server, the following extra options have to be added to the Buildroot configuration: diff --git a/board/qemu/m68k-mcf5208/0001-m68k-Fix-invalid-.section-syntax.patch b/board/qemu/m68k-mcf5208/0001-m68k-Fix-invalid-.section-syntax.patch new file mode 100644 index 000000000000..1f1ed75ae090 --- /dev/null +++ b/board/qemu/m68k-mcf5208/0001-m68k-Fix-invalid-.section-syntax.patch @@ -0,0 +1,97 @@ +From 0bb6b7477f5dcfafbdd76eea9c7aa7a5f78d7613 Mon Sep 17 00:00:00 2001 +From: Ben Hutchings +Date: Fri, 16 Jun 2023 17:36:10 +0200 +Subject: [PATCH] m68k: Fix invalid .section syntax + +gas supports several different forms for .section for ELF targets, +including: + .section NAME [, "FLAGS"[, @TYPE[,FLAG_SPECIFIC_ARGUMENTS]]] +and: + .section "NAME"[, #FLAGS...] + +In several places we use a mix of these two forms: + .section NAME, #FLAGS... + +A current development snapshot of binutils (2.40.50.20230611) treats +this mixed syntax as an error. + +Change to consistently use: + .section NAME, "FLAGS" +as is used elsewhere in the kernel. + +Link: https://buildd.debian.org/status/fetch.php?pkg=linux&arch=m68k&ver=6.4%7Erc6-1%7Eexp1&stamp=1686907300&raw=1 +Signed-off-by: Ben Hutchings +Tested-by: Jan-Benedict Glaw +Link: https://lore.kernel.org/r/ZIyBaueWT9jnTwRC@decadent.org.uk +Signed-off-by: Geert Uytterhoeven +Upstream: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=922a9bd138101e3e5718f0f4d40dba68ef89bb43 +Signed-off-by: Thomas Petazzoni +--- + arch/m68k/fpsp040/skeleton.S | 4 ++-- + arch/m68k/ifpsp060/os.S | 4 ++-- + arch/m68k/kernel/relocate_kernel.S | 4 ++-- + 3 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/arch/m68k/fpsp040/skeleton.S b/arch/m68k/fpsp040/skeleton.S +index 439395aa6fb4..081922c72daa 100644 +--- a/arch/m68k/fpsp040/skeleton.S ++++ b/arch/m68k/fpsp040/skeleton.S +@@ -499,13 +499,13 @@ in_ea: + dbf %d0,morein + rts + +- .section .fixup,#alloc,#execinstr ++ .section .fixup,"ax" + .even + 1: + jbsr fpsp040_die + jbra .Lnotkern + +- .section __ex_table,#alloc ++ .section __ex_table,"a" + .align 4 + + .long in_ea,1b +diff --git a/arch/m68k/ifpsp060/os.S b/arch/m68k/ifpsp060/os.S +index 7a0d6e428066..89e2ec224ab6 100644 +--- a/arch/m68k/ifpsp060/os.S ++++ b/arch/m68k/ifpsp060/os.S +@@ -379,11 +379,11 @@ _060_real_access: + + + | Execption handling for movs access to illegal memory +- .section .fixup,#alloc,#execinstr ++ .section .fixup,"ax" + .even + 1: moveq #-1,%d1 + rts +-.section __ex_table,#alloc ++.section __ex_table,"a" + .align 4 + .long dmrbuae,1b + .long dmrwuae,1b +diff --git a/arch/m68k/kernel/relocate_kernel.S b/arch/m68k/kernel/relocate_kernel.S +index ab0f1e7d4653..f7667079e08e 100644 +--- a/arch/m68k/kernel/relocate_kernel.S ++++ b/arch/m68k/kernel/relocate_kernel.S +@@ -26,7 +26,7 @@ ENTRY(relocate_new_kernel) + lea %pc@(.Lcopy),%a4 + 2: addl #0x00000000,%a4 /* virt_to_phys() */ + +- .section ".m68k_fixup","aw" ++ .section .m68k_fixup,"aw" + .long M68K_FIXUP_MEMOFFSET, 2b+2 + .previous + +@@ -49,7 +49,7 @@ ENTRY(relocate_new_kernel) + lea %pc@(.Lcont040),%a4 + 5: addl #0x00000000,%a4 /* virt_to_phys() */ + +- .section ".m68k_fixup","aw" ++ .section .m68k_fixup,"aw" + .long M68K_FIXUP_MEMOFFSET, 5b+2 + .previous + +-- +2.41.0 + diff --git a/board/qemu/m68k-q800/0001-m68k-Fix-invalid-.section-syntax.patch b/board/qemu/m68k-q800/0001-m68k-Fix-invalid-.section-syntax.patch new file mode 100644 index 000000000000..1f1ed75ae090 --- /dev/null +++ b/board/qemu/m68k-q800/0001-m68k-Fix-invalid-.section-syntax.patch @@ -0,0 +1,97 @@ +From 0bb6b7477f5dcfafbdd76eea9c7aa7a5f78d7613 Mon Sep 17 00:00:00 2001 +From: Ben Hutchings +Date: Fri, 16 Jun 2023 17:36:10 +0200 +Subject: [PATCH] m68k: Fix invalid .section syntax + +gas supports several different forms for .section for ELF targets, +including: + .section NAME [, "FLAGS"[, @TYPE[,FLAG_SPECIFIC_ARGUMENTS]]] +and: + .section "NAME"[, #FLAGS...] + +In several places we use a mix of these two forms: + .section NAME, #FLAGS... + +A current development snapshot of binutils (2.40.50.20230611) treats +this mixed syntax as an error. + +Change to consistently use: + .section NAME, "FLAGS" +as is used elsewhere in the kernel. + +Link: https://buildd.debian.org/status/fetch.php?pkg=linux&arch=m68k&ver=6.4%7Erc6-1%7Eexp1&stamp=1686907300&raw=1 +Signed-off-by: Ben Hutchings +Tested-by: Jan-Benedict Glaw +Link: https://lore.kernel.org/r/ZIyBaueWT9jnTwRC@decadent.org.uk +Signed-off-by: Geert Uytterhoeven +Upstream: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=922a9bd138101e3e5718f0f4d40dba68ef89bb43 +Signed-off-by: Thomas Petazzoni +--- + arch/m68k/fpsp040/skeleton.S | 4 ++-- + arch/m68k/ifpsp060/os.S | 4 ++-- + arch/m68k/kernel/relocate_kernel.S | 4 ++-- + 3 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/arch/m68k/fpsp040/skeleton.S b/arch/m68k/fpsp040/skeleton.S +index 439395aa6fb4..081922c72daa 100644 +--- a/arch/m68k/fpsp040/skeleton.S ++++ b/arch/m68k/fpsp040/skeleton.S +@@ -499,13 +499,13 @@ in_ea: + dbf %d0,morein + rts + +- .section .fixup,#alloc,#execinstr ++ .section .fixup,"ax" + .even + 1: + jbsr fpsp040_die + jbra .Lnotkern + +- .section __ex_table,#alloc ++ .section __ex_table,"a" + .align 4 + + .long in_ea,1b +diff --git a/arch/m68k/ifpsp060/os.S b/arch/m68k/ifpsp060/os.S +index 7a0d6e428066..89e2ec224ab6 100644 +--- a/arch/m68k/ifpsp060/os.S ++++ b/arch/m68k/ifpsp060/os.S +@@ -379,11 +379,11 @@ _060_real_access: + + + | Execption handling for movs access to illegal memory +- .section .fixup,#alloc,#execinstr ++ .section .fixup,"ax" + .even + 1: moveq #-1,%d1 + rts +-.section __ex_table,#alloc ++.section __ex_table,"a" + .align 4 + .long dmrbuae,1b + .long dmrwuae,1b +diff --git a/arch/m68k/kernel/relocate_kernel.S b/arch/m68k/kernel/relocate_kernel.S +index ab0f1e7d4653..f7667079e08e 100644 +--- a/arch/m68k/kernel/relocate_kernel.S ++++ b/arch/m68k/kernel/relocate_kernel.S +@@ -26,7 +26,7 @@ ENTRY(relocate_new_kernel) + lea %pc@(.Lcopy),%a4 + 2: addl #0x00000000,%a4 /* virt_to_phys() */ + +- .section ".m68k_fixup","aw" ++ .section .m68k_fixup,"aw" + .long M68K_FIXUP_MEMOFFSET, 2b+2 + .previous + +@@ -49,7 +49,7 @@ ENTRY(relocate_new_kernel) + lea %pc@(.Lcont040),%a4 + 5: addl #0x00000000,%a4 /* virt_to_phys() */ + +- .section ".m68k_fixup","aw" ++ .section .m68k_fixup,"aw" + .long M68K_FIXUP_MEMOFFSET, 5b+2 + .previous + +-- +2.41.0 + diff --git a/board/qemu/or1k/readme.txt b/board/qemu/or1k/readme.txt index 2ea797440a6c..ed0359a0f50c 100644 --- a/board/qemu/or1k/readme.txt +++ b/board/qemu/or1k/readme.txt @@ -3,5 +3,3 @@ Run the emulation with: qemu-system-or1k -kernel output/images/vmlinux -nographic # qemu_or1k_defconfig The login prompt will appear in the terminal that started Qemu. - -Ethernet support is not working, yet. diff --git a/board/qemu/post-image.sh b/board/qemu/post-image.sh index 88f04134961e..fe46d0d4af1a 100755 --- a/board/qemu/post-image.sh +++ b/board/qemu/post-image.sh @@ -1,7 +1,7 @@ #!/bin/bash -QEMU_BOARD_DIR="$(dirname $0)" -DEFCONFIG_NAME="$(basename $2)" +QEMU_BOARD_DIR="$(dirname "$0")" +DEFCONFIG_NAME="$(basename "$2")" README_FILES="${QEMU_BOARD_DIR}/*/readme.txt" START_QEMU_SCRIPT="${BINARIES_DIR}/start-qemu.sh" @@ -12,7 +12,8 @@ fi # Search for "# qemu_*_defconfig" tag in all readme.txt files. # Qemu command line on multilines using back slash are accepted. -QEMU_CMD_LINE=$(sed -r ':a; /\\$/N; s/\\\n//; s/\t/ /; ta; /# '${DEFCONFIG_NAME}'$/!d; s/#.*//' ${README_FILES}) +# shellcheck disable=SC2086 # glob over each readme file +QEMU_CMD_LINE="$(sed -r ':a; /\\$/N; s/\\\n//; s/\t/ /; ta; /# '"${DEFCONFIG_NAME}"'$/!d; s/#.*//' ${README_FILES})" if [ -z "${QEMU_CMD_LINE}" ]; then # No Qemu cmd line found, can't test. @@ -41,21 +42,10 @@ case ${DEFCONFIG_NAME} in ;; esac -cat <<-_EOF_ > "${START_QEMU_SCRIPT}" - #!/bin/sh - ( - BINARIES_DIR="\${0%/*}/" - cd \${BINARIES_DIR} - - if [ "\${1}" = "serial-only" ]; then - EXTRA_ARGS='${SERIAL_ARGS}' - else - EXTRA_ARGS='${DEFAULT_ARGS}' - fi - - export PATH="${HOST_DIR}/bin:\${PATH}" - exec ${QEMU_CMD_LINE} \${EXTRA_ARGS} - ) -_EOF_ - +sed -e "s|@SERIAL_ARGS@|${SERIAL_ARGS}|g" \ + -e "s|@DEFAULT_ARGS@|${DEFAULT_ARGS}|g" \ + -e "s|@QEMU_CMD_LINE@|${QEMU_CMD_LINE}|g" \ + -e "s|@HOST_DIR@|${HOST_DIR}|g" \ + <"${QEMU_BOARD_DIR}/start-qemu.sh.in" \ + >"${START_QEMU_SCRIPT}" chmod +x "${START_QEMU_SCRIPT}" diff --git a/board/qemu/ppc-mpc8544ds/patches/linux/0001-powerpc-Fix-mcpu-options-for-SPE-only-compiler.patch b/board/qemu/ppc-mpc8544ds/patches/linux/0001-powerpc-Fix-mcpu-options-for-SPE-only-compiler.patch deleted file mode 100644 index b8c8a7258788..000000000000 --- a/board/qemu/ppc-mpc8544ds/patches/linux/0001-powerpc-Fix-mcpu-options-for-SPE-only-compiler.patch +++ /dev/null @@ -1,53 +0,0 @@ -From a0919e3177295f4aaa9006915adcddc31788d809 Mon Sep 17 00:00:00 2001 -From: Ben Hutchings -Date: Wed, 26 Dec 2018 00:00:40 +0000 -Subject: [PATCH] powerpc: Fix -mcpu= options for SPE-only compiler - -GCC for Debian's "powerpcspe" architecture only supports 32-bit -SPE targets, and using -mcpu=powerpc or -mcpu=powerpc64 is a fatal -error. - -* Change the test for a biarch compiler to pass both the -m32 and -m64 - options, so that it doesn't catch 32-bit-only compilers -* Add an ifdef CONFIG_PPC64 around the 64-bit CPU option definitions - -Signed-off-by: Ben Hutchings -[Romain: Patch from Debian repository: -https://salsa.debian.org/kernel-team/linux/-/blob/buster/debian/patches/bugfix/powerpc/powerpc-fix-mcpu-options-for-spe-only-compiler.patch] -Signed-off-by: Romain Naour ---- - arch/powerpc/Makefile | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile -index 5c8c06215dd4..e3dbea6d7ae0 100644 ---- a/arch/powerpc/Makefile -+++ b/arch/powerpc/Makefile -@@ -12,7 +12,7 @@ - # Rewritten by Cort Dougan and Paul Mackerras - # - --HAS_BIARCH := $(call cc-option-yn, -m32) -+HAS_BIARCH := $(call cc-option-yn, -m32 -m64) - - # Set default 32 bits cross compilers for vdso and boot wrapper - CROSS32_COMPILE ?= -@@ -164,6 +164,7 @@ CFLAGS-$(CONFIG_PPC32) += $(call cc-option, $(MULTIPLEWORD)) - - CFLAGS-$(CONFIG_PPC32) += $(call cc-option,-mno-readonly-in-sdata) - -+ifdef CONFIG_PPC64 - ifdef CONFIG_PPC_BOOK3S_64 - ifdef CONFIG_CPU_LITTLE_ENDIAN - CFLAGS-$(CONFIG_GENERIC_CPU) += -mcpu=power8 -@@ -175,6 +176,7 @@ endif - else - CFLAGS-$(CONFIG_GENERIC_CPU) += -mcpu=powerpc64 - endif -+endif - - ifdef CONFIG_FUNCTION_TRACER - CC_FLAGS_FTRACE := -pg --- -2.17.1 - diff --git a/board/qemu/ppc64le-powernv8/readme.txt b/board/qemu/ppc64le-powernv8/readme.txt index 059f55fbc917..b57c97464a8a 100644 --- a/board/qemu/ppc64le-powernv8/readme.txt +++ b/board/qemu/ppc64le-powernv8/readme.txt @@ -1,5 +1,5 @@ Run the emulation with: -qemu-system-ppc64 -M powernv9 -kernel vmlinux -append "console=hvc0 rootwait root=/dev/nvme0n1" -device nvme,bus=pcie.3,addr=0x0,drive=drive0,serial=1234 -drive file=./rootfs.ext2,if=none,id=drive0,format=raw,cache=none -device e1000e,netdev=net0,mac=C0:FF:EE:00:01:03,bus=pcie.1,addr=0x0 -netdev user,id=net0 -serial mon:stdio -nographic # qemu_ppc64le_powernv8_defconfig +qemu-system-ppc64 -M powernv9 -kernel output/images/vmlinux -append "console=hvc0 rootwait root=/dev/nvme0n1" -device nvme,bus=pcie.3,addr=0x0,drive=drive0,serial=1234 -drive file=output/images/rootfs.ext2,if=none,id=drive0,format=raw,cache=none -device e1000e,netdev=net0,mac=C0:FF:EE:00:01:03,bus=pcie.1,addr=0x0 -netdev user,id=net0 -serial mon:stdio -nographic # qemu_ppc64le_powernv8_defconfig The login prompt will appear in the terminal window. diff --git a/board/qemu/start-qemu.sh.in b/board/qemu/start-qemu.sh.in new file mode 100644 index 000000000000..38024b449e78 --- /dev/null +++ b/board/qemu/start-qemu.sh.in @@ -0,0 +1,28 @@ +#!/bin/sh + +BINARIES_DIR="${0%/*}/" +# shellcheck disable=SC2164 +cd "${BINARIES_DIR}" + +mode_serial=false +mode_sys_qemu=false +while [ "$1" ]; do + case "$1" in + --serial-only|serial-only) mode_serial=true; shift;; + --use-system-qemu) mode_sys_qemu=true; shift;; + --) shift; break;; + *) echo "unknown option: $1" >&2; exit 1;; + esac +done + +if ${mode_serial}; then + EXTRA_ARGS='@SERIAL_ARGS@' +else + EXTRA_ARGS='@DEFAULT_ARGS@' +fi + +if ! ${mode_sys_qemu}; then + export PATH="@HOST_DIR@/bin:${PATH}" +fi + +exec @QEMU_CMD_LINE@ ${EXTRA_ARGS} "$@" diff --git a/board/radxa/rock5b/boot.cmd b/board/radxa/rock5b/boot.cmd new file mode 100644 index 000000000000..9a3e73e00366 --- /dev/null +++ b/board/radxa/rock5b/boot.cmd @@ -0,0 +1,3 @@ +setenv bootargs root=/dev/mmcblk0p2 rw rootfstype=ext4 clkin_hz=(25000000) earlycon clk_ignore_unused earlyprintk console=ttyS2,1500000n8 rootwait +fatload mmc 1:1 ${loadaddr} image.itb +bootm ${loadaddr} diff --git a/board/radxa/rock5b/genimage.cfg b/board/radxa/rock5b/genimage.cfg new file mode 100644 index 000000000000..2943232fc355 --- /dev/null +++ b/board/radxa/rock5b/genimage.cfg @@ -0,0 +1,34 @@ +# SD card image for Radxa Rock 5b + +image boot.vfat { + vfat { + files = { + "image.itb", + "boot.scr" + } + } + size = 16M +} + +image sdcard.img { + hdimage { + partition-table-type = "hybrid" + } + + partition uboot { + in-partition-table = "false" + image = "u-boot-rockchip.bin" + offset = 32K + } + + partition boot { + partition-type = "0xC" + bootable = "true" + image = "boot.vfat" + } + + partition rootfs { + partition-type = 0x83 + image = "rootfs.ext2" + } +} diff --git a/board/radxa/rock5b/linux.fragment b/board/radxa/rock5b/linux.fragment new file mode 100644 index 000000000000..6d65cb7bb85d --- /dev/null +++ b/board/radxa/rock5b/linux.fragment @@ -0,0 +1,4 @@ +CONFIG_R8169=y +# Disable Rockchip specific WiFi drivers, as the kernel +# code cannot be build with GCC 12 due to several Werrors +# CONFIG_WL_ROCKCHIP is not set diff --git a/board/radxa/rock5b/patches/linux/0001-etherdevice-Adjust-ether_addr-prototypes-to-silence-.patch b/board/radxa/rock5b/patches/linux/0001-etherdevice-Adjust-ether_addr-prototypes-to-silence-.patch new file mode 100644 index 000000000000..5632c5a6272b --- /dev/null +++ b/board/radxa/rock5b/patches/linux/0001-etherdevice-Adjust-ether_addr-prototypes-to-silence-.patch @@ -0,0 +1,64 @@ +From 2618a0dae09ef37728dab89ff60418cbe25ae6bd Mon Sep 17 00:00:00 2001 +From: Kees Cook +Date: Sat, 12 Feb 2022 09:14:49 -0800 +Subject: etherdevice: Adjust ether_addr* prototypes to silence + -Wstringop-overead +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +With GCC 12, -Wstringop-overread was warning about an implicit cast from +char[6] to char[8]. However, the extra 2 bytes are always thrown away, +alignment doesn't matter, and the risk of hitting the edge of unallocated +memory has been accepted, so this prototype can just be converted to a +regular char *. Silences: + +net/core/dev.c: In function ‘bpf_prog_run_generic_xdp’: net/core/dev.c:4618:21: warning: ‘ether_addr_equal_64bits’ reading 8 bytes from a region of size 6 [-Wstringop-overread] + 4618 | orig_host = ether_addr_equal_64bits(eth->h_dest, > skb->dev->dev_addr); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +net/core/dev.c:4618:21: note: referencing argument 1 of type ‘const u8[8]’ {aka ‘const unsigned char[8]’} +net/core/dev.c:4618:21: note: referencing argument 2 of type ‘const u8[8]’ {aka ‘const unsigned char[8]’} +In file included from net/core/dev.c:91: include/linux/etherdevice.h:375:20: note: in a call to function ‘ether_addr_equal_64bits’ + 375 | static inline bool ether_addr_equal_64bits(const u8 addr1[6+2], + | ^~~~~~~~~~~~~~~~~~~~~~~ + +Reported-by: Marc Kleine-Budde +Tested-by: Marc Kleine-Budde +Link: https://lore.kernel.org/netdev/20220212090811.uuzk6d76agw2vv73@pengutronix.de +Cc: Jakub Kicinski +Cc: "David S. Miller" +Cc: netdev@vger.kernel.org +Signed-off-by: Kees Cook +Signed-off-by: David S. Miller +Upstream: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2618a0dae09ef37728dab89ff60418cbe25ae6bd +Signed-off-by: Kilian Zinnecker +--- + include/linux/etherdevice.h | 5 ++--- + 1 file changed, 2 insertions(+), 3 deletions(-) + +diff --git a/include/linux/etherdevice.h b/include/linux/etherdevice.h +index 2ad71cc90b37d..92b10e67d5f87 100644 +--- a/include/linux/etherdevice.h ++++ b/include/linux/etherdevice.h +@@ -134,7 +134,7 @@ static inline bool is_multicast_ether_addr(const u8 *addr) + #endif + } + +-static inline bool is_multicast_ether_addr_64bits(const u8 addr[6+2]) ++static inline bool is_multicast_ether_addr_64bits(const u8 *addr) + { + #if defined(CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS) && BITS_PER_LONG == 64 + #ifdef __BIG_ENDIAN +@@ -372,8 +372,7 @@ static inline bool ether_addr_equal(const u8 *addr1, const u8 *addr2) + * Please note that alignment of addr1 & addr2 are only guaranteed to be 16 bits. + */ + +-static inline bool ether_addr_equal_64bits(const u8 addr1[6+2], +- const u8 addr2[6+2]) ++static inline bool ether_addr_equal_64bits(const u8 *addr1, const u8 *addr2) + { + #if defined(CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS) && BITS_PER_LONG == 64 + u64 fold = (*(const u64 *)addr1) ^ (*(const u64 *)addr2); +-- +cgit + diff --git a/board/radxa/rock5b/patches/linux/0002-mm-page_alloc-fix-building-error-on-Werror-array-com.patch b/board/radxa/rock5b/patches/linux/0002-mm-page_alloc-fix-building-error-on-Werror-array-com.patch new file mode 100644 index 000000000000..10de6c72d3f9 --- /dev/null +++ b/board/radxa/rock5b/patches/linux/0002-mm-page_alloc-fix-building-error-on-Werror-array-com.patch @@ -0,0 +1,43 @@ +From ca831f29f8f25c97182e726429b38c0802200c8f Mon Sep 17 00:00:00 2001 +From: Xiongwei Song +Date: Fri, 14 Jan 2022 14:07:24 -0800 +Subject: mm: page_alloc: fix building error on -Werror=array-compare + +Arthur Marsh reported we would hit the error below when building kernel +with gcc-12: + + CC mm/page_alloc.o + mm/page_alloc.c: In function `mem_init_print_info': + mm/page_alloc.c:8173:27: error: comparison between two arrays [-Werror=array-compare] + 8173 | if (start <= pos && pos < end && size > adj) \ + | + +In C++20, the comparision between arrays should be warned. + +Link: https://lkml.kernel.org/r/20211125130928.32465-1-sxwjean@me.com +Signed-off-by: Xiongwei Song +Reported-by: Arthur Marsh +Signed-off-by: Andrew Morton +Signed-off-by: Linus Torvalds +Upstream: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ca831f29f8f25c97182e726429b38c0802200c8f +Signed-off-by: Kilian Zinnecker +--- + mm/page_alloc.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/mm/page_alloc.c b/mm/page_alloc.c +index 806f317c2e7e2..c4ef450ac4428 100644 +--- a/mm/page_alloc.c ++++ b/mm/page_alloc.c +@@ -8228,7 +8228,7 @@ void __init mem_init_print_info(void) + */ + #define adj_init_size(start, end, size, pos, adj) \ + do { \ +- if (start <= pos && pos < end && size > adj) \ ++ if (&start[0] <= &pos[0] && &pos[0] < &end[0] && size > adj) \ + size -= adj; \ + } while (0) + +-- +cgit + diff --git a/board/radxa/rock5b/post-image.sh b/board/radxa/rock5b/post-image.sh new file mode 100755 index 000000000000..c706a5ee7872 --- /dev/null +++ b/board/radxa/rock5b/post-image.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env bash +set -e + +gzip -fk "${BINARIES_DIR}/Image" +cp board/radxa/rock5b/rock5b.its "${BINARIES_DIR}" +(cd "${BINARIES_DIR}" && mkimage -f rock5b.its image.itb) +support/scripts/genimage.sh -c board/radxa/rock5b/genimage.cfg diff --git a/board/radxa/rock5b/readme.txt b/board/radxa/rock5b/readme.txt new file mode 100644 index 000000000000..f02f3d380e42 --- /dev/null +++ b/board/radxa/rock5b/readme.txt @@ -0,0 +1,82 @@ +RADXA ROCK 5B +============== +https://wiki.radxa.com/Rock5/hardware/5b + +Build: +====== + $ make rock5b_defconfig + $ make + +Files created in output directory +================================= + +output/images +. +├── Image +├── Image.gz +├── boot.scr +├── boot.vfat +├── image.itb +├── rk3588-rock-5b.dtb +├── rk3588_bl31_v1.40.elf +├── rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.12.bin +├── rock5b.its +├── rootfs.ext2 +├── rootfs.ext4 +├── rootfs.tar +├── sdcard.img +├── u-boot-rockchip.bin +└── u-boot.bin + +Creating bootable SD card: +========================== + +Simply invoke (as root) + +sudo dd if=output/images/sdcard.img of=/dev/sdX && sync + +Where X is your SD card device. + +Booting: +======== + +Serial console: +--------------- +The Rock 5B has a 40-pin GPIO header. Its layout can be seen here: +https://wiki.radxa.com/Rock5/hardware/5b/gpio + +The Uart pins are as follows: + +pin 6: gnd +pin 8: tx +pin 10: rx + +Baudrate for this board is 1500000. + +Login: +------ +Enter 'root' as login user, and the prompt is ready. + +wiki link: +---------- +https://forum.radxa.com/c/rock5 + +Issues: +======= + +The custom Radxa kernel provides custom code to support WiFi. However, +that code does not compile with GCC 12, which is the current default +version in buildroot. Hence, the WiFi kernel drivers are disabled, until +the issues get fixed (if ever). If they are desperately needed, one may +apply the following workaround, as long as buildroot still supports GCC +version 11: + +1. Set GCC version 11, by adding the following line to +configs/rock5b_defconfig: + +BR2_GCC_VERSION_11_X=y + +2. Re-enable custom WiFi drivers by removing the following line from +board/radxa/rock5b/linux.fragment: + +# CONFIG_WL_ROCKCHIP is not set diff --git a/board/radxa/rock5b/rock5b.its b/board/radxa/rock5b/rock5b.its new file mode 100644 index 000000000000..d73659a56e38 --- /dev/null +++ b/board/radxa/rock5b/rock5b.its @@ -0,0 +1,46 @@ +/dts-v1/; + +/ { + description = "Rock 5B FIT Image"; + #address-cells = <1>; + + images { + kernel { + description = "Kernel"; + data = /incbin/("Image.gz"); + type = "kernel"; + arch = "arm64"; + os = "linux"; + compression = "gzip"; + load = <0x0a200000>; + entry = <0x0a200000>; + hash { + algo = "sha256"; + }; + }; + fdt { + description = "Device Tree"; + data = /incbin/("rk3588-rock-5b.dtb"); + type = "flat_dt"; + arch = "arm64"; + compression = "none"; + load = <0x0e000000>; + entry = <0x0e000000>; + hash { + algo = "sha256"; + }; + }; + }; + + configurations { + default = "standard"; + standard { + description = "Standard Boot"; + kernel = "kernel"; + fdt = "fdt"; + hash { + algo = "sha256"; + }; + }; + }; +}; diff --git a/board/raspberrypi/config_0w.txt b/board/raspberrypi/config_0w.txt index 195bad449e8b..bc59d5fad2ef 100644 --- a/board/raspberrypi/config_0w.txt +++ b/board/raspberrypi/config_0w.txt @@ -26,4 +26,4 @@ gpu_mem_1024=100 dtoverlay=miniuart-bt # enable autoprobing of Bluetooth driver without need of hciattach/btattach -dtoverlay=krnbt=on +dtparam=krnbt=on diff --git a/board/raspberrypi/config_3.txt b/board/raspberrypi/config_3.txt index 195bad449e8b..bc59d5fad2ef 100644 --- a/board/raspberrypi/config_3.txt +++ b/board/raspberrypi/config_3.txt @@ -26,4 +26,4 @@ gpu_mem_1024=100 dtoverlay=miniuart-bt # enable autoprobing of Bluetooth driver without need of hciattach/btattach -dtoverlay=krnbt=on +dtparam=krnbt=on diff --git a/board/raspberrypi/config_3_64bit.txt b/board/raspberrypi/config_3_64bit.txt index 34412fa9e82b..667287112573 100644 --- a/board/raspberrypi/config_3_64bit.txt +++ b/board/raspberrypi/config_3_64bit.txt @@ -26,7 +26,7 @@ gpu_mem_1024=100 dtoverlay=miniuart-bt # enable autoprobing of Bluetooth driver without need of hciattach/btattach -dtoverlay=krnbt=on +dtparam=krnbt=on # enable 64bits support arm_64bit=1 diff --git a/board/raspberrypi/config_4.txt b/board/raspberrypi/config_4.txt index ea02d3f07130..74a7b270cdf5 100644 --- a/board/raspberrypi/config_4.txt +++ b/board/raspberrypi/config_4.txt @@ -26,4 +26,4 @@ gpu_mem_1024=100 dtoverlay=miniuart-bt # enable autoprobing of Bluetooth driver without need of hciattach/btattach -dtoverlay=krnbt=on +dtparam=krnbt=on diff --git a/board/raspberrypi/config_4_64bit.txt b/board/raspberrypi/config_4_64bit.txt index 41c7e97e99b2..a4ae327d2a2d 100644 --- a/board/raspberrypi/config_4_64bit.txt +++ b/board/raspberrypi/config_4_64bit.txt @@ -26,11 +26,7 @@ gpu_mem_1024=100 dtoverlay=miniuart-bt # enable autoprobing of Bluetooth driver without need of hciattach/btattach -dtoverlay=krnbt=on - -dtoverlay=vc4-kms-v3d-pi4 -dtoverlay=imx219 -#dtoverlay=ov5647 +dtparam=krnbt=on # enable 64bits support arm_64bit=1 diff --git a/board/raspberrypi/config_zero2w.txt b/board/raspberrypi/config_zero2w.txt index 9e6b7f5ccfd7..55095f64a7df 100644 --- a/board/raspberrypi/config_zero2w.txt +++ b/board/raspberrypi/config_zero2w.txt @@ -26,4 +26,4 @@ gpu_mem_1024=100 dtoverlay=miniuart-bt # enable autoprobing of Bluetooth driver without need of hciattach/btattach -dtoverlay=krnbt=on +dtparam=krnbt=on diff --git a/board/raspberrypi/genimage-raspberrypi.cfg b/board/raspberrypi/genimage-raspberrypi.cfg deleted file mode 100644 index 04be16cce67e..000000000000 --- a/board/raspberrypi/genimage-raspberrypi.cfg +++ /dev/null @@ -1,33 +0,0 @@ -image boot.vfat { - vfat { - files = { - "bcm2708-rpi-b.dtb", - "bcm2708-rpi-b-plus.dtb", - "bcm2708-rpi-cm.dtb", - "rpi-firmware/bootcode.bin", - "rpi-firmware/cmdline.txt", - "rpi-firmware/config.txt", - "rpi-firmware/fixup.dat", - "rpi-firmware/start.elf", - "zImage" - } - } - - size = 32M -} - -image sdcard.img { - hdimage { - } - - partition boot { - partition-type = 0xC - bootable = "true" - image = "boot.vfat" - } - - partition rootfs { - partition-type = 0x83 - image = "rootfs.ext4" - } -} diff --git a/board/raspberrypi/genimage-raspberrypi0.cfg b/board/raspberrypi/genimage-raspberrypi0.cfg deleted file mode 100644 index 1fa3f5096fd9..000000000000 --- a/board/raspberrypi/genimage-raspberrypi0.cfg +++ /dev/null @@ -1,31 +0,0 @@ -image boot.vfat { - vfat { - files = { - "bcm2708-rpi-zero.dtb", - "rpi-firmware/bootcode.bin", - "rpi-firmware/cmdline.txt", - "rpi-firmware/config.txt", - "rpi-firmware/fixup.dat", - "rpi-firmware/start.elf", - "zImage" - } - } - - size = 32M -} - -image sdcard.img { - hdimage { - } - - partition boot { - partition-type = 0xC - bootable = "true" - image = "boot.vfat" - } - - partition rootfs { - partition-type = 0x83 - image = "rootfs.ext4" - } -} diff --git a/board/raspberrypi/genimage-raspberrypi0w.cfg b/board/raspberrypi/genimage-raspberrypi0w.cfg deleted file mode 100644 index de7652f99ea9..000000000000 --- a/board/raspberrypi/genimage-raspberrypi0w.cfg +++ /dev/null @@ -1,32 +0,0 @@ -image boot.vfat { - vfat { - files = { - "bcm2708-rpi-zero-w.dtb", - "rpi-firmware/bootcode.bin", - "rpi-firmware/cmdline.txt", - "rpi-firmware/config.txt", - "rpi-firmware/fixup.dat", - "rpi-firmware/start.elf", - "rpi-firmware/overlays", - "zImage" - } - } - - size = 32M -} - -image sdcard.img { - hdimage { - } - - partition boot { - partition-type = 0xC - bootable = "true" - image = "boot.vfat" - } - - partition rootfs { - partition-type = 0x83 - image = "rootfs.ext4" - } -} diff --git a/board/raspberrypi/genimage-raspberrypi2.cfg b/board/raspberrypi/genimage-raspberrypi2.cfg deleted file mode 100644 index acd23e7ca8f5..000000000000 --- a/board/raspberrypi/genimage-raspberrypi2.cfg +++ /dev/null @@ -1,31 +0,0 @@ -image boot.vfat { - vfat { - files = { - "bcm2709-rpi-2-b.dtb", - "rpi-firmware/bootcode.bin", - "rpi-firmware/cmdline.txt", - "rpi-firmware/config.txt", - "rpi-firmware/fixup.dat", - "rpi-firmware/start.elf", - "zImage" - } - } - - size = 32M -} - -image sdcard.img { - hdimage { - } - - partition boot { - partition-type = 0xC - bootable = "true" - image = "boot.vfat" - } - - partition rootfs { - partition-type = 0x83 - image = "rootfs.ext4" - } -} diff --git a/board/raspberrypi/genimage-raspberrypi3-64.cfg b/board/raspberrypi/genimage-raspberrypi3-64.cfg deleted file mode 100644 index 8cbcd91638cb..000000000000 --- a/board/raspberrypi/genimage-raspberrypi3-64.cfg +++ /dev/null @@ -1,34 +0,0 @@ -image boot.vfat { - vfat { - files = { - "bcm2710-rpi-3-b.dtb", - "bcm2710-rpi-3-b-plus.dtb", - "bcm2837-rpi-3-b.dtb", - "rpi-firmware/bootcode.bin", - "rpi-firmware/cmdline.txt", - "rpi-firmware/config.txt", - "rpi-firmware/fixup.dat", - "rpi-firmware/start.elf", - "rpi-firmware/overlays", - "Image" - } - } - - size = 32M -} - -image sdcard.img { - hdimage { - } - - partition boot { - partition-type = 0xC - bootable = "true" - image = "boot.vfat" - } - - partition rootfs { - partition-type = 0x83 - image = "rootfs.ext4" - } -} diff --git a/board/raspberrypi/genimage-raspberrypi3.cfg b/board/raspberrypi/genimage-raspberrypi3.cfg deleted file mode 100644 index a617823379ef..000000000000 --- a/board/raspberrypi/genimage-raspberrypi3.cfg +++ /dev/null @@ -1,34 +0,0 @@ -image boot.vfat { - vfat { - files = { - "bcm2710-rpi-3-b.dtb", - "bcm2710-rpi-3-b-plus.dtb", - "bcm2710-rpi-cm3.dtb", - "rpi-firmware/bootcode.bin", - "rpi-firmware/cmdline.txt", - "rpi-firmware/config.txt", - "rpi-firmware/fixup.dat", - "rpi-firmware/start.elf", - "rpi-firmware/overlays", - "zImage" - } - } - - size = 32M -} - -image sdcard.img { - hdimage { - } - - partition boot { - partition-type = 0xC - bootable = "true" - image = "boot.vfat" - } - - partition rootfs { - partition-type = 0x83 - image = "rootfs.ext4" - } -} diff --git a/board/raspberrypi/genimage-raspberrypi4-64.cfg b/board/raspberrypi/genimage-raspberrypi4-64.cfg deleted file mode 100644 index 3ae938db203b..000000000000 --- a/board/raspberrypi/genimage-raspberrypi4-64.cfg +++ /dev/null @@ -1,31 +0,0 @@ -image boot.vfat { - vfat { - files = { - "bcm2711-rpi-4-b.dtb", - "rpi-firmware/cmdline.txt", - "rpi-firmware/config.txt", - "rpi-firmware/fixup4.dat", - "rpi-firmware/start4.elf", - "rpi-firmware/overlays", - "Image" - } - } - - size = 32M -} - -image sdcard.img { - hdimage { - } - - partition boot { - partition-type = 0xC - bootable = "true" - image = "boot.vfat" - } - - partition rootfs { - partition-type = 0x83 - image = "rootfs.ext4" - } -} diff --git a/board/raspberrypi/genimage-raspberrypi4.cfg b/board/raspberrypi/genimage-raspberrypi4.cfg deleted file mode 100644 index 2e578ad5564a..000000000000 --- a/board/raspberrypi/genimage-raspberrypi4.cfg +++ /dev/null @@ -1,31 +0,0 @@ -image boot.vfat { - vfat { - files = { - "bcm2711-rpi-4-b.dtb", - "rpi-firmware/cmdline.txt", - "rpi-firmware/config.txt", - "rpi-firmware/fixup4.dat", - "rpi-firmware/start4.elf", - "rpi-firmware/overlays", - "zImage" - } - } - - size = 32M -} - -image sdcard.img { - hdimage { - } - - partition boot { - partition-type = 0xC - bootable = "true" - image = "boot.vfat" - } - - partition rootfs { - partition-type = 0x83 - image = "rootfs.ext4" - } -} diff --git a/board/raspberrypi/genimage-raspberrypicm4io-64.cfg b/board/raspberrypi/genimage-raspberrypicm4io-64.cfg deleted file mode 100644 index 73d31a57ba0a..000000000000 --- a/board/raspberrypi/genimage-raspberrypicm4io-64.cfg +++ /dev/null @@ -1,31 +0,0 @@ -image boot.vfat { - vfat { - files = { - "bcm2711-rpi-cm4.dtb", - "rpi-firmware/cmdline.txt", - "rpi-firmware/config.txt", - "rpi-firmware/fixup4.dat", - "rpi-firmware/start4.elf", - "rpi-firmware/overlays", - "Image" - } - } - - size = 32M -} - -image sdcard.img { - hdimage { - } - - partition boot { - partition-type = 0xC - bootable = "true" - image = "boot.vfat" - } - - partition rootfs { - partition-type = 0x83 - image = "rootfs.ext4" - } -} diff --git a/board/raspberrypi/genimage-raspberrypicm4io.cfg b/board/raspberrypi/genimage-raspberrypicm4io.cfg deleted file mode 100644 index 4d09b03556a2..000000000000 --- a/board/raspberrypi/genimage-raspberrypicm4io.cfg +++ /dev/null @@ -1,31 +0,0 @@ -image boot.vfat { - vfat { - files = { - "bcm2711-rpi-cm4.dtb", - "rpi-firmware/cmdline.txt", - "rpi-firmware/config.txt", - "rpi-firmware/fixup4.dat", - "rpi-firmware/start4.elf", - "rpi-firmware/overlays", - "zImage" - } - } - - size = 32M -} - -image sdcard.img { - hdimage { - } - - partition boot { - partition-type = 0xC - bootable = "true" - image = "boot.vfat" - } - - partition rootfs { - partition-type = 0x83 - image = "rootfs.ext4" - } -} diff --git a/board/raspberrypi/genimage-raspberrypizero2w.cfg b/board/raspberrypi/genimage-raspberrypizero2w.cfg deleted file mode 100644 index b510fea5636e..000000000000 --- a/board/raspberrypi/genimage-raspberrypizero2w.cfg +++ /dev/null @@ -1,32 +0,0 @@ -image boot.vfat { - vfat { - files = { - "bcm2710-rpi-zero-2-w.dtb", - "rpi-firmware/bootcode.bin", - "rpi-firmware/cmdline.txt", - "rpi-firmware/config.txt", - "rpi-firmware/fixup.dat", - "rpi-firmware/start.elf", - "rpi-firmware/overlays", - "zImage" - } - } - - size = 32M -} - -image sdcard.img { - hdimage { - } - - partition boot { - partition-type = 0xC - bootable = "true" - image = "boot.vfat" - } - - partition rootfs { - partition-type = 0x83 - image = "rootfs.ext4" - } -} diff --git a/board/raspberrypi/genimage.cfg.in b/board/raspberrypi/genimage.cfg.in new file mode 100644 index 000000000000..fd38b86a0cfe --- /dev/null +++ b/board/raspberrypi/genimage.cfg.in @@ -0,0 +1,25 @@ +image boot.vfat { + vfat { + files = { +#BOOT_FILES# + } + } + + size = 32M +} + +image sdcard.img { + hdimage { + } + + partition boot { + partition-type = 0xC + bootable = "true" + image = "boot.vfat" + } + + partition rootfs { + partition-type = 0x83 + image = "rootfs.ext4" + } +} diff --git a/board/raspberrypi/post-build.sh b/board/raspberrypi/post-build.sh index 5e5eb7110076..0bd7bc3d1711 100755 --- a/board/raspberrypi/post-build.sh +++ b/board/raspberrypi/post-build.sh @@ -8,4 +8,12 @@ if [ -e ${TARGET_DIR}/etc/inittab ]; then grep -qE '^tty1::' ${TARGET_DIR}/etc/inittab || \ sed -i '/GENERIC_SERIAL/a\ tty1::respawn:/sbin/getty -L tty1 0 vt100 # HDMI console' ${TARGET_DIR}/etc/inittab +# systemd doesn't use /etc/inittab, enable getty.tty1.service instead +elif [ -d ${TARGET_DIR}/etc/systemd ]; then + mkdir -p "${TARGET_DIR}/etc/systemd/system/getty.target.wants" + ln -sf /lib/systemd/system/getty@.service \ + "${TARGET_DIR}/etc/systemd/system/getty.target.wants/getty@tty1.service" fi + +# ensure overlays exists for genimage +mkdir -p "${BINARIES_DIR}/rpi-firmware/overlays" diff --git a/board/raspberrypi/post-image.sh b/board/raspberrypi/post-image.sh index 6cad20fb9e5b..9b9eac972bac 100755 --- a/board/raspberrypi/post-image.sh +++ b/board/raspberrypi/post-image.sh @@ -7,6 +7,23 @@ BOARD_NAME="$(basename ${BOARD_DIR})" GENIMAGE_CFG="${BOARD_DIR}/genimage-${BOARD_NAME}.cfg" GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp" +# generate genimage from template if a board specific variant doesn't exists +if [ ! -e "${GENIMAGE_CFG}" ]; then + GENIMAGE_CFG="${BINARIES_DIR}/genimage.cfg" + FILES=() + + for i in "${BINARIES_DIR}"/*.dtb "${BINARIES_DIR}"/rpi-firmware/*; do + FILES+=( "${i#${BINARIES_DIR}/}" ) + done + + KERNEL=$(sed -n 's/^kernel=//p' "${BINARIES_DIR}/rpi-firmware/config.txt") + FILES+=( "${KERNEL}" ) + + BOOT_FILES=$(printf '\\t\\t\\t"%s",\\n' "${FILES[@]}") + sed "s|#BOOT_FILES#|${BOOT_FILES}|" "${BOARD_DIR}/genimage.cfg.in" \ + > "${GENIMAGE_CFG}" +fi + # Pass an empty rootpath. genimage makes a full copy of the given rootpath to # ${GENIMAGE_TMP}/root so passing TARGET_DIR would be a waste of time and disk # space. We don't rely on genimage to build the rootfs image, just to insert a diff --git a/board/raspberrypi/readme.txt b/board/raspberrypi/readme.txt index c81fd801aede..21a136eb8326 100644 --- a/board/raspberrypi/readme.txt +++ b/board/raspberrypi/readme.txt @@ -17,8 +17,8 @@ How to build it Configure Buildroot ------------------- -There are two RaspberryPi defconfig files in Buildroot, one for each -major variant, which you should base your work on: +There are several Raspberry Pi defconfig files in Buildroot, one for +each major variant, which you should base your work on: For models A, B, A+ or B+: @@ -133,7 +133,7 @@ How to write to CM4 eMMC memory =============================== For CM4 modules without eMMC memory see above for booting from SD card, -for CM4 moduels with eMMC memory proceed as following: +for CM4 modules with eMMC memory proceed as following: - fit jumper on IO Board header J2 to disable eMMC boot - connect IO Board micro USB port (J11 USB slave) to your host linux system diff --git a/board/sifive/hifive-unleashed/genimage_sdcard.cfg b/board/sifive/hifive-unleashed/genimage_sdcard.cfg index 079ac5ed2625..99e3525a8cf4 100644 --- a/board/sifive/hifive-unleashed/genimage_sdcard.cfg +++ b/board/sifive/hifive-unleashed/genimage_sdcard.cfg @@ -17,6 +17,7 @@ image sdcard.img { partition rootfs { image = "rootfs.ext4" + offset = 4076K partition-type-uuid = 0fc63daf-8483-4772-8e79-3d69d8477de4 bootable = true } diff --git a/board/sifive/hifive-unleashed/readme.txt b/board/sifive/hifive-unleashed/readme.txt index 3263913e9c59..e9ccb26fa619 100644 --- a/board/sifive/hifive-unleashed/readme.txt +++ b/board/sifive/hifive-unleashed/readme.txt @@ -113,3 +113,20 @@ Booting the SPI flash on the board Make sure that the all DIP switches are set to the off position for default boot mode (MSEL mode = 0110) to boot from SPI flash. + +Testing under QEMU +================== + +The SD card image can be tested using QEMU: + +$ qemu-system-riscv64 -M sifive_u,msel=11 -smp 5 -m 8G \ + -display none -serial stdio -nic user \ + -bios output/images/u-boot-spl.bin \ + -drive file=output/images/sdcard.img,if=sd + +The SPI flash image can be tested with a slightly different command: + +$ qemu-system-riscv64 -M sifive_u,msel=6 -smp 5 -m 8G \ + -display none -serial stdio -nic user \ + -bios output/images/u-boot-spl.bin \ + -drive file=output/images/spi-nor.img,if=mtd diff --git a/board/sipeed/licheepi_nano/genimage.cfg b/board/sipeed/licheepi_nano/genimage.cfg new file mode 100644 index 000000000000..5e398eeb210f --- /dev/null +++ b/board/sipeed/licheepi_nano/genimage.cfg @@ -0,0 +1,33 @@ +flash w25q128 { + pebsize = 65536 + numpebs = 256 + minimum-io-unit-size = 1 + sub-page-size = 1 + vid-header-offset = 64 +} + +image flash.bin { + flash {} + flashtype = w25q128 + + partition uboot { + image = "u-boot-sunxi-with-spl.bin" + size = 512K + } + + partition dtb { + image = "suniv-f1c100s-licheepi-nano.dtb" + size = 64K + } + + partition zimage { + image = "zImage" + size = 5M + } + + partition rootfs { + image = "rootfs.jffs2" + size = 0 + } +} + diff --git a/board/sipeed/licheepi_nano/linux.fragment b/board/sipeed/licheepi_nano/linux.fragment new file mode 100644 index 000000000000..af68f2816757 --- /dev/null +++ b/board/sipeed/licheepi_nano/linux.fragment @@ -0,0 +1,11 @@ +# CONFIG_NET is not set +# CONFIG_DRM is not set +# CONFIG_CMA is not set +# CONFIG_ARCH_MULTI_V7 is not set +CONFIG_UEVENT_HELPER=y +CONFIG_MTD=y +CONFIG_MTD_BLOCK=y +CONFIG_MTD_SPI_NOR=y +# CONFIG_MTD_SPI_NOR_USE_4K_SECTORS is not set +CONFIG_MTD_CMDLINE_PARTS=y +CONFIG_JFFS2_FS=y diff --git a/board/sipeed/licheepi_nano/readme.txt b/board/sipeed/licheepi_nano/readme.txt new file mode 100644 index 000000000000..1f1f8ef17db0 --- /dev/null +++ b/board/sipeed/licheepi_nano/readme.txt @@ -0,0 +1,84 @@ +Intro +===== + +This directory contains a buildroot configuration for building a +LicheePi Nano image which can be flashed into the board. + +This frees the MMC port which can be used for an additional SD +card of for a WiFi adapter. + +How to build it +=============== + +Configure Buildroot +------------------- + + $ make sipeed_licheepi_nano_defconfig + +Build the rootfs +---------------- + +Note: you will need to have access to the network, since Buildroot +will download the packages' sources. + +You may now build your rootfs with: + + $ make + +(This may take a while, consider getting yourself a coffee ;-) ) + +Result of the build +------------------- + +After building, you should obtain this tree: + + output/images/ + +-- flash.bin + +-- rootfs.jffs2 + +-- rootfs.tar + +-- suniv-f1c100s-licheepi-nano.dtb + +-- u-boot.bin + +-- u-boot-sunxi-with-spl.bin + `-- zImage + +How to flash +============ + +Once the build process is finished you will have an image called +"flash.bin" in the output/images/ directory. It contains the +bootloader, the device tree, the kernel and the root file system. + +The device can be flashed when it is in special mode called "FEL +mode". There are multiple ways to enter this mode described here: +https://linux-sunxi.org/FEL#Entering_FEL_mode + +One way is to write one file from sunxi-tools to a SD card with: + + $ sudo dd if=./output/build/host-sunxi-tools-*/bin/fel-sdboot.sunxi of=/dev/sdX bs=1024 seek=8 + +Once the SD card is burned, insert it into your LicheePi Nano board, +and plug the USB cable. A new USB device should be visible with +lsusb: + + 1f3a:efe8 Allwinner Technology sunxi SoC OTG connector in FEL/flashing mode + +The image can be flashed with: + + $ sudo ./output/host/bin/sunxi-fel -p spiflash-write 0 output/images/flash.bin + +Once this completes, remove the SD card and power the board. Your +new system should come up now and start a console on the UART0 +serial port. + +Note +==== + +Some standard kernel features are disabled using the fragment in +order to reduce the size. They can be enabled again if other +features are disabled instead. + +For U-Boot, the upstream repository is preferred and the system +boots, but loading the image from the flash takes a long time. It +is much faster when using the branch "licheepi-nano-v2020.01" of +this fork: +https://github.com/florpor/u-boot diff --git a/board/sipeed/licheepi_nano/uboot.fragment b/board/sipeed/licheepi_nano/uboot.fragment new file mode 100644 index 000000000000..39f2bfe742dc --- /dev/null +++ b/board/sipeed/licheepi_nano/uboot.fragment @@ -0,0 +1,3 @@ +CONFIG_USE_BOOTARGS=y +CONFIG_BOOTARGS="console=tty0 console=ttyS0,115200 panic=5 rootwait root=/dev/mtdblock3 rw rootfstype=jffs2 mtdparts=spi0.0:512k(uboot)ro,64k(dtb),5M(kernel)ro,-(rootfs)" +CONFIG_BOOTCOMMAND="sf probe 0 50000000; sf read 0x80C00000 0x80000 0x4000; sf read 0x80008000 0x90000 0x500000; bootz 0x80008000 - 0x80C00000" diff --git a/board/licheepi/boot.cmd b/board/sipeed/licheepi_zero/boot.cmd similarity index 100% rename from board/licheepi/boot.cmd rename to board/sipeed/licheepi_zero/boot.cmd diff --git a/board/licheepi/genimage.cfg b/board/sipeed/licheepi_zero/genimage.cfg similarity index 100% rename from board/licheepi/genimage.cfg rename to board/sipeed/licheepi_zero/genimage.cfg diff --git a/board/sipeed/licheepi_zero/readme.txt b/board/sipeed/licheepi_zero/readme.txt new file mode 100644 index 000000000000..2f122125b7e8 --- /dev/null +++ b/board/sipeed/licheepi_zero/readme.txt @@ -0,0 +1,62 @@ +Intro +===== + +This directory contains a buildroot configuration for building a +LicheePi Zero. + +How to build it +=============== + +Configure Buildroot +------------------- + + $ make sipeed_licheepi_zero_defconfig + +Build the rootfs +---------------- + +Note: you will need to have access to the network, since Buildroot +will download the packages' sources. + +You may now build your rootfs with: + + $ make + +(This may take a while, consider getting yourself a coffee ;-) ) + +Result of the build +------------------- + +After building, you should obtain this tree: + + output/images/ + +-- boot.scr + +-- boot.vfat + +-- rootfs.ext2 + +-- rootfs.ext4 -> rootfs.ext2 + +-- rootfs.tar + +-- sdcard.img + +-- sun8i-v3s-licheepi-zero-dock.dtb + +-- sun8i-v3s-licheepi-zero.dtb + +-- u-boot.bin + +-- u-boot-sunxi-with-spl.bin + `-- zImage + +How to write the SD card +======================== + +Once the build process is finished you will have an image called +"sdcard.img" in the output/images/ directory. + +Copy the bootable "sdcard.img" onto an SD card with "dd": + + $ sudo dd if=output/images/sdcard.img of=/dev/sdX + +Alternatively, you can use the Etcher graphical tool to burn the image +to the SD card safely and on any platform: + +https://etcher.io/ + +Once the SD card is burned, insert it into your LicheePi Zero board, +and power it up. Your new system should come up now and start a +console on the UART0 serial port. diff --git a/board/spike/riscv64/linux.fragment b/board/spike/riscv64/linux.fragment new file mode 100644 index 000000000000..b443b0ab364f --- /dev/null +++ b/board/spike/riscv64/linux.fragment @@ -0,0 +1,3 @@ +CONFIG_RISCV_SBI_V01=y +CONFIG_HVC_RISCV_SBI=y +CONFIG_SERIAL_EARLYCON_RISCV_SBI=y diff --git a/board/stmicroelectronics/common/stm32f4xx/busybox.fragment b/board/stmicroelectronics/common/stm32f4xx/busybox.fragment new file mode 100644 index 000000000000..d0bf2cb99dbb --- /dev/null +++ b/board/stmicroelectronics/common/stm32f4xx/busybox.fragment @@ -0,0 +1,21 @@ +# CONFIG_FEATURE_HWIB is not set +# CONFIG_HOSTNAME is not set +# CONFIG_DNSDOMAINNAME is not set +# CONFIG_FEATURE_HTTPD_PORT_DEFAULT is not set +# CONFIG_IFCONFIG is not set +# CONFIG_FEATURE_IFCONFIG_HW is not set +# CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS is not set +# CONFIG_IFUP is not set +# CONFIG_IFDOWN is not set +# CONFIG_IP is not set +# CONFIG_IPADDR is not set +# CONFIG_IPLINK is not set +# CONFIG_IPROUTE is not set +# CONFIG_NC is not set +# CONFIG_NETSTAT is not set +# CONFIG_PING is not set +# CONFIG_ROUTE is not set +# CONFIG_TC is not set +# CONFIG_TELNET is not set +# CONFIG_WGET is not set +# CONFIG_UDHCPC is not set diff --git a/board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh b/board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh index e324afe59a98..4fcce6150071 100755 --- a/board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh +++ b/board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh @@ -1,8 +1,7 @@ #!/bin/sh +# Busybox is built without network support +sed -i '/hostname/d' ${TARGET_DIR}/etc/inittab + # Kernel is built without devpts support sed -i '/^devpts/d' ${TARGET_DIR}/etc/fstab - -# Kernel is built without network support -rm -f ${TARGET_DIR}/etc/init.d/S40network -rm -rf ${TARGET_DIR}/etc/network/ diff --git a/board/stmicroelectronics/common/stm32mp157/post-image.sh b/board/stmicroelectronics/common/stm32mp157/post-image.sh index 363c3127cfc5..65809e46a4e7 100755 --- a/board/stmicroelectronics/common/stm32mp157/post-image.sh +++ b/board/stmicroelectronics/common/stm32mp157/post-image.sh @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/bin/sh -eu # # atf_image extracts the ATF binary image from DTB_FILE_NAME that appears in @@ -8,22 +8,18 @@ # atf_image() { - local ATF_VARIABLES="$(sed -n 's/^BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="\([\/a-zA-Z0-9_=. \-]*\)"$/\1/p' ${BR2_CONFIG})" - - if grep -Eq "DTB_FILE_NAME=stm32mp157c-dk2.dtb" <<< ${ATF_VARIABLES}; then - echo "tf-a-stm32mp157c-dk2.stm32" - elif grep -Eq "DTB_FILE_NAME=stm32mp157a-dk1.dtb" <<< ${ATF_VARIABLES}; then - echo "tf-a-stm32mp157a-dk1.stm32" - elif grep -Eq "DTB_FILE_NAME=stm32mp157a-avenger96.dtb" <<< ${ATF_VARIABLES}; then - echo "tf-a-stm32mp157a-avenger96.stm32" - fi + ATF_VARIABLES="$(sed -n 's/^BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="\([\/a-zA-Z0-9_=. \-]*\)"$/\1/p' ${BR2_CONFIG})" + # make sure DTB_FILE_NAME is set + printf '%s\n' "${ATF_VARIABLES}" | grep -Eq 'DTB_FILE_NAME=[0-9A-Za-z_\-]*' + # extract the value + DTB_FILE_NAME="$(printf '%s\n' "${ATF_VARIABLES}" | sed 's/.*DTB_FILE_NAME=\([a-zA-Z0-9_\-]*\)\.dtb.*/\1/')" + echo "tf-a-${DTB_FILE_NAME}.stm32" } main() { - local ATFBIN="$(atf_image)" - local GENIMAGE_CFG="$(mktemp --suffix genimage.cfg)" - local GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp" + ATFBIN="$(atf_image)" + GENIMAGE_CFG="$(mktemp --suffix genimage.cfg)" sed -e "s/%ATFBIN%/${ATFBIN}/" \ board/stmicroelectronics/common/stm32mp157/genimage.cfg.template > ${GENIMAGE_CFG} diff --git a/board/stmicroelectronics/stm32f429-disco/linux.config b/board/stmicroelectronics/stm32f429-disco/linux.config index 7b5c60f18062..02d9c2d1e094 100644 --- a/board/stmicroelectronics/stm32f429-disco/linux.config +++ b/board/stmicroelectronics/stm32f429-disco/linux.config @@ -95,10 +95,6 @@ CONFIG_STM32_MDMA=y CONFIG_SYNC_FILE=y # CONFIG_VIRTIO_MENU is not set # CONFIG_VHOST_MENU is not set -CONFIG_IIO=y -CONFIG_IIO_BUFFER=y -CONFIG_IIO_TRIGGERED_BUFFER=y -CONFIG_IIO_STM32_TIMER_TRIGGER=y # CONFIG_FILE_LOCKING is not set # CONFIG_DNOTIFY is not set # CONFIG_INOTIFY_USER is not set diff --git a/board/stmicroelectronics/stm32f769-disco/extlinux.conf b/board/stmicroelectronics/stm32f769-disco/extlinux.conf new file mode 100644 index 000000000000..48483a01fc4e --- /dev/null +++ b/board/stmicroelectronics/stm32f769-disco/extlinux.conf @@ -0,0 +1,4 @@ +label stm32f769-disco-buildroot + kernel /zImage + devicetree /stm32f769-disco.dtb + append console=ttySTM0,115200 root=/dev/mmcblk0p2 rw rootfstype=ext2 rootwait earlyprintk consoleblank=0 ignore_loglevel diff --git a/board/stmicroelectronics/stm32f769-disco/flash_sd.sh b/board/stmicroelectronics/stm32f769-disco/flash_sd.sh new file mode 100755 index 000000000000..0ff3ae7dbfb3 --- /dev/null +++ b/board/stmicroelectronics/stm32f769-disco/flash_sd.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +OUTPUT_DIR=$1 + +if ! test -d "${OUTPUT_DIR}" ; then + echo "ERROR: no output directory specified." + echo "Usage: $0 OUTPUT_DIR" + exit 1 +fi + +"${OUTPUT_DIR}"/host/bin/openocd -f board/stm32f769i-disco.cfg \ + -c "init" \ + -c "reset init" \ + -c "flash probe 0" \ + -c "flash info 0" \ + -c "flash write_image erase ${OUTPUT_DIR}/images/u-boot.bin 0x08000000" \ + -c "reset run" \ + -c "shutdown" diff --git a/board/stmicroelectronics/stm32f769-disco/genimage.cfg b/board/stmicroelectronics/stm32f769-disco/genimage.cfg new file mode 100644 index 000000000000..41f9da512489 --- /dev/null +++ b/board/stmicroelectronics/stm32f769-disco/genimage.cfg @@ -0,0 +1,27 @@ +image boot.vfat { + vfat { + files = { + "zImage", + "stm32f769-disco.dtb", + "extlinux" + } + } + + size = 16M +} + +image sdcard.img { + hdimage { + } + + partition u-boot { + partition-type = 0xC + image = "boot.vfat" + } + + partition rootfs { + partition-type = 0x83 + image = "rootfs.ext2" + size = 32M + } +} diff --git a/board/stmicroelectronics/stm32f769-disco/linux-sd.fragment b/board/stmicroelectronics/stm32f769-disco/linux-sd.fragment new file mode 100644 index 000000000000..846229d0d468 --- /dev/null +++ b/board/stmicroelectronics/stm32f769-disco/linux-sd.fragment @@ -0,0 +1 @@ +# CONFIG_XIP_KERNEL is not set diff --git a/board/stmicroelectronics/stm32f769-disco/post-build.sh b/board/stmicroelectronics/stm32f769-disco/post-build.sh new file mode 100755 index 000000000000..c8cca3de8c9b --- /dev/null +++ b/board/stmicroelectronics/stm32f769-disco/post-build.sh @@ -0,0 +1,7 @@ +#!/bin/sh +BOARD_DIR="$(dirname "$0")" + +# Kernel is built without devpts support +sed -i '/^devpts/d' "${TARGET_DIR}"/etc/fstab + +install -m 0644 -D "${BOARD_DIR}"/extlinux.conf "${BINARIES_DIR}"/extlinux/extlinux.conf diff --git a/board/stmicroelectronics/stm32f769-disco/readme.txt b/board/stmicroelectronics/stm32f769-disco/readme.txt new file mode 100644 index 000000000000..8f4f79a86138 --- /dev/null +++ b/board/stmicroelectronics/stm32f769-disco/readme.txt @@ -0,0 +1,32 @@ +STM32F769 Discovery +=================== + +This tutorial describes how to use the predefined Buildroot +configuration for the STM32F769 Discovery evaluation platform. + +Building +-------- + + make stm32f769_disco_sd_defconfig + make + +Flashing +-------- + + ./board/stmicroelectronics/stm32f769-disco/flash_sd.sh output/ + +It will flash the U-boot bootloader. + +Creating SD card +---------------- + +Buildroot prepares an"sdcard.img" image in the output/images/ directory, +ready to be dumped on a SD card. Launch the following command as root: + + dd if=output/images/sdcard.img of=/dev/ + +*** WARNING! This will destroy all the card content. Use with care! *** + +For details about the medium image layout and its content, see the +definition in board/stmicroelectronics/stm32f769-disco/genimage.cfg. + diff --git a/board/synopsys/nsim/readme.txt b/board/synopsys/nsim/readme.txt new file mode 100644 index 000000000000..cc89cf87ac6f --- /dev/null +++ b/board/synopsys/nsim/readme.txt @@ -0,0 +1,43 @@ +How to build it +=============== + +Configure build for the selected nSIM target. For instance, for +ARC700 nSIM target use the following defauilt configuration: +$ make snps_arc700_nsim_defconfig + +Optionally modify the configuration: +$ make menuconfig + +Build: +$ make + +How to use it +============= + +Resulting image can be booted using ARC nSIM instruction set simulator. +Free version of nSIM is available for download: +- https://www.synopsys.com/cgi-bin/dwarcnsim/req1.cgi +It provides nsimdrv binary for Linux that can be used stand-alone +or with GDB. + +To run ARC700 image use the following command: +$ nsimdrv \ + -prop=nsim_mem-dev=uart0,kind=dwuart,base=0xf0000000,irq=24 \ + -prop=icache=32768,64,2,0 \ + -prop=dcache=32768,64,4,0 \ + -prop=nsim_isa_enable_timer_0=1 \ + -prop=nsim_isa_enable_timer_1=1 \ + -prop=nsim_isa_host_timer=1 \ + -prop=nsim_mmu=3 \ + -prop=nsim_isa_family=a700 \ + -prop=nsim_isa_atomic_option=1 \ + -prop=nsim_isa_dpfp=none \ + -prop=nsim_isa_shift_option=2 \ + -prop=nsim_isa_swap_option=1 \ + -prop=nsim_isa_bitscan_option=1 \ + -prop=nsim_isa_sat=1 \ + -prop=nsim_isa_mpy32=1 \ + -prop=isa_counters=1 \ + -prop=nsim_isa_pct_counters=8 \ + -prop=nsim_isa_pct_size=48 \ + output/images/vmlinux diff --git a/board/ti/am62x-sk/genimage.cfg b/board/ti/am62x-sk/genimage.cfg new file mode 100644 index 000000000000..26304fe98f99 --- /dev/null +++ b/board/ti/am62x-sk/genimage.cfg @@ -0,0 +1,27 @@ +image boot.vfat { + vfat { + files = { + "tiboot3.bin", + "tispl.bin", + "u-boot.img", + } + } + + size = 16M +} + +image sdcard.img { + hdimage { + } + + partition u-boot { + partition-type = 0xC + bootable = "true" + image = "boot.vfat" + } + + partition rootfs { + partition-type = 0x83 + image = "rootfs.ext4" + } +} diff --git a/board/ti/am62x-sk/readme.txt b/board/ti/am62x-sk/readme.txt new file mode 100644 index 000000000000..5af1c59c2d7e --- /dev/null +++ b/board/ti/am62x-sk/readme.txt @@ -0,0 +1,34 @@ +Texas Instuments SK-AM62 Test and Development Board + +Description +=========== + +This configuration will build a complete image for the TI SK-AM62 +board: https://www.ti.com/tool/SK-AM62. + +How to Build +============ + +Select the default configuration for the target: + +$ make ti_am62x_sk_defconfig + +Optional: modify the configuration: + +$ make menuconfig + +Build: + +$ make + +To copy the resultimg output image file to an SD card use dd: + +$ dd if=output/images/sdcard.img of=/dev/sdX bs=1M + +How to Run +========== + +Insert the SD card into the SK-AM62 board, and power it up through the +USB Type-C connector. The system should come up. You can use a +micro-USB cable to connect to the connector labeled UART to +communicate with the board. diff --git a/board/ti/am64x-sk/genimage.cfg b/board/ti/am64x-sk/genimage.cfg new file mode 100644 index 000000000000..26304fe98f99 --- /dev/null +++ b/board/ti/am64x-sk/genimage.cfg @@ -0,0 +1,27 @@ +image boot.vfat { + vfat { + files = { + "tiboot3.bin", + "tispl.bin", + "u-boot.img", + } + } + + size = 16M +} + +image sdcard.img { + hdimage { + } + + partition u-boot { + partition-type = 0xC + bootable = "true" + image = "boot.vfat" + } + + partition rootfs { + partition-type = 0x83 + image = "rootfs.ext4" + } +} diff --git a/board/ti/am64x-sk/readme.txt b/board/ti/am64x-sk/readme.txt new file mode 100644 index 000000000000..5ddbb836ed77 --- /dev/null +++ b/board/ti/am64x-sk/readme.txt @@ -0,0 +1,34 @@ +Texas Instuments SK-AM64 Test and Development Board + +Description +=========== + +This configuration will build a complete image for the TI SK-AM64 +board: https://www.ti.com/tool/SK-AM64. + +How to Build +============ + +Select the default configuration for the target: + +$ make am64x_sk_defconfig + +Optional: modify the configuration: + +$ make menuconfig + +Build: + +$ make + +To copy the resultimg output image file to an SD card use dd: + +$ dd if=output/images/sdcard.img of=/dev/sdX bs=1M + +How to Run +========== + +Insert the SD card into the SK-AM62 board, and power it up through the +USB Type-C connector. The system should come up. You can use a +micro-USB cable to connect to the connector labeled DEBUG CONSOLE to +communicate with the board. diff --git a/board/toradex/apalis-imx6/patches/linux-headers/linux-headers.hash b/board/toradex/apalis-imx6/patches/linux-headers/linux-headers.hash new file mode 120000 index 000000000000..5808d92afe89 --- /dev/null +++ b/board/toradex/apalis-imx6/patches/linux-headers/linux-headers.hash @@ -0,0 +1 @@ +../linux/linux.hash \ No newline at end of file diff --git a/board/toradex/apalis-imx6/patches/linux/linux.hash b/board/toradex/apalis-imx6/patches/linux/linux.hash new file mode 100644 index 000000000000..1138ec3b9349 --- /dev/null +++ b/board/toradex/apalis-imx6/patches/linux/linux.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 9c69a1c283db6ee8042cc6f013a159473f257e71751887312c7dd2902f01bec8 linux-d899927728beca8357a5b4120b690cb3c1d80844-br1.tar.gz diff --git a/board/toradex/apalis-imx6/patches/uboot/uboot.hash b/board/toradex/apalis-imx6/patches/uboot/uboot.hash new file mode 100644 index 000000000000..a81a7d8d4abb --- /dev/null +++ b/board/toradex/apalis-imx6/patches/uboot/uboot.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 9a540b08ccb7e8a0252f86d0bad5d676d0964725a7f2a06d798225c2a3024878 uboot-30a1208727729dae22cb42f9ba9ba17efe5e6f77-br1.tar.gz diff --git a/board/versal/patches/arm-trusted-firmware/0001-feat-build-add-support-for-new-binutils-versions.patch b/board/versal/patches/arm-trusted-firmware/0001-feat-build-add-support-for-new-binutils-versions.patch new file mode 120000 index 000000000000..8ad996914b4d --- /dev/null +++ b/board/versal/patches/arm-trusted-firmware/0001-feat-build-add-support-for-new-binutils-versions.patch @@ -0,0 +1 @@ +../../../../boot/arm-trusted-firmware/v2.8/0001-feat-build-add-support-for-new-binutils-versions.patch \ No newline at end of file diff --git a/board/versal/patches/arm-trusted-firmware/0002-build-tools-avoid-unnecessary-link.patch b/board/versal/patches/arm-trusted-firmware/0002-build-tools-avoid-unnecessary-link.patch new file mode 120000 index 000000000000..fecdee544930 --- /dev/null +++ b/board/versal/patches/arm-trusted-firmware/0002-build-tools-avoid-unnecessary-link.patch @@ -0,0 +1 @@ +../../../../boot/arm-trusted-firmware/v2.8/0002-build-tools-avoid-unnecessary-link.patch \ No newline at end of file diff --git a/board/versal/post-build.sh b/board/versal/post-build.sh index ff8f8a60719f..faa75a0de337 100755 --- a/board/versal/post-build.sh +++ b/board/versal/post-build.sh @@ -3,14 +3,13 @@ # genimage will need to find the extlinux.conf # in the binaries directory -BOARD_DIR="$(dirname $0)" -CONSOLE=$2 -ROOT=$3 +CONSOLE="$2" +ROOT="$3" mkdir -p "${BINARIES_DIR}" cat <<-__HEADER_EOF > "${BINARIES_DIR}/extlinux.conf" label linux kernel /Image devicetree /system.dtb - append console=${CONSOLE} clk_ignore_unused root=/dev/${ROOT} rw rootwait + append console=${CONSOLE} root=/dev/${ROOT} rw rootwait __HEADER_EOF diff --git a/board/versal/post-image.sh b/board/versal/post-image.sh index 92e65ed3b73b..22367d5028ba 100755 --- a/board/versal/post-image.sh +++ b/board/versal/post-image.sh @@ -6,24 +6,23 @@ FIRST_DT=$(sed -nr \ -e 's|^BR2_LINUX_KERNEL_INTREE_DTS_NAME="(xilinx/)?([-_/[:alnum:]\\.]*).*"$|\2|p' \ - ${BR2_CONFIG}) + "${BR2_CONFIG}") -[ -z "${FIRST_DT}" ] || ln -fs ${FIRST_DT}.dtb ${BINARIES_DIR}/system.dtb +[ -z "${FIRST_DT}" ] || ln -fs "${FIRST_DT}.dtb" "${BINARIES_DIR}/system.dtb" -BOARD_DIR="$(dirname $0)" -BOARD_NAME=$4 +BOARD_DIR="$(dirname "$0")" mkdir -p "${BINARIES_DIR}" cat <<-__HEADER_EOF > "${BINARIES_DIR}/bootgen.bif" the_ROM_image: { image { - { type=bootimage, file=${BINARIES_DIR}/${BOARD_NAME}_vpl_gen_fixed.pdi } - { type=bootloader, file=${BINARIES_DIR}/${BOARD_NAME}_plm.elf } - { core=psm, file=${BINARIES_DIR}/${BOARD_NAME}_psmfw.elf } + { type=bootimage, file=${BINARIES_DIR}/vpl_gen_fixed.pdi } + { type=bootloader, file=${BINARIES_DIR}/plm.elf } + { core=psm, file=${BINARIES_DIR}/psmfw.elf } } image { - id = 0x1c000000, name=apu_subsystem + id = 0x1c000000, name=apu_subsystem { type=raw, load=0x00001000, file=${BINARIES_DIR}/u-boot.dtb } { core=a72-0, exception_level=el-3, trustzone, file=${BINARIES_DIR}/bl31.elf } { core=a72-0, exception_level=el-2, file=${BINARIES_DIR}/u-boot.elf } @@ -31,5 +30,5 @@ cat <<-__HEADER_EOF > "${BINARIES_DIR}/bootgen.bif" } __HEADER_EOF -${HOST_DIR}/bin/bootgen -arch versal -image ${BINARIES_DIR}/bootgen.bif -o ${BINARIES_DIR}/boot.bin -w on -support/scripts/genimage.sh -c ${BOARD_DIR}/genimage.cfg +"${HOST_DIR}/bin/bootgen" -arch versal -image "${BINARIES_DIR}/bootgen.bif" -o "${BINARIES_DIR}/boot.bin" -w on +support/scripts/genimage.sh -c "${BOARD_DIR}/genimage.cfg" diff --git a/board/versal/uboot.fragment b/board/versal/uboot.fragment deleted file mode 100644 index 6f71907379f7..000000000000 --- a/board/versal/uboot.fragment +++ /dev/null @@ -1 +0,0 @@ -CONFIG_OF_SEPARATE=y diff --git a/board/zynq/post-build.sh b/board/zynq/post-build.sh index 9fd8bbf2c8d0..810fe9987945 100755 --- a/board/zynq/post-build.sh +++ b/board/zynq/post-build.sh @@ -3,6 +3,6 @@ # genimage will need to find the extlinux.conf # in the binaries directory -BOARD_DIR="$(dirname $0)" +BOARD_DIR="$(dirname "$0")" -install -m 0644 -D $BOARD_DIR/extlinux.conf $BINARIES_DIR/extlinux.conf +install -m 0644 -D "${BOARD_DIR}/extlinux.conf" "${BINARIES_DIR}/extlinux.conf" diff --git a/board/zynq/post-image.sh b/board/zynq/post-image.sh index ac74286cf6d8..192354b5bea4 100755 --- a/board/zynq/post-image.sh +++ b/board/zynq/post-image.sh @@ -1,15 +1,15 @@ #!/bin/sh -# By default U-Boot loads DTB from a file named "devicetree.dtb", so +# By default U-Boot loads DTB from a file named "system.dtb", so # let's use a symlink with that name that points to the *first* # devicetree listed in the config. FIRST_DT=$(sed -n \ 's/^BR2_LINUX_KERNEL_INTREE_DTS_NAME="\([a-z0-9\-]*\).*"$/\1/p' \ - ${BR2_CONFIG}) + "${BR2_CONFIG}") -[ -z "${FIRST_DT}" ] || ln -fs ${FIRST_DT}.dtb ${BINARIES_DIR}/system.dtb +[ -z "${FIRST_DT}" ] || ln -fs "${FIRST_DT}.dtb" "${BINARIES_DIR}/system.dtb" -BOARD_DIR="$(dirname $0)" +BOARD_DIR="$(dirname "$0")" -support/scripts/genimage.sh -c $BOARD_DIR/genimage.cfg +support/scripts/genimage.sh -c "${BOARD_DIR}/genimage.cfg" diff --git a/board/zynqmp/kria/kv260/kv260.sh b/board/zynqmp/kria/kv260/kv260.sh index e3467f30686c..dc92c51d43ee 100755 --- a/board/zynqmp/kria/kv260/kv260.sh +++ b/board/zynqmp/kria/kv260/kv260.sh @@ -1,12 +1,16 @@ #!/bin/sh # This is a temporary work around for generating kv260 u-boot.itb. -# The problem is there is no way to currently configure u-boot to apply -# the carrier board dtb overlay during build, so all kv260 carrier board +# The problem is there is no way to currently configure u-boot to apply +# the carrier board dtb overlay during build, so all kv260 carrier board # drivers are missing. # This will be removed when u-boot can build the kv260 u-boot.itb natively. -UBOOT_DIR=$4 +UBOOT_DIR="$4" -fdtoverlay -o ${UBOOT_DIR}/fit-dtb.blob -i ${UBOOT_DIR}/arch/arm/dts/zynqmp-smk-k26-revA.dtb ${UBOOT_DIR}/arch/arm/dts/zynqmp-sck-kv-g-revB.dtbo -${UBOOT_DIR}/tools/mkimage -E -f ${UBOOT_DIR}/u-boot.its -B 0x8 ${BINARIES_DIR}/u-boot.itb +fdtoverlay -o "${UBOOT_DIR}/fit-dtb.blob" \ + -i "${UBOOT_DIR}/arch/arm/dts/zynqmp-smk-k26-revA.dtb" \ + "${UBOOT_DIR}/arch/arm/dts/zynqmp-sck-kv-g-revB.dtbo" + +"${UBOOT_DIR}/tools/mkimage" -E -f "${UBOOT_DIR}/u-boot.its" \ + -B 0x8 "${BINARIES_DIR}/u-boot.itb" diff --git a/board/zynqmp/kria/kv260/pm_cfg_obj.c b/board/zynqmp/kria/kv260/pm_cfg_obj.c index 019df6e2371b..fc6c4024c639 100644 --- a/board/zynqmp/kria/kv260/pm_cfg_obj.c +++ b/board/zynqmp/kria/kv260/pm_cfg_obj.c @@ -30,6 +30,9 @@ #define SUSPEND_TIMEOUT 0xFFFFFFFFU +#define PM_CONFIG_OBJECT_TYPE_BASE 0x1U + + #define PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK 0x00000001 #define PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK 0x00000100 #define PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK 0x00000200 @@ -51,7 +54,7 @@ __root const u32 XPm_ConfigObject[] = /* HEADER */ 2, /* Number of remaining words in the header */ 8, /* Number of sections included in config object */ - 1U, /* Type of config object as base */ + PM_CONFIG_OBJECT_TYPE_BASE, /* Type of config object as base */ /**********************************************************************/ /* MASTER SECTION */ PM_CONFIG_MASTER_SECTION_ID, /* Master SectionID */ @@ -81,7 +84,7 @@ __root const u32 XPm_ConfigObject[] = PM_CONFIG_SLAVE_SECTION_ID, /* Section ID */ - 49, /* Number of slaves */ + 34, /* Number of slaves */ NODE_OCM_BANK_0, PM_SLAVE_FLAG_IS_SHAREABLE, @@ -131,10 +134,6 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_USB_1, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_TTC_0, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -151,54 +150,22 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_SATA, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - - NODE_ETH_0, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - - NODE_ETH_1, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - - NODE_ETH_2, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_ETH_3, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_UART_0, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_UART_1, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_SPI_0, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_SPI_1, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_I2C_0, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_I2C_1, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_SD_0, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_SD_1, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -215,10 +182,6 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_NAND, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_QSPI, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -227,14 +190,6 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_CAN_0, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - - NODE_CAN_1, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_EXTERN, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -259,22 +214,10 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_PCIE, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - - NODE_PCAP, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_RTC, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_VCU, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_PL, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -545,8 +488,6 @@ __root const u32 XPm_ConfigObject[] = /**********************************************************************/ /* GPO SECTION */ PM_CONFIG_GPO_SECTION_ID, /* GPO Section ID */ - PM_CONFIG_GPO1_BIT_2_MASK | - PM_CONFIG_GPO1_MIO_PIN_34_MAP | PM_CONFIG_GPO1_MIO_PIN_35_MAP | 0, /* State of GPO pins */ }; diff --git a/board/zynqmp/kria/patches/uboot/v1-0001-makefile-add-multi_dtb_fit-dep.patch b/board/zynqmp/kria/patches/uboot/v1-0001-makefile-add-multi_dtb_fit-dep.patch deleted file mode 100644 index ddc04cacacc7..000000000000 --- a/board/zynqmp/kria/patches/uboot/v1-0001-makefile-add-multi_dtb_fit-dep.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 8b181bf582c17cf709a62cf499f9709c94f49d33 Mon Sep 17 00:00:00 2001 -From: Neal Frager -Date: Wed, 21 Dec 2022 07:51:42 +0000 -Subject: [PATCH v1 1/1] makefile: add multi_dtb_fit dep - -With certain gcc compilers, the u-boot.itb is built immediately after dtb -generation. If CONFIG_MULTI_DTB_FIT is used, it is possible that the -fit-dtb.blob is not finished in time. - -This patch adds a necessary dependency to guarantee that the fit-dtb.blob -is built before attempting to build the u-boot.itb. - -Signed-off-by: Neal Frager ---- - Makefile | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/Makefile b/Makefile -index b96e2ffa15..682a5d94fd 100644 ---- a/Makefile -+++ b/Makefile -@@ -1425,6 +1425,7 @@ MKIMAGEFLAGS_u-boot.itb += -B 0x8 - ifdef U_BOOT_ITS - u-boot.itb: u-boot-nodtb.bin \ - $(if $(CONFIG_OF_SEPARATE)$(CONFIG_OF_EMBED)$(CONFIG_SANDBOX),dts/dt.dtb) \ -+ $(if $(CONFIG_MULTI_DTB_FIT),$(FINAL_DTB_CONTAINER)) \ - $(U_BOOT_ITS) FORCE - $(call if_changed,mkfitimage) - $(BOARD_SIZE_CHECK) --- -2.17.1 - diff --git a/board/zynqmp/patches/arm-trusted-firmware/0001-feat-build-add-support-for-new-binutils-versions.patch b/board/zynqmp/patches/arm-trusted-firmware/0001-feat-build-add-support-for-new-binutils-versions.patch new file mode 120000 index 000000000000..8ad996914b4d --- /dev/null +++ b/board/zynqmp/patches/arm-trusted-firmware/0001-feat-build-add-support-for-new-binutils-versions.patch @@ -0,0 +1 @@ +../../../../boot/arm-trusted-firmware/v2.8/0001-feat-build-add-support-for-new-binutils-versions.patch \ No newline at end of file diff --git a/board/zynqmp/patches/arm-trusted-firmware/0002-build-tools-avoid-unnecessary-link.patch b/board/zynqmp/patches/arm-trusted-firmware/0002-build-tools-avoid-unnecessary-link.patch new file mode 120000 index 000000000000..fecdee544930 --- /dev/null +++ b/board/zynqmp/patches/arm-trusted-firmware/0002-build-tools-avoid-unnecessary-link.patch @@ -0,0 +1 @@ +../../../../boot/arm-trusted-firmware/v2.8/0002-build-tools-avoid-unnecessary-link.patch \ No newline at end of file diff --git a/board/zynqmp/post-build.sh b/board/zynqmp/post-build.sh index 0713bd1b05b2..747991e3f1da 100755 --- a/board/zynqmp/post-build.sh +++ b/board/zynqmp/post-build.sh @@ -3,14 +3,13 @@ # genimage will need to find the extlinux.conf # in the binaries directory -BOARD_DIR="$(dirname $0)" -CONSOLE=$2 -ROOT=$3 +CONSOLE="$2" +ROOT="$3" mkdir -p "${BINARIES_DIR}" cat <<-__HEADER_EOF > "${BINARIES_DIR}/extlinux.conf" label linux kernel /Image devicetree /system.dtb - append console=${CONSOLE} root=/dev/${ROOT} rw rootwait + append console="${CONSOLE}" root="/dev/${ROOT}" rw rootwait __HEADER_EOF diff --git a/board/zynqmp/post-image.sh b/board/zynqmp/post-image.sh index c5de2db82070..f44b66342d4b 100755 --- a/board/zynqmp/post-image.sh +++ b/board/zynqmp/post-image.sh @@ -6,10 +6,10 @@ FIRST_DT=$(sed -nr \ -e 's|^BR2_LINUX_KERNEL_INTREE_DTS_NAME="(xilinx/)?([-_/[:alnum:]\\.]*).*"$|\2|p' \ - ${BR2_CONFIG}) + "${BR2_CONFIG}") -[ -z "${FIRST_DT}" ] || ln -fs ${FIRST_DT}.dtb ${BINARIES_DIR}/system.dtb +[ -z "${FIRST_DT}" ] || ln -fs "${FIRST_DT}.dtb" "${BINARIES_DIR}/system.dtb" -BOARD_DIR="$(dirname $0)" +BOARD_DIR="$(dirname "$0")" -support/scripts/genimage.sh -c $BOARD_DIR/genimage.cfg +support/scripts/genimage.sh -c "${BOARD_DIR}/genimage.cfg" diff --git a/board/zynqmp/zcu102/pm_cfg_obj.c b/board/zynqmp/zcu102/pm_cfg_obj.c index 68557c4cb439..04bfb16e35c8 100644 --- a/board/zynqmp/zcu102/pm_cfg_obj.c +++ b/board/zynqmp/zcu102/pm_cfg_obj.c @@ -30,6 +30,9 @@ #define SUSPEND_TIMEOUT 0xFFFFFFFFU +#define PM_CONFIG_OBJECT_TYPE_BASE 0x1U + + #define PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK 0x00000001 #define PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK 0x00000100 #define PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK 0x00000200 @@ -51,7 +54,7 @@ __root const u32 XPm_ConfigObject[] = /* HEADER */ 2, /* Number of remaining words in the header */ 8, /* Number of sections included in config object */ - 1U, /* Type of config object as base */ + PM_CONFIG_OBJECT_TYPE_BASE, /* Type of config object as base */ /**********************************************************************/ /* MASTER SECTION */ PM_CONFIG_MASTER_SECTION_ID, /* Master SectionID */ @@ -81,7 +84,7 @@ __root const u32 XPm_ConfigObject[] = PM_CONFIG_SLAVE_SECTION_ID, /* Section ID */ - 49, /* Number of slaves */ + 38, /* Number of slaves */ NODE_OCM_BANK_0, PM_SLAVE_FLAG_IS_SHAREABLE, @@ -131,10 +134,6 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_USB_1, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_TTC_0, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -155,18 +154,6 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_ETH_0, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - - NODE_ETH_1, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - - NODE_ETH_2, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_ETH_3, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -179,14 +166,6 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_SPI_0, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - - NODE_SPI_1, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_I2C_0, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -195,10 +174,6 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_SD_0, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_SD_1, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -215,10 +190,6 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_NAND, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_QSPI, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -227,10 +198,6 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_CAN_0, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_CAN_1, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -263,18 +230,10 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_PCAP, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_RTC, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_VCU, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_PL, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ diff --git a/board/zynqmp/zcu106/pm_cfg_obj.c b/board/zynqmp/zcu106/pm_cfg_obj.c index 6d15d510e945..54a1afa902e7 100644 --- a/board/zynqmp/zcu106/pm_cfg_obj.c +++ b/board/zynqmp/zcu106/pm_cfg_obj.c @@ -30,6 +30,9 @@ #define SUSPEND_TIMEOUT 0xFFFFFFFFU +#define PM_CONFIG_OBJECT_TYPE_BASE 0x1U + + #define PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK 0x00000001 #define PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK 0x00000100 #define PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK 0x00000200 @@ -51,7 +54,7 @@ __root const u32 XPm_ConfigObject[] = /* HEADER */ 2, /* Number of remaining words in the header */ 8, /* Number of sections included in config object */ - 1U, /* Type of config object as base */ + PM_CONFIG_OBJECT_TYPE_BASE, /* Type of config object as base */ /**********************************************************************/ /* MASTER SECTION */ PM_CONFIG_MASTER_SECTION_ID, /* Master SectionID */ @@ -81,7 +84,7 @@ __root const u32 XPm_ConfigObject[] = PM_CONFIG_SLAVE_SECTION_ID, /* Section ID */ - 49, /* Number of slaves */ + 38, /* Number of slaves */ NODE_OCM_BANK_0, PM_SLAVE_FLAG_IS_SHAREABLE, @@ -131,10 +134,6 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_USB_1, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_TTC_0, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -155,18 +154,6 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_ETH_0, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - - NODE_ETH_1, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - - NODE_ETH_2, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_ETH_3, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -179,14 +166,6 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_SPI_0, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - - NODE_SPI_1, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_I2C_0, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -195,10 +174,6 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_SD_0, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_SD_1, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -215,10 +190,6 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_NAND, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_QSPI, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -227,10 +198,6 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_CAN_0, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_CAN_1, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ @@ -259,14 +226,6 @@ __root const u32 XPm_ConfigObject[] = PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ - NODE_PCIE, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - - NODE_PCAP, - PM_SLAVE_FLAG_IS_SHAREABLE, - 0U, /* IPI Mask */ - NODE_RTC, PM_SLAVE_FLAG_IS_SHAREABLE, PM_CONFIG_IPI_PSU_CORTEXA53_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_0_MASK | PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ diff --git a/boot/Config.in b/boot/Config.in index 58366e035eaf..e5fdf7ad439e 100644 --- a/boot/Config.in +++ b/boot/Config.in @@ -12,7 +12,6 @@ source "boot/binaries-marvell/Config.in" source "boot/boot-wrapper-aarch64/Config.in" source "boot/edk2/Config.in" source "boot/grub2/Config.in" -source "boot/lpc32xxcdl/Config.in" source "boot/mv-ddr-marvell/Config.in" source "boot/mxs-bootlets/Config.in" source "boot/optee-os/Config.in" @@ -20,6 +19,8 @@ source "boot/opensbi/Config.in" source "boot/s500-bootloader/Config.in" source "boot/shim/Config.in" source "boot/syslinux/Config.in" +source "boot/ti-k3-boot-firmware/Config.in" +source "boot/ti-k3-image-gen/Config.in" source "boot/ti-k3-r5-loader/Config.in" source "boot/uboot/Config.in" source "boot/vexpress-firmware/Config.in" diff --git a/boot/arm-trusted-firmware/Config.in b/boot/arm-trusted-firmware/Config.in index a9b9bbcc5a1f..a5ac9871721e 100644 --- a/boot/arm-trusted-firmware/Config.in +++ b/boot/arm-trusted-firmware/Config.in @@ -129,8 +129,27 @@ config BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE endchoice +choice + prompt "BL33" + default BR2_TARGET_ARM_TRUSTED_FIRMWARE_NONE_AS_BL33 + help + Select the image to include as BL33. + +config BR2_TARGET_ARM_TRUSTED_FIRMWARE_NONE_AS_BL33 + bool "None" + +config BR2_TARGET_ARM_TRUSTED_FIRMWARE_BAREBOX_AS_BL33 + bool "Barebox" + depends on BR2_TARGET_BAREBOX + help + This option allows to embed the Barebox generic BL33 image in + the ARM Trusted Firmware. It ensures that the Barebox package + gets built before ATF, and that the appropriate BL33 + variable pointing to the generic bl33 image is passed + when building ATF. + config BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33 - bool "Use U-Boot as BL33" + bool "U-Boot" depends on BR2_TARGET_UBOOT help This option allows to embed u-boot.bin as the BL33 part of @@ -138,19 +157,8 @@ config BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33 gets built before ATF, and that the appropriate BL33 variable pointing to u-boot.bin is passed when building ATF. -if BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33 - -config BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_BL33_IMAGE - string "U-Boot BL33 image name" - default "u-boot.bin" - help - Name of the U-Boot BL33 image to include in ATF, it must - have been installed to BINARIES_DIR by the U-Boot package. - -endif - config BR2_TARGET_ARM_TRUSTED_FIRMWARE_EDK2_AS_BL33 - bool "Use EDK2 as BL33" + bool "EDK2" depends on BR2_TARGET_EDK2 help This option allows to embed EDK2 as the BL33 part of @@ -162,6 +170,30 @@ config BR2_TARGET_ARM_TRUSTED_FIRMWARE_EDK2_AS_BL33 for the 'qemu_sbsa' platform. In this case, due to the EDK2 build system, the dependency between ATF and EDK is reversed. +endchoice + +if BR2_TARGET_ARM_TRUSTED_FIRMWARE_BAREBOX_AS_BL33 + +config BR2_TARGET_ARM_TRUSTED_FIRMWARE_BAREBOX_BL33_IMAGE + string "Barebox BL33 image name" + default "*-generic-bl33.img" + help + Name of the Barebox BL33 image to include in ATF, it must + have been installed to BINARIES_DIR by the Barebox package. + +endif + +if BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33 + +config BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_BL33_IMAGE + string "U-Boot BL33 image name" + default "u-boot.bin" + help + Name of the U-Boot BL33 image to include in ATF, it must + have been installed to BINARIES_DIR by the U-Boot package. + +endif + config BR2_TARGET_ARM_TRUSTED_FIRMWARE_RCW bool "Include NXP RCW in BL2" depends on BR2_PACKAGE_HOST_QORIQ_RCW diff --git a/boot/arm-trusted-firmware/arm-trusted-firmware.mk b/boot/arm-trusted-firmware/arm-trusted-firmware.mk index 1164c8141061..049beed36a91 100644 --- a/boot/arm-trusted-firmware/arm-trusted-firmware.mk +++ b/boot/arm-trusted-firmware/arm-trusted-firmware.mk @@ -60,6 +60,7 @@ endif ARM_TRUSTED_FIRMWARE_MAKE_OPTS += \ CROSS_COMPILE="$(TARGET_CROSS)" \ + BUILD_STRING=$(ARM_TRUSTED_FIRMWARE_VERSION) \ $(call qstrip,$(BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES)) \ PLAT=$(ARM_TRUSTED_FIRMWARE_PLATFORM) \ TARGET_BOARD=$(ARM_TRUSTED_FIRMWARE_TARGET_BOARD) @@ -105,6 +106,12 @@ ARM_TRUSTED_FIRMWARE_MAKE_OPTS += AARCH32_SP=optee endif endif # BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE +ifeq ($(BR2_TARGET_ARM_TRUSTED_FIRMWARE_BAREBOX_AS_BL33),y) +ARM_TRUSTED_FIRMWARE_BAREBOX_BIN = $(call qstrip,$(BR2_TARGET_ARM_TRUSTED_FIRMWARE_BAREBOX_BL33_IMAGE)) +ARM_TRUSTED_FIRMWARE_MAKE_OPTS += BL33=$(BINARIES_DIR)/$(ARM_TRUSTED_FIRMWARE_BAREBOX_BIN) +ARM_TRUSTED_FIRMWARE_DEPENDENCIES += barebox +endif + ifeq ($(BR2_TARGET_ARM_TRUSTED_FIRMWARE_EDK2_AS_BL33),y) ARM_TRUSTED_FIRMWARE_DEPENDENCIES += edk2 # Since the flash device name vary between platforms, we use the variable diff --git a/boot/arm-trusted-firmware/v2.2/0001-PATCH-feat-build-add-support-for-new-binutils-versio.patch b/boot/arm-trusted-firmware/v2.2/0001-PATCH-feat-build-add-support-for-new-binutils-versio.patch new file mode 100644 index 000000000000..d4d2b068f375 --- /dev/null +++ b/boot/arm-trusted-firmware/v2.2/0001-PATCH-feat-build-add-support-for-new-binutils-versio.patch @@ -0,0 +1,59 @@ +From 5e1beb793c06352e87c46eca1144ff1fe8555103 Mon Sep 17 00:00:00 2001 +From: Heiko Thiery +Date: Mon, 10 Jul 2023 10:43:03 +0200 +Subject: [PATCH] [PATCH] feat(build): add support for new binutils versions + +Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces +of a new warning when linking the bl*.elf in the form: + + ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack + ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker + ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions + ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions + +These new warnings are enbaled by default to secure elf binaries: + - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107 + - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774 + +Fix it in a similar way to what the Linux kernel does, see: +https://lore.kernel.org/all/20220810222442.2296651-1-ndesaulniers@google.com/ + +Following the reasoning there, we set "-z noexecstack" for all linkers +(although LLVM's LLD defaults to it) and optional add +--no-warn-rwx-segments since this a ld.bfd related. + +Signed-off-by: Marco Felsch +Signed-off-by: Robert Schwebel +Change-Id: I9430f5fa5036ca88da46cd3b945754d62616b617 + +Signed-off-by: Heiko Thiery +Upstream: https://github.com/ARM-software/arm-trusted-firmware/commit/1f49db5f25cdd4e43825c9bcc0575070b80f628c +--- + Makefile | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 721246d51..5893cf422 100644 +--- a/Makefile ++++ b/Makefile +@@ -297,11 +297,16 @@ endif + + GCC_V_OUTPUT := $(shell $(CC) -v 2>&1) + ++TF_LDFLAGS += -z noexecstack ++ + ifneq ($(findstring armlink,$(notdir $(LD))),) + TF_LDFLAGS += --diag_error=warning --lto_level=O1 + TF_LDFLAGS += --remove --info=unused,unusedsymbols + else +-TF_LDFLAGS += --fatal-warnings -O1 ++# With ld.bfd version 2.39 and newer new warnings are added. Skip those since we ++# are not loaded by a elf loader. ++TF_LDFLAGS += $(call ld_option, --no-warn-rwx-segments) ++TF_LDFLAGS += -O1 + TF_LDFLAGS += --gc-sections + endif + TF_LDFLAGS += $(TF_LDFLAGS_$(ARCH)) +-- +2.30.2 + diff --git a/boot/arm-trusted-firmware/v2.3/0001-feat-build-add-support-for-new-binutils-versions.patch b/boot/arm-trusted-firmware/v2.3/0001-feat-build-add-support-for-new-binutils-versions.patch new file mode 100644 index 000000000000..335c18553ac3 --- /dev/null +++ b/boot/arm-trusted-firmware/v2.3/0001-feat-build-add-support-for-new-binutils-versions.patch @@ -0,0 +1,61 @@ +From 0f75b03c008eacb9818af3a56dc088e72a623d17 Mon Sep 17 00:00:00 2001 +From: Marco Felsch +Date: Wed, 9 Nov 2022 12:59:09 +0100 +Subject: [PATCH] feat(build): add support for new binutils versions + +Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces +of a new warning when linking the bl*.elf in the form: + + ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack + ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker + ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions + ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions + +These new warnings are enbaled by default to secure elf binaries: + - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107 + - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774 + +Fix it in a similar way to what the Linux kernel does, see: +https://lore.kernel.org/all/20220810222442.2296651-1-ndesaulniers@google.com/ + +Following the reasoning there, we set "-z noexecstack" for all linkers +(although LLVM's LLD defaults to it) and optional add +--no-warn-rwx-segments since this a ld.bfd related. + +Signed-off-by: Marco Felsch +Signed-off-by: Robert Schwebel +Change-Id: I9430f5fa5036ca88da46cd3b945754d62616b617 +Signed-off-by: Heiko Thiery +Upstream: https://github.com/ARM-software/arm-trusted-firmware/commit/1f49db5f25cdd4e43825c9bcc0575070b80f628c +--- + Makefile | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 1ddb7b844..470956b19 100644 +--- a/Makefile ++++ b/Makefile +@@ -416,6 +416,8 @@ endif + + GCC_V_OUTPUT := $(shell $(CC) -v 2>&1) + ++TF_LDFLAGS += -z noexecstack ++ + # LD = armlink + ifneq ($(findstring armlink,$(notdir $(LD))),) + TF_LDFLAGS += --diag_error=warning --lto_level=O1 +@@ -442,7 +444,10 @@ TF_LDFLAGS += $(subst --,-Xlinker --,$(TF_LDFLAGS_$(ARCH))) + + # LD = gcc-ld (ld) or llvm-ld (ld.lld) or other + else +-TF_LDFLAGS += --fatal-warnings -O1 ++# With ld.bfd version 2.39 and newer new warnings are added. Skip those since we ++# are not loaded by a elf loader. ++TF_LDFLAGS += $(call ld_option, --no-warn-rwx-segments) ++TF_LDFLAGS += -O1 + TF_LDFLAGS += --gc-sections + # ld.lld doesn't recognize the errata flags, + # therefore don't add those in that case +-- +2.30.2 + diff --git a/boot/arm-trusted-firmware/v2.4/0001-feat-build-add-support-for-new-binutils-versions.patch b/boot/arm-trusted-firmware/v2.4/0001-feat-build-add-support-for-new-binutils-versions.patch new file mode 100644 index 000000000000..335c18553ac3 --- /dev/null +++ b/boot/arm-trusted-firmware/v2.4/0001-feat-build-add-support-for-new-binutils-versions.patch @@ -0,0 +1,61 @@ +From 0f75b03c008eacb9818af3a56dc088e72a623d17 Mon Sep 17 00:00:00 2001 +From: Marco Felsch +Date: Wed, 9 Nov 2022 12:59:09 +0100 +Subject: [PATCH] feat(build): add support for new binutils versions + +Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces +of a new warning when linking the bl*.elf in the form: + + ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack + ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker + ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions + ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions + +These new warnings are enbaled by default to secure elf binaries: + - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107 + - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774 + +Fix it in a similar way to what the Linux kernel does, see: +https://lore.kernel.org/all/20220810222442.2296651-1-ndesaulniers@google.com/ + +Following the reasoning there, we set "-z noexecstack" for all linkers +(although LLVM's LLD defaults to it) and optional add +--no-warn-rwx-segments since this a ld.bfd related. + +Signed-off-by: Marco Felsch +Signed-off-by: Robert Schwebel +Change-Id: I9430f5fa5036ca88da46cd3b945754d62616b617 +Signed-off-by: Heiko Thiery +Upstream: https://github.com/ARM-software/arm-trusted-firmware/commit/1f49db5f25cdd4e43825c9bcc0575070b80f628c +--- + Makefile | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 1ddb7b844..470956b19 100644 +--- a/Makefile ++++ b/Makefile +@@ -416,6 +416,8 @@ endif + + GCC_V_OUTPUT := $(shell $(CC) -v 2>&1) + ++TF_LDFLAGS += -z noexecstack ++ + # LD = armlink + ifneq ($(findstring armlink,$(notdir $(LD))),) + TF_LDFLAGS += --diag_error=warning --lto_level=O1 +@@ -442,7 +444,10 @@ TF_LDFLAGS += $(subst --,-Xlinker --,$(TF_LDFLAGS_$(ARCH))) + + # LD = gcc-ld (ld) or llvm-ld (ld.lld) or other + else +-TF_LDFLAGS += --fatal-warnings -O1 ++# With ld.bfd version 2.39 and newer new warnings are added. Skip those since we ++# are not loaded by a elf loader. ++TF_LDFLAGS += $(call ld_option, --no-warn-rwx-segments) ++TF_LDFLAGS += -O1 + TF_LDFLAGS += --gc-sections + # ld.lld doesn't recognize the errata flags, + # therefore don't add those in that case +-- +2.30.2 + diff --git a/boot/arm-trusted-firmware/v2.5/0001-feat-build-add-support-for-new-binutils-versions.patch b/boot/arm-trusted-firmware/v2.5/0001-feat-build-add-support-for-new-binutils-versions.patch new file mode 100644 index 000000000000..335c18553ac3 --- /dev/null +++ b/boot/arm-trusted-firmware/v2.5/0001-feat-build-add-support-for-new-binutils-versions.patch @@ -0,0 +1,61 @@ +From 0f75b03c008eacb9818af3a56dc088e72a623d17 Mon Sep 17 00:00:00 2001 +From: Marco Felsch +Date: Wed, 9 Nov 2022 12:59:09 +0100 +Subject: [PATCH] feat(build): add support for new binutils versions + +Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces +of a new warning when linking the bl*.elf in the form: + + ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack + ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker + ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions + ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions + +These new warnings are enbaled by default to secure elf binaries: + - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107 + - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774 + +Fix it in a similar way to what the Linux kernel does, see: +https://lore.kernel.org/all/20220810222442.2296651-1-ndesaulniers@google.com/ + +Following the reasoning there, we set "-z noexecstack" for all linkers +(although LLVM's LLD defaults to it) and optional add +--no-warn-rwx-segments since this a ld.bfd related. + +Signed-off-by: Marco Felsch +Signed-off-by: Robert Schwebel +Change-Id: I9430f5fa5036ca88da46cd3b945754d62616b617 +Signed-off-by: Heiko Thiery +Upstream: https://github.com/ARM-software/arm-trusted-firmware/commit/1f49db5f25cdd4e43825c9bcc0575070b80f628c +--- + Makefile | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 1ddb7b844..470956b19 100644 +--- a/Makefile ++++ b/Makefile +@@ -416,6 +416,8 @@ endif + + GCC_V_OUTPUT := $(shell $(CC) -v 2>&1) + ++TF_LDFLAGS += -z noexecstack ++ + # LD = armlink + ifneq ($(findstring armlink,$(notdir $(LD))),) + TF_LDFLAGS += --diag_error=warning --lto_level=O1 +@@ -442,7 +444,10 @@ TF_LDFLAGS += $(subst --,-Xlinker --,$(TF_LDFLAGS_$(ARCH))) + + # LD = gcc-ld (ld) or llvm-ld (ld.lld) or other + else +-TF_LDFLAGS += --fatal-warnings -O1 ++# With ld.bfd version 2.39 and newer new warnings are added. Skip those since we ++# are not loaded by a elf loader. ++TF_LDFLAGS += $(call ld_option, --no-warn-rwx-segments) ++TF_LDFLAGS += -O1 + TF_LDFLAGS += --gc-sections + # ld.lld doesn't recognize the errata flags, + # therefore don't add those in that case +-- +2.30.2 + diff --git a/boot/arm-trusted-firmware/v2.6/0001-feat-build-add-support-for-new-binutils-versions.patch b/boot/arm-trusted-firmware/v2.6/0001-feat-build-add-support-for-new-binutils-versions.patch new file mode 100644 index 000000000000..335c18553ac3 --- /dev/null +++ b/boot/arm-trusted-firmware/v2.6/0001-feat-build-add-support-for-new-binutils-versions.patch @@ -0,0 +1,61 @@ +From 0f75b03c008eacb9818af3a56dc088e72a623d17 Mon Sep 17 00:00:00 2001 +From: Marco Felsch +Date: Wed, 9 Nov 2022 12:59:09 +0100 +Subject: [PATCH] feat(build): add support for new binutils versions + +Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces +of a new warning when linking the bl*.elf in the form: + + ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack + ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker + ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions + ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions + +These new warnings are enbaled by default to secure elf binaries: + - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107 + - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774 + +Fix it in a similar way to what the Linux kernel does, see: +https://lore.kernel.org/all/20220810222442.2296651-1-ndesaulniers@google.com/ + +Following the reasoning there, we set "-z noexecstack" for all linkers +(although LLVM's LLD defaults to it) and optional add +--no-warn-rwx-segments since this a ld.bfd related. + +Signed-off-by: Marco Felsch +Signed-off-by: Robert Schwebel +Change-Id: I9430f5fa5036ca88da46cd3b945754d62616b617 +Signed-off-by: Heiko Thiery +Upstream: https://github.com/ARM-software/arm-trusted-firmware/commit/1f49db5f25cdd4e43825c9bcc0575070b80f628c +--- + Makefile | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 1ddb7b844..470956b19 100644 +--- a/Makefile ++++ b/Makefile +@@ -416,6 +416,8 @@ endif + + GCC_V_OUTPUT := $(shell $(CC) -v 2>&1) + ++TF_LDFLAGS += -z noexecstack ++ + # LD = armlink + ifneq ($(findstring armlink,$(notdir $(LD))),) + TF_LDFLAGS += --diag_error=warning --lto_level=O1 +@@ -442,7 +444,10 @@ TF_LDFLAGS += $(subst --,-Xlinker --,$(TF_LDFLAGS_$(ARCH))) + + # LD = gcc-ld (ld) or llvm-ld (ld.lld) or other + else +-TF_LDFLAGS += --fatal-warnings -O1 ++# With ld.bfd version 2.39 and newer new warnings are added. Skip those since we ++# are not loaded by a elf loader. ++TF_LDFLAGS += $(call ld_option, --no-warn-rwx-segments) ++TF_LDFLAGS += -O1 + TF_LDFLAGS += --gc-sections + # ld.lld doesn't recognize the errata flags, + # therefore don't add those in that case +-- +2.30.2 + diff --git a/boot/arm-trusted-firmware/v2.7/0001-feat-build-add-support-for-new-binutils-versions.patch b/boot/arm-trusted-firmware/v2.7/0001-feat-build-add-support-for-new-binutils-versions.patch new file mode 100644 index 000000000000..335c18553ac3 --- /dev/null +++ b/boot/arm-trusted-firmware/v2.7/0001-feat-build-add-support-for-new-binutils-versions.patch @@ -0,0 +1,61 @@ +From 0f75b03c008eacb9818af3a56dc088e72a623d17 Mon Sep 17 00:00:00 2001 +From: Marco Felsch +Date: Wed, 9 Nov 2022 12:59:09 +0100 +Subject: [PATCH] feat(build): add support for new binutils versions + +Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces +of a new warning when linking the bl*.elf in the form: + + ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack + ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker + ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions + ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions + +These new warnings are enbaled by default to secure elf binaries: + - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107 + - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774 + +Fix it in a similar way to what the Linux kernel does, see: +https://lore.kernel.org/all/20220810222442.2296651-1-ndesaulniers@google.com/ + +Following the reasoning there, we set "-z noexecstack" for all linkers +(although LLVM's LLD defaults to it) and optional add +--no-warn-rwx-segments since this a ld.bfd related. + +Signed-off-by: Marco Felsch +Signed-off-by: Robert Schwebel +Change-Id: I9430f5fa5036ca88da46cd3b945754d62616b617 +Signed-off-by: Heiko Thiery +Upstream: https://github.com/ARM-software/arm-trusted-firmware/commit/1f49db5f25cdd4e43825c9bcc0575070b80f628c +--- + Makefile | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 1ddb7b844..470956b19 100644 +--- a/Makefile ++++ b/Makefile +@@ -416,6 +416,8 @@ endif + + GCC_V_OUTPUT := $(shell $(CC) -v 2>&1) + ++TF_LDFLAGS += -z noexecstack ++ + # LD = armlink + ifneq ($(findstring armlink,$(notdir $(LD))),) + TF_LDFLAGS += --diag_error=warning --lto_level=O1 +@@ -442,7 +444,10 @@ TF_LDFLAGS += $(subst --,-Xlinker --,$(TF_LDFLAGS_$(ARCH))) + + # LD = gcc-ld (ld) or llvm-ld (ld.lld) or other + else +-TF_LDFLAGS += --fatal-warnings -O1 ++# With ld.bfd version 2.39 and newer new warnings are added. Skip those since we ++# are not loaded by a elf loader. ++TF_LDFLAGS += $(call ld_option, --no-warn-rwx-segments) ++TF_LDFLAGS += -O1 + TF_LDFLAGS += --gc-sections + # ld.lld doesn't recognize the errata flags, + # therefore don't add those in that case +-- +2.30.2 + diff --git a/boot/arm-trusted-firmware/v2.8/0001-feat-build-add-support-for-new-binutils-versions.patch b/boot/arm-trusted-firmware/v2.8/0001-feat-build-add-support-for-new-binutils-versions.patch new file mode 100644 index 000000000000..335c18553ac3 --- /dev/null +++ b/boot/arm-trusted-firmware/v2.8/0001-feat-build-add-support-for-new-binutils-versions.patch @@ -0,0 +1,61 @@ +From 0f75b03c008eacb9818af3a56dc088e72a623d17 Mon Sep 17 00:00:00 2001 +From: Marco Felsch +Date: Wed, 9 Nov 2022 12:59:09 +0100 +Subject: [PATCH] feat(build): add support for new binutils versions + +Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces +of a new warning when linking the bl*.elf in the form: + + ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack + ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker + ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions + ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions + +These new warnings are enbaled by default to secure elf binaries: + - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107 + - https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774 + +Fix it in a similar way to what the Linux kernel does, see: +https://lore.kernel.org/all/20220810222442.2296651-1-ndesaulniers@google.com/ + +Following the reasoning there, we set "-z noexecstack" for all linkers +(although LLVM's LLD defaults to it) and optional add +--no-warn-rwx-segments since this a ld.bfd related. + +Signed-off-by: Marco Felsch +Signed-off-by: Robert Schwebel +Change-Id: I9430f5fa5036ca88da46cd3b945754d62616b617 +Signed-off-by: Heiko Thiery +Upstream: https://github.com/ARM-software/arm-trusted-firmware/commit/1f49db5f25cdd4e43825c9bcc0575070b80f628c +--- + Makefile | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 1ddb7b844..470956b19 100644 +--- a/Makefile ++++ b/Makefile +@@ -416,6 +416,8 @@ endif + + GCC_V_OUTPUT := $(shell $(CC) -v 2>&1) + ++TF_LDFLAGS += -z noexecstack ++ + # LD = armlink + ifneq ($(findstring armlink,$(notdir $(LD))),) + TF_LDFLAGS += --diag_error=warning --lto_level=O1 +@@ -442,7 +444,10 @@ TF_LDFLAGS += $(subst --,-Xlinker --,$(TF_LDFLAGS_$(ARCH))) + + # LD = gcc-ld (ld) or llvm-ld (ld.lld) or other + else +-TF_LDFLAGS += --fatal-warnings -O1 ++# With ld.bfd version 2.39 and newer new warnings are added. Skip those since we ++# are not loaded by a elf loader. ++TF_LDFLAGS += $(call ld_option, --no-warn-rwx-segments) ++TF_LDFLAGS += -O1 + TF_LDFLAGS += --gc-sections + # ld.lld doesn't recognize the errata flags, + # therefore don't add those in that case +-- +2.30.2 + diff --git a/boot/arm-trusted-firmware/v2.8/0002-build-tools-avoid-unnecessary-link.patch b/boot/arm-trusted-firmware/v2.8/0002-build-tools-avoid-unnecessary-link.patch new file mode 100644 index 000000000000..9e0ea74248b3 --- /dev/null +++ b/boot/arm-trusted-firmware/v2.8/0002-build-tools-avoid-unnecessary-link.patch @@ -0,0 +1,77 @@ +From aa57ce632c629fe72ff417e261e0f5bfd8db6bab Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Vincent=20Stehl=C3=A9?= +Date: Tue, 4 Jul 2023 16:14:02 +0200 +Subject: [PATCH] build(tools): avoid unnecessary link +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +In their respective makefiles, cert_create, encrypt_fw and fiptool +depend on the --openssl phony target as a prerequisite. This forces +those tools to be re-linked each time. + +Move the dependencies on the --openssl target from the tools to their +makefiles all targets, to avoid unnecessary linking while preserving the +OpenSSL version printing done in the --openssl targets when in debug. + +Fixes: cf2dd17ddda2 ("refactor(security): add OpenSSL 1.x compatibility") +Signed-off-by: Vincent Stehlé +Change-Id: I98a3ab30f36dffc253cecaaf3a57d2712522135d +Upstream: https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/commit/?id=aa57ce632c629fe72ff417e261e0f5bfd8db6bab +--- + tools/cert_create/Makefile | 4 ++-- + tools/encrypt_fw/Makefile | 4 ++-- + tools/fiptool/Makefile | 4 ++-- + 3 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/tools/cert_create/Makefile b/tools/cert_create/Makefile +index 042e844626..b911d19d2b 100644 +--- a/tools/cert_create/Makefile ++++ b/tools/cert_create/Makefile +@@ -85,9 +85,9 @@ HOSTCC ?= gcc + + .PHONY: all clean realclean --openssl + +-all: ${BINARY} ++all: --openssl ${BINARY} + +-${BINARY}: --openssl ${OBJECTS} Makefile ++${BINARY}: ${OBJECTS} Makefile + @echo " HOSTLD $@" + @echo 'const char build_msg[] = "Built : "__TIME__", "__DATE__; \ + const char platform_msg[] = "${PLAT_MSG}";' | \ +diff --git a/tools/encrypt_fw/Makefile b/tools/encrypt_fw/Makefile +index 2939b142be..924e5febab 100644 +--- a/tools/encrypt_fw/Makefile ++++ b/tools/encrypt_fw/Makefile +@@ -65,9 +65,9 @@ HOSTCC ?= gcc + + .PHONY: all clean realclean --openssl + +-all: ${BINARY} ++all: --openssl ${BINARY} + +-${BINARY}: --openssl ${OBJECTS} Makefile ++${BINARY}: ${OBJECTS} Makefile + @echo " HOSTLD $@" + @echo 'const char build_msg[] = "Built : "__TIME__", "__DATE__;' | \ + ${HOSTCC} -c ${HOSTCCFLAGS} -xc - -o src/build_msg.o +diff --git a/tools/fiptool/Makefile b/tools/fiptool/Makefile +index 2ebee33931..4bdebd9235 100644 +--- a/tools/fiptool/Makefile ++++ b/tools/fiptool/Makefile +@@ -68,9 +68,9 @@ DEPS := $(patsubst %.o,%.d,$(OBJECTS)) + + .PHONY: all clean distclean --openssl + +-all: ${PROJECT} ++all: --openssl ${PROJECT} + +-${PROJECT}: --openssl ${OBJECTS} Makefile ++${PROJECT}: ${OBJECTS} Makefile + @echo " HOSTLD $@" + ${Q}${HOSTCC} ${OBJECTS} -o $@ ${LDLIBS} + @${ECHO_BLANK_LINE} +-- +2.25.1 + diff --git a/boot/arm-trusted-firmware/v2.9/0001-build-tools-avoid-unnecessary-link.patch b/boot/arm-trusted-firmware/v2.9/0001-build-tools-avoid-unnecessary-link.patch new file mode 100644 index 000000000000..9e0ea74248b3 --- /dev/null +++ b/boot/arm-trusted-firmware/v2.9/0001-build-tools-avoid-unnecessary-link.patch @@ -0,0 +1,77 @@ +From aa57ce632c629fe72ff417e261e0f5bfd8db6bab Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Vincent=20Stehl=C3=A9?= +Date: Tue, 4 Jul 2023 16:14:02 +0200 +Subject: [PATCH] build(tools): avoid unnecessary link +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +In their respective makefiles, cert_create, encrypt_fw and fiptool +depend on the --openssl phony target as a prerequisite. This forces +those tools to be re-linked each time. + +Move the dependencies on the --openssl target from the tools to their +makefiles all targets, to avoid unnecessary linking while preserving the +OpenSSL version printing done in the --openssl targets when in debug. + +Fixes: cf2dd17ddda2 ("refactor(security): add OpenSSL 1.x compatibility") +Signed-off-by: Vincent Stehlé +Change-Id: I98a3ab30f36dffc253cecaaf3a57d2712522135d +Upstream: https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/commit/?id=aa57ce632c629fe72ff417e261e0f5bfd8db6bab +--- + tools/cert_create/Makefile | 4 ++-- + tools/encrypt_fw/Makefile | 4 ++-- + tools/fiptool/Makefile | 4 ++-- + 3 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/tools/cert_create/Makefile b/tools/cert_create/Makefile +index 042e844626..b911d19d2b 100644 +--- a/tools/cert_create/Makefile ++++ b/tools/cert_create/Makefile +@@ -85,9 +85,9 @@ HOSTCC ?= gcc + + .PHONY: all clean realclean --openssl + +-all: ${BINARY} ++all: --openssl ${BINARY} + +-${BINARY}: --openssl ${OBJECTS} Makefile ++${BINARY}: ${OBJECTS} Makefile + @echo " HOSTLD $@" + @echo 'const char build_msg[] = "Built : "__TIME__", "__DATE__; \ + const char platform_msg[] = "${PLAT_MSG}";' | \ +diff --git a/tools/encrypt_fw/Makefile b/tools/encrypt_fw/Makefile +index 2939b142be..924e5febab 100644 +--- a/tools/encrypt_fw/Makefile ++++ b/tools/encrypt_fw/Makefile +@@ -65,9 +65,9 @@ HOSTCC ?= gcc + + .PHONY: all clean realclean --openssl + +-all: ${BINARY} ++all: --openssl ${BINARY} + +-${BINARY}: --openssl ${OBJECTS} Makefile ++${BINARY}: ${OBJECTS} Makefile + @echo " HOSTLD $@" + @echo 'const char build_msg[] = "Built : "__TIME__", "__DATE__;' | \ + ${HOSTCC} -c ${HOSTCCFLAGS} -xc - -o src/build_msg.o +diff --git a/tools/fiptool/Makefile b/tools/fiptool/Makefile +index 2ebee33931..4bdebd9235 100644 +--- a/tools/fiptool/Makefile ++++ b/tools/fiptool/Makefile +@@ -68,9 +68,9 @@ DEPS := $(patsubst %.o,%.d,$(OBJECTS)) + + .PHONY: all clean distclean --openssl + +-all: ${PROJECT} ++all: --openssl ${PROJECT} + +-${PROJECT}: --openssl ${OBJECTS} Makefile ++${PROJECT}: ${OBJECTS} Makefile + @echo " HOSTLD $@" + ${Q}${HOSTCC} ${OBJECTS} -o $@ ${LDLIBS} + @${ECHO_BLANK_LINE} +-- +2.25.1 + diff --git a/boot/at91bootstrap/at91bootstrap.mk b/boot/at91bootstrap/at91bootstrap.mk index 1a084756fd2a..385957b5d47f 100644 --- a/boot/at91bootstrap/at91bootstrap.mk +++ b/boot/at91bootstrap/at91bootstrap.mk @@ -32,8 +32,14 @@ endef AT91BOOTSTRAP_POST_PATCH_HOOKS += AT91BOOTSTRAP_APPLY_CUSTOM_PATCHES endif +# The at91bootstrap Makefile doesn't support customizing +# CFLAGS/LDFLAGS, so we cheat and pass our custom flags through CC and +# LD. define AT91BOOTSTRAP_BUILD_CMDS - $(MAKE1) CROSS_COMPILE=$(TARGET_CROSS) -C $(@D)/$(AT91BOOTSTRAP_MAKE_SUBDIR) + $(MAKE1) CROSS_COMPILE=$(TARGET_CROSS) \ + CC="$(TARGET_CC) -fno-stack-protector" \ + LD="$(TARGET_CC) -fno-PIE" \ + -C $(@D)/$(AT91BOOTSTRAP_MAKE_SUBDIR) endef define AT91BOOTSTRAP_INSTALL_IMAGES_CMDS diff --git a/boot/at91dataflashboot/at91dataflashboot.mk b/boot/at91dataflashboot/at91dataflashboot.mk index c66f27e34313..cb329a90dff4 100644 --- a/boot/at91dataflashboot/at91dataflashboot.mk +++ b/boot/at91dataflashboot/at91dataflashboot.mk @@ -11,9 +11,14 @@ AT91DATAFLASHBOOT_SITE = ftp://www.at91.com/pub/buildroot AT91DATAFLASHBOOT_INSTALL_TARGET = NO AT91DATAFLASHBOOT_INSTALL_IMAGES = YES +AT91DATAFLASHBOOT_CFLAGS = $(TARGET_CFLAGS) -fno-stack-protector +ifeq ($(BR2_ARM_INSTRUCTIONS_THUMB),y) +AT91DATAFLASHBOOT_CFLAGS += -marm +endif + define AT91DATAFLASHBOOT_BUILD_CMDS make -C $(@D) CROSS_COMPILE=$(TARGET_CROSS) \ - CFLAGS="$(TARGET_CFLAGS) -fno-stack-protector" + CFLAGS="$(AT91DATAFLASHBOOT_CFLAGS)" endef define AT91DATAFLASHBOOT_INSTALL_IMAGES_CMDS diff --git a/boot/barebox/Config.in b/boot/barebox/Config.in index 3961c69c5673..dba4a1a8d62f 100644 --- a/boot/barebox/Config.in +++ b/boot/barebox/Config.in @@ -54,6 +54,18 @@ config BR2_TARGET_BAREBOX_CUSTOM_PATCH_DIR Most users may leave this empty +config BR2_TARGET_BAREBOX_NEEDS_OPENSSL + bool "Barebox needs OpenSSL" + help + Select this option if your Barebox board configuration + requires OpenSSL to be available on the host. + +config BR2_TARGET_BAREBOX_NEEDS_LIBUSB + bool "Barebox needs LibUSB" + help + Select this option if your Barebox board configuration + requires libUSB to be available on the host. + if BR2_TARGET_BAREBOX_CUSTOM_GIT config BR2_TARGET_BAREBOX_CUSTOM_GIT_REPO_URL diff --git a/boot/barebox/barebox.mk b/boot/barebox/barebox.mk index d7bcafe436ea..4c9df8d6180b 100644 --- a/boot/barebox/barebox.mk +++ b/boot/barebox/barebox.mk @@ -43,6 +43,14 @@ ifeq ($(BR2_TARGET_BAREBOX_LATEST_VERSION),y) $(1)_LICENSE_FILES = COPYING endif +ifeq ($(BR2_TARGET_BAREBOX_NEEDS_OPENSSL),y) +BAREBOX_DEPENDENCIES += host-openssl host-pkgconf +endif + +ifeq ($(BR2_TARGET_BAREBOX_NEEDS_LIBUSB),y) +BAREBOX_DEPENDENCIES += host-libusb host-pkgconf +endif + $(1)_CUSTOM_EMBEDDED_ENV_PATH = $$(call qstrip,$$(BR2_TARGET_$(1)_CUSTOM_EMBEDDED_ENV_PATH)) ifneq ($$(call qstrip,$$(BR2_TARGET_BAREBOX_CUSTOM_PATCH_DIR)),) @@ -73,6 +81,12 @@ endif $(1)_MAKE_FLAGS = ARCH=$$($(1)_ARCH) CROSS_COMPILE="$$(TARGET_CROSS)" $(1)_MAKE_ENV = $$(TARGET_MAKE_ENV) +$(1)_MAKE_ENV += \ + PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \ + PKG_CONFIG_SYSROOT_DIR="/" \ + PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 \ + PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 \ + PKG_CONFIG_LIBDIR="$(HOST_DIR)/lib/pkgconfig:$(HOST_DIR)/share/pkgconfig" ifeq ($$(BR2_REPRODUCIBLE),y) $(1)_MAKE_ENV += \ diff --git a/boot/boot-wrapper-aarch64/boot-wrapper-aarch64.mk b/boot/boot-wrapper-aarch64/boot-wrapper-aarch64.mk index 30b352f8e7df..95f7e227603d 100644 --- a/boot/boot-wrapper-aarch64/boot-wrapper-aarch64.mk +++ b/boot/boot-wrapper-aarch64/boot-wrapper-aarch64.mk @@ -4,7 +4,7 @@ # ################################################################################ -BOOT_WRAPPER_AARCH64_VERSION = 8d5a765251d9113c3c0f9fa14de42a9e7486fe8a +BOOT_WRAPPER_AARCH64_VERSION = 9f26a1c1f27bd6b5b66c265114848007fc22e4aa BOOT_WRAPPER_AARCH64_SITE = https://git.kernel.org/pub/scm/linux/kernel/git/mark/boot-wrapper-aarch64.git BOOT_WRAPPER_AARCH64_SITE_METHOD = git BOOT_WRAPPER_AARCH64_LICENSE = BSD-3-Clause diff --git a/boot/edk2/Config.in b/boot/edk2/Config.in index 855a62f70b31..bed503b16824 100644 --- a/boot/edk2/Config.in +++ b/boot/edk2/Config.in @@ -108,6 +108,21 @@ comment "QEMU SBSA depends on ATF not using EDK2 as BL33" endchoice +config BR2_TARGET_EDK2_OVMF_DEBUG_ON_SERIAL + bool "OVMF Debug on Serial" + depends on BR2_ENABLE_DEBUG + depends on BR2_TARGET_EDK2_PLATFORM_OVMF_I386 || \ + BR2_TARGET_EDK2_PLATFORM_OVMF_X64 + help + When EDK2 OVMF is built with debug, messages are printed to + IO port 0x402. Those messages are not shown in the normal + Qemu emulated serial port. Enabling this option will print + debug messages on the emulated serial port, potentially + mixing messages with UEFI serial console output. + + See OVMF README: + https://github.com/tianocore/edk2/blob/master/OvmfPkg/README + config BR2_TARGET_EDK2_FD_NAME string default "OVMF" if BR2_TARGET_EDK2_PLATFORM_OVMF_I386 diff --git a/boot/edk2/edk2.hash b/boot/edk2/edk2.hash index 94ee22ddc4e9..17918ee7bb27 100644 --- a/boot/edk2/edk2.hash +++ b/boot/edk2/edk2.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 c10520f269557d566e35fe8104141aa2865f9085ad2b3a30aae8a7e78a3ca5aa edk2-edk2-stable202208-br1.tar.gz +sha256 9389ad20bc75f2a8fa9e7c1b1948ef07481c94e96dec57ae2f9f9be9c754f92c edk2-edk2-stable202308-br1.tar.gz sha256 50ce20c9cfdb0e19ee34fe0a51fc0afe961f743697b068359ab2f862b494df80 License.txt diff --git a/boot/edk2/edk2.mk b/boot/edk2/edk2.mk index fb6b9a32808c..186854a14c0c 100644 --- a/boot/edk2/edk2.mk +++ b/boot/edk2/edk2.mk @@ -4,7 +4,7 @@ # ################################################################################ -EDK2_VERSION = edk2-stable202208 +EDK2_VERSION = edk2-stable202308 EDK2_SITE = https://github.com/tianocore/edk2 EDK2_SITE_METHOD = git EDK2_LICENSE = BSD-2-Clause-Patent @@ -16,8 +16,15 @@ EDK2_INSTALL_IMAGES = YES ifeq ($(BR2_ENABLE_DEBUG),y) EDK2_BUILD_TYPE = DEBUG +ifeq ($(BR2_TARGET_EDK2_OVMF_DEBUG_ON_SERIAL),y) +# DEBUG_ON_SERIAL_PORT is only tested to be set, so don't disable it, as +# it would still be set. +EDK2_BUILD_OPTS += -DDEBUG_ON_SERIAL_PORT +endif else EDK2_BUILD_TYPE = RELEASE +# DEBUG_ON_SERIAL_PORT is only valid in debug builds, so useless to set +# it (enabled or disabled) on a relase build. endif # Build system notes. diff --git a/boot/grub2/0002-grub-mkconfig-Restore-umask-for-the-grub.cfg.patch b/boot/grub2/0002-grub-mkconfig-Restore-umask-for-the-grub.cfg.patch index 0d6a1a6e0100..ba9c8a93444e 100644 --- a/boot/grub2/0002-grub-mkconfig-Restore-umask-for-the-grub.cfg.patch +++ b/boot/grub2/0002-grub-mkconfig-Restore-umask-for-the-grub.cfg.patch @@ -1,4 +1,4 @@ -From 8418defaf0902bdd8af188221ae54c5a3d6ad05d Mon Sep 17 00:00:00 2001 +From 4c1ad500e73d46c83dec369da85db39ae2fe62dd Mon Sep 17 00:00:00 2001 From: Michael Chang Date: Fri, 3 Dec 2021 16:13:28 +0800 Subject: [PATCH] grub-mkconfig: Restore umask for the grub.cfg @@ -17,7 +17,7 @@ Fixes: CVE-2021-3981 Signed-off-by: Michael Chang Reviewed-by: Daniel Kiper -[Upstream: https://git.savannah.gnu.org/gitweb/?p=grub.git;a=commit;h=0adec29674561034771c13e446069b41ef41e4d4] +Upstream: https://git.savannah.gnu.org/gitweb/?p=grub.git;a=commit;h=0adec29674561034771c13e446069b41ef41e4d4 Signed-off-by: Thomas Petazzoni --- util/grub-mkconfig.in | 3 +++ @@ -39,5 +39,5 @@ index f8cbb8d7a..84f356ea4 100644 fi fi -- -2.37.2 +2.41.0 diff --git a/boot/grub2/0003-loader-efi-chainloader-Simplify-the-loader-state.patch b/boot/grub2/0003-loader-efi-chainloader-Simplify-the-loader-state.patch new file mode 100644 index 000000000000..f6073add0bf7 --- /dev/null +++ b/boot/grub2/0003-loader-efi-chainloader-Simplify-the-loader-state.patch @@ -0,0 +1,126 @@ +From dfdc742bdb22be468035f96cce0be5fee23b6df5 Mon Sep 17 00:00:00 2001 +From: Chris Coulson +Date: Tue, 5 Apr 2022 10:02:04 +0100 +Subject: [PATCH] loader/efi/chainloader: Simplify the loader state + +The chainloader command retains the source buffer and device path passed +to LoadImage(), requiring the unload hook passed to grub_loader_set() to +free them. It isn't required to retain this state though - they aren't +required by StartImage() or anything else in the boot hook, so clean them +up before grub_cmd_chainloader() finishes. + +Signed-off-by: Chris Coulson +Reviewed-by: Daniel Kiper +Upstream: 1469983ebb9674753ad333d37087fb8cb20e1dce +[Thomas: needed to cherry-pick +04c86e0bb7b58fc2f913f798cdb18934933e532d which fixes CVE-2022-28736] +Signed-off-by: Thomas Petazzoni +--- + grub-core/loader/efi/chainloader.c | 38 +++++++++++++++++------------- + 1 file changed, 21 insertions(+), 17 deletions(-) + +diff --git a/grub-core/loader/efi/chainloader.c b/grub-core/loader/efi/chainloader.c +index 2bd80f4db..d1602c89b 100644 +--- a/grub-core/loader/efi/chainloader.c ++++ b/grub-core/loader/efi/chainloader.c +@@ -44,25 +44,20 @@ GRUB_MOD_LICENSE ("GPLv3+"); + + static grub_dl_t my_mod; + +-static grub_efi_physical_address_t address; +-static grub_efi_uintn_t pages; +-static grub_efi_device_path_t *file_path; + static grub_efi_handle_t image_handle; +-static grub_efi_char16_t *cmdline; + + static grub_err_t + grub_chainloader_unload (void) + { ++ grub_efi_loaded_image_t *loaded_image; + grub_efi_boot_services_t *b; + ++ loaded_image = grub_efi_get_loaded_image (image_handle); ++ if (loaded_image != NULL) ++ grub_free (loaded_image->load_options); ++ + b = grub_efi_system_table->boot_services; + efi_call_1 (b->unload_image, image_handle); +- efi_call_2 (b->free_pages, address, pages); +- +- grub_free (file_path); +- grub_free (cmdline); +- cmdline = 0; +- file_path = 0; + + grub_dl_unref (my_mod); + return GRUB_ERR_NONE; +@@ -140,7 +135,7 @@ make_file_path (grub_efi_device_path_t *dp, const char *filename) + char *dir_start; + char *dir_end; + grub_size_t size; +- grub_efi_device_path_t *d; ++ grub_efi_device_path_t *d, *file_path; + + dir_start = grub_strchr (filename, ')'); + if (! dir_start) +@@ -222,11 +217,14 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)), + grub_efi_status_t status; + grub_efi_boot_services_t *b; + grub_device_t dev = 0; +- grub_efi_device_path_t *dp = 0; ++ grub_efi_device_path_t *dp = NULL, *file_path = NULL; + grub_efi_loaded_image_t *loaded_image; + char *filename; + void *boot_image = 0; + grub_efi_handle_t dev_handle = 0; ++ grub_efi_physical_address_t address = 0; ++ grub_efi_uintn_t pages = 0; ++ grub_efi_char16_t *cmdline = NULL; + + if (argc == 0) + return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); +@@ -234,11 +232,6 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)), + + grub_dl_ref (my_mod); + +- /* Initialize some global variables. */ +- address = 0; +- image_handle = 0; +- file_path = 0; +- + b = grub_efi_system_table->boot_services; + + file = grub_file_open (filename, GRUB_FILE_TYPE_EFI_CHAINLOADED_IMAGE); +@@ -408,6 +401,10 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)), + grub_file_close (file); + grub_device_close (dev); + ++ /* We're finished with the source image buffer and file path now. */ ++ efi_call_2 (b->free_pages, address, pages); ++ grub_free (file_path); ++ + grub_loader_set (grub_chainloader_boot, grub_chainloader_unload, 0); + return 0; + +@@ -419,11 +416,18 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)), + if (file) + grub_file_close (file); + ++ grub_free (cmdline); + grub_free (file_path); + + if (address) + efi_call_2 (b->free_pages, address, pages); + ++ if (image_handle != NULL) ++ { ++ efi_call_1 (b->unload_image, image_handle); ++ image_handle = NULL; ++ } ++ + grub_dl_unref (my_mod); + + return grub_errno; +-- +2.41.0 + diff --git a/boot/grub2/0004-commands-boot-Add-API-to-pass-context-to-loader.patch b/boot/grub2/0004-commands-boot-Add-API-to-pass-context-to-loader.patch new file mode 100644 index 000000000000..30b410e38a67 --- /dev/null +++ b/boot/grub2/0004-commands-boot-Add-API-to-pass-context-to-loader.patch @@ -0,0 +1,165 @@ +From 8b6336696d93b51703c2015eff3e2d8a02145e43 Mon Sep 17 00:00:00 2001 +From: Chris Coulson +Date: Tue, 5 Apr 2022 10:58:28 +0100 +Subject: [PATCH] commands/boot: Add API to pass context to loader + +Loaders rely on global variables for saving context which is consumed +in the boot hook and freed in the unload hook. In the case where a loader +command is executed twice, calling grub_loader_set() a second time executes +the unload hook, but in some cases this runs when the loader's global +context has already been updated, resulting in the updated context being +freed and potential use-after-free bugs when the boot hook is subsequently +called. + +This adds a new API, grub_loader_set_ex(), which allows a loader to specify +context that is passed to its boot and unload hooks. This is an alternative +to requiring that loaders call grub_loader_unset() before mutating their +global context. + +Signed-off-by: Chris Coulson +Reviewed-by: Daniel Kiper +Upstream: 14ceb3b3ff6db664649138442b6562c114dcf56e +[Thomas: needed to backport 04c86e0bb7b58fc2f913f798cdb18934933e532d, +which fixes CVE-2022-28736] +Signed-off-by: Thomas Petazzoni +--- + grub-core/commands/boot.c | 66 ++++++++++++++++++++++++++++++++++----- + include/grub/loader.h | 5 +++ + 2 files changed, 63 insertions(+), 8 deletions(-) + +diff --git a/grub-core/commands/boot.c b/grub-core/commands/boot.c +index bbca81e94..61514788e 100644 +--- a/grub-core/commands/boot.c ++++ b/grub-core/commands/boot.c +@@ -27,10 +27,20 @@ + + GRUB_MOD_LICENSE ("GPLv3+"); + +-static grub_err_t (*grub_loader_boot_func) (void); +-static grub_err_t (*grub_loader_unload_func) (void); ++static grub_err_t (*grub_loader_boot_func) (void *context); ++static grub_err_t (*grub_loader_unload_func) (void *context); ++static void *grub_loader_context; + static int grub_loader_flags; + ++struct grub_simple_loader_hooks ++{ ++ grub_err_t (*boot) (void); ++ grub_err_t (*unload) (void); ++}; ++ ++/* Don't heap allocate this to avoid making grub_loader_set() fallible. */ ++static struct grub_simple_loader_hooks simple_loader_hooks; ++ + struct grub_preboot + { + grub_err_t (*preboot_func) (int); +@@ -44,6 +54,29 @@ static int grub_loader_loaded; + static struct grub_preboot *preboots_head = 0, + *preboots_tail = 0; + ++static grub_err_t ++grub_simple_boot_hook (void *context) ++{ ++ struct grub_simple_loader_hooks *hooks; ++ ++ hooks = (struct grub_simple_loader_hooks *) context; ++ return hooks->boot (); ++} ++ ++static grub_err_t ++grub_simple_unload_hook (void *context) ++{ ++ struct grub_simple_loader_hooks *hooks; ++ grub_err_t ret; ++ ++ hooks = (struct grub_simple_loader_hooks *) context; ++ ++ ret = hooks->unload (); ++ grub_memset (hooks, 0, sizeof (*hooks)); ++ ++ return ret; ++} ++ + int + grub_loader_is_loaded (void) + { +@@ -110,28 +143,45 @@ grub_loader_unregister_preboot_hook (struct grub_preboot *hnd) + } + + void +-grub_loader_set (grub_err_t (*boot) (void), +- grub_err_t (*unload) (void), +- int flags) ++grub_loader_set_ex (grub_err_t (*boot) (void *context), ++ grub_err_t (*unload) (void *context), ++ void *context, ++ int flags) + { + if (grub_loader_loaded && grub_loader_unload_func) +- grub_loader_unload_func (); ++ grub_loader_unload_func (grub_loader_context); + + grub_loader_boot_func = boot; + grub_loader_unload_func = unload; ++ grub_loader_context = context; + grub_loader_flags = flags; + + grub_loader_loaded = 1; + } + ++void ++grub_loader_set (grub_err_t (*boot) (void), ++ grub_err_t (*unload) (void), ++ int flags) ++{ ++ grub_loader_set_ex (grub_simple_boot_hook, ++ grub_simple_unload_hook, ++ &simple_loader_hooks, ++ flags); ++ ++ simple_loader_hooks.boot = boot; ++ simple_loader_hooks.unload = unload; ++} ++ + void + grub_loader_unset(void) + { + if (grub_loader_loaded && grub_loader_unload_func) +- grub_loader_unload_func (); ++ grub_loader_unload_func (grub_loader_context); + + grub_loader_boot_func = 0; + grub_loader_unload_func = 0; ++ grub_loader_context = 0; + + grub_loader_loaded = 0; + } +@@ -158,7 +208,7 @@ grub_loader_boot (void) + return err; + } + } +- err = (grub_loader_boot_func) (); ++ err = (grub_loader_boot_func) (grub_loader_context); + + for (cur = preboots_tail; cur; cur = cur->prev) + if (! err) +diff --git a/include/grub/loader.h b/include/grub/loader.h +index b20864282..97f231054 100644 +--- a/include/grub/loader.h ++++ b/include/grub/loader.h +@@ -40,6 +40,11 @@ void EXPORT_FUNC (grub_loader_set) (grub_err_t (*boot) (void), + grub_err_t (*unload) (void), + int flags); + ++void EXPORT_FUNC (grub_loader_set_ex) (grub_err_t (*boot) (void *context), ++ grub_err_t (*unload) (void *context), ++ void *context, ++ int flags); ++ + /* Unset current loader, if any. */ + void EXPORT_FUNC (grub_loader_unset) (void); + +-- +2.41.0 + diff --git a/boot/grub2/0005-loader-efi-chainloader-Use-grub_loader_set_ex.patch b/boot/grub2/0005-loader-efi-chainloader-Use-grub_loader_set_ex.patch new file mode 100644 index 000000000000..4308e3170f6b --- /dev/null +++ b/boot/grub2/0005-loader-efi-chainloader-Use-grub_loader_set_ex.patch @@ -0,0 +1,80 @@ +From 583fca49f413e00fe26f8ae7abe0837bbc574f79 Mon Sep 17 00:00:00 2001 +From: Chris Coulson +Date: Tue, 5 Apr 2022 11:48:58 +0100 +Subject: [PATCH] loader/efi/chainloader: Use grub_loader_set_ex() + +This ports the EFI chainloader to use grub_loader_set_ex() in order to fix +a use-after-free bug that occurs when grub_cmd_chainloader() is executed +more than once before a boot attempt is performed. + +Fixes: CVE-2022-28736 + +Signed-off-by: Chris Coulson +Reviewed-by: Daniel Kiper +Upstream: 04c86e0bb7b58fc2f913f798cdb18934933e532d +Signed-off-by: Thomas Petazzoni +--- + grub-core/loader/efi/chainloader.c | 16 +++++++--------- + 1 file changed, 7 insertions(+), 9 deletions(-) + +diff --git a/grub-core/loader/efi/chainloader.c b/grub-core/loader/efi/chainloader.c +index d1602c89b..7557eb269 100644 +--- a/grub-core/loader/efi/chainloader.c ++++ b/grub-core/loader/efi/chainloader.c +@@ -44,11 +44,10 @@ GRUB_MOD_LICENSE ("GPLv3+"); + + static grub_dl_t my_mod; + +-static grub_efi_handle_t image_handle; +- + static grub_err_t +-grub_chainloader_unload (void) ++grub_chainloader_unload (void *context) + { ++ grub_efi_handle_t image_handle = (grub_efi_handle_t) context; + grub_efi_loaded_image_t *loaded_image; + grub_efi_boot_services_t *b; + +@@ -64,8 +63,9 @@ grub_chainloader_unload (void) + } + + static grub_err_t +-grub_chainloader_boot (void) ++grub_chainloader_boot (void *context) + { ++ grub_efi_handle_t image_handle = (grub_efi_handle_t) context; + grub_efi_boot_services_t *b; + grub_efi_status_t status; + grub_efi_uintn_t exit_data_size; +@@ -225,6 +225,7 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)), + grub_efi_physical_address_t address = 0; + grub_efi_uintn_t pages = 0; + grub_efi_char16_t *cmdline = NULL; ++ grub_efi_handle_t image_handle = NULL; + + if (argc == 0) + return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected")); +@@ -405,7 +406,7 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)), + efi_call_2 (b->free_pages, address, pages); + grub_free (file_path); + +- grub_loader_set (grub_chainloader_boot, grub_chainloader_unload, 0); ++ grub_loader_set_ex (grub_chainloader_boot, grub_chainloader_unload, image_handle, 0); + return 0; + + fail: +@@ -423,10 +424,7 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)), + efi_call_2 (b->free_pages, address, pages); + + if (image_handle != NULL) +- { +- efi_call_1 (b->unload_image, image_handle); +- image_handle = NULL; +- } ++ efi_call_1 (b->unload_image, image_handle); + + grub_dl_unref (my_mod); + +-- +2.41.0 + diff --git a/boot/grub2/0006-kern-efi-sb-Reject-non-kernel-files-in-the-shim_lock.patch b/boot/grub2/0006-kern-efi-sb-Reject-non-kernel-files-in-the-shim_lock.patch new file mode 100644 index 000000000000..b6fec1e6bbec --- /dev/null +++ b/boot/grub2/0006-kern-efi-sb-Reject-non-kernel-files-in-the-shim_lock.patch @@ -0,0 +1,105 @@ +From 1e1b1271b7a7c6ac20a4c5f8e0dc29614b4975d1 Mon Sep 17 00:00:00 2001 +From: Julian Andres Klode +Date: Thu, 2 Dec 2021 15:03:53 +0100 +Subject: [PATCH] kern/efi/sb: Reject non-kernel files in the shim_lock + verifier + +We must not allow other verifiers to pass things like the GRUB modules. +Instead of maintaining a blocklist, maintain an allowlist of things +that we do not care about. + +This allowlist really should be made reusable, and shared by the +lockdown verifier, but this is the minimal patch addressing +security concerns where the TPM verifier was able to mark modules +as verified (or the OpenPGP verifier for that matter), when it +should not do so on shim-powered secure boot systems. + +Fixes: CVE-2022-28735 + +Signed-off-by: Julian Andres Klode +Reviewed-by: Daniel Kiper +Upstream: 6fe755c5c07bb386fda58306bfd19e4a1c974c53 +Signed-off-by: Thomas Petazzoni +--- + grub-core/kern/efi/sb.c | 39 ++++++++++++++++++++++++++++++++++++--- + include/grub/verify.h | 1 + + 2 files changed, 37 insertions(+), 3 deletions(-) + +diff --git a/grub-core/kern/efi/sb.c b/grub-core/kern/efi/sb.c +index c52ec6226..89c4bb3fd 100644 +--- a/grub-core/kern/efi/sb.c ++++ b/grub-core/kern/efi/sb.c +@@ -119,10 +119,11 @@ shim_lock_verifier_init (grub_file_t io __attribute__ ((unused)), + void **context __attribute__ ((unused)), + enum grub_verify_flags *flags) + { +- *flags = GRUB_VERIFY_FLAGS_SKIP_VERIFICATION; ++ *flags = GRUB_VERIFY_FLAGS_NONE; + + switch (type & GRUB_FILE_TYPE_MASK) + { ++ /* Files we check. */ + case GRUB_FILE_TYPE_LINUX_KERNEL: + case GRUB_FILE_TYPE_MULTIBOOT_KERNEL: + case GRUB_FILE_TYPE_BSD_KERNEL: +@@ -130,11 +131,43 @@ shim_lock_verifier_init (grub_file_t io __attribute__ ((unused)), + case GRUB_FILE_TYPE_PLAN9_KERNEL: + case GRUB_FILE_TYPE_EFI_CHAINLOADED_IMAGE: + *flags = GRUB_VERIFY_FLAGS_SINGLE_CHUNK; ++ return GRUB_ERR_NONE; + +- /* Fall through. */ ++ /* Files that do not affect secureboot state. */ ++ case GRUB_FILE_TYPE_NONE: ++ case GRUB_FILE_TYPE_LOOPBACK: ++ case GRUB_FILE_TYPE_LINUX_INITRD: ++ case GRUB_FILE_TYPE_OPENBSD_RAMDISK: ++ case GRUB_FILE_TYPE_XNU_RAMDISK: ++ case GRUB_FILE_TYPE_SIGNATURE: ++ case GRUB_FILE_TYPE_PUBLIC_KEY: ++ case GRUB_FILE_TYPE_PUBLIC_KEY_TRUST: ++ case GRUB_FILE_TYPE_PRINT_BLOCKLIST: ++ case GRUB_FILE_TYPE_TESTLOAD: ++ case GRUB_FILE_TYPE_GET_SIZE: ++ case GRUB_FILE_TYPE_FONT: ++ case GRUB_FILE_TYPE_ZFS_ENCRYPTION_KEY: ++ case GRUB_FILE_TYPE_CAT: ++ case GRUB_FILE_TYPE_HEXCAT: ++ case GRUB_FILE_TYPE_CMP: ++ case GRUB_FILE_TYPE_HASHLIST: ++ case GRUB_FILE_TYPE_TO_HASH: ++ case GRUB_FILE_TYPE_KEYBOARD_LAYOUT: ++ case GRUB_FILE_TYPE_PIXMAP: ++ case GRUB_FILE_TYPE_GRUB_MODULE_LIST: ++ case GRUB_FILE_TYPE_CONFIG: ++ case GRUB_FILE_TYPE_THEME: ++ case GRUB_FILE_TYPE_GETTEXT_CATALOG: ++ case GRUB_FILE_TYPE_FS_SEARCH: ++ case GRUB_FILE_TYPE_LOADENV: ++ case GRUB_FILE_TYPE_SAVEENV: ++ case GRUB_FILE_TYPE_VERIFY_SIGNATURE: ++ *flags = GRUB_VERIFY_FLAGS_SKIP_VERIFICATION; ++ return GRUB_ERR_NONE; + ++ /* Other files. */ + default: +- return GRUB_ERR_NONE; ++ return grub_error (GRUB_ERR_ACCESS_DENIED, N_("prohibited by secure boot policy")); + } + } + +diff --git a/include/grub/verify.h b/include/grub/verify.h +index cd129c398..672ae1692 100644 +--- a/include/grub/verify.h ++++ b/include/grub/verify.h +@@ -24,6 +24,7 @@ + + enum grub_verify_flags + { ++ GRUB_VERIFY_FLAGS_NONE = 0, + GRUB_VERIFY_FLAGS_SKIP_VERIFICATION = 1, + GRUB_VERIFY_FLAGS_SINGLE_CHUNK = 2, + /* Defer verification to another authority. */ +-- +2.41.0 + diff --git a/boot/grub2/0007-video-Remove-trailing-whitespaces.patch b/boot/grub2/0007-video-Remove-trailing-whitespaces.patch new file mode 100644 index 000000000000..94d6aeefe7db --- /dev/null +++ b/boot/grub2/0007-video-Remove-trailing-whitespaces.patch @@ -0,0 +1,689 @@ +From 1faa412c502c7c4ca1230fc152be30b88847fdd2 Mon Sep 17 00:00:00 2001 +From: Elyes Haouas +Date: Fri, 4 Mar 2022 07:42:13 +0100 +Subject: [PATCH] video: Remove trailing whitespaces + +Signed-off-by: Elyes Haouas +Reviewed-by: Daniel Kiper +Upstream: 1f48917d8ddb490dcdc70176e0f58136b7f7811a +[Thomas: needed to backport patches fixing CVEs in the video code] +Signed-off-by: Thomas Petazzoni +--- + grub-core/video/bochs.c | 2 +- + grub-core/video/capture.c | 2 +- + grub-core/video/cirrus.c | 4 ++-- + grub-core/video/coreboot/cbfb.c | 2 +- + grub-core/video/efi_gop.c | 22 +++++++++---------- + grub-core/video/fb/fbblit.c | 8 +++---- + grub-core/video/fb/video_fb.c | 10 ++++----- + grub-core/video/i386/pc/vbe.c | 34 ++++++++++++++--------------- + grub-core/video/i386/pc/vga.c | 6 ++--- + grub-core/video/ieee1275.c | 4 ++-- + grub-core/video/radeon_fuloong2e.c | 6 ++--- + grub-core/video/radeon_yeeloong3a.c | 6 ++--- + grub-core/video/readers/png.c | 2 +- + grub-core/video/readers/tga.c | 2 +- + grub-core/video/sis315_init.c | 2 +- + grub-core/video/sis315pro.c | 8 +++---- + grub-core/video/sm712.c | 10 ++++----- + grub-core/video/video.c | 8 +++---- + 18 files changed, 69 insertions(+), 69 deletions(-) + +diff --git a/grub-core/video/bochs.c b/grub-core/video/bochs.c +index 30ea1bd82..edc651697 100644 +--- a/grub-core/video/bochs.c ++++ b/grub-core/video/bochs.c +@@ -212,7 +212,7 @@ find_card (grub_pci_device_t dev, grub_pci_id_t pciid, void *data) + + if (((class >> 16) & 0xffff) != 0x0300 || pciid != 0x11111234) + return 0; +- ++ + addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0); + framebuffer.base = grub_pci_read (addr) & GRUB_PCI_ADDR_MEM_MASK; + if (!framebuffer.base) +diff --git a/grub-core/video/capture.c b/grub-core/video/capture.c +index 4d3195e01..c653d89f9 100644 +--- a/grub-core/video/capture.c ++++ b/grub-core/video/capture.c +@@ -92,7 +92,7 @@ grub_video_capture_start (const struct grub_video_mode_info *mode_info, + framebuffer.ptr = grub_calloc (framebuffer.mode_info.height, framebuffer.mode_info.pitch); + if (!framebuffer.ptr) + return grub_errno; +- ++ + err = grub_video_fb_create_render_target_from_pointer (&framebuffer.render_target, + &framebuffer.mode_info, + framebuffer.ptr); +diff --git a/grub-core/video/cirrus.c b/grub-core/video/cirrus.c +index e2149e8ce..f5542ccdc 100644 +--- a/grub-core/video/cirrus.c ++++ b/grub-core/video/cirrus.c +@@ -354,11 +354,11 @@ grub_video_cirrus_setup (unsigned int width, unsigned int height, + grub_uint8_t sr_ext = 0, hidden_dac = 0; + + grub_vga_set_geometry (&config, grub_vga_cr_write); +- ++ + grub_vga_gr_write (GRUB_VGA_GR_MODE_256_COLOR | GRUB_VGA_GR_MODE_READ_MODE1, + GRUB_VGA_GR_MODE); + grub_vga_gr_write (GRUB_VGA_GR_GR6_GRAPHICS_MODE, GRUB_VGA_GR_GR6); +- ++ + grub_vga_sr_write (GRUB_VGA_SR_MEMORY_MODE_NORMAL, GRUB_VGA_SR_MEMORY_MODE); + + grub_vga_cr_write ((config.pitch >> CIRRUS_CR_EXTENDED_DISPLAY_PITCH_SHIFT) +diff --git a/grub-core/video/coreboot/cbfb.c b/grub-core/video/coreboot/cbfb.c +index 9af81fa5b..986003c51 100644 +--- a/grub-core/video/coreboot/cbfb.c ++++ b/grub-core/video/coreboot/cbfb.c +@@ -106,7 +106,7 @@ grub_video_cbfb_setup (unsigned int width, unsigned int height, + + grub_video_fb_set_palette (0, GRUB_VIDEO_FBSTD_NUMCOLORS, + grub_video_fbstd_colors); +- ++ + return err; + } + +diff --git a/grub-core/video/efi_gop.c b/grub-core/video/efi_gop.c +index b7590dc6c..7a5054631 100644 +--- a/grub-core/video/efi_gop.c ++++ b/grub-core/video/efi_gop.c +@@ -273,7 +273,7 @@ grub_video_gop_iterate (int (*hook) (const struct grub_video_mode_info *info, vo + grub_efi_status_t status; + struct grub_efi_gop_mode_info *info = NULL; + struct grub_video_mode_info mode_info; +- ++ + status = efi_call_4 (gop->query_mode, gop, mode, &size, &info); + + if (status) +@@ -390,7 +390,7 @@ grub_video_gop_setup (unsigned int width, unsigned int height, + found = 1; + } + } +- ++ + if (!found) + { + unsigned mode; +@@ -399,7 +399,7 @@ grub_video_gop_setup (unsigned int width, unsigned int height, + { + grub_efi_uintn_t size; + grub_efi_status_t status; +- ++ + status = efi_call_4 (gop->query_mode, gop, mode, &size, &info); + if (status) + { +@@ -472,11 +472,11 @@ grub_video_gop_setup (unsigned int width, unsigned int height, + framebuffer.ptr = (void *) (grub_addr_t) gop->mode->fb_base; + framebuffer.offscreen + = grub_malloc (framebuffer.mode_info.height +- * framebuffer.mode_info.width ++ * framebuffer.mode_info.width + * sizeof (struct grub_efi_gop_blt_pixel)); + + buffer = framebuffer.offscreen; +- ++ + if (!buffer) + { + grub_dprintf ("video", "GOP: couldn't allocate shadow\n"); +@@ -485,11 +485,11 @@ grub_video_gop_setup (unsigned int width, unsigned int height, + &framebuffer.mode_info); + buffer = framebuffer.ptr; + } +- ++ + grub_dprintf ("video", "GOP: initialising FB @ %p %dx%dx%d\n", + framebuffer.ptr, framebuffer.mode_info.width, + framebuffer.mode_info.height, framebuffer.mode_info.bpp); +- ++ + err = grub_video_fb_create_render_target_from_pointer + (&framebuffer.render_target, &framebuffer.mode_info, buffer); + +@@ -498,15 +498,15 @@ grub_video_gop_setup (unsigned int width, unsigned int height, + grub_dprintf ("video", "GOP: Couldn't create FB target\n"); + return err; + } +- ++ + err = grub_video_fb_set_active_render_target (framebuffer.render_target); +- ++ + if (err) + { + grub_dprintf ("video", "GOP: Couldn't set FB target\n"); + return err; + } +- ++ + err = grub_video_fb_set_palette (0, GRUB_VIDEO_FBSTD_NUMCOLORS, + grub_video_fbstd_colors); + +@@ -514,7 +514,7 @@ grub_video_gop_setup (unsigned int width, unsigned int height, + grub_dprintf ("video", "GOP: Couldn't set palette\n"); + else + grub_dprintf ("video", "GOP: Success\n"); +- ++ + return err; + } + +diff --git a/grub-core/video/fb/fbblit.c b/grub-core/video/fb/fbblit.c +index d55924837..1010ef393 100644 +--- a/grub-core/video/fb/fbblit.c ++++ b/grub-core/video/fb/fbblit.c +@@ -466,7 +466,7 @@ grub_video_fbblit_replace_24bit_indexa (struct grub_video_fbblit_info *dst, + for (i = 0; i < width; i++) + { + register grub_uint32_t col; +- if (*srcptr == 0xf0) ++ if (*srcptr == 0xf0) + col = palette[16]; + else + col = palette[*srcptr & 0xf]; +@@ -478,7 +478,7 @@ grub_video_fbblit_replace_24bit_indexa (struct grub_video_fbblit_info *dst, + *dstptr++ = col >> 0; + *dstptr++ = col >> 8; + *dstptr++ = col >> 16; +-#endif ++#endif + srcptr++; + } + +@@ -651,7 +651,7 @@ grub_video_fbblit_blend_24bit_indexa (struct grub_video_fbblit_info *dst, + for (i = 0; i < width; i++) + { + register grub_uint32_t col; +- if (*srcptr != 0xf0) ++ if (*srcptr != 0xf0) + { + col = palette[*srcptr & 0xf]; + #ifdef GRUB_CPU_WORDS_BIGENDIAN +@@ -662,7 +662,7 @@ grub_video_fbblit_blend_24bit_indexa (struct grub_video_fbblit_info *dst, + *dstptr++ = col >> 0; + *dstptr++ = col >> 8; + *dstptr++ = col >> 16; +-#endif ++#endif + } + else + dstptr += 3; +diff --git a/grub-core/video/fb/video_fb.c b/grub-core/video/fb/video_fb.c +index ae6b89f9a..fa4ebde26 100644 +--- a/grub-core/video/fb/video_fb.c ++++ b/grub-core/video/fb/video_fb.c +@@ -754,7 +754,7 @@ grub_video_fb_unmap_color_int (struct grub_video_fbblit_info * source, + *alpha = 0; + return; + } +- ++ + /* If we have an out-of-bounds color, return transparent black. */ + if (color > 255) + { +@@ -1141,7 +1141,7 @@ grub_video_fb_scroll (grub_video_color_t color, int dx, int dy) + /* If everything is aligned on 32-bit use 32-bit copy. */ + if ((grub_addr_t) grub_video_fb_get_video_ptr (&target, src_x, src_y) + % sizeof (grub_uint32_t) == 0 +- && (grub_addr_t) grub_video_fb_get_video_ptr (&target, dst_x, dst_y) ++ && (grub_addr_t) grub_video_fb_get_video_ptr (&target, dst_x, dst_y) + % sizeof (grub_uint32_t) == 0 + && linelen % sizeof (grub_uint32_t) == 0 + && linedelta % sizeof (grub_uint32_t) == 0) +@@ -1155,7 +1155,7 @@ grub_video_fb_scroll (grub_video_color_t color, int dx, int dy) + else if ((grub_addr_t) grub_video_fb_get_video_ptr (&target, src_x, src_y) + % sizeof (grub_uint16_t) == 0 + && (grub_addr_t) grub_video_fb_get_video_ptr (&target, +- dst_x, dst_y) ++ dst_x, dst_y) + % sizeof (grub_uint16_t) == 0 + && linelen % sizeof (grub_uint16_t) == 0 + && linedelta % sizeof (grub_uint16_t) == 0) +@@ -1170,7 +1170,7 @@ grub_video_fb_scroll (grub_video_color_t color, int dx, int dy) + { + grub_uint8_t *src, *dst; + DO_SCROLL +- } ++ } + } + + /* 4. Fill empty space with specified color. In this implementation +@@ -1615,7 +1615,7 @@ grub_video_fb_setup (unsigned int mode_type, unsigned int mode_mask, + framebuffer.render_target = framebuffer.back_target; + return GRUB_ERR_NONE; + } +- ++ + mode_info->mode_type &= ~(GRUB_VIDEO_MODE_TYPE_DOUBLE_BUFFERED + | GRUB_VIDEO_MODE_TYPE_UPDATING_SWAP); + +diff --git a/grub-core/video/i386/pc/vbe.c b/grub-core/video/i386/pc/vbe.c +index b7f911926..0e65b5206 100644 +--- a/grub-core/video/i386/pc/vbe.c ++++ b/grub-core/video/i386/pc/vbe.c +@@ -219,7 +219,7 @@ grub_vbe_disable_mtrr (int mtrr) + } + + /* Call VESA BIOS 0x4f09 to set palette data, return status. */ +-static grub_vbe_status_t ++static grub_vbe_status_t + grub_vbe_bios_set_palette_data (grub_uint32_t color_count, + grub_uint32_t start_index, + struct grub_vbe_palette_data *palette_data) +@@ -237,7 +237,7 @@ grub_vbe_bios_set_palette_data (grub_uint32_t color_count, + } + + /* Call VESA BIOS 0x4f00 to get VBE Controller Information, return status. */ +-grub_vbe_status_t ++grub_vbe_status_t + grub_vbe_bios_get_controller_info (struct grub_vbe_info_block *ci) + { + struct grub_bios_int_registers regs; +@@ -251,7 +251,7 @@ grub_vbe_bios_get_controller_info (struct grub_vbe_info_block *ci) + } + + /* Call VESA BIOS 0x4f01 to get VBE Mode Information, return status. */ +-grub_vbe_status_t ++grub_vbe_status_t + grub_vbe_bios_get_mode_info (grub_uint32_t mode, + struct grub_vbe_mode_info_block *mode_info) + { +@@ -285,7 +285,7 @@ grub_vbe_bios_set_mode (grub_uint32_t mode, + } + + /* Call VESA BIOS 0x4f03 to return current VBE Mode, return status. */ +-grub_vbe_status_t ++grub_vbe_status_t + grub_vbe_bios_get_mode (grub_uint32_t *mode) + { + struct grub_bios_int_registers regs; +@@ -298,7 +298,7 @@ grub_vbe_bios_get_mode (grub_uint32_t *mode) + return regs.eax & 0xffff; + } + +-grub_vbe_status_t ++grub_vbe_status_t + grub_vbe_bios_getset_dac_palette_width (int set, int *dac_mask_size) + { + struct grub_bios_int_registers regs; +@@ -346,7 +346,7 @@ grub_vbe_bios_get_memory_window (grub_uint32_t window, + } + + /* Call VESA BIOS 0x4f06 to set scanline length (in bytes), return status. */ +-grub_vbe_status_t ++grub_vbe_status_t + grub_vbe_bios_set_scanline_length (grub_uint32_t length) + { + struct grub_bios_int_registers regs; +@@ -354,14 +354,14 @@ grub_vbe_bios_set_scanline_length (grub_uint32_t length) + regs.ecx = length; + regs.eax = 0x4f06; + /* BL = 2, Set Scan Line in Bytes. */ +- regs.ebx = 0x0002; ++ regs.ebx = 0x0002; + regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; + grub_bios_interrupt (0x10, ®s); + return regs.eax & 0xffff; + } + + /* Call VESA BIOS 0x4f06 to return scanline length (in bytes), return status. */ +-grub_vbe_status_t ++grub_vbe_status_t + grub_vbe_bios_get_scanline_length (grub_uint32_t *length) + { + struct grub_bios_int_registers regs; +@@ -377,7 +377,7 @@ grub_vbe_bios_get_scanline_length (grub_uint32_t *length) + } + + /* Call VESA BIOS 0x4f07 to set display start, return status. */ +-static grub_vbe_status_t ++static grub_vbe_status_t + grub_vbe_bios_set_display_start (grub_uint32_t x, grub_uint32_t y) + { + struct grub_bios_int_registers regs; +@@ -390,7 +390,7 @@ grub_vbe_bios_set_display_start (grub_uint32_t x, grub_uint32_t y) + regs.edx = y; + regs.eax = 0x4f07; + /* BL = 80h, Set Display Start during Vertical Retrace. */ +- regs.ebx = 0x0080; ++ regs.ebx = 0x0080; + regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT; + grub_bios_interrupt (0x10, ®s); + +@@ -401,7 +401,7 @@ grub_vbe_bios_set_display_start (grub_uint32_t x, grub_uint32_t y) + } + + /* Call VESA BIOS 0x4f07 to get display start, return status. */ +-grub_vbe_status_t ++grub_vbe_status_t + grub_vbe_bios_get_display_start (grub_uint32_t *x, + grub_uint32_t *y) + { +@@ -419,7 +419,7 @@ grub_vbe_bios_get_display_start (grub_uint32_t *x, + } + + /* Call VESA BIOS 0x4f0a. */ +-grub_vbe_status_t ++grub_vbe_status_t + grub_vbe_bios_get_pm_interface (grub_uint16_t *segment, grub_uint16_t *offset, + grub_uint16_t *length) + { +@@ -896,7 +896,7 @@ vbe2videoinfo (grub_uint32_t mode, + case GRUB_VBE_MEMORY_MODEL_YUV: + mode_info->mode_type |= GRUB_VIDEO_MODE_TYPE_YUV; + break; +- ++ + case GRUB_VBE_MEMORY_MODEL_DIRECT_COLOR: + mode_info->mode_type |= GRUB_VIDEO_MODE_TYPE_RGB; + break; +@@ -923,10 +923,10 @@ vbe2videoinfo (grub_uint32_t mode, + break; + case 8: + mode_info->bytes_per_pixel = 1; +- break; ++ break; + case 4: + mode_info->bytes_per_pixel = 0; +- break; ++ break; + } + + if (controller_info.version >= 0x300) +@@ -976,7 +976,7 @@ grub_video_vbe_iterate (int (*hook) (const struct grub_video_mode_info *info, vo + + static grub_err_t + grub_video_vbe_setup (unsigned int width, unsigned int height, +- grub_video_mode_type_t mode_type, ++ grub_video_mode_type_t mode_type, + grub_video_mode_type_t mode_mask) + { + grub_uint16_t *p; +@@ -1193,7 +1193,7 @@ grub_video_vbe_print_adapter_specific_info (void) + controller_info.version & 0xFF, + controller_info.oem_software_rev >> 8, + controller_info.oem_software_rev & 0xFF); +- ++ + /* The total_memory field is in 64 KiB units. */ + grub_printf_ (N_(" total memory: %d KiB\n"), + (controller_info.total_memory << 6)); +diff --git a/grub-core/video/i386/pc/vga.c b/grub-core/video/i386/pc/vga.c +index b2f776c99..50d0b5e02 100644 +--- a/grub-core/video/i386/pc/vga.c ++++ b/grub-core/video/i386/pc/vga.c +@@ -48,7 +48,7 @@ static struct + int back_page; + } framebuffer; + +-static unsigned char ++static unsigned char + grub_vga_set_mode (unsigned char mode) + { + struct grub_bios_int_registers regs; +@@ -182,10 +182,10 @@ grub_video_vga_setup (unsigned int width, unsigned int height, + + is_target = 1; + err = grub_video_fb_set_active_render_target (framebuffer.render_target); +- ++ + if (err) + return err; +- ++ + err = grub_video_fb_set_palette (0, GRUB_VIDEO_FBSTD_NUMCOLORS, + grub_video_fbstd_colors); + +diff --git a/grub-core/video/ieee1275.c b/grub-core/video/ieee1275.c +index 17a3dbbb5..f8cf94d96 100644 +--- a/grub-core/video/ieee1275.c ++++ b/grub-core/video/ieee1275.c +@@ -234,7 +234,7 @@ grub_video_ieee1275_setup (unsigned int width, unsigned int height, + /* TODO. */ + return grub_error (GRUB_ERR_IO, "can't set mode %dx%d", width, height); + } +- ++ + err = grub_video_ieee1275_fill_mode_info (dev, &framebuffer.mode_info); + if (err) + { +@@ -261,7 +261,7 @@ grub_video_ieee1275_setup (unsigned int width, unsigned int height, + + grub_video_ieee1275_set_palette (0, framebuffer.mode_info.number_of_colors, + grub_video_fbstd_colors); +- ++ + return err; + } + +diff --git a/grub-core/video/radeon_fuloong2e.c b/grub-core/video/radeon_fuloong2e.c +index b4da34b5e..40917acb7 100644 +--- a/grub-core/video/radeon_fuloong2e.c ++++ b/grub-core/video/radeon_fuloong2e.c +@@ -75,7 +75,7 @@ find_card (grub_pci_device_t dev, grub_pci_id_t pciid, void *data) + if (((class >> 16) & 0xffff) != GRUB_PCI_CLASS_SUBCLASS_VGA + || pciid != 0x515a1002) + return 0; +- ++ + *found = 1; + + addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0); +@@ -139,7 +139,7 @@ grub_video_radeon_fuloong2e_setup (unsigned int width, unsigned int height, + framebuffer.mapped = 1; + + /* Prevent garbage from appearing on the screen. */ +- grub_memset (framebuffer.ptr, 0x55, ++ grub_memset (framebuffer.ptr, 0x55, + framebuffer.mode_info.height * framebuffer.mode_info.pitch); + + #ifndef TEST +@@ -152,7 +152,7 @@ grub_video_radeon_fuloong2e_setup (unsigned int width, unsigned int height, + return err; + + err = grub_video_fb_set_active_render_target (framebuffer.render_target); +- ++ + if (err) + return err; + +diff --git a/grub-core/video/radeon_yeeloong3a.c b/grub-core/video/radeon_yeeloong3a.c +index 52614feb6..48631c181 100644 +--- a/grub-core/video/radeon_yeeloong3a.c ++++ b/grub-core/video/radeon_yeeloong3a.c +@@ -74,7 +74,7 @@ find_card (grub_pci_device_t dev, grub_pci_id_t pciid, void *data) + if (((class >> 16) & 0xffff) != GRUB_PCI_CLASS_SUBCLASS_VGA + || pciid != 0x96151002) + return 0; +- ++ + *found = 1; + + addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0); +@@ -137,7 +137,7 @@ grub_video_radeon_yeeloong3a_setup (unsigned int width, unsigned int height, + #endif + + /* Prevent garbage from appearing on the screen. */ +- grub_memset (framebuffer.ptr, 0, ++ grub_memset (framebuffer.ptr, 0, + framebuffer.mode_info.height * framebuffer.mode_info.pitch); + + #ifndef TEST +@@ -150,7 +150,7 @@ grub_video_radeon_yeeloong3a_setup (unsigned int width, unsigned int height, + return err; + + err = grub_video_fb_set_active_render_target (framebuffer.render_target); +- ++ + if (err) + return err; + +diff --git a/grub-core/video/readers/png.c b/grub-core/video/readers/png.c +index 0157ff742..54dfedf43 100644 +--- a/grub-core/video/readers/png.c ++++ b/grub-core/video/readers/png.c +@@ -916,7 +916,7 @@ grub_png_convert_image (struct grub_png_data *data) + } + return; + } +- ++ + if (data->is_gray) + { + switch (data->bpp) +diff --git a/grub-core/video/readers/tga.c b/grub-core/video/readers/tga.c +index 7cb9d1d2a..a9ec3a1b6 100644 +--- a/grub-core/video/readers/tga.c ++++ b/grub-core/video/readers/tga.c +@@ -127,7 +127,7 @@ tga_load_palette (struct tga_data *data) + + if (len > sizeof (data->palette)) + len = sizeof (data->palette); +- ++ + if (grub_file_read (data->file, &data->palette, len) + != (grub_ssize_t) len) + return grub_errno; +diff --git a/grub-core/video/sis315_init.c b/grub-core/video/sis315_init.c +index ae5c1419c..09c3c7bbe 100644 +--- a/grub-core/video/sis315_init.c ++++ b/grub-core/video/sis315_init.c +@@ -1,4 +1,4 @@ +-static const struct { grub_uint8_t reg; grub_uint8_t val; } sr_dump [] = ++static const struct { grub_uint8_t reg; grub_uint8_t val; } sr_dump [] = + { + { 0x28, 0x81 }, + { 0x2a, 0x00 }, +diff --git a/grub-core/video/sis315pro.c b/grub-core/video/sis315pro.c +index 22a0c85a6..4d2f9999a 100644 +--- a/grub-core/video/sis315pro.c ++++ b/grub-core/video/sis315pro.c +@@ -103,7 +103,7 @@ find_card (grub_pci_device_t dev, grub_pci_id_t pciid, void *data) + if (((class >> 16) & 0xffff) != GRUB_PCI_CLASS_SUBCLASS_VGA + || pciid != GRUB_SIS315PRO_PCIID) + return 0; +- ++ + *found = 1; + + addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0); +@@ -218,7 +218,7 @@ grub_video_sis315pro_setup (unsigned int width, unsigned int height, + + #ifndef TEST + /* Prevent garbage from appearing on the screen. */ +- grub_memset (framebuffer.ptr, 0, ++ grub_memset (framebuffer.ptr, 0, + framebuffer.mode_info.height * framebuffer.mode_info.pitch); + grub_arch_sync_dma_caches (framebuffer.ptr, + framebuffer.mode_info.height +@@ -231,7 +231,7 @@ grub_video_sis315pro_setup (unsigned int width, unsigned int height, + | GRUB_VGA_IO_MISC_EXTERNAL_CLOCK_0 + | GRUB_VGA_IO_MISC_28MHZ + | GRUB_VGA_IO_MISC_ENABLE_VRAM_ACCESS +- | GRUB_VGA_IO_MISC_COLOR, ++ | GRUB_VGA_IO_MISC_COLOR, + GRUB_VGA_IO_MISC_WRITE + GRUB_MACHINE_PCI_IO_BASE); + + grub_vga_sr_write (0x86, 5); +@@ -335,7 +335,7 @@ grub_video_sis315pro_setup (unsigned int width, unsigned int height, + { + if (read_sis_cmd (0x5) != 0xa1) + write_sis_cmd (0x86, 0x5); +- ++ + write_sis_cmd (read_sis_cmd (0x20) | 0xa1, 0x20); + write_sis_cmd (read_sis_cmd (0x1e) | 0xda, 0x1e); + +diff --git a/grub-core/video/sm712.c b/grub-core/video/sm712.c +index 10c46eb65..65f59f84b 100644 +--- a/grub-core/video/sm712.c ++++ b/grub-core/video/sm712.c +@@ -167,7 +167,7 @@ enum + GRUB_SM712_CR_SHADOW_VGA_VBLANK_START = 0x46, + GRUB_SM712_CR_SHADOW_VGA_VBLANK_END = 0x47, + GRUB_SM712_CR_SHADOW_VGA_VRETRACE_START = 0x48, +- GRUB_SM712_CR_SHADOW_VGA_VRETRACE_END = 0x49, ++ GRUB_SM712_CR_SHADOW_VGA_VRETRACE_END = 0x49, + GRUB_SM712_CR_SHADOW_VGA_OVERFLOW = 0x4a, + GRUB_SM712_CR_SHADOW_VGA_CELL_HEIGHT = 0x4b, + GRUB_SM712_CR_SHADOW_VGA_HDISPLAY_END = 0x4c, +@@ -375,7 +375,7 @@ find_card (grub_pci_device_t dev, grub_pci_id_t pciid, void *data) + if (((class >> 16) & 0xffff) != GRUB_PCI_CLASS_SUBCLASS_VGA + || pciid != GRUB_SM712_PCIID) + return 0; +- ++ + *found = 1; + + addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0); +@@ -471,7 +471,7 @@ grub_video_sm712_setup (unsigned int width, unsigned int height, + + #if !defined (TEST) && !defined(GENINIT) + /* Prevent garbage from appearing on the screen. */ +- grub_memset ((void *) framebuffer.cached_ptr, 0, ++ grub_memset ((void *) framebuffer.cached_ptr, 0, + framebuffer.mode_info.height * framebuffer.mode_info.pitch); + #endif + +@@ -482,7 +482,7 @@ grub_video_sm712_setup (unsigned int width, unsigned int height, + grub_sm712_sr_write (0x2, 0x6b); + grub_sm712_write_reg (0, GRUB_VGA_IO_PIXEL_MASK); + grub_sm712_sr_write (GRUB_VGA_SR_RESET_ASYNC, GRUB_VGA_SR_RESET); +- grub_sm712_write_reg (GRUB_VGA_IO_MISC_NEGATIVE_VERT_POLARITY ++ grub_sm712_write_reg (GRUB_VGA_IO_MISC_NEGATIVE_VERT_POLARITY + | GRUB_VGA_IO_MISC_NEGATIVE_HORIZ_POLARITY + | GRUB_VGA_IO_MISC_UPPER_64K + | GRUB_VGA_IO_MISC_EXTERNAL_CLOCK_0 +@@ -694,7 +694,7 @@ grub_video_sm712_setup (unsigned int width, unsigned int height, + for (i = 0; i < ARRAY_SIZE (dda_lookups); i++) + grub_sm712_write_dda_lookup (i, dda_lookups[i].compare, dda_lookups[i].dda, + dda_lookups[i].vcentering); +- ++ + /* Undocumented */ + grub_sm712_cr_write (0, 0x9c); + grub_sm712_cr_write (0, 0x9d); +diff --git a/grub-core/video/video.c b/grub-core/video/video.c +index 983424107..8937da745 100644 +--- a/grub-core/video/video.c ++++ b/grub-core/video/video.c +@@ -491,13 +491,13 @@ parse_modespec (const char *current_mode, int *width, int *height, int *depth) + current_mode); + + param++; +- ++ + *width = grub_strtoul (value, 0, 0); + if (grub_errno != GRUB_ERR_NONE) + return grub_error (GRUB_ERR_BAD_ARGUMENT, + N_("invalid video mode specification `%s'"), + current_mode); +- ++ + /* Find height value. */ + value = param; + param = grub_strchr(param, 'x'); +@@ -513,13 +513,13 @@ parse_modespec (const char *current_mode, int *width, int *height, int *depth) + { + /* We have optional color depth value. */ + param++; +- ++ + *height = grub_strtoul (value, 0, 0); + if (grub_errno != GRUB_ERR_NONE) + return grub_error (GRUB_ERR_BAD_ARGUMENT, + N_("invalid video mode specification `%s'"), + current_mode); +- ++ + /* Convert color depth value. */ + value = param; + *depth = grub_strtoul (value, 0, 0); +-- +2.41.0 + diff --git a/boot/grub2/0008-video-readers-png-Abort-sooner-if-a-read-operation-f.patch b/boot/grub2/0008-video-readers-png-Abort-sooner-if-a-read-operation-f.patch new file mode 100644 index 000000000000..94431a4ef17a --- /dev/null +++ b/boot/grub2/0008-video-readers-png-Abort-sooner-if-a-read-operation-f.patch @@ -0,0 +1,204 @@ +From 91d16e415b79f5080fa2bcc21bff6471f6be9f08 Mon Sep 17 00:00:00 2001 +From: Daniel Axtens +Date: Tue, 6 Jul 2021 14:02:55 +1000 +Subject: [PATCH] video/readers/png: Abort sooner if a read operation fails + +Fuzzing revealed some inputs that were taking a long time, potentially +forever, because they did not bail quickly upon encountering an I/O error. + +Try to catch I/O errors sooner and bail out. + +Signed-off-by: Daniel Axtens +Reviewed-by: Daniel Kiper +Upstream: d5caac8ab79d068ad9a41030c772d03a4d4fbd7b +[Thomas: needed to cherry-pick +e623866d9286410156e8b9d2c82d6253a1b22d08, which fixes CVE-2021-3695] +Signed-off-by: Thomas Petazzoni +--- + grub-core/video/readers/png.c | 55 ++++++++++++++++++++++++++++++----- + 1 file changed, 47 insertions(+), 8 deletions(-) + +diff --git a/grub-core/video/readers/png.c b/grub-core/video/readers/png.c +index 54dfedf43..d715c4629 100644 +--- a/grub-core/video/readers/png.c ++++ b/grub-core/video/readers/png.c +@@ -142,6 +142,7 @@ static grub_uint8_t + grub_png_get_byte (struct grub_png_data *data) + { + grub_uint8_t r; ++ grub_ssize_t bytes_read = 0; + + if ((data->inside_idat) && (data->idat_remain == 0)) + { +@@ -175,7 +176,14 @@ grub_png_get_byte (struct grub_png_data *data) + } + + r = 0; +- grub_file_read (data->file, &r, 1); ++ bytes_read = grub_file_read (data->file, &r, 1); ++ ++ if (bytes_read != 1) ++ { ++ grub_error (GRUB_ERR_BAD_FILE_TYPE, ++ "png: unexpected end of data"); ++ return 0; ++ } + + if (data->inside_idat) + data->idat_remain--; +@@ -231,15 +239,16 @@ grub_png_decode_image_palette (struct grub_png_data *data, + if (len == 0) + return GRUB_ERR_NONE; + +- for (i = 0; 3 * i < len && i < 256; i++) ++ grub_errno = GRUB_ERR_NONE; ++ for (i = 0; 3 * i < len && i < 256 && grub_errno == GRUB_ERR_NONE; i++) + for (j = 0; j < 3; j++) + data->palette[i][j] = grub_png_get_byte (data); +- for (i *= 3; i < len; i++) ++ for (i *= 3; i < len && grub_errno == GRUB_ERR_NONE; i++) + grub_png_get_byte (data); + + grub_png_get_dword (data); + +- return GRUB_ERR_NONE; ++ return grub_errno; + } + + static grub_err_t +@@ -256,9 +265,13 @@ grub_png_decode_image_header (struct grub_png_data *data) + return grub_error (GRUB_ERR_BAD_FILE_TYPE, "png: invalid image size"); + + color_bits = grub_png_get_byte (data); ++ if (grub_errno != GRUB_ERR_NONE) ++ return grub_errno; + data->is_16bit = (color_bits == 16); + + color_type = grub_png_get_byte (data); ++ if (grub_errno != GRUB_ERR_NONE) ++ return grub_errno; + + /* According to PNG spec, no other types are valid. */ + if ((color_type & ~(PNG_COLOR_MASK_ALPHA | PNG_COLOR_MASK_COLOR)) +@@ -340,14 +353,20 @@ grub_png_decode_image_header (struct grub_png_data *data) + if (grub_png_get_byte (data) != PNG_COMPRESSION_BASE) + return grub_error (GRUB_ERR_BAD_FILE_TYPE, + "png: compression method not supported"); ++ if (grub_errno != GRUB_ERR_NONE) ++ return grub_errno; + + if (grub_png_get_byte (data) != PNG_FILTER_TYPE_BASE) + return grub_error (GRUB_ERR_BAD_FILE_TYPE, + "png: filter method not supported"); ++ if (grub_errno != GRUB_ERR_NONE) ++ return grub_errno; + + if (grub_png_get_byte (data) != PNG_INTERLACE_NONE) + return grub_error (GRUB_ERR_BAD_FILE_TYPE, + "png: interlace method not supported"); ++ if (grub_errno != GRUB_ERR_NONE) ++ return grub_errno; + + /* Skip crc checksum. */ + grub_png_get_dword (data); +@@ -449,7 +468,7 @@ grub_png_get_huff_code (struct grub_png_data *data, struct huff_table *ht) + int code, i; + + code = 0; +- for (i = 0; i < ht->max_length; i++) ++ for (i = 0; i < ht->max_length && grub_errno == GRUB_ERR_NONE; i++) + { + code = (code << 1) + grub_png_get_bits (data, 1); + if (code < ht->maxval[i]) +@@ -504,8 +523,14 @@ grub_png_init_dynamic_block (struct grub_png_data *data) + grub_uint8_t lens[DEFLATE_HCLEN_MAX]; + + nl = DEFLATE_HLIT_BASE + grub_png_get_bits (data, 5); ++ if (grub_errno != GRUB_ERR_NONE) ++ return grub_errno; + nd = DEFLATE_HDIST_BASE + grub_png_get_bits (data, 5); ++ if (grub_errno != GRUB_ERR_NONE) ++ return grub_errno; + nb = DEFLATE_HCLEN_BASE + grub_png_get_bits (data, 4); ++ if (grub_errno != GRUB_ERR_NONE) ++ return grub_errno; + + if ((nl > DEFLATE_HLIT_MAX) || (nd > DEFLATE_HDIST_MAX) || + (nb > DEFLATE_HCLEN_MAX)) +@@ -533,7 +558,7 @@ grub_png_init_dynamic_block (struct grub_png_data *data) + data->dist_offset); + + prev = 0; +- for (i = 0; i < nl + nd; i++) ++ for (i = 0; i < nl + nd && grub_errno == GRUB_ERR_NONE; i++) + { + int n, code; + struct huff_table *ht; +@@ -721,17 +746,21 @@ grub_png_read_dynamic_block (struct grub_png_data *data) + len = cplens[n]; + if (cplext[n]) + len += grub_png_get_bits (data, cplext[n]); ++ if (grub_errno != GRUB_ERR_NONE) ++ return grub_errno; + + n = grub_png_get_huff_code (data, &data->dist_table); + dist = cpdist[n]; + if (cpdext[n]) + dist += grub_png_get_bits (data, cpdext[n]); ++ if (grub_errno != GRUB_ERR_NONE) ++ return grub_errno; + + pos = data->wp - dist; + if (pos < 0) + pos += WSIZE; + +- while (len > 0) ++ while (len > 0 && grub_errno == GRUB_ERR_NONE) + { + data->slide[data->wp] = data->slide[pos]; + grub_png_output_byte (data, data->slide[data->wp]); +@@ -759,7 +788,11 @@ grub_png_decode_image_data (struct grub_png_data *data) + int final; + + cmf = grub_png_get_byte (data); ++ if (grub_errno != GRUB_ERR_NONE) ++ return grub_errno; + flg = grub_png_get_byte (data); ++ if (grub_errno != GRUB_ERR_NONE) ++ return grub_errno; + + if ((cmf & 0xF) != Z_DEFLATED) + return grub_error (GRUB_ERR_BAD_FILE_TYPE, +@@ -774,7 +807,11 @@ grub_png_decode_image_data (struct grub_png_data *data) + int block_type; + + final = grub_png_get_bits (data, 1); ++ if (grub_errno != GRUB_ERR_NONE) ++ return grub_errno; + block_type = grub_png_get_bits (data, 2); ++ if (grub_errno != GRUB_ERR_NONE) ++ return grub_errno; + + switch (block_type) + { +@@ -790,7 +827,7 @@ grub_png_decode_image_data (struct grub_png_data *data) + grub_png_get_byte (data); + grub_png_get_byte (data); + +- for (i = 0; i < len; i++) ++ for (i = 0; i < len && grub_errno == GRUB_ERR_NONE; i++) + grub_png_output_byte (data, grub_png_get_byte (data)); + + break; +@@ -1045,6 +1082,8 @@ grub_png_decode_png (struct grub_png_data *data) + + len = grub_png_get_dword (data); + type = grub_png_get_dword (data); ++ if (grub_errno != GRUB_ERR_NONE) ++ break; + data->next_offset = data->file->offset + len + 4; + + switch (type) +-- +2.41.0 + diff --git a/boot/grub2/0009-video-readers-png-Refuse-to-handle-multiple-image-he.patch b/boot/grub2/0009-video-readers-png-Refuse-to-handle-multiple-image-he.patch new file mode 100644 index 000000000000..903d33b7b518 --- /dev/null +++ b/boot/grub2/0009-video-readers-png-Refuse-to-handle-multiple-image-he.patch @@ -0,0 +1,34 @@ +From e170edd18fcfdd9e6f91ba750fd022cef8d43cd4 Mon Sep 17 00:00:00 2001 +From: Daniel Axtens +Date: Tue, 6 Jul 2021 14:13:40 +1000 +Subject: [PATCH] video/readers/png: Refuse to handle multiple image headers + +This causes the bitmap to be leaked. Do not permit multiple image headers. + +Signed-off-by: Daniel Axtens +Reviewed-by: Daniel Kiper +Upstream: 166a4d61448f74745afe1dac2f2cfb85d04909bf +[Thomas: needed to cherry-pick +e623866d9286410156e8b9d2c82d6253a1b22d08, which fixes CVE-2021-3695] +Signed-off-by: Thomas Petazzoni +--- + grub-core/video/readers/png.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/grub-core/video/readers/png.c b/grub-core/video/readers/png.c +index d715c4629..35ae553c8 100644 +--- a/grub-core/video/readers/png.c ++++ b/grub-core/video/readers/png.c +@@ -258,6 +258,9 @@ grub_png_decode_image_header (struct grub_png_data *data) + int color_bits; + enum grub_video_blit_format blt; + ++ if (data->image_width || data->image_height) ++ return grub_error (GRUB_ERR_BAD_FILE_TYPE, "png: two image headers found"); ++ + data->image_width = grub_png_get_dword (data); + data->image_height = grub_png_get_dword (data); + +-- +2.41.0 + diff --git a/boot/grub2/0010-video-readers-png-Drop-greyscale-support-to-fix-heap.patch b/boot/grub2/0010-video-readers-png-Drop-greyscale-support-to-fix-heap.patch new file mode 100644 index 000000000000..686a0beafd7f --- /dev/null +++ b/boot/grub2/0010-video-readers-png-Drop-greyscale-support-to-fix-heap.patch @@ -0,0 +1,173 @@ +From 5b42d132a029c1d245d94c813a45836522b46226 Mon Sep 17 00:00:00 2001 +From: Daniel Axtens +Date: Tue, 6 Jul 2021 18:51:35 +1000 +Subject: [PATCH] video/readers/png: Drop greyscale support to fix heap + out-of-bounds write + +A 16-bit greyscale PNG without alpha is processed in the following loop: + + for (i = 0; i < (data->image_width * data->image_height); + i++, d1 += 4, d2 += 2) + { + d1[R3] = d2[1]; + d1[G3] = d2[1]; + d1[B3] = d2[1]; + } + +The increment of d1 is wrong. d1 is incremented by 4 bytes per iteration, +but there are only 3 bytes allocated for storage. This means that image +data will overwrite somewhat-attacker-controlled parts of memory - 3 bytes +out of every 4 following the end of the image. + +This has existed since greyscale support was added in 2013 in commit +3ccf16dff98f (grub-core/video/readers/png.c: Support grayscale). + +Saving starfield.png as a 16-bit greyscale image without alpha in the gimp +and attempting to load it causes grub-emu to crash - I don't think this code +has ever worked. + +Delete all PNG greyscale support. + +Fixes: CVE-2021-3695 + +Signed-off-by: Daniel Axtens +Reviewed-by: Daniel Kiper +Upstream: e623866d9286410156e8b9d2c82d6253a1b22d08 +Signed-off-by: Thomas Petazzoni +--- + grub-core/video/readers/png.c | 87 +++-------------------------------- + 1 file changed, 7 insertions(+), 80 deletions(-) + +diff --git a/grub-core/video/readers/png.c b/grub-core/video/readers/png.c +index 35ae553c8..a3161e25b 100644 +--- a/grub-core/video/readers/png.c ++++ b/grub-core/video/readers/png.c +@@ -100,7 +100,7 @@ struct grub_png_data + + unsigned image_width, image_height; + int bpp, is_16bit; +- int raw_bytes, is_gray, is_alpha, is_palette; ++ int raw_bytes, is_alpha, is_palette; + int row_bytes, color_bits; + grub_uint8_t *image_data; + +@@ -296,13 +296,13 @@ grub_png_decode_image_header (struct grub_png_data *data) + data->bpp = 3; + else + { +- data->is_gray = 1; +- data->bpp = 1; ++ return grub_error (GRUB_ERR_BAD_FILE_TYPE, ++ "png: color type not supported"); + } + + if ((color_bits != 8) && (color_bits != 16) + && (color_bits != 4 +- || !(data->is_gray || data->is_palette))) ++ || !data->is_palette)) + return grub_error (GRUB_ERR_BAD_FILE_TYPE, + "png: bit depth must be 8 or 16"); + +@@ -331,7 +331,7 @@ grub_png_decode_image_header (struct grub_png_data *data) + } + + #ifndef GRUB_CPU_WORDS_BIGENDIAN +- if (data->is_16bit || data->is_gray || data->is_palette) ++ if (data->is_16bit || data->is_palette) + #endif + { + data->image_data = grub_calloc (data->image_height, data->row_bytes); +@@ -899,27 +899,8 @@ grub_png_convert_image (struct grub_png_data *data) + int shift; + int mask = (1 << data->color_bits) - 1; + unsigned j; +- if (data->is_gray) +- { +- /* Generic formula is +- (0xff * i) / ((1U << data->color_bits) - 1) +- but for allowed bit depth of 1, 2 and for it's +- equivalent to +- (0xff / ((1U << data->color_bits) - 1)) * i +- Precompute the multipliers to avoid division. +- */ +- +- const grub_uint8_t multipliers[5] = { 0xff, 0xff, 0x55, 0x24, 0x11 }; +- for (i = 0; i < (1U << data->color_bits); i++) +- { +- grub_uint8_t col = multipliers[data->color_bits] * i; +- palette[i][0] = col; +- palette[i][1] = col; +- palette[i][2] = col; +- } +- } +- else +- grub_memcpy (palette, data->palette, 3 << data->color_bits); ++ ++ grub_memcpy (palette, data->palette, 3 << data->color_bits); + d1c = d1; + d2c = d2; + for (j = 0; j < data->image_height; j++, d1c += data->image_width * 3, +@@ -957,60 +938,6 @@ grub_png_convert_image (struct grub_png_data *data) + return; + } + +- if (data->is_gray) +- { +- switch (data->bpp) +- { +- case 4: +- /* 16-bit gray with alpha. */ +- for (i = 0; i < (data->image_width * data->image_height); +- i++, d1 += 4, d2 += 4) +- { +- d1[R4] = d2[3]; +- d1[G4] = d2[3]; +- d1[B4] = d2[3]; +- d1[A4] = d2[1]; +- } +- break; +- case 2: +- if (data->is_16bit) +- /* 16-bit gray without alpha. */ +- { +- for (i = 0; i < (data->image_width * data->image_height); +- i++, d1 += 4, d2 += 2) +- { +- d1[R3] = d2[1]; +- d1[G3] = d2[1]; +- d1[B3] = d2[1]; +- } +- } +- else +- /* 8-bit gray with alpha. */ +- { +- for (i = 0; i < (data->image_width * data->image_height); +- i++, d1 += 4, d2 += 2) +- { +- d1[R4] = d2[1]; +- d1[G4] = d2[1]; +- d1[B4] = d2[1]; +- d1[A4] = d2[0]; +- } +- } +- break; +- /* 8-bit gray without alpha. */ +- case 1: +- for (i = 0; i < (data->image_width * data->image_height); +- i++, d1 += 3, d2++) +- { +- d1[R3] = d2[0]; +- d1[G3] = d2[0]; +- d1[B3] = d2[0]; +- } +- break; +- } +- return; +- } +- + { + /* Only copy the upper 8 bit. */ + #ifndef GRUB_CPU_WORDS_BIGENDIAN +-- +2.41.0 + diff --git a/boot/grub2/0011-video-readers-png-Avoid-heap-OOB-R-W-inserting-huff-.patch b/boot/grub2/0011-video-readers-png-Avoid-heap-OOB-R-W-inserting-huff-.patch new file mode 100644 index 000000000000..19fde07060c8 --- /dev/null +++ b/boot/grub2/0011-video-readers-png-Avoid-heap-OOB-R-W-inserting-huff-.patch @@ -0,0 +1,44 @@ +From 43a7d9cb829467993ba683a26c980fcfdaa924c8 Mon Sep 17 00:00:00 2001 +From: Daniel Axtens +Date: Tue, 6 Jul 2021 23:25:07 +1000 +Subject: [PATCH] video/readers/png: Avoid heap OOB R/W inserting huff table + items + +In fuzzing we observed crashes where a code would attempt to be inserted +into a huffman table before the start, leading to a set of heap OOB reads +and writes as table entries with negative indices were shifted around and +the new code written in. + +Catch the case where we would underflow the array and bail. + +Fixes: CVE-2021-3696 + +Signed-off-by: Daniel Axtens +Reviewed-by: Daniel Kiper +Upstream: 210245129c932dc9e1c2748d9d35524fb95b5042 +Signed-off-by: Thomas Petazzoni +--- + grub-core/video/readers/png.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/grub-core/video/readers/png.c b/grub-core/video/readers/png.c +index a3161e25b..d7ed5aa6c 100644 +--- a/grub-core/video/readers/png.c ++++ b/grub-core/video/readers/png.c +@@ -438,6 +438,13 @@ grub_png_insert_huff_item (struct huff_table *ht, int code, int len) + for (i = len; i < ht->max_length; i++) + n += ht->maxval[i]; + ++ if (n > ht->num_values) ++ { ++ grub_error (GRUB_ERR_BAD_FILE_TYPE, ++ "png: out of range inserting huffman table item"); ++ return; ++ } ++ + for (i = 0; i < n; i++) + ht->values[ht->num_values - i] = ht->values[ht->num_values - i - 1]; + +-- +2.41.0 + diff --git a/boot/grub2/0012-video-readers-jpeg-Block-int-underflow-wild-pointer-.patch b/boot/grub2/0012-video-readers-jpeg-Block-int-underflow-wild-pointer-.patch new file mode 100644 index 000000000000..75c3f8e43b70 --- /dev/null +++ b/boot/grub2/0012-video-readers-jpeg-Block-int-underflow-wild-pointer-.patch @@ -0,0 +1,78 @@ +From 6be7ccfcc33da513de66f71de63fdc129fa019c2 Mon Sep 17 00:00:00 2001 +From: Daniel Axtens +Date: Wed, 7 Jul 2021 15:38:19 +1000 +Subject: [PATCH] video/readers/jpeg: Block int underflow -> wild pointer write + +Certain 1 px wide images caused a wild pointer write in +grub_jpeg_ycrcb_to_rgb(). This was caused because in grub_jpeg_decode_data(), +we have the following loop: + +for (; data->r1 < nr1 && (!data->dri || rst); + data->r1++, data->bitmap_ptr += (vb * data->image_width - hb * nc1) * 3) + +We did not check if vb * width >= hb * nc1. + +On a 64-bit platform, if that turns out to be negative, it will underflow, +be interpreted as unsigned 64-bit, then be added to the 64-bit pointer, so +we see data->bitmap_ptr jump, e.g.: + +0x6180_0000_0480 to +0x6181_0000_0498 + ^ + ~--- carry has occurred and this pointer is now far away from + any object. + +On a 32-bit platform, it will decrement the pointer, creating a pointer +that won't crash but will overwrite random data. + +Catch the underflow and error out. + +Fixes: CVE-2021-3697 + +Signed-off-by: Daniel Axtens +Reviewed-by: Daniel Kiper +Upstream: 22a3f97d39f6a10b08ad7fd1cc47c4dcd10413f6 +Signed-off-by: Thomas Petazzoni +--- + grub-core/video/readers/jpeg.c | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) + +diff --git a/grub-core/video/readers/jpeg.c b/grub-core/video/readers/jpeg.c +index e31602f76..1d256af01 100644 +--- a/grub-core/video/readers/jpeg.c ++++ b/grub-core/video/readers/jpeg.c +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + + GRUB_MOD_LICENSE ("GPLv3+"); + +@@ -639,6 +640,7 @@ static grub_err_t + grub_jpeg_decode_data (struct grub_jpeg_data *data) + { + unsigned c1, vb, hb, nr1, nc1; ++ unsigned stride_a, stride_b, stride; + int rst = data->dri; + + vb = 8 << data->log_vs; +@@ -650,8 +652,14 @@ grub_jpeg_decode_data (struct grub_jpeg_data *data) + return grub_error(GRUB_ERR_BAD_FILE_TYPE, + "jpeg: attempted to decode data before start of stream"); + ++ if (grub_mul(vb, data->image_width, &stride_a) || ++ grub_mul(hb, nc1, &stride_b) || ++ grub_sub(stride_a, stride_b, &stride)) ++ return grub_error (GRUB_ERR_BAD_FILE_TYPE, ++ "jpeg: cannot decode image with these dimensions"); ++ + for (; data->r1 < nr1 && (!data->dri || rst); +- data->r1++, data->bitmap_ptr += (vb * data->image_width - hb * nc1) * 3) ++ data->r1++, data->bitmap_ptr += stride * 3) + for (c1 = 0; c1 < nc1 && (!data->dri || rst); + c1++, rst--, data->bitmap_ptr += hb * 3) + { +-- +2.41.0 + diff --git a/boot/grub2/0013-net-ip-Do-IP-fragment-maths-safely.patch b/boot/grub2/0013-net-ip-Do-IP-fragment-maths-safely.patch new file mode 100644 index 000000000000..3acec5cc209c --- /dev/null +++ b/boot/grub2/0013-net-ip-Do-IP-fragment-maths-safely.patch @@ -0,0 +1,56 @@ +From cadde7e36b8797060ac8cdf7cca7d8e1e09697e6 Mon Sep 17 00:00:00 2001 +From: Daniel Axtens +Date: Mon, 20 Dec 2021 19:41:21 +1100 +Subject: [PATCH] net/ip: Do IP fragment maths safely + +We can receive packets with invalid IP fragmentation information. This +can lead to rsm->total_len underflowing and becoming very large. + +Then, in grub_netbuff_alloc(), we add to this very large number, which can +cause it to overflow and wrap back around to a small positive number. +The allocation then succeeds, but the resulting buffer is too small and +subsequent operations can write past the end of the buffer. + +Catch the underflow here. + +Fixes: CVE-2022-28733 + +Signed-off-by: Daniel Axtens +Reviewed-by: Daniel Kiper +Upstream: 3e4817538de828319ba6d59ced2fbb9b5ca13287 +Signed-off-by: Thomas Petazzoni +--- + grub-core/net/ip.c | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) + +diff --git a/grub-core/net/ip.c b/grub-core/net/ip.c +index ea5edf8f1..74e4e8b06 100644 +--- a/grub-core/net/ip.c ++++ b/grub-core/net/ip.c +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + #include + + struct iphdr { +@@ -512,7 +513,14 @@ grub_net_recv_ip4_packets (struct grub_net_buff *nb, + { + rsm->total_len = (8 * (grub_be_to_cpu16 (iph->frags) & OFFSET_MASK) + + (nb->tail - nb->data)); +- rsm->total_len -= ((iph->verhdrlen & 0xf) * sizeof (grub_uint32_t)); ++ ++ if (grub_sub (rsm->total_len, (iph->verhdrlen & 0xf) * sizeof (grub_uint32_t), ++ &rsm->total_len)) ++ { ++ grub_dprintf ("net", "IP reassembly size underflow\n"); ++ return GRUB_ERR_NONE; ++ } ++ + rsm->asm_netbuff = grub_netbuff_alloc (rsm->total_len); + if (!rsm->asm_netbuff) + { +-- +2.41.0 + diff --git a/boot/grub2/0014-net-http-Fix-OOB-write-for-split-http-headers.patch b/boot/grub2/0014-net-http-Fix-OOB-write-for-split-http-headers.patch new file mode 100644 index 000000000000..cd249299be61 --- /dev/null +++ b/boot/grub2/0014-net-http-Fix-OOB-write-for-split-http-headers.patch @@ -0,0 +1,50 @@ +From 6bb49bda656e1121fd303cf3e69709172e267718 Mon Sep 17 00:00:00 2001 +From: Daniel Axtens +Date: Tue, 8 Mar 2022 18:17:03 +1100 +Subject: [PATCH] net/http: Fix OOB write for split http headers + +GRUB has special code for handling an http header that is split +across two packets. + +The code tracks the end of line by looking for a "\n" byte. The +code for split headers has always advanced the pointer just past the +end of the line, whereas the code that handles unsplit headers does +not advance the pointer. This extra advance causes the length to be +one greater, which breaks an assumption in parse_line(), leading to +it writing a NUL byte one byte past the end of the buffer where we +reconstruct the line from the two packets. + +It's conceivable that an attacker controlled set of packets could +cause this to zero out the first byte of the "next" pointer of the +grub_mm_region structure following the current_line buffer. + +Do not advance the pointer in the split header case. + +Fixes: CVE-2022-28734 + +Signed-off-by: Daniel Axtens +Reviewed-by: Daniel Kiper +Upstream: ec6bfd3237394c1c7dbf2fd73417173318d22f4b +Signed-off-by: Thomas Petazzoni +--- + grub-core/net/http.c | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +diff --git a/grub-core/net/http.c b/grub-core/net/http.c +index b616cf40b..a19b0a205 100644 +--- a/grub-core/net/http.c ++++ b/grub-core/net/http.c +@@ -190,9 +190,7 @@ http_receive (grub_net_tcp_socket_t sock __attribute__ ((unused)), + int have_line = 1; + char *t; + ptr = grub_memchr (nb->data, '\n', nb->tail - nb->data); +- if (ptr) +- ptr++; +- else ++ if (ptr == NULL) + { + have_line = 0; + ptr = (char *) nb->tail; +-- +2.41.0 + diff --git a/boot/grub2/0015-net-http-Error-out-on-headers-with-LF-without-CR.patch b/boot/grub2/0015-net-http-Error-out-on-headers-with-LF-without-CR.patch new file mode 100644 index 000000000000..684bb88a9c1a --- /dev/null +++ b/boot/grub2/0015-net-http-Error-out-on-headers-with-LF-without-CR.patch @@ -0,0 +1,52 @@ +From 2974684d2f7f85a5c57af8155cc3b70c04ec1d6b Mon Sep 17 00:00:00 2001 +From: Daniel Axtens +Date: Tue, 8 Mar 2022 19:04:40 +1100 +Subject: [PATCH] net/http: Error out on headers with LF without CR + +In a similar vein to the previous patch, parse_line() would write +a NUL byte past the end of the buffer if there was an HTTP header +with a LF rather than a CRLF. + +RFC-2616 says: + + Many HTTP/1.1 header field values consist of words separated by LWS + or special characters. These special characters MUST be in a quoted + string to be used within a parameter value (as defined in section 3.6). + +We don't support quoted sections or continuation lines, etc. + +If we see an LF that's not part of a CRLF, bail out. + +Fixes: CVE-2022-28734 + +Signed-off-by: Daniel Axtens +Reviewed-by: Daniel Kiper +Upstream: b26b4c08e7119281ff30d0fb4a6169bd2afa8fe4 +Signed-off-by: Thomas Petazzoni +--- + grub-core/net/http.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/grub-core/net/http.c b/grub-core/net/http.c +index a19b0a205..1fa62b5cb 100644 +--- a/grub-core/net/http.c ++++ b/grub-core/net/http.c +@@ -68,7 +68,15 @@ parse_line (grub_file_t file, http_data_t data, char *ptr, grub_size_t len) + char *end = ptr + len; + while (end > ptr && *(end - 1) == '\r') + end--; ++ ++ /* LF without CR. */ ++ if (end == ptr + len) ++ { ++ data->errmsg = grub_strdup (_("invalid HTTP header - LF without CR")); ++ return GRUB_ERR_NONE; ++ } + *end = 0; ++ + /* Trailing CRLF. */ + if (data->in_chunk_len == 1) + { +-- +2.41.0 + diff --git a/boot/grub2/0016-font-Fix-size-overflow-in-grub_font_get_glyph_intern.patch b/boot/grub2/0016-font-Fix-size-overflow-in-grub_font_get_glyph_intern.patch new file mode 100644 index 000000000000..680df1f5e9b3 --- /dev/null +++ b/boot/grub2/0016-font-Fix-size-overflow-in-grub_font_get_glyph_intern.patch @@ -0,0 +1,116 @@ +From 1aefeca0f6304a20c1a3711cb9e89c5fdb901b6b Mon Sep 17 00:00:00 2001 +From: Zhang Boyang +Date: Fri, 5 Aug 2022 00:51:20 +0800 +Subject: [PATCH] font: Fix size overflow in grub_font_get_glyph_internal() + +The length of memory allocation and file read may overflow. This patch +fixes the problem by using safemath macros. + +There is a lot of code repetition like "(x * y + 7) / 8". It is unsafe +if overflow happens. This patch introduces grub_video_bitmap_calc_1bpp_bufsz(). +It is safe replacement for such code. It has safemath-like prototype. + +This patch also introduces grub_cast(value, pointer), it casts value to +typeof(*pointer) then store the value to *pointer. It returns true when +overflow occurs or false if there is no overflow. The semantics of arguments +and return value are designed to be consistent with other safemath macros. + +Signed-off-by: Zhang Boyang +Reviewed-by: Daniel Kiper +Upstream: 9c76ec09ae08155df27cd237eaea150b4f02f532 +[Thomas: needed to backport 768e1ef2fc159f6e14e7246e4be09363708ac39e, +which fixes CVE-2022-2601] +Signed-off-by: Thomas Petazzoni +--- + grub-core/font/font.c | 17 +++++++++++++---- + include/grub/bitmap.h | 18 ++++++++++++++++++ + include/grub/safemath.h | 2 ++ + 3 files changed, 33 insertions(+), 4 deletions(-) + +diff --git a/grub-core/font/font.c b/grub-core/font/font.c +index d09bb38d8..876b5b695 100644 +--- a/grub-core/font/font.c ++++ b/grub-core/font/font.c +@@ -739,7 +739,8 @@ grub_font_get_glyph_internal (grub_font_t font, grub_uint32_t code) + grub_int16_t xoff; + grub_int16_t yoff; + grub_int16_t dwidth; +- int len; ++ grub_ssize_t len; ++ grub_size_t sz; + + if (index_entry->glyph) + /* Return cached glyph. */ +@@ -766,9 +767,17 @@ grub_font_get_glyph_internal (grub_font_t font, grub_uint32_t code) + return 0; + } + +- len = (width * height + 7) / 8; +- glyph = grub_malloc (sizeof (struct grub_font_glyph) + len); +- if (!glyph) ++ /* Calculate real struct size of current glyph. */ ++ if (grub_video_bitmap_calc_1bpp_bufsz (width, height, &len) || ++ grub_add (sizeof (struct grub_font_glyph), len, &sz)) ++ { ++ remove_font (font); ++ return 0; ++ } ++ ++ /* Allocate and initialize the glyph struct. */ ++ glyph = grub_malloc (sz); ++ if (glyph == NULL) + { + remove_font (font); + return 0; +diff --git a/include/grub/bitmap.h b/include/grub/bitmap.h +index 5728f8ca3..0d9603f61 100644 +--- a/include/grub/bitmap.h ++++ b/include/grub/bitmap.h +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + + struct grub_video_bitmap + { +@@ -79,6 +80,23 @@ grub_video_bitmap_get_height (struct grub_video_bitmap *bitmap) + return bitmap->mode_info.height; + } + ++/* ++ * Calculate and store the size of data buffer of 1bit bitmap in result. ++ * Equivalent to "*result = (width * height + 7) / 8" if no overflow occurs. ++ * Return true when overflow occurs or false if there is no overflow. ++ * This function is intentionally implemented as a macro instead of ++ * an inline function. Although a bit awkward, it preserves data types for ++ * safemath macros and reduces macro side effects as much as possible. ++ * ++ * XXX: Will report false overflow if width * height > UINT64_MAX. ++ */ ++#define grub_video_bitmap_calc_1bpp_bufsz(width, height, result) \ ++({ \ ++ grub_uint64_t _bitmap_pixels; \ ++ grub_mul ((width), (height), &_bitmap_pixels) ? 1 : \ ++ grub_cast (_bitmap_pixels / GRUB_CHAR_BIT + !!(_bitmap_pixels % GRUB_CHAR_BIT), (result)); \ ++}) ++ + void EXPORT_FUNC (grub_video_bitmap_get_mode_info) (struct grub_video_bitmap *bitmap, + struct grub_video_mode_info *mode_info); + +diff --git a/include/grub/safemath.h b/include/grub/safemath.h +index c17b89bba..bb0f826de 100644 +--- a/include/grub/safemath.h ++++ b/include/grub/safemath.h +@@ -30,6 +30,8 @@ + #define grub_sub(a, b, res) __builtin_sub_overflow(a, b, res) + #define grub_mul(a, b, res) __builtin_mul_overflow(a, b, res) + ++#define grub_cast(a, res) grub_add ((a), 0, (res)) ++ + #else + #error gcc 5.1 or newer or clang 3.8 or newer is required + #endif +-- +2.41.0 + diff --git a/boot/grub2/0017-font-Fix-several-integer-overflows-in-grub_font_cons.patch b/boot/grub2/0017-font-Fix-several-integer-overflows-in-grub_font_cons.patch new file mode 100644 index 000000000000..d8e5835e181c --- /dev/null +++ b/boot/grub2/0017-font-Fix-several-integer-overflows-in-grub_font_cons.patch @@ -0,0 +1,83 @@ +From fefba72d17364d6212cfd3be2232f4ce0ba23b82 Mon Sep 17 00:00:00 2001 +From: Zhang Boyang +Date: Fri, 5 Aug 2022 01:58:27 +0800 +Subject: [PATCH] font: Fix several integer overflows in + grub_font_construct_glyph() + +This patch fixes several integer overflows in grub_font_construct_glyph(). +Glyphs of invalid size, zero or leading to an overflow, are rejected. +The inconsistency between "glyph" and "max_glyph_size" when grub_malloc() +returns NULL is fixed too. + +Fixes: CVE-2022-2601 + +Reported-by: Zhang Boyang +Signed-off-by: Zhang Boyang +Reviewed-by: Daniel Kiper +Upstream: 768e1ef2fc159f6e14e7246e4be09363708ac39e +Signed-off-by: Thomas Petazzoni +--- + grub-core/font/font.c | 29 +++++++++++++++++------------ + 1 file changed, 17 insertions(+), 12 deletions(-) + +diff --git a/grub-core/font/font.c b/grub-core/font/font.c +index 876b5b695..0ff552578 100644 +--- a/grub-core/font/font.c ++++ b/grub-core/font/font.c +@@ -1515,6 +1515,7 @@ grub_font_construct_glyph (grub_font_t hinted_font, + struct grub_video_signed_rect bounds; + static struct grub_font_glyph *glyph = 0; + static grub_size_t max_glyph_size = 0; ++ grub_size_t cur_glyph_size; + + ensure_comb_space (glyph_id); + +@@ -1531,29 +1532,33 @@ grub_font_construct_glyph (grub_font_t hinted_font, + if (!glyph_id->ncomb && !glyph_id->attributes) + return main_glyph; + +- if (max_glyph_size < sizeof (*glyph) + (bounds.width * bounds.height + GRUB_CHAR_BIT - 1) / GRUB_CHAR_BIT) ++ if (grub_video_bitmap_calc_1bpp_bufsz (bounds.width, bounds.height, &cur_glyph_size) || ++ grub_add (sizeof (*glyph), cur_glyph_size, &cur_glyph_size)) ++ return main_glyph; ++ ++ if (max_glyph_size < cur_glyph_size) + { + grub_free (glyph); +- max_glyph_size = (sizeof (*glyph) + (bounds.width * bounds.height + GRUB_CHAR_BIT - 1) / GRUB_CHAR_BIT) * 2; +- if (max_glyph_size < 8) +- max_glyph_size = 8; +- glyph = grub_malloc (max_glyph_size); ++ if (grub_mul (cur_glyph_size, 2, &max_glyph_size)) ++ max_glyph_size = 0; ++ glyph = max_glyph_size > 0 ? grub_malloc (max_glyph_size) : NULL; + } + if (!glyph) + { ++ max_glyph_size = 0; + grub_errno = GRUB_ERR_NONE; + return main_glyph; + } + +- grub_memset (glyph, 0, sizeof (*glyph) +- + (bounds.width * bounds.height +- + GRUB_CHAR_BIT - 1) / GRUB_CHAR_BIT); ++ grub_memset (glyph, 0, cur_glyph_size); + + glyph->font = main_glyph->font; +- glyph->width = bounds.width; +- glyph->height = bounds.height; +- glyph->offset_x = bounds.x; +- glyph->offset_y = bounds.y; ++ if (bounds.width == 0 || bounds.height == 0 || ++ grub_cast (bounds.width, &glyph->width) || ++ grub_cast (bounds.height, &glyph->height) || ++ grub_cast (bounds.x, &glyph->offset_x) || ++ grub_cast (bounds.y, &glyph->offset_y)) ++ return main_glyph; + + if (glyph_id->attributes & GRUB_UNICODE_GLYPH_ATTRIBUTE_MIRROR) + grub_font_blit_glyph_mirror (glyph, main_glyph, +-- +2.41.0 + diff --git a/boot/grub2/0018-font-Fix-an-integer-underflow-in-blit_comb.patch b/boot/grub2/0018-font-Fix-an-integer-underflow-in-blit_comb.patch new file mode 100644 index 000000000000..1d3d26fb7bcf --- /dev/null +++ b/boot/grub2/0018-font-Fix-an-integer-underflow-in-blit_comb.patch @@ -0,0 +1,93 @@ +From 79bd19e078c5053d800b1b4d3a901083da947e70 Mon Sep 17 00:00:00 2001 +From: Zhang Boyang +Date: Mon, 24 Oct 2022 08:05:35 +0800 +Subject: [PATCH] font: Fix an integer underflow in blit_comb() + +The expression (ctx.bounds.height - combining_glyphs[i]->height) / 2 may +evaluate to a very big invalid value even if both ctx.bounds.height and +combining_glyphs[i]->height are small integers. For example, if +ctx.bounds.height is 10 and combining_glyphs[i]->height is 12, this +expression evaluates to 2147483647 (expected -1). This is because +coordinates are allowed to be negative but ctx.bounds.height is an +unsigned int. So, the subtraction operates on unsigned ints and +underflows to a very big value. The division makes things even worse. +The quotient is still an invalid value even if converted back to int. + +This patch fixes the problem by casting ctx.bounds.height to int. As +a result the subtraction will operate on int and grub_uint16_t which +will be promoted to an int. So, the underflow will no longer happen. Other +uses of ctx.bounds.height (and ctx.bounds.width) are also casted to int, +to ensure coordinates are always calculated on signed integers. + +Fixes: CVE-2022-3775 + +Reported-by: Daniel Axtens +Signed-off-by: Zhang Boyang +Reviewed-by: Daniel Kiper +Upstream: 992c06191babc1e109caf40d6a07ec6fdef427af +Signed-off-by: Thomas Petazzoni +--- + grub-core/font/font.c | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +diff --git a/grub-core/font/font.c b/grub-core/font/font.c +index 0ff552578..7b1cbde07 100644 +--- a/grub-core/font/font.c ++++ b/grub-core/font/font.c +@@ -1206,12 +1206,12 @@ blit_comb (const struct grub_unicode_glyph *glyph_id, + ctx.bounds.height = main_glyph->height; + + above_rightx = main_glyph->offset_x + main_glyph->width; +- above_righty = ctx.bounds.y + ctx.bounds.height; ++ above_righty = ctx.bounds.y + (int) ctx.bounds.height; + + above_leftx = main_glyph->offset_x; +- above_lefty = ctx.bounds.y + ctx.bounds.height; ++ above_lefty = ctx.bounds.y + (int) ctx.bounds.height; + +- below_rightx = ctx.bounds.x + ctx.bounds.width; ++ below_rightx = ctx.bounds.x + (int) ctx.bounds.width; + below_righty = ctx.bounds.y; + + comb = grub_unicode_get_comb (glyph_id); +@@ -1224,7 +1224,7 @@ blit_comb (const struct grub_unicode_glyph *glyph_id, + + if (!combining_glyphs[i]) + continue; +- targetx = (ctx.bounds.width - combining_glyphs[i]->width) / 2 + ctx.bounds.x; ++ targetx = ((int) ctx.bounds.width - combining_glyphs[i]->width) / 2 + ctx.bounds.x; + /* CGJ is to avoid diacritics reordering. */ + if (comb[i].code + == GRUB_UNICODE_COMBINING_GRAPHEME_JOINER) +@@ -1234,8 +1234,8 @@ blit_comb (const struct grub_unicode_glyph *glyph_id, + case GRUB_UNICODE_COMB_OVERLAY: + do_blit (combining_glyphs[i], + targetx, +- (ctx.bounds.height - combining_glyphs[i]->height) / 2 +- - (ctx.bounds.height + ctx.bounds.y), &ctx); ++ ((int) ctx.bounds.height - combining_glyphs[i]->height) / 2 ++ - ((int) ctx.bounds.height + ctx.bounds.y), &ctx); + if (min_devwidth < combining_glyphs[i]->width) + min_devwidth = combining_glyphs[i]->width; + break; +@@ -1308,7 +1308,7 @@ blit_comb (const struct grub_unicode_glyph *glyph_id, + /* Fallthrough. */ + case GRUB_UNICODE_STACK_ATTACHED_ABOVE: + do_blit (combining_glyphs[i], targetx, +- -(ctx.bounds.height + ctx.bounds.y + space ++ -((int) ctx.bounds.height + ctx.bounds.y + space + + combining_glyphs[i]->height), &ctx); + if (min_devwidth < combining_glyphs[i]->width) + min_devwidth = combining_glyphs[i]->width; +@@ -1316,7 +1316,7 @@ blit_comb (const struct grub_unicode_glyph *glyph_id, + + case GRUB_UNICODE_COMB_HEBREW_DAGESH: + do_blit (combining_glyphs[i], targetx, +- -(ctx.bounds.height / 2 + ctx.bounds.y ++ -((int) ctx.bounds.height / 2 + ctx.bounds.y + + combining_glyphs[i]->height / 2), &ctx); + if (min_devwidth < combining_glyphs[i]->width) + min_devwidth = combining_glyphs[i]->width; +-- +2.41.0 + diff --git a/boot/grub2/0019-fs-ext2-Ignore-checksum-seed-incompat-feature.patch b/boot/grub2/0019-fs-ext2-Ignore-checksum-seed-incompat-feature.patch new file mode 100644 index 000000000000..9a913e227955 --- /dev/null +++ b/boot/grub2/0019-fs-ext2-Ignore-checksum-seed-incompat-feature.patch @@ -0,0 +1,61 @@ +From 7fd5feff97c4b1f446f8fcf6d37aca0c64e7c763 Mon Sep 17 00:00:00 2001 +From: Javier Martinez Canillas +Date: Fri, 11 Jun 2021 21:36:16 +0200 +Subject: [PATCH] fs/ext2: Ignore checksum seed incompat feature + +This incompat feature is used to denote that the filesystem stored its +metadata checksum seed in the superblock. This is used to allow tune2fs +changing the UUID on a mounted metdata_csum filesystem without having +to rewrite all the disk metadata. However, the GRUB doesn't use the +metadata checksum at all. So, it can just ignore this feature if it +is enabled. This is consistent with the GRUB filesystem code in general +which just does a best effort to access the filesystem's data. + +The checksum seed incompat feature has to be removed from the ignore +list if the support for metadata checksum verification is added to the +GRUB ext2 driver later. + +Suggested-by: Eric Sandeen +Suggested-by: Lukas Czerner +Signed-off-by: Javier Martinez Canillas +Reviewed-by: Lukas Czerner +Reviewed-by: Daniel Kiper +Upstream: 7fd5feff97c4b1f446f8fcf6d37aca0c64e7c763 +Signed-off-by: Jens Maus +--- + grub-core/fs/ext2.c | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +diff --git a/grub-core/fs/ext2.c b/grub-core/fs/ext2.c +index e7dd78e66..4953a1591 100644 +--- a/grub-core/fs/ext2.c ++++ b/grub-core/fs/ext2.c +@@ -103,6 +103,7 @@ GRUB_MOD_LICENSE ("GPLv3+"); + #define EXT4_FEATURE_INCOMPAT_64BIT 0x0080 + #define EXT4_FEATURE_INCOMPAT_MMP 0x0100 + #define EXT4_FEATURE_INCOMPAT_FLEX_BG 0x0200 ++#define EXT4_FEATURE_INCOMPAT_CSUM_SEED 0x2000 + #define EXT4_FEATURE_INCOMPAT_ENCRYPT 0x10000 + + /* The set of back-incompatible features this driver DOES support. Add (OR) +@@ -123,10 +124,15 @@ GRUB_MOD_LICENSE ("GPLv3+"); + * mmp: Not really back-incompatible - was added as such to + * avoid multiple read-write mounts. Safe to ignore for this + * RO driver. ++ * checksum seed: Not really back-incompatible - was added to allow tools ++ * such as tune2fs to change the UUID on a mounted metadata ++ * checksummed filesystem. Safe to ignore for now since the ++ * driver doesn't support checksum verification. However, it ++ * has to be removed from this list if the support is added later. + */ + #define EXT2_DRIVER_IGNORED_INCOMPAT ( EXT3_FEATURE_INCOMPAT_RECOVER \ +- | EXT4_FEATURE_INCOMPAT_MMP) +- ++ | EXT4_FEATURE_INCOMPAT_MMP \ ++ | EXT4_FEATURE_INCOMPAT_CSUM_SEED) + + #define EXT3_JOURNAL_MAGIC_NUMBER 0xc03b3998U + +-- +2.34.1 + diff --git a/boot/grub2/0020-fs-ext2-Ignore-the-large_dir-incompat-feature.patch b/boot/grub2/0020-fs-ext2-Ignore-the-large_dir-incompat-feature.patch new file mode 100644 index 000000000000..43b182f968ce --- /dev/null +++ b/boot/grub2/0020-fs-ext2-Ignore-the-large_dir-incompat-feature.patch @@ -0,0 +1,60 @@ +From 2e9fa73a040462b81bfbfe56c0bc7ad2d30b446b Mon Sep 17 00:00:00 2001 +From: Theodore Ts'o +Date: Tue, 30 Aug 2022 22:41:59 -0400 +Subject: [PATCH] fs/ext2: Ignore the large_dir incompat feature + +Recently, ext4 added the large_dir feature, which adds support for +a 3 level htree directory support. + +The GRUB supports existing file systems with htree directories by +ignoring their existence, and since the index nodes for the hash tree +look like deleted directory entries (by design), the GRUB can simply do +a brute force O(n) linear search of directories. The same is true for +3 level deep htrees indicated by large_dir feature flag. + +Hence, it is safe for the GRUB to ignore the large_dir incompat feature. + +Fixes: https://savannah.gnu.org/bugs/?61606 + +Signed-off-by: Theodore Ts'o +Reviewed-by: Daniel Kiper +Upstream: 2e9fa73a040462b81bfbfe56c0bc7ad2d30b446b +Signed-off-by: Jens Maus +--- + grub-core/fs/ext2.c | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) + +diff --git a/grub-core/fs/ext2.c b/grub-core/fs/ext2.c +index 0989e26e1..e1cc5e62a 100644 +--- a/grub-core/fs/ext2.c ++++ b/grub-core/fs/ext2.c +@@ -104,6 +104,7 @@ GRUB_MOD_LICENSE ("GPLv3+"); + #define EXT4_FEATURE_INCOMPAT_MMP 0x0100 + #define EXT4_FEATURE_INCOMPAT_FLEX_BG 0x0200 + #define EXT4_FEATURE_INCOMPAT_CSUM_SEED 0x2000 ++#define EXT4_FEATURE_INCOMPAT_LARGEDIR 0x4000 /* >2GB or 3 level htree */ + #define EXT4_FEATURE_INCOMPAT_ENCRYPT 0x10000 + + /* The set of back-incompatible features this driver DOES support. Add (OR) +@@ -129,10 +130,17 @@ GRUB_MOD_LICENSE ("GPLv3+"); + * checksummed filesystem. Safe to ignore for now since the + * driver doesn't support checksum verification. However, it + * has to be removed from this list if the support is added later. ++ * large_dir: Not back-incompatible given that the GRUB ext2 driver does ++ * not implement EXT2_FEATURE_COMPAT_DIR_INDEX. If the GRUB ++ * eventually supports the htree feature (aka dir_index) ++ * it should support 3 level htrees and then move ++ * EXT4_FEATURE_INCOMPAT_LARGEDIR to ++ * EXT2_DRIVER_SUPPORTED_INCOMPAT. + */ + #define EXT2_DRIVER_IGNORED_INCOMPAT ( EXT3_FEATURE_INCOMPAT_RECOVER \ + | EXT4_FEATURE_INCOMPAT_MMP \ +- | EXT4_FEATURE_INCOMPAT_CSUM_SEED) ++ | EXT4_FEATURE_INCOMPAT_CSUM_SEED \ ++ | EXT4_FEATURE_INCOMPAT_LARGEDIR) + + #define EXT3_JOURNAL_MAGIC_NUMBER 0xc03b3998U + +-- +2.34.1 + diff --git a/boot/grub2/Config.in b/boot/grub2/Config.in index 92b5dd501b72..f05f33ccc7b5 100644 --- a/boot/grub2/Config.in +++ b/boot/grub2/Config.in @@ -27,6 +27,10 @@ config BR2_TARGET_GRUB2 Amongst others, GRUB2 offers EFI support, which GRUB Legacy doesn't provide. + The file boot/grub2/grub.cfg is used by default as the Grub + configuration file. It can be overridden using a rootfs + overlay or post-build script. + For additional notes on using Grub 2 with Buildroot, see boot/grub2/readme.txt diff --git a/boot/grub2/grub2.mk b/boot/grub2/grub2.mk index 875884cf5c4a..6c3a861fb644 100644 --- a/boot/grub2/grub2.mk +++ b/boot/grub2/grub2.mk @@ -34,6 +34,25 @@ GRUB2_IGNORE_CVES += CVE-2020-15705 GRUB2_IGNORE_CVES += CVE-2021-3981 # vulnerability is specific to the SUSE distribution GRUB2_IGNORE_CVES += CVE-2021-46705 +# 0005-loader-efi-chainloader-Use-grub_loader_set_ex.patch +GRUB2_IGNORE_CVES += CVE-2022-28736 +# 0006-kern-efi-sb-Reject-non-kernel-files-in-the-shim_lock.patch +GRUB2_IGNORE_CVES += CVE-2022-28735 +# 0010-video-readers-png-Drop-greyscale-support-to-fix-heap.patch +GRUB2_IGNORE_CVES += CVE-2021-3695 +# 0011-video-readers-png-Avoid-heap-OOB-R-W-inserting-huff-.patch +GRUB2_IGNORE_CVES += CVE-2021-3696 +# 0012-video-readers-jpeg-Block-int-underflow-wild-pointer-.patch +GRUB2_IGNORE_CVES += CVE-2021-3697 +# 0013-net-ip-Do-IP-fragment-maths-safely.patch +GRUB2_IGNORE_CVES += CVE-2022-28733 +# 0014-net-http-Fix-OOB-write-for-split-http-headers.patch +# 0015-net-http-Error-out-on-headers-with-LF-without-CR.patch +GRUB2_IGNORE_CVES += CVE-2022-28734 +# 0017-font-Fix-several-integer-overflows-in-grub_font_cons.patch +GRUB2_IGNORE_CVES += CVE-2022-2601 +# 0018-font-Fix-an-integer-underflow-in-blit_comb.patch +GRUB2_IGNORE_CVES += CVE-2022-3775 ifeq ($(BR2_TARGET_GRUB2_INSTALL_TOOLS),y) GRUB2_INSTALL_TARGET = YES diff --git a/boot/lpc32xxcdl/0001-compiler_name.patch b/boot/lpc32xxcdl/0001-compiler_name.patch deleted file mode 100644 index 6aecbdeba62d..000000000000 --- a/boot/lpc32xxcdl/0001-compiler_name.patch +++ /dev/null @@ -1,52 +0,0 @@ -Use CROSS_COMPILE as compiler name and stop using libc - -Signed-off-by: Alexandre Belloni ---- - makerule/lpc32xx/make.lpc32xx.gnu | 22 +++++++++++----------- - 1 files changed, 11 insertions(+), 11 deletions(-) - -diff --git a/makerule/lpc32xx/make.lpc32xx.gnu b/makerule/lpc32xx/make.lpc32xx.gnu -index 1014c28..3277d99 100644 ---- a/makerule/lpc32xx/make.lpc32xx.gnu -+++ b/makerule/lpc32xx/make.lpc32xx.gnu -@@ -27,19 +27,19 @@ CFLAGS += -mno-sched-prolog -fno-hosted -mno-thumb-interwork -ffunction-sectio - CFLAGS += -I$(CSP_INC_DIR) -I$(BSP_INC_DIR) -I$(GEN_INC_DIR) - AFLAGS = -mcpu=arm926ej-s - AFLAGS += -I$(CSP_INC_DIR) -I$(BSP_INC_DIR) -I$(GEN_INC_DIR) --CC = arm-none-eabi-gcc --AS = arm-none-eabi-as --AR = arm-none-eabi-ar -r --LD = arm-none-eabi-gcc --NM = arm-none-eabi-nm --OBJDUMP = arm-none-eabi-objdump --OBJCOPY = arm-none-eabi-objcopy --READELF = arm-none-eabi-readelf -+CC = $(CROSS_COMPILE)gcc -+AS = $(CROSS_COMPILE)as -+AR = $(CROSS_COMPILE)ar -r -+LD = $(CROSS_COMPILE)gcc -+NM = $(CROSS_COMPILE)nm -+OBJDUMP = $(CROSS_COMPILE)objdump -+OBJCOPY = $(CROSS_COMPILE)objcopy -+READELF = $(CROSS_COMPILE)readelf - LDFLAGS += -Wl,--gc-sections - - LK = -static - LK += -Wl,--start-group $(TARGET_CSP_LIB) $(TARGET_BSP_LIB) $(TARGET_GEN_LIB) --LK += -lgcc -lc -lg -lm -lstdc++ -lsupc++ -+LK += -nostdlib -lgcc #-lc -lg -lm -lstdc++ -lsupc++ - LK += -Wl,--end-group - MAP = -Xlinker -Map -Xlinker - LDESC = -Xlinker -T -@@ -47,6 +47,6 @@ ENTRY = -e - BIN = -bin - EXT = .elf - LEXT = --ELFTOREC =arm-none-eabi-objcopy -O srec --strip-all --verbose --ELFTOBIN =arm-none-eabi-objcopy -I elf32-littlearm -O binary --strip-all --verbose -+ELFTOREC = $(OBJCOPY) -O srec --strip-all --verbose -+ELFTOBIN = $(OBJCOPY) -I elf32-littlearm -O binary --strip-all --verbose - REC =.srec --- -1.7.7.3 - diff --git a/boot/lpc32xxcdl/0002-delete_redundant_files.patch b/boot/lpc32xxcdl/0002-delete_redundant_files.patch deleted file mode 100644 index 39966f01e9f0..000000000000 --- a/boot/lpc32xxcdl/0002-delete_redundant_files.patch +++ /dev/null @@ -1,969 +0,0 @@ -Remove duplicated files to stop the linker from complaining about duplicate -symbols - -Signed-off-by: Alexandre Belloni ---- ---- a/csps/lpc32xx/bsps/fdi3250/startup/examples/s1l/sysapi_timer.c 2011-10-05 19:10:37.000000000 +0200 -+++ /dev/null 2012-01-01 16:39:47.918907000 +0100 -@@ -1,212 +0,0 @@ --/*********************************************************************** -- * $Id:: sysapi_timer.c 3394 2010-05-06 17:56:27Z usb10132 $ -- * -- * Project: Time support functions -- * -- * Description: -- * Implements the following functions required for the S1L API -- * time_init -- * time_reset -- * time_start -- * time_stop -- * time_get -- * time_get_rate -- * -- *********************************************************************** -- * Software that is described herein is for illustrative purposes only -- * which provides customers with programming information regarding the -- * products. This software is supplied "AS IS" without any warranties. -- * NXP Semiconductors assumes no responsibility or liability for the -- * use of the software, conveys no license or title under any patent, -- * copyright, or mask work right to the product. NXP Semiconductors -- * reserves the right to make changes in the software without -- * notification. NXP Semiconductors also make no representation or -- * warranty that such application will be suitable for the specified -- * use without further testing or modification. -- **********************************************************************/ -- --#include "s1l_sys_inf.h" --#include "lpc32xx_intc_driver.h" --#include "lpc32xx_timer_driver.h" -- --static UNS_64 base_rate; --static INT_32 tdev = 0; -- --/*********************************************************************** -- * -- * Function: time_init -- * -- * Purpose: Initializes time system -- * -- * Processing: Initializes the system timer. -- * -- * Parameters: None -- * -- * Outputs: None -- * -- * Returns: 0 if the init failed, otherwise non-zero -- * -- * Notes: None -- * -- **********************************************************************/ --INT_32 time_init(void) --{ -- TMR_PSCALE_SETUP_T pscale; -- -- /* Open timer driver */ -- if (tdev == 0) -- { -- tdev = timer_open((void *) TIMER_CNTR0, 0); -- if (tdev != 0) -- { -- /* Use a prescale count to 100000 */ -- pscale.ps_tick_val = 100000; -- pscale.ps_us_val = 0; /* Not needed when ps_tick_val != 0 */ -- timer_ioctl(tdev, TMR_SETUP_PSCALE, (INT_32) &pscale); -- -- /* Get timer clock rate */ -- base_rate = (UNS_64) timer_ioctl(tdev, TMR_GET_STATUS, -- TMR_GET_CLOCK); -- } -- } -- -- return tdev; --} -- --/*********************************************************************** -- * -- * Function: time_reset -- * -- * Purpose: Resets system timer -- * -- * Processing: -- * See function. -- * -- * Parameters: None -- * -- * Outputs: None -- * -- * Returns: Nothing -- * -- * Notes: None -- * -- **********************************************************************/ --void time_reset(void) --{ -- if (tdev != 0) -- { -- timer_ioctl(tdev, TMR_RESET, 1); -- } --} -- --/*********************************************************************** -- * -- * Function: time_start -- * -- * Purpose: Starts system timer -- * -- * Processing: -- * See function. -- * -- * Parameters: None -- * -- * Outputs: None -- * -- * Returns: Nothing -- * -- * Notes: None -- * -- **********************************************************************/ --void time_start(void) --{ -- if (tdev != 0) -- { -- timer_ioctl(tdev, TMR_ENABLE, 1); -- } --} -- --/*********************************************************************** -- * -- * Function: time_stop -- * -- * Purpose: Stops system timer -- * -- * Processing: -- * See function. -- * -- * Parameters: None -- * -- * Outputs: None -- * -- * Returns: Nothing -- * -- * Notes: None -- * -- **********************************************************************/ --void time_stop(void) --{ -- if (tdev != 0) -- { -- timer_ioctl(tdev, TMR_ENABLE, 0); -- } --} -- --/*********************************************************************** -- * -- * Function: time_get -- * -- * Purpose: Returns current system time value -- * -- * Processing: -- * See function. -- * -- * Parameters: None -- * -- * Outputs: None -- * -- * Returns: The number of ticks of the timer counter -- * -- * Notes: None -- * -- **********************************************************************/ --UNS_64 time_get(void) --{ -- TMR_COUNTS_T tcounts; -- UNS_64 ticks = 0; -- -- if (tdev != 0) -- { -- timer_ioctl(tdev, TMR_GET_COUNTS, (INT_32) &tcounts); -- -- /* Compute number of timer ticks */ -- ticks = (UNS_64) tcounts.count_val * 100000; -- ticks = ticks + (UNS_64) tcounts.ps_count_val; -- } -- -- return ticks; --} -- --/*********************************************************************** -- * -- * Function: time_get_rate -- * -- * Purpose: -- * Returns base tick rate (ticks per second) of the time counter -- * -- * Processing: -- * See function. -- * -- * Parameters: None -- * -- * Outputs: None -- * -- * Returns: The timer tick rate (in ticks per second) -- * -- * Notes: None -- * -- **********************************************************************/ --UNS_64 time_get_rate(void) --{ -- return base_rate; --} -- ---- a/csps/lpc32xx/bsps/fdi3250/startup/examples/s1l/sys_mmu_cmd_group.c 2011-10-05 19:10:37.000000000 +0200 -+++ /dev/null 2012-01-01 16:39:47.918907000 +0100 -@@ -1,746 +0,0 @@ --/*********************************************************************** -- * $Id:: sys_mmu_cmd_group.c 3430 2010-05-07 17:39:08Z usb10132 $ -- * -- * Project: Command processor for peek, poke, dump, and fill -- * -- * Description: -- * Processes commands from the command prompt -- * -- *********************************************************************** -- * Software that is described herein is for illustrative purposes only -- * which provides customers with programming information regarding the -- * products. This software is supplied "AS IS" without any warranties. -- * NXP Semiconductors assumes no responsibility or liability for the -- * use of the software, conveys no license or title under any patent, -- * copyright, or mask work right to the product. NXP Semiconductors -- * reserves the right to make changes in the software without -- * notification. NXP Semiconductors also make no representation or -- * warranty that such application will be suitable for the specified -- * use without further testing or modification. -- **********************************************************************/ -- --#include "lpc_arm922t_cp15_driver.h" --#include "lpc_string.h" --#include "startup.h" --#include "s1l_cmds.h" --#include "s1l_sys_inf.h" -- --/* dcache command */ --BOOL_32 cmd_dcache(void); --static UNS_32 cmd_dcache_plist[] = --{ -- (PARSE_TYPE_STR), /* The "dcache" command */ -- (PARSE_TYPE_DEC | PARSE_TYPE_END) --}; --static CMD_ROUTE_T core_dcache_cmd = --{ -- (UNS_8 *) "dcache", -- cmd_dcache, -- (UNS_8 *) "Enables, disables, or flushes data cache", -- (UNS_8 *) "dcache [0(disable), 1(enable), 2(flush)]", -- cmd_dcache_plist, -- NULL --}; -- --/* icache command */ --BOOL_32 cmd_icache(void); --static UNS_32 cmd_icache_plist[] = --{ -- (PARSE_TYPE_STR), /* The "icache" command */ -- (PARSE_TYPE_DEC | PARSE_TYPE_END) --}; --static CMD_ROUTE_T core_icache_cmd = --{ -- (UNS_8 *) "icache", -- cmd_icache, -- (UNS_8 *) "Enables or disables instruction cache", -- (UNS_8 *) "icache [0(disable), 1(enable)]", -- cmd_icache_plist, -- NULL --}; -- --/* inval command */ --BOOL_32 cmd_inval(void); --static UNS_32 cmd_inval_plist[] = --{ -- (PARSE_TYPE_STR | PARSE_TYPE_END) /* The "inval" command */ --}; --static CMD_ROUTE_T core_inval_cmd = --{ -- (UNS_8 *) "inval", -- cmd_inval, -- (UNS_8 *) "Flushes data cache and invalidates instruction cache", -- (UNS_8 *) "inval", -- cmd_inval_plist, -- NULL --}; -- --/* mmuenab command */ --BOOL_32 cmd_mmuenab(void); --static UNS_32 cmd_mmuenab_plist[] = --{ -- (PARSE_TYPE_STR), /* The "mmuenab" command */ -- (PARSE_TYPE_DEC | PARSE_TYPE_END) --}; --static CMD_ROUTE_T core_mmuenab_cmd = --{ -- (UNS_8 *) "mmuenab", -- cmd_mmuenab, -- (UNS_8 *) "Enables or disables the MMU", -- (UNS_8 *) "mmuenab [0(disable), 1(enable)]", -- cmd_mmuenab_plist, -- NULL --}; -- --/* map command */ --BOOL_32 cmd_map(void); --static UNS_32 cmd_map_plist[] = --{ -- (PARSE_TYPE_STR), /* The "map" command */ -- (PARSE_TYPE_HEX), -- (PARSE_TYPE_HEX), -- (PARSE_TYPE_DEC), -- (PARSE_TYPE_DEC | PARSE_TYPE_END), --}; --static CMD_ROUTE_T core_map_cmd = --{ -- (UNS_8 *) "map", -- cmd_map, -- (UNS_8 *) "Maps a range of physical address sections to virtual addresses", -- (UNS_8 *) "map [virt hex addr][phy hex addr][sections][0(uncached), 1(cached), 2(unmap)]", -- cmd_map_plist, -- NULL --}; -- --/* mmuinfo command */ --static BOOL_32 cmd_mmuinfo(void); --static UNS_32 cmd_mmuinfo_plist[] = --{ -- (PARSE_TYPE_STR | PARSE_TYPE_END) /* The "mmuinfo" command */ --}; --static CMD_ROUTE_T core_mmuinfo_cmd = --{ -- (UNS_8 *) "mmuinfo", -- cmd_mmuinfo, -- (UNS_8 *) "Dumps page table and MMU info", -- (UNS_8 *) "mmuinfo", -- cmd_mmuinfo_plist, -- NULL --}; -- --/* MMU group */ --static GROUP_LIST_T mmu_group = --{ -- (UNS_8 *) "mmu", /* mmu group */ -- (UNS_8 *) "MMU command group", -- NULL, -- NULL --}; -- --static UNS_8 enabled_msg [] =" enabled"; --static UNS_8 disabled_msg [] =" disabled"; --static UNS_8 dcache_msg[] = "Data cache"; --static UNS_8 icache_msg[] = "Instruction cache"; --static UNS_8 pagetab_msg[] = "Page table at address: "; --static UNS_8 slist_msg[] = "Type Virt Phy fl Size"; --static UNS_8 mmu_msg [] ="MMU"; --static UNS_8 cpage_msg[] = "Coarse page:"; --static UNS_8 fpage_msg[] = "Fine page :"; --static UNS_8 sect_msg[] = "Section :"; --static UNS_8 mbytes_msg[] = "M"; --static UNS_8 map1_err_msg[] = -- "Error : section addresses must be aligned on a 32-bit boundary"; --static UNS_8 map2_err_msg[] = -- "Error : Number of sections exceeds address range of device"; --static UNS_8 phya_msg[] = "Virtual address "; --static UNS_8 mapped_msg[] = " mapped to physical address "; --static UNS_8 unmapped_msg[] = " unmapped from physical address "; --static UNS_8 cached_msg[] = " (cached)"; --static UNS_8 inval_msg[] = " invalidated"; --static UNS_8 caches_msg [] ="Caches"; --static UNS_8 flushed_msg[] = " flushed"; -- --/*********************************************************************** -- * -- * Function: show_section -- * -- * Purpose: Display section information -- * -- * Processing: -- * See function. -- * -- * Parameters: -- * mmu_reg : MMU settings for this section -- * virt_addr : Starting virtual address for this section -- * segs : Number of 1M segments for this section -- * -- * Outputs: None -- * -- * Returns: Nothing -- * -- * Notes: None -- * -- **********************************************************************/ --static void show_section(UNS_32 mmu_reg, -- UNS_32 virt_addr, -- UNS_32 segs) --{ -- UNS_8 straddr [16]; -- UNS_32 mmu_phy; -- -- if ((mmu_reg & ARM922T_L1D_TYPE_PG_SN_MASK) != -- ARM922T_L1D_TYPE_FAULT) -- { -- if ((mmu_reg & ARM922T_L1D_TYPE_PG_SN_MASK) == -- ARM922T_L1D_TYPE_CPAGE) -- { -- term_dat_out(cpage_msg); -- } -- else if ((mmu_reg & ARM922T_L1D_TYPE_PG_SN_MASK) == -- ARM922T_L1D_TYPE_FPAGE) -- { -- term_dat_out(fpage_msg); -- } -- else -- { -- term_dat_out(sect_msg); -- } -- -- /* Compute virtual address */ -- str_makehex(straddr, virt_addr, 8); -- term_dat_out(straddr); -- term_dat_out((UNS_8 *) " "); -- -- /* Compute mapped physical address */ -- if ((mmu_reg & ARM922T_L1D_TYPE_PG_SN_MASK) == -- ARM922T_L1D_TYPE_SECTION) -- { -- mmu_phy = mmu_reg & 0xFFF00000; -- } -- else -- { -- /* Don't compute addresses for non-sections */ -- mmu_phy = 0; -- } -- str_makehex(straddr, mmu_phy, 8); -- term_dat_out(straddr); -- term_dat_out((UNS_8 *) " "); -- -- /* MMU flags */ -- if ((mmu_reg & ARM922T_L1D_BUFFERABLE) != 0) -- { -- term_dat_out((UNS_8 *) "b"); -- } -- else -- { -- term_dat_out((UNS_8 *) " "); -- } -- if ((mmu_reg & ARM922T_L1D_CACHEABLE) != 0) -- { -- term_dat_out((UNS_8 *) "c"); -- } -- else -- { -- term_dat_out((UNS_8 *) " "); -- } -- term_dat_out((UNS_8 *) " "); -- -- /* Displays used megabytes */ -- str_makedec(straddr, segs); -- term_dat_out(straddr); -- term_dat_out_crlf(mbytes_msg); -- } --} -- --/*********************************************************************** -- * -- * Function: mmu_dumpinfo -- * -- * Purpose: Display MMU info -- * -- * Processing: -- * Display the MMU information, including enable status, cache -- * status, and page table. -- * -- * Parameters: None -- * -- * Outputs: None -- * -- * Returns: TRUE if the command was processed, otherwise FALSE -- * -- * Notes: None -- * -- **********************************************************************/ --static BOOL_32 mmu_dumpinfo(void) --{ -- UNS_32 segsz, last_mmu_reg, mmu_vrt, mmu_reg, mmu_vrtsav = 0, *pt; -- UNS_32 mlast_mmu_reg, mmmu_reg; -- int idx; -- UNS_8 hexaddr [16]; -- -- term_dat_out(mmu_msg); -- if (cp15_mmu_enabled() == FALSE) -- { -- term_dat_out_crlf(disabled_msg); -- } -- else -- { -- term_dat_out_crlf(enabled_msg); -- -- /* Get MMU control register word */ -- mmu_reg = cp15_get_mmu_control_reg(); -- -- /* Instruction cache status */ -- term_dat_out(icache_msg); -- if ((mmu_reg & ARM922T_MMU_CONTROL_I) == 0) -- { -- term_dat_out_crlf(disabled_msg); -- } -- else -- { -- term_dat_out_crlf(enabled_msg); -- } -- -- /* Data cache status */ -- term_dat_out(dcache_msg); -- if ((mmu_reg & ARM922T_MMU_CONTROL_C) == 0) -- { -- term_dat_out_crlf(disabled_msg); -- } -- else -- { -- term_dat_out_crlf(enabled_msg); -- } -- -- term_dat_out(pagetab_msg); -- mmu_reg = (UNS_32) cp15_get_ttb(); -- str_makehex(hexaddr, mmu_reg, 8); -- term_dat_out_crlf(hexaddr); -- term_dat_out_crlf(slist_msg); -- -- /* Process MMU table - assume that the physical and -- virtual locations of table are the same */ -- pt = (UNS_32 *) mmu_reg; -- mmu_vrt = 0x0; -- segsz = 0xFFFFFFFF; -- last_mmu_reg = mlast_mmu_reg = 0xFFFFFFFF; -- for (idx = 0; idx < 4096; idx++) -- { -- mmu_reg = *pt; -- mmmu_reg = (mmu_reg & (ARM922T_L1D_TYPE_PG_SN_MASK | -- ARM922T_L1D_BUFFERABLE | ARM922T_L1D_CACHEABLE)); -- segsz = segsz + 1; -- -- if ((last_mmu_reg != 0xFFFFFFFF) && -- (mlast_mmu_reg != mmmu_reg)) -- { -- show_section(last_mmu_reg, mmu_vrtsav, segsz); -- segsz = 0; -- } -- -- if (mlast_mmu_reg != mmmu_reg) -- { -- mmu_vrtsav = mmu_vrt; -- last_mmu_reg = mmu_reg; -- mlast_mmu_reg = mmmu_reg; -- } -- -- pt++; -- mmu_vrt += 0x00100000; -- } -- } -- -- return TRUE; --} -- --/*********************************************************************** -- * -- * Function: mmu_dumpmap -- * -- * Purpose: Map a virtual address range to a physical range -- * -- * Processing: -- * From the input addresses and number of sections, generate the -- * appropriate entries in the page table. -- * -- * Parameters: None -- * -- * Outputs: None -- * -- * Returns: TRUE if the command was processed, otherwise FALSE -- * -- * Notes: None -- * -- **********************************************************************/ --static BOOL_32 mmu_dumpmap(UNS_32 vrt, -- UNS_32 phy, -- UNS_32 sections, -- UNS_32 cache) --{ -- BOOL_32 processed = FALSE; -- UNS_32 mmu_phy, mmu_vrt, tmp1 = 0, tmp2, *pt; -- UNS_8 hexaddr [16]; -- -- /* Verify address boundaries are sectional */ -- mmu_vrt = vrt & ~ARM922T_L2D_SN_BASE_MASK; -- mmu_phy = phy & ~ARM922T_L2D_SN_BASE_MASK; -- if ((mmu_vrt != 0) || (mmu_phy != 0)) -- { -- term_dat_out_crlf(map1_err_msg); -- } -- else -- { -- /* Verify that address range and section count will not -- exceed address range of device */ -- tmp1 = vrt >> 20; -- tmp1 = (tmp1 + sections) - 1; -- tmp2 = phy >> 20; -- tmp2 = (tmp2 + sections) - 1; -- if ((tmp1 < 4096) && (tmp2 < 4096)) -- { -- /* Good address range and good section count */ -- processed = TRUE; -- } -- else -- { -- term_dat_out_crlf(map2_err_msg); -- } -- } -- -- /* Generate static part of MMU word */ -- if (cache == 0) -- { -- /* Section mapped with cache disabled */ -- tmp1 = ARM922T_L1D_TYPE_SECTION; -- } -- else if (cache == 1) -- { -- /* Section mapped with cache enabled */ -- tmp1 = (ARM922T_L1D_BUFFERABLE | ARM922T_L1D_CACHEABLE | -- ARM922T_L1D_TYPE_SECTION); -- } -- else if (cache == 2) -- { -- /* Section unmapped */ -- tmp1 = ARM922T_L1D_TYPE_FAULT; -- } -- tmp1 |= ARM922T_L1D_AP_ALL; -- -- /* Offset into page table for virtual address */ -- tmp2 = (vrt >> 20); -- pt = cp15_get_ttb() + tmp2; -- -- /* Loop until all sections are complete */ -- while ((sections > 0) && (processed == TRUE)) -- { -- /* Add in physical address */ -- tmp2 = tmp1 | (phy & ARM922T_L2D_SN_BASE_MASK); -- -- /* Save new section descriptor for virtual address */ -- *pt = tmp2; -- -- /* Output message shown the map */ -- term_dat_out(phya_msg); -- str_makehex(hexaddr, phy, 8); -- term_dat_out(hexaddr); -- if (cache == 2) -- { -- term_dat_out(unmapped_msg); -- } -- else -- { -- term_dat_out(mapped_msg); -- } -- str_makehex(hexaddr, vrt, 8); -- term_dat_out(hexaddr); -- if (cache == 1) -- { -- term_dat_out(cached_msg); -- } -- term_dat_out_crlf((UNS_8 *) ""); -- -- /* Next section and page table entry*/ -- phy += 0x00100000; -- vrt += 0x00100000; -- pt++; -- sections--; -- } -- -- return processed; --} -- --/*********************************************************************** -- * -- * Function: cmd_mmuinfo -- * -- * Purpose: Display MMU information -- * -- * Processing: -- * See function. -- * -- * Parameters: None -- * -- * Outputs: None -- * -- * Returns: TRUE if the command was processed, otherwise FALSE -- * -- * Notes: None -- * -- **********************************************************************/ --static BOOL_32 cmd_mmuinfo(void) --{ -- mmu_dumpinfo(); -- -- return TRUE; --} -- --/*********************************************************************** -- * -- * Function: cmd_map -- * -- * Purpose: Map a physical address region to a virtual region -- * -- * Processing: -- * See function. -- * -- * Parameters: None -- * -- * Outputs: None -- * -- * Returns: TRUE if the command was processed, otherwise FALSE -- * -- * Notes: None -- * -- **********************************************************************/ --BOOL_32 cmd_map(void) --{ -- UNS_32 phy, virt, sects, ce = 0; -- -- /* Get arguments */ -- virt = cmd_get_field_val(1); -- phy = cmd_get_field_val(2); -- sects = cmd_get_field_val(3); -- ce = cmd_get_field_val(4); -- -- if (ce <= 2) -- { -- mmu_dumpmap(virt, phy, sects, ce); -- } -- -- return TRUE; --} -- --/*********************************************************************** -- * -- * Function: cmd_inval -- * -- * Purpose: MMU cache flush and invalidate -- * -- * Processing: -- * See function. -- * -- * Parameters: None -- * -- * Outputs: None -- * -- * Returns: TRUE if the command was processed, otherwise FALSE -- * -- * Notes: None -- * -- **********************************************************************/ --BOOL_32 cmd_inval(void) --{ -- dcache_flush(); -- icache_inval(); -- term_dat_out(caches_msg); -- term_dat_out(inval_msg); -- -- return TRUE; --} -- --/*********************************************************************** -- * -- * Function: cmd_dcache -- * -- * Purpose: MMU data cache enable and disable -- * -- * Processing: -- * If the value passed in the parser is 1, enable the data cache, -- * otherwise disable the data cache. -- * -- * Parameters: None -- * -- * Outputs: None -- * -- * Returns: TRUE if the command was processed, otherwise FALSE -- * -- * Notes: None -- * -- **********************************************************************/ --BOOL_32 cmd_dcache(void) --{ -- UNS_32 cenable; -- UNS_8 *ppar; -- -- /* Get argument */ -- cenable = cmd_get_field_val(1); -- -- switch (cenable) -- { -- case 0: -- dcache_flush(); -- cp15_set_dcache(0); -- ppar = disabled_msg; -- break; -- -- case 1: -- cp15_invalidate_cache(); -- cp15_set_dcache(1); -- ppar = enabled_msg; -- break; -- -- case 2: -- default: -- dcache_flush(); -- ppar = flushed_msg; -- break; -- } -- -- term_dat_out(dcache_msg); -- term_dat_out_crlf(ppar); -- -- return TRUE; --} -- --/*********************************************************************** -- * -- * Function: cmd_icache -- * -- * Purpose: MMU instruction cache enable and disable -- * -- * Processing: -- * If the value passed in the parser is 1, enable the instruction -- * cache, otherwise disable the instruction cache. -- * -- * Parameters: None -- * -- * Outputs: None -- * -- * Returns: TRUE if the command was processed, otherwise FALSE -- * -- * Notes: None -- * -- **********************************************************************/ --BOOL_32 cmd_icache(void) --{ -- UNS_32 cenable; -- UNS_8 *ppar; -- -- /* Get argument */ -- cenable = cmd_get_field_val(1); -- -- if (cenable == 1) -- { -- dcache_flush(); -- cp15_invalidate_cache(); -- cp15_set_icache(1); -- ppar = enabled_msg; -- } -- else -- { -- cp15_set_icache(0); -- ppar = disabled_msg; -- } -- -- term_dat_out(icache_msg); -- term_dat_out_crlf(ppar); -- -- return TRUE; --} -- -- --/*********************************************************************** -- * -- * Function: cmd_mmuenab -- * -- * Purpose: Enable or disable MMU -- * -- * Processing: -- * See function. -- * -- * Parameters: None -- * -- * Outputs: None -- * -- * Returns: TRUE if the command was processed, otherwise FALSE -- * -- * Notes: None -- * -- **********************************************************************/ --BOOL_32 cmd_mmuenab(void) --{ -- UNS_8 *ppar; -- UNS_32 cenable; -- -- term_dat_out_crlf((UNS_8 *) "Warning: Changing MMU status on " -- " cached and buffered code can cause system crashes."); -- -- /* Get argument */ -- cenable = cmd_get_field_val(1); -- -- if (cenable == 1) -- { -- if ((cp15_get_mmu_control_reg() & ARM922T_MMU_CONTROL_C) != 0) -- { -- cp15_invalidate_cache(); -- } -- -- cp15_set_mmu(1); -- ppar = enabled_msg; -- } -- else -- { -- cp15_dcache_flush(); -- cp15_write_buffer_flush(); -- cp15_invalidate_cache(); -- cp15_set_mmu(0); -- ppar = disabled_msg; -- } -- -- term_dat_out(mmu_msg); -- term_dat_out_crlf(ppar); -- -- return TRUE; --} -- --/*********************************************************************** -- * -- * Function: mmu_cmd_group_init -- * -- * Purpose: Initialize MMU command group -- * -- * Processing: -- * See function. -- * -- * Parameters: None -- * -- * Outputs: None -- * -- * Returns: Nothin -- * -- * Notes: None -- * -- **********************************************************************/ --void mmu_cmd_group_init(void) --{ -- /* Add MMU group */ -- cmd_add_group(&mmu_group); -- -- /* Add commands to the MMU group */ -- cmd_add_new_command(&mmu_group, &core_dcache_cmd); -- cmd_add_new_command(&mmu_group, &core_icache_cmd); -- cmd_add_new_command(&mmu_group, &core_inval_cmd); -- cmd_add_new_command(&mmu_group, &core_mmuenab_cmd); -- cmd_add_new_command(&mmu_group, &core_map_cmd); -- cmd_add_new_command(&mmu_group, &core_mmuinfo_cmd); --} diff --git a/boot/lpc32xxcdl/0003-libnosys_gnu.patch b/boot/lpc32xxcdl/0003-libnosys_gnu.patch deleted file mode 100644 index cfd77bead6fe..000000000000 --- a/boot/lpc32xxcdl/0003-libnosys_gnu.patch +++ /dev/null @@ -1,188 +0,0 @@ -Fix compilation and eabi issues - -Since we are not linking with libc anymore, we need to define our own memset, -strlen and memcpy. Also, as we are using a *libc compiler, we need to "handle" -exceptions (mostly division by 0) by defining raise() and -__aeabi_unwind_cpp_pr0. - -Signed-off-by: Alexandre Belloni ---- - csps/lpc32xx/bsps/ea3250/source/libnosys_gnu.c | 41 +++++++++++++++++++++++ - csps/lpc32xx/bsps/fdi3250/source/libnosys_gnu.c | 41 +++++++++++++++++++++++ - csps/lpc32xx/bsps/phy3250/source/libnosys_gnu.c | 41 +++++++++++++++++++++++ - 3 files changed, 123 insertions(+), 0 deletions(-) - -diff --git a/csps/lpc32xx/bsps/ea3250/source/libnosys_gnu.c b/csps/lpc32xx/bsps/ea3250/source/libnosys_gnu.c -index 385b0ab..f1f0a0a 100644 ---- a/csps/lpc32xx/bsps/ea3250/source/libnosys_gnu.c -+++ b/csps/lpc32xx/bsps/ea3250/source/libnosys_gnu.c -@@ -25,6 +25,7 @@ - #include - #include - #include -+#include - - /* errno definition */ - #undef errno -@@ -125,4 +126,44 @@ int _write(int file, char *ptr, int len){ - return 0; - } - -+void * memset(void * s,int c,size_t count) -+{ -+ char *xs = (char *) s; -+ -+ while (count--) -+ *xs++ = c; -+ -+ return s; -+} -+ -+ -+size_t strlen(const char * s) -+{ -+ const char *sc; -+ -+ for (sc = s; *sc != '\0'; ++sc) -+ /* nothing */; -+ return sc - s; -+} -+ -+void * memcpy(void * dest,const void *src,size_t count) -+{ -+ char *tmp = (char *) dest, *s = (char *) src; -+ -+ while (count--) -+ *tmp++ = *s++; -+ -+ return dest; -+} -+ -+ -+/* Dummy functions to avoid linker complaints */ -+void __aeabi_unwind_cpp_pr0(void) -+{ -+}; -+ -+void raise(void) -+{ -+}; -+ - #endif /*__GNUC__*/ -diff --git a/csps/lpc32xx/bsps/fdi3250/source/libnosys_gnu.c b/csps/lpc32xx/bsps/fdi3250/source/libnosys_gnu.c -index 385b0ab..f1f0a0a 100644 ---- a/csps/lpc32xx/bsps/fdi3250/source/libnosys_gnu.c -+++ b/csps/lpc32xx/bsps/fdi3250/source/libnosys_gnu.c -@@ -25,6 +25,7 @@ - #include - #include - #include -+#include - - /* errno definition */ - #undef errno -@@ -125,4 +126,44 @@ int _write(int file, char *ptr, int len){ - return 0; - } - -+void * memset(void * s,int c,size_t count) -+{ -+ char *xs = (char *) s; -+ -+ while (count--) -+ *xs++ = c; -+ -+ return s; -+} -+ -+ -+size_t strlen(const char * s) -+{ -+ const char *sc; -+ -+ for (sc = s; *sc != '\0'; ++sc) -+ /* nothing */; -+ return sc - s; -+} -+ -+void * memcpy(void * dest,const void *src,size_t count) -+{ -+ char *tmp = (char *) dest, *s = (char *) src; -+ -+ while (count--) -+ *tmp++ = *s++; -+ -+ return dest; -+} -+ -+ -+/* Dummy functions to avoid linker complaints */ -+void __aeabi_unwind_cpp_pr0(void) -+{ -+}; -+ -+void raise(void) -+{ -+}; -+ - #endif /*__GNUC__*/ -diff --git a/csps/lpc32xx/bsps/phy3250/source/libnosys_gnu.c b/csps/lpc32xx/bsps/phy3250/source/libnosys_gnu.c -index cfdb674..6b50c60 100644 ---- a/csps/lpc32xx/bsps/phy3250/source/libnosys_gnu.c -+++ b/csps/lpc32xx/bsps/phy3250/source/libnosys_gnu.c -@@ -25,6 +25,7 @@ - #include - #include - #include -+#include - - /* errno definition */ - #undef errno -@@ -125,4 +126,44 @@ int _write(int file, char *ptr, int len){ - return 0; - } - -+void * memset(void * s,int c,size_t count) -+{ -+ char *xs = (char *) s; -+ -+ while (count--) -+ *xs++ = c; -+ -+ return s; -+} -+ -+ -+size_t strlen(const char * s) -+{ -+ const char *sc; -+ -+ for (sc = s; *sc != '\0'; ++sc) -+ /* nothing */; -+ return sc - s; -+} -+ -+void * memcpy(void * dest,const void *src,size_t count) -+{ -+ char *tmp = (char *) dest, *s = (char *) src; -+ -+ while (count--) -+ *tmp++ = *s++; -+ -+ return dest; -+} -+ -+ -+/* Dummy functions to avoid linker complaints */ -+void __aeabi_unwind_cpp_pr0(void) -+{ -+}; -+ -+void raise(void) -+{ -+}; -+ - #endif /*__GNUC__*/ --- -1.7.7.3 - diff --git a/boot/lpc32xxcdl/0004-slashes.patch b/boot/lpc32xxcdl/0004-slashes.patch deleted file mode 100644 index 94c184780e93..000000000000 --- a/boot/lpc32xxcdl/0004-slashes.patch +++ /dev/null @@ -1,521 +0,0 @@ -Use slashes instead of backslashes - -Signed-off-by: Alexandre Belloni ---- - .../bsps/common/examples/buildfiles/makefile | 10 +++--- - .../startup/examples/burners/makefile.burner | 16 +++++----- - csps/lpc32xx/bsps/ea3250/source/makefile | 10 +++--- - csps/lpc32xx/bsps/fdi3250/source/makefile | 12 ++++---- - csps/lpc32xx/bsps/phy3250/examples/makefile | 2 +- - csps/lpc32xx/bsps/phy3250/source/makefile | 2 +- - .../examples/Burners/nor/kickstart/makefile | 2 +- - .../startup/examples/Burners/nor/norerase/makefile | 2 +- - .../startup/examples/Burners/nor/s1lapp/makefile | 2 +- - .../examples/Burners/spi/kickstart/makefile | 2 +- - csps/lpc32xx/source/makefile | 10 +++--- - lpc/source/makefile | 10 +++--- - makefile | 2 +- - makerule/common/make.rules.environment | 30 ++++++++++---------- - makerule/lpc32xx/make.lpc32xx.gnu | 2 +- - makerule/lpc32xx/make.lpc32xx.iar | 12 ++++---- - makerule/lpc32xx/make.lpc32xx.keil | 6 ++-- - makerule/lpc32xx/make.lpc32xx.rvw | 2 +- - 18 files changed, 67 insertions(+), 67 deletions(-) - -diff --git a/csps/lpc32xx/bsps/common/examples/buildfiles/makefile b/csps/lpc32xx/bsps/common/examples/buildfiles/makefile -index cf4977c..1da2201 100644 ---- a/csps/lpc32xx/bsps/common/examples/buildfiles/makefile -+++ b/csps/lpc32xx/bsps/common/examples/buildfiles/makefile -@@ -25,16 +25,16 @@ - # - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\$(CSP)\make.$(CSP).$(TOOL) -+include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL) - - ######################################################################## - # - # Pick up the assembler and C source files in the directory - # - ######################################################################## --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.ftypes --AFLAGS +=-I..\Include --CFLAGS +=-I..\Include -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.ftypes -+AFLAGS +=-I../Include -+CFLAGS +=-I../Include - - ######################################################################## - # -@@ -42,6 +42,6 @@ CFLAGS +=-I..\Include - # - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.build -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.build - - -diff --git a/csps/lpc32xx/bsps/common/startup/examples/burners/makefile.burner b/csps/lpc32xx/bsps/common/startup/examples/burners/makefile.burner -index fca3947..18bd703 100644 ---- a/csps/lpc32xx/bsps/common/startup/examples/burners/makefile.burner -+++ b/csps/lpc32xx/bsps/common/startup/examples/burners/makefile.burner -@@ -22,9 +22,9 @@ - # - ######################################################################## - --COMMON_BASE := $(NXPMCU_SOFTWARE)\csps\$(CSP)\bsps\common --include $(NXPMCU_SOFTWARE)\makerule\$(CSP)\make.$(CSP).$(TOOL) --include $(COMMON_BASE)\startup\examples\buildfiles\make.env -+COMMON_BASE := $(NXPMCU_SOFTWARE)/csps/$(CSP)/bsps/common -+include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL) -+include $(COMMON_BASE)/startup/examples/buildfiles/make.env - - ######################################################################## - # ARM Realview -@@ -38,7 +38,7 @@ AFLAGS += --predefine "USE_ALL_STACKS SETL {TRUE}" - #AFLAGS += --predefine "RW_RELOC SETL {TRUE}" - - # This runs from IRAM --LDSCRIPT =$(COMMON_BASE)\startup\examples\buildfiles\ldscript_iram_rvw.ld -+LDSCRIPT =$(COMMON_BASE)/startup/examples/buildfiles/ldscript_iram_rvw.ld - LDFLAGS = --remove - MAP = --map --info=totals,sizes,unused --symbols --list - endif -@@ -55,7 +55,7 @@ AFLAGS += --predefine "USE_ALL_STACKS SETL {TRUE}" - #AFLAGS += --predefine "RW_RELOC SETL {TRUE}" - - # This runs from IRAM --LDSCRIPT =$(COMMON_BASE)\startup\examples\buildfiles\ldscript_iram_rvw.ld -+LDSCRIPT =$(COMMON_BASE)/startup/examples/buildfiles/ldscript_iram_rvw.ld - LDFLAGS = --remove - MAP = --map --info=totals,sizes,unused --symbols --list - endif -@@ -72,7 +72,7 @@ AFLAGS += --defsym USE_ALL_STACKS=1 - #AFLAGS += --defsym RW_RELOC=1 - - # This runs from IRAM --LDSCRIPT =$(COMMON_BASE)\startup\examples\buildfiles\ldscript_iram_gnu.ld -+LDSCRIPT =$(COMMON_BASE)/startup/examples/buildfiles/ldscript_iram_gnu.ld - - endif - -@@ -108,7 +108,7 @@ endif - # Pick up the assembler and C source files in the directory - # - ######################################################################## --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.ftypes -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.ftypes - - ######################################################################## - # -@@ -157,6 +157,6 @@ endif - # - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.build -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.build - - .PHONY: debug bin -diff --git a/csps/lpc32xx/bsps/ea3250/source/makefile b/csps/lpc32xx/bsps/ea3250/source/makefile -index 7cada25..2899b20 100644 ---- a/csps/lpc32xx/bsps/ea3250/source/makefile -+++ b/csps/lpc32xx/bsps/ea3250/source/makefile -@@ -22,16 +22,16 @@ - # - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\$(CSP)\make.$(CSP).$(TOOL) -+include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL) - - ######################################################################## - # - # Pick up the assembler and C source files in the directory - # - ######################################################################## --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.ftypes --AFLAGS +=-I..\Include --CFLAGS +=-I..\Include -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.ftypes -+AFLAGS +=-I../Include -+CFLAGS +=-I../Include - - ######################################################################## - # -@@ -64,7 +64,7 @@ realclean: lib_realclean - # - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.build -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.build - - .PHONY: all lib_clean lib_realclean - -diff --git a/csps/lpc32xx/bsps/fdi3250/source/makefile b/csps/lpc32xx/bsps/fdi3250/source/makefile -index 4e153bb..11e4b63 100644 ---- a/csps/lpc32xx/bsps/fdi3250/source/makefile -+++ b/csps/lpc32xx/bsps/fdi3250/source/makefile -@@ -22,16 +22,16 @@ - # - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\$(CSP)\make.$(CSP).$(TOOL) -+include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL) - - ######################################################################## - # - # Pick up the assembler and C source files in the directory - # - ######################################################################## --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.ftypes --AFLAGS +=-I..\Include --CFLAGS +=-I..\Include -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.ftypes -+AFLAGS +=-I../Include -+CFLAGS +=-I../Include - - ######################################################################## - # -@@ -53,7 +53,7 @@ lib_clean: - # delete all targets this Makefile can make and all built libraries - # linked in - lib_realclean: -- -@$(RM) $(BSP_LIB_DIR)\*.a -+ -@$(RM) $(BSP_LIB_DIR)/*.a - -@$(RMDIR) $(BSP_LIB_DIR) - - clean: lib_clean -@@ -65,7 +65,7 @@ realclean: lib_realclean - # - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.build -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.build - - .PHONY: all lib_clean lib_realclean - -diff --git a/csps/lpc32xx/bsps/phy3250/examples/makefile b/csps/lpc32xx/bsps/phy3250/examples/makefile -index b939252..e7feaa6 100644 ---- a/csps/lpc32xx/bsps/phy3250/examples/makefile -+++ b/csps/lpc32xx/bsps/phy3250/examples/makefile -@@ -25,7 +25,7 @@ - # - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\$(CSP)\make.$(CSP).$(TOOL) -+include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL) - - SUBDIRS = adc dram_self_refresh hstimer hsuart i2c kscan lcd_colorbars - SUBDIRS += lcd_tsc mi2c mstimer pwm pwm_simple rtc sdcard sdcard_dma -diff --git a/csps/lpc32xx/bsps/phy3250/source/makefile b/csps/lpc32xx/bsps/phy3250/source/makefile -index 7c48e7d..750b776 100644 ---- a/csps/lpc32xx/bsps/phy3250/source/makefile -+++ b/csps/lpc32xx/bsps/phy3250/source/makefile -@@ -32,7 +32,7 @@ include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL) - # Pick up the assembler and C source files in the directory - # - ######################################################################## --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.ftypes -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.ftypes - AFLAGS +=-I../Include - CFLAGS +=-I../Include - -diff --git a/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/kickstart/makefile b/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/kickstart/makefile -index 01e2b38..526d6cc 100644 ---- a/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/kickstart/makefile -+++ b/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/kickstart/makefile -@@ -78,7 +78,7 @@ endif - - ######################################################################## - # --# Compiler\linker specific stuff -+# Compiler/linker specific stuff - # - ######################################################################## - -diff --git a/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/norerase/makefile b/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/norerase/makefile -index ce329f5..e81b8db 100644 ---- a/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/norerase/makefile -+++ b/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/norerase/makefile -@@ -77,7 +77,7 @@ endif - - ######################################################################## - # --# Compiler\linker specific stuff -+# Compiler/linker specific stuff - # - ######################################################################## - -diff --git a/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/s1lapp/makefile b/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/s1lapp/makefile -index 4426fc7..196faec 100644 ---- a/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/s1lapp/makefile -+++ b/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/s1lapp/makefile -@@ -77,7 +77,7 @@ endif - - ######################################################################## - # --# Compiler\linker specific stuff -+# Compiler/linker specific stuff - # - ######################################################################## - -diff --git a/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/spi/kickstart/makefile b/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/spi/kickstart/makefile -index dc73b64..39fc304 100644 ---- a/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/spi/kickstart/makefile -+++ b/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/spi/kickstart/makefile -@@ -78,7 +78,7 @@ endif - - ######################################################################## - # --# Compiler\linker specific stuff -+# Compiler/linker specific stuff - # - ######################################################################## - -diff --git a/csps/lpc32xx/source/makefile b/csps/lpc32xx/source/makefile -index 8e05456..16bd944 100644 ---- a/csps/lpc32xx/source/makefile -+++ b/csps/lpc32xx/source/makefile -@@ -25,16 +25,16 @@ - # - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\$(CSP)\make.$(CSP).$(TOOL) -+include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL) - - ######################################################################## - # - # Pick up the assembler and C source files in the directory - # - ######################################################################## --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.ftypes --AFLAGS +=-I..\Include --CFLAGS +=-I..\Include -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.ftypes -+AFLAGS +=-I../Include -+CFLAGS +=-I../Include - - - ######################################################################## -@@ -68,7 +68,7 @@ realclean: lib_realclean - # - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.build -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.build - - .PHONY: all lib_clean lib_realclean - -diff --git a/lpc/source/makefile b/lpc/source/makefile -index 2860db9..ae7d612 100644 ---- a/lpc/source/makefile -+++ b/lpc/source/makefile -@@ -25,16 +25,16 @@ - # - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\$(CSP)\make.$(CSP).$(TOOL) -+include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL) - - ######################################################################## - # - # Pick up the assembler and C source files in the directory - # - ######################################################################## --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.ftypes --AFLAGS +=-I..\Include --CFLAGS +=-I..\Include -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.ftypes -+AFLAGS +=-I../Include -+CFLAGS +=-I../Include - - ######################################################################## - # -@@ -67,7 +67,7 @@ realclean: lib_realclean - # - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.build -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.build - - .PHONY: all lib_clean lib_realclean - -diff --git a/makefile b/makefile -index 8645fcc..86fa6bc 100644 ---- a/makefile -+++ b/makefile -@@ -34,7 +34,7 @@ TARGETS_CLN =gen_clean csp_clean bsp_clean - # - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\$(CSP)\make.$(CSP).$(TOOL) -+include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL) - - ######################################################################## - # -diff --git a/makerule/common/make.rules.environment b/makerule/common/make.rules.environment -index d5737fe..4e6df48 100644 ---- a/makerule/common/make.rules.environment -+++ b/makerule/common/make.rules.environment -@@ -52,7 +52,7 @@ ASTYLE =astyle --options=$(BUILD_ROOT)/tools/astyle.cfg - # - ######################################################################## - --CSP_LIB_DIR =$(BUILD_ROOT)\csps\$(CSP)\lib -+CSP_LIB_DIR =$(BUILD_ROOT)/csps/$(CSP)/lib - - ######################################################################## - # -@@ -60,7 +60,7 @@ CSP_LIB_DIR =$(BUILD_ROOT)\csps\$(CSP)\lib - # - ######################################################################## - --BSP_LIB_DIR =$(BUILD_ROOT)\csps\$(CSP)\bsps\$(BSP)\lib -+BSP_LIB_DIR =$(BUILD_ROOT)/csps/$(CSP)/bsps/$(BSP)/lib - - ######################################################################## - # -@@ -68,7 +68,7 @@ BSP_LIB_DIR =$(BUILD_ROOT)\csps\$(CSP)\bsps\$(BSP)\lib - # - ######################################################################## - --GEN_LIB_DIR =$(BUILD_ROOT)\$(GEN)\lib -+GEN_LIB_DIR =$(BUILD_ROOT)/$(GEN)/lib - - ######################################################################## - # -@@ -76,9 +76,9 @@ GEN_LIB_DIR =$(BUILD_ROOT)\$(GEN)\lib - # - ######################################################################## - --CSP_DIR =$(BUILD_ROOT)\csps\$(CSP) --CSP_SRC_DIR =$(CSP_DIR)\source --CSP_INC_DIR =$(CSP_DIR)\include -+CSP_DIR =$(BUILD_ROOT)/csps/$(CSP) -+CSP_SRC_DIR =$(CSP_DIR)/source -+CSP_INC_DIR =$(CSP_DIR)/include - - ######################################################################## - # -@@ -86,9 +86,9 @@ CSP_INC_DIR =$(CSP_DIR)\include - # - ######################################################################## - --BSP_DIR =$(BUILD_ROOT)\csps\$(CSP)\bsps\$(BSP) --BSP_SRC_DIR =$(BSP_DIR)\source --BSP_INC_DIR =$(BSP_DIR)\include -+BSP_DIR =$(BUILD_ROOT)/csps/$(CSP)/bsps/$(BSP) -+BSP_SRC_DIR =$(BSP_DIR)/source -+BSP_INC_DIR =$(BSP_DIR)/include - - ######################################################################## - # -@@ -96,9 +96,9 @@ BSP_INC_DIR =$(BSP_DIR)\include - # - ######################################################################## - --GEN_DIR =$(BUILD_ROOT)\$(GEN) --GEN_SRC_DIR =$(GEN_DIR)\source --GEN_INC_DIR =$(GEN_DIR)\include -+GEN_DIR =$(BUILD_ROOT)/$(GEN) -+GEN_SRC_DIR =$(GEN_DIR)/source -+GEN_INC_DIR =$(GEN_DIR)/include - - ######################################################################## - # -@@ -151,6 +151,6 @@ endif - # - ######################################################################## - --TARGET_CSP_LIB =$(CSP_LIB_DIR)\$(CSP_ARCHIVE) --TARGET_BSP_LIB =$(BSP_LIB_DIR)\$(BSP_ARCHIVE) --TARGET_GEN_LIB =$(GEN_LIB_DIR)\$(GEN_ARCHIVE) -+TARGET_CSP_LIB =$(CSP_LIB_DIR)/$(CSP_ARCHIVE) -+TARGET_BSP_LIB =$(BSP_LIB_DIR)/$(BSP_ARCHIVE) -+TARGET_GEN_LIB =$(GEN_LIB_DIR)/$(GEN_ARCHIVE) -diff --git a/makerule/lpc32xx/make.lpc32xx.gnu b/makerule/lpc32xx/make.lpc32xx.gnu -index 3277d99..d80b98d 100644 ---- a/makerule/lpc32xx/make.lpc32xx.gnu -+++ b/makerule/lpc32xx/make.lpc32xx.gnu -@@ -19,7 +19,7 @@ - # use without further testing or modification. - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.environment -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.environment - - CPU = arm926ej-s - CFLAGS = -mcpu=arm926ej-s -Wall -Os -diff --git a/makerule/lpc32xx/make.lpc32xx.iar b/makerule/lpc32xx/make.lpc32xx.iar -index 238ebbf..27d163f 100644 ---- a/makerule/lpc32xx/make.lpc32xx.iar -+++ b/makerule/lpc32xx/make.lpc32xx.iar -@@ -19,12 +19,12 @@ - # use without further testing or modification. - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.environment -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.environment - --IARBASE = $(IAR_ROOT)\ARM --IARTOOLS = $(IARBASE)\bin --IAR_LIB = $(IARBASE)\lib --IAR_INC = $(IARBASE)\inc -+IARBASE = $(IAR_ROOT)/ARM -+IARTOOLS = $(IARBASE)/bin -+IAR_LIB = $(IARBASE)/lib -+IAR_INC = $(IARBASE)/inc - CC = iccarm - CCP = iccarm - AS = iasmarm -@@ -36,7 +36,7 @@ CFLAGS += -I"$(IAR_INC)" - AFLAGS = --cpu 5TEJ - LDFLAGS = - LK = "$(TARGET_GEN_LIB)" "$(TARGET_CSP_LIB)" "$(TARGET_BSP_LIB)" --;LK += "$(IAR_LIB)\dl4tpannl8f.r79" -+;LK += "$(IAR_LIB)/dl4tpannl8f.r79" - MAP = --map - LDESC = --config - ENTRY = --entry -diff --git a/makerule/lpc32xx/make.lpc32xx.keil b/makerule/lpc32xx/make.lpc32xx.keil -index dd27583..7334d3f 100644 ---- a/makerule/lpc32xx/make.lpc32xx.keil -+++ b/makerule/lpc32xx/make.lpc32xx.keil -@@ -19,7 +19,7 @@ - # use without further testing or modification. - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.environment -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.environment - - CC =armcc - CCP =armcc -@@ -27,11 +27,11 @@ AS =armasm - LD =armlink - AR =armar -r -s - CFLAGS =--arm -O3 -g --device DARMP3 -D__MICROLIB --CFLAGS +=-I$(KEIL_RVCT)\inc -I$(CSP_INC_DIR) -I$(BSP_INC_DIR) -I$(GEN_INC_DIR) -+CFLAGS +=-I$(KEIL_RVCT)/inc -I$(CSP_INC_DIR) -I$(BSP_INC_DIR) -I$(GEN_INC_DIR) - AFLAGS =--arm --device=DARMP3 - AFLAGS +=-I$(CSP_INC_DIR) -I$(BSP_INC_DIR) -I$(GEN_INC_DIR) - LDFLAGS =--noremove --LK =--device DARMP3 --libpath $(KEIL_RVCT)\lib --scan $(TARGET_CSP_LIB) -+LK =--device DARMP3 --libpath $(KEIL_RVCT)/lib --scan $(TARGET_CSP_LIB) - LK +=--scan $(TARGET_BSP_LIB) - LK +=--scan $(TARGET_GEN_LIB) - MAP =--map --list -diff --git a/makerule/lpc32xx/make.lpc32xx.rvw b/makerule/lpc32xx/make.lpc32xx.rvw -index 59961dd..2419976 100644 ---- a/makerule/lpc32xx/make.lpc32xx.rvw -+++ b/makerule/lpc32xx/make.lpc32xx.rvw -@@ -19,7 +19,7 @@ - # use without further testing or modification. - ######################################################################## - --include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.environment -+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.environment - - CC =armcc - CCP =armcpp --- -1.7.7.3 - diff --git a/boot/lpc32xxcdl/Config.in b/boot/lpc32xxcdl/Config.in deleted file mode 100644 index 97137aa7d4ed..000000000000 --- a/boot/lpc32xxcdl/Config.in +++ /dev/null @@ -1,10 +0,0 @@ -config BR2_TARGET_LPC32XXCDL - bool "LPC32XX CDL (kickstart and S1L)" - depends on BR2_arm926t - -if BR2_TARGET_LPC32XXCDL - -config BR2_TARGET_LPC32XXCDL_BOARDNAME - string "LPC32xx board name" - -endif #BR2_TARGET_LPC32XXCDL diff --git a/boot/lpc32xxcdl/lpc32xxcdl.hash b/boot/lpc32xxcdl/lpc32xxcdl.hash deleted file mode 100644 index 8c6b73d63fac..000000000000 --- a/boot/lpc32xxcdl/lpc32xxcdl.hash +++ /dev/null @@ -1,2 +0,0 @@ -# Locally computed -sha256 ded3fa936a96d3fb8188ca6214f57b5208bd49e5416bd69f38bfc810b34197bc lpc32xx_cdl-v2.11.zip diff --git a/boot/lpc32xxcdl/lpc32xxcdl.mk b/boot/lpc32xxcdl/lpc32xxcdl.mk deleted file mode 100644 index 9f5cd27f508f..000000000000 --- a/boot/lpc32xxcdl/lpc32xxcdl.mk +++ /dev/null @@ -1,71 +0,0 @@ -################################################################################ -# -# lpc32xxcdl -# -################################################################################ - -LPC32XXCDL_VERSION = 2.11 -LPC32XXCDL_SOURCE = lpc32xx_cdl-v$(LPC32XXCDL_VERSION).zip -LPC32XXCDL_SITE = https://community.nxp.com/pwmxy87654/attachments/pwmxy87654/lpcware-archive/61/2 - -LPC32XXCDL_INSTALL_TARGET = NO -LPC32XXCDL_INSTALL_IMAGES = YES - -ifeq ($(BR2_TARGET_LPC32XXCDL_BOARDNAME),"ea3250") -LPC32XXCDL_KICKSTART = kickstart/nand -LPC32XXCDL_KICKSTART_BURNER = nand/kickstart -LPC32XXCDL_S1L = s1l -LPC32XXCDL_S1L_BURNER = nand/s1lapp -endif - -ifeq ($(BR2_TARGET_LPC32XXCDL_BOARDNAME),"phy3250") -LPC32XXCDL_KICKSTART = kickstart/kickstart_nand -LPC32XXCDL_KICKSTART_BURNER = nand/kickstart -LPC32XXCDL_S1L = s1l/s1l_nand_boot -LPC32XXCDL_S1L_BURNER = nand/s1lapp -endif - -ifeq ($(BR2_TARGET_LPC32XXCDL_BOARDNAME),"fdi3250") -LPC32XXCDL_KICKSTART = kickstart/nand -LPC32XXCDL_KICKSTART_BURNER = nand/kickstart_jtag -LPC32XXCDL_S1L = s1l -LPC32XXCDL_S1L_BURNER = nand/s1lapp_jtag -endif - -LPC32XXCDL_BUILD_FLAGS = \ - CROSS_COMPILE=$(TARGET_CROSS) \ - NXPMCU_WINBASE=$(@D) \ - NXPMCU_SOFTWARE=$(@D) \ - BSP=$(BR2_TARGET_LPC32XXCDL_BOARDNAME) \ - CSP=lpc32xx TOOL=gnu GEN=lpc - -LPC32XXCDL_BOARD_STARTUP_DIR = \ - csps/lpc32xx/bsps/$(BR2_TARGET_LPC32XXCDL_BOARDNAME)/startup/examples/ - -# Source files are with dos newlines, which our patch infrastructure doesn't -# handle. Work around it by converting the affected files to unix newlines -# before patching -define LPC32XXCDL_EXTRACT_CMDS - unzip $(LPC32XXCDL_DL_DIR)/$(LPC32XXCDL_SOURCE) -d $(@D) - mv $(@D)/lpc3xxx_cdl/* $(@D) - rmdir $(@D)/lpc3xxx_cdl/ - sed -n 's|^[+-]\{3\} [^/]\+\([^ \t]*\)\(.*\)|$(@D)\1|p' \ - boot/lpc32xxcdl/*.patch| sort -u | xargs $(SED) 's/\x0D$$//' -endef - -define LPC32XXCDL_BUILD_CMDS - $(MAKE1) $(LPC32XXCDL_BUILD_FLAGS) -C $(@D) - $(MAKE1) $(LPC32XXCDL_BUILD_FLAGS) -C $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/Burners/$(LPC32XXCDL_KICKSTART_BURNER) - $(MAKE1) $(LPC32XXCDL_BUILD_FLAGS) -C $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/$(LPC32XXCDL_KICKSTART) - $(MAKE1) $(LPC32XXCDL_BUILD_FLAGS) -C $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/Burners/$(LPC32XXCDL_S1L_BURNER) - $(MAKE1) $(LPC32XXCDL_BUILD_FLAGS) -C $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/$(LPC32XXCDL_S1L) -endef - -define LPC32XXCDL_INSTALL_IMAGES_CMDS - cp $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/Burners/$(LPC32XXCDL_KICKSTART_BURNER)/*gnu.bin $(BINARIES_DIR) - cp $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/$(LPC32XXCDL_KICKSTART)/*gnu.bin $(BINARIES_DIR) - cp $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/Burners/$(LPC32XXCDL_S1L_BURNER)/*gnu.bin $(BINARIES_DIR) - cp $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/$(LPC32XXCDL_S1L)/*gnu.bin $(BINARIES_DIR) -endef - -$(eval $(generic-package)) diff --git a/boot/mv-ddr-marvell/0001-Allow-access-to-low-addresses-with-gcc-12.patch b/boot/mv-ddr-marvell/0001-Allow-access-to-low-addresses-with-gcc-12.patch new file mode 100644 index 000000000000..5a623f28f95d --- /dev/null +++ b/boot/mv-ddr-marvell/0001-Allow-access-to-low-addresses-with-gcc-12.patch @@ -0,0 +1,49 @@ +From 4796a1eacc6a5ccb623e7d2e46a5196f8335e496 Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Fri, 11 Aug 2023 11:19:49 +0300 +Subject: [PATCH] Allow access to low addresses with gcc 12 + +gcc 12 added a warning that triggers on access to low addresses. Add a +compile option that allows access to lower addresses. + +Add the 'cc_option' macro to avoid the compile option when the compiler +does not support it. + +This fixes build with TF-A. TF-A added a similar fix in commit +dea23e245fb89. + +See some more details in +https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105523 + +Upstream: https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell/pull/42 +Signed-off-by: Baruch Siach +--- + Makefile | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/Makefile b/Makefile +index 3f0dd89a7381..045284c30cbc 100644 +--- a/Makefile ++++ b/Makefile +@@ -108,6 +108,10 @@ MV_DDR_VER_CSRC = mv_ddr_build_message.c + # create mv_ddr build message and version string source file + $(shell $(MV_DDR_ROOT)/scripts/localversion.sh $(MV_DDR_ROOT) $(MV_DDR_VER_CSRC) 2> /dev/null) + ++define cc_option ++ $(shell if $(CC) $(1) -c -x c /dev/null -o /dev/null >/dev/null 2>&1; then echo $(1); fi ) ++endef ++ + # ****************** + # U-BOOT SPL SUPPORT + # ****************** +@@ -331,6 +335,7 @@ OBJ_DIR ?= $(MV_DDR_ROOT) + CFLAGS = -DMV_DDR_ATF -DCONFIG_DDR4 + CFLAGS += -Wall -Werror -Os -ffreestanding -mlittle-endian -g -gdwarf-2 -nostdinc + CFLAGS += -march=armv8-a -fpie ++CFLAGS += $(call cc_option, --param=min-pagesize=0) + + # PLATFORM is set in ble/ble.mk + ifneq ($(findstring a80x0,$(PLATFORM)),) +-- +2.40.1 + diff --git a/boot/mv-ddr-marvell/0001-Makefile-disable-stack-protection.patch b/boot/mv-ddr-marvell/0001-Makefile-disable-stack-protection.patch deleted file mode 100644 index 62b1000727f8..000000000000 --- a/boot/mv-ddr-marvell/0001-Makefile-disable-stack-protection.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 53e34e3bff26fcbb7cc14178fa9fc80e7a73d556 Mon Sep 17 00:00:00 2001 -From: Baruch Siach -Date: Tue, 11 Oct 2022 16:34:44 +0300 -Subject: [PATCH] Makefile: disable stack protection - -The Buildroot toolchain might enable stack protection by default. That -breaks linking because ATF does not provide the required __stack_chk -routines. - -The mv-ddr-marvell Makefile provides no way to add custom CFLAGS. Patch -Makefile to disable stack protection. - -Signed-off-by: Baruch Siach ---- -Upstream status: not applicable; Buildroot specific ---- - Makefile | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/Makefile b/Makefile -index 3f0dd89a7381..feae75cc16e4 100644 ---- a/Makefile -+++ b/Makefile -@@ -331,6 +331,7 @@ OBJ_DIR ?= $(MV_DDR_ROOT) - CFLAGS = -DMV_DDR_ATF -DCONFIG_DDR4 - CFLAGS += -Wall -Werror -Os -ffreestanding -mlittle-endian -g -gdwarf-2 -nostdinc - CFLAGS += -march=armv8-a -fpie -+CFLAGS += -fno-stack-protector - - # PLATFORM is set in ble/ble.mk - ifneq ($(findstring a80x0,$(PLATFORM)),) --- -2.35.1 - diff --git a/boot/mv-ddr-marvell/0002-Makefile-disable-stack-protection.patch b/boot/mv-ddr-marvell/0002-Makefile-disable-stack-protection.patch new file mode 100644 index 000000000000..626279eb4714 --- /dev/null +++ b/boot/mv-ddr-marvell/0002-Makefile-disable-stack-protection.patch @@ -0,0 +1,33 @@ +From 53e34e3bff26fcbb7cc14178fa9fc80e7a73d556 Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Tue, 11 Oct 2022 16:34:44 +0300 +Subject: [PATCH] Makefile: disable stack protection + +The Buildroot toolchain might enable stack protection by default. That +breaks linking because ATF does not provide the required __stack_chk +routines. + +The mv-ddr-marvell Makefile provides no way to add custom CFLAGS. Patch +Makefile to disable stack protection. + +Upstream: not applicable; Buildroot specific +Signed-off-by: Baruch Siach +--- + Makefile | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Makefile b/Makefile +index 045284c30cbc..9641354bcf86 100644 +--- a/Makefile ++++ b/Makefile +@@ -336,6 +336,7 @@ CFLAGS = -DMV_DDR_ATF -DCONFIG_DDR4 + CFLAGS += -Wall -Werror -Os -ffreestanding -mlittle-endian -g -gdwarf-2 -nostdinc + CFLAGS += -march=armv8-a -fpie + CFLAGS += $(call cc_option, --param=min-pagesize=0) ++CFLAGS += -fno-stack-protector + + # PLATFORM is set in ble/ble.mk + ifneq ($(findstring a80x0,$(PLATFORM)),) +-- +2.40.1 + diff --git a/boot/opensbi/0.9/0001-Makefile-Don-t-specify-mabi-or-march.patch b/boot/opensbi/0.9/0001-Makefile-Don-t-specify-mabi-or-march.patch deleted file mode 100644 index 5f554a6c249b..000000000000 --- a/boot/opensbi/0.9/0001-Makefile-Don-t-specify-mabi-or-march.patch +++ /dev/null @@ -1,37 +0,0 @@ -From f5871e1f3650d6c8a032928cb5d8ca00c275c377 Mon Sep 17 00:00:00 2001 -From: Alistair Francis -Date: Fri, 15 Feb 2019 14:57:41 -0800 -Subject: [PATCH] Makefile: Don't specify mabi or march - -To avoid - can't link double-float modules with soft-float modules -errors when building 32-bit openSBI don't specify mabi or march. - -Signed-off-by: Alistair Francis ---- - Makefile | 2 -- - 1 file changed, 2 deletions(-) - -diff --git a/Makefile b/Makefile -index ae68f55..10851fc 100644 ---- a/Makefile -+++ b/Makefile -@@ -145,7 +145,6 @@ GENFLAGS += $(firmware-genflags-y) - CFLAGS = -g -Wall -Werror -nostdlib -fno-strict-aliasing -O2 - CFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls - CFLAGS += -mno-save-restore -mstrict-align --CFLAGS += -mabi=$(PLATFORM_RISCV_ABI) -march=$(PLATFORM_RISCV_ISA) - CFLAGS += -mcmodel=$(PLATFORM_RISCV_CODE_MODEL) - CFLAGS += $(GENFLAGS) - CFLAGS += $(platform-cflags-y) -@@ -158,7 +157,6 @@ CPPFLAGS += $(firmware-cppflags-y) - ASFLAGS = -g -Wall -nostdlib -D__ASSEMBLY__ - ASFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls - ASFLAGS += -mno-save-restore -mstrict-align --ASFLAGS += -mabi=$(PLATFORM_RISCV_ABI) -march=$(PLATFORM_RISCV_ISA) - ASFLAGS += -mcmodel=$(PLATFORM_RISCV_CODE_MODEL) - ASFLAGS += $(GENFLAGS) - ASFLAGS += $(platform-asflags-y) --- -2.20.1 - diff --git a/boot/opensbi/0.9/0002-Makefile-unconditionally-disable-SSP.patch b/boot/opensbi/0.9/0002-Makefile-unconditionally-disable-SSP.patch deleted file mode 100644 index c4edd37f1a9a..000000000000 --- a/boot/opensbi/0.9/0002-Makefile-unconditionally-disable-SSP.patch +++ /dev/null @@ -1,53 +0,0 @@ -From e389d5fbc296e496db15368b2b621e0f178f7f34 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Sat, 8 May 2021 21:28:10 +0200 -Subject: [PATCH] Makefile: unconditionally disable SSP - -Though -nostdlib is passed in {C,+AS,DTSCPP}FLAGS, -fno-stack-protector -must also be passed to avoid linking errors related to undefined -references to '__stack_chk_guard' and '__stack_chk_fail' if toolchain -enforces -fstack-protector. - -Fixes: - - https://gitlab.com/kubu93/buildroot/-/jobs/1247043359 - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/riscv/opensbi/pull/211] ---- - Makefile | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/Makefile b/Makefile -index eeffe6b..1419360 100644 ---- a/Makefile -+++ b/Makefile -@@ -203,7 +203,7 @@ GENFLAGS += $(libsbiutils-genflags-y) - GENFLAGS += $(platform-genflags-y) - GENFLAGS += $(firmware-genflags-y) - --CFLAGS = -g -Wall -Werror -ffreestanding -nostdlib -fno-strict-aliasing -O2 -+CFLAGS = -g -Wall -Werror -ffreestanding -nostdlib -fno-stack-protector -fno-strict-aliasing -O2 - CFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls - CFLAGS += -mno-save-restore -mstrict-align - CFLAGS += -mabi=$(PLATFORM_RISCV_ABI) -march=$(PLATFORM_RISCV_ISA) -@@ -217,7 +217,7 @@ CPPFLAGS += $(GENFLAGS) - CPPFLAGS += $(platform-cppflags-y) - CPPFLAGS += $(firmware-cppflags-y) - --ASFLAGS = -g -Wall -nostdlib -D__ASSEMBLY__ -+ASFLAGS = -g -Wall -nostdlib -fno-stack-protector -D__ASSEMBLY__ - ASFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls - ASFLAGS += -mno-save-restore -mstrict-align - ASFLAGS += -mabi=$(PLATFORM_RISCV_ABI) -march=$(PLATFORM_RISCV_ISA) -@@ -236,7 +236,7 @@ MERGEFLAGS += -r - MERGEFLAGS += -b elf$(PLATFORM_RISCV_XLEN)-littleriscv - MERGEFLAGS += -m elf$(PLATFORM_RISCV_XLEN)lriscv - --DTSCPPFLAGS = $(CPPFLAGS) -nostdinc -nostdlib -fno-builtin -D__DTS__ -x assembler-with-cpp -+DTSCPPFLAGS = $(CPPFLAGS) -nostdinc -nostdlib -fno-stack-protector -fno-builtin -D__DTS__ -x assembler-with-cpp - - # Setup functions for compilation - define dynamic_flags --- -2.30.2 - diff --git a/boot/opensbi/Config.in b/boot/opensbi/Config.in index 86f848f17712..de2f0aae20db 100644 --- a/boot/opensbi/Config.in +++ b/boot/opensbi/Config.in @@ -19,7 +19,7 @@ choice Select the specific OpenSBI version you want to use config BR2_TARGET_OPENSBI_LATEST_VERSION - bool "0.9" + bool "1.3" config BR2_TARGET_OPENSBI_CUSTOM_VERSION bool "Custom version" @@ -57,10 +57,10 @@ endif config BR2_TARGET_OPENSBI_VERSION string - default "0.9" if BR2_TARGET_OPENSBI_LATEST_VERSION + default "1.3" if BR2_TARGET_OPENSBI_LATEST_VERSION default BR2_TARGET_OPENSBI_CUSTOM_VERSION_VALUE \ if BR2_TARGET_OPENSBI_CUSTOM_VERSION - default "custom" if BR2_TARGET_OPENSBI_CUSTOM_TARBALL + default "custom" if BR2_TARGET_OPENSBI_CUSTOM_TARBALL default BR2_TARGET_OPENSBI_CUSTOM_REPO_VERSION \ if BR2_TARGET_OPENSBI_CUSTOM_GIT diff --git a/boot/opensbi/opensbi.hash b/boot/opensbi/opensbi.hash index 3b6d97c42d12..980fb141dcfe 100644 --- a/boot/opensbi/opensbi.hash +++ b/boot/opensbi/opensbi.hash @@ -1,3 +1,3 @@ # locally computed -sha256 60f995cb3cd03e3cf5e649194d3395d0fe67499fd960a36cf7058a4efde686f0 opensbi-0.9.tar.gz +sha256 2c0501eb3475f463b15f5b8531996f64604ea49e0e3ed040ecbd1fc27ecd8c5c opensbi-1.3.tar.gz sha256 82d13fb1bf6bb162629deeea9eb9c117e74548d3b707e478967691fe79a68e21 COPYING.BSD diff --git a/boot/optee-os/Config.in b/boot/optee-os/Config.in index a3cb8390b477..75bf00d45091 100644 --- a/boot/optee-os/Config.in +++ b/boot/optee-os/Config.in @@ -18,7 +18,7 @@ choice Select the version of OP-TEE OS you want to use config BR2_TARGET_OPTEE_OS_LATEST - bool "3.19.0" + bool "4.0.0" depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS select BR2_TARGET_OPTEE_OS_NEEDS_PYTHON_CRYPTOGRAPHY help @@ -70,7 +70,7 @@ endif config BR2_TARGET_OPTEE_OS_VERSION string - default "3.19.0" if BR2_TARGET_OPTEE_OS_LATEST + default "4.0.0" if BR2_TARGET_OPTEE_OS_LATEST default "custom" if BR2_TARGET_OPTEE_OS_CUSTOM_TARBALL default BR2_TARGET_OPTEE_OS_CUSTOM_REPO_VERSION \ if BR2_TARGET_OPTEE_OS_CUSTOM_GIT diff --git a/boot/optee-os/optee-os.hash b/boot/optee-os/optee-os.hash index a87f21a9bfb2..1f13931ca20b 100644 --- a/boot/optee-os/optee-os.hash +++ b/boot/optee-os/optee-os.hash @@ -1,4 +1,4 @@ -# From https://github.com/OP-TEE/optee_os/archive/3.19.0/optee-os-3.19.0.tar.gz -sha256 5e0c03bbc4d106f262a6bd33333c002c3380205ae6b82334aa7b644721ff7868 optee-os-3.19.0.tar.gz +# From https://github.com/OP-TEE/optee_os/archive/4.0.0/optee-os-4.0.0.tar.gz +sha256 2c2c9525b36c96dfad6216520721b8e9663e6cacc61d0108a0c8bffc0ea175f1 optee-os-4.0.0.tar.gz # Locally computed sha256 1247ee90858f4037b6cac63cbffddfed435d0d73c631b37d78c1e6e6ab3e5d1a LICENSE diff --git a/boot/ti-k3-boot-firmware/Config.in b/boot/ti-k3-boot-firmware/Config.in new file mode 100644 index 000000000000..d80bb4bdb382 --- /dev/null +++ b/boot/ti-k3-boot-firmware/Config.in @@ -0,0 +1,7 @@ +config BR2_TARGET_TI_K3_BOOT_FIRMWARE + bool "ti-k3-boot-firmware" + depends on BR2_aarch64 + help + This package downloads and installs the TI-specific ti-sysfw + and ti-dm firmware needed to boot TI K3 platforms (which + include AM62x, AM64x, AM65x and more). diff --git a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash new file mode 100644 index 000000000000..95131180ef40 --- /dev/null +++ b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 ab20ffbe7bba7e94be246b3417d33a914b3f07c16c47ef5a7f7602349a666a61 LICENSE.ti +sha256 6032a258ce731d987576115f5de44c677a6b0cf8bddcd61a9a2852928bdfff92 ti-linux-firmware-08.06.00.006.tar.xz diff --git a/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk new file mode 100644 index 000000000000..1f8ade207c13 --- /dev/null +++ b/boot/ti-k3-boot-firmware/ti-k3-boot-firmware.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# ti-k3-boot-firmware +# +################################################################################ + +# The hash 340194800a581baf976360386dfc7b5acab8d948 defined in the +# Makefile of ti-k3-image-gen corresponds to the tag 08.06.00.006. +TI_K3_BOOT_FIRMWARE_VERSION = 08.06.00.006 +TI_K3_BOOT_FIRMWARE_SITE = https://git.ti.com/cgit/processor-firmware/ti-linux-firmware/snapshot +TI_K3_BOOT_FIRMWARE_SOURCE = ti-linux-firmware-$(TI_K3_BOOT_FIRMWARE_VERSION).tar.xz +TI_K3_BOOT_FIRMWARE_INSTALL_IMAGES = YES +TI_K3_BOOT_FIRMWARE_LICENSE = TI Proprietary +TI_K3_BOOT_FIRMWARE_LICENSE_FILES = LICENSE.ti + +define TI_K3_BOOT_FIRMWARE_INSTALL_IMAGES_CMDS + cp -dpfr $(@D)/ti-sysfw $(BINARIES_DIR)/ + cp -dpfr $(@D)/ti-dm $(BINARIES_DIR)/ +endef + +$(eval $(generic-package)) diff --git a/boot/ti-k3-image-gen/Config.in b/boot/ti-k3-image-gen/Config.in new file mode 100644 index 000000000000..d76cef82e911 --- /dev/null +++ b/boot/ti-k3-image-gen/Config.in @@ -0,0 +1,77 @@ +config BR2_TARGET_TI_K3_IMAGE_GEN + bool "ti-k3-image-gen" + depends on BR2_TARGET_TI_K3_R5_LOADER + select BR2_TARGET_TI_K3_BOOT_FIRMWARE + # We need FIT support in uboot-tools, which is why we select a + # host package + select BR2_PACKAGE_HOST_UBOOT_TOOLS + select BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SUPPORT + help + Use TI's k3-image-gen to build a separate bare metal boot + binary from a separate SPL that is running on the R5 core. + + https://git.ti.com/cgit/k3-image-gen/k3-image-gen/ + +if BR2_TARGET_TI_K3_IMAGE_GEN +choice + prompt "SoC family" + +config BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62AX + bool "am62ax" + +config BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62X + bool "am62x" + +config BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM64X + bool "am64x" + +config BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM65X + bool "am65x" + +endchoice + +choice + prompt "Security type" + help + The target SoC security type option for image gen. Valid + options are "gp" for General Purpose devices, "hs-fs" for + High Security - Field Securable devices, or "hs" for High + Security - Security Enforcing devices. Note for all High + Security device variants the TI_SECURE_DEV_PKG environmental + variable must be defined at build time pointing to a valid + core-secdev-k3 folder location, otherwise the build will + fail, see + https://git.ti.com/cgit/security-development-tools/core-secdev-k3 + +config BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE_GP + bool "gp" + +config BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE_HS_FS + bool "hs-fs" + +config BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE_HS + bool "hs" + +endchoice + +config BR2_TARGET_TI_K3_IMAGE_GEN_SOC + string + default "am62ax" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62AX + default "am62x" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62X + default "am64x" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM64X + default "am65x" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM65X + +config BR2_TARGET_TI_K3_IMAGE_GEN_FW_TYPE + string + default "ti-fs" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62AX + default "ti-fs" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62X + default "ti-sci" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM64X + default "ti-sci" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM65X + +config BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE + string + default "gp" if BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE_GP + default "hs-fs" if BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE_HS_FS + default "hs" if BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE_HS + +endif diff --git a/boot/ti-k3-image-gen/ti-k3-image-gen.hash b/boot/ti-k3-image-gen/ti-k3-image-gen.hash new file mode 100644 index 000000000000..c968c5648f71 --- /dev/null +++ b/boot/ti-k3-image-gen/ti-k3-image-gen.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 f89ea4b1f5c992455b1a682fde48359221b53f3294135df4bf20feea6aea90e4 k3-image-gen-08.06.00.007.tar.gz +sha256 f012e8d000d711d0539e5b4c812fc1d3a59c10fc1e3d6ea155556f5b78286845 LICENSE diff --git a/boot/ti-k3-image-gen/ti-k3-image-gen.mk b/boot/ti-k3-image-gen/ti-k3-image-gen.mk new file mode 100644 index 000000000000..64be9a18f2c4 --- /dev/null +++ b/boot/ti-k3-image-gen/ti-k3-image-gen.mk @@ -0,0 +1,54 @@ +################################################################################ +# +# ti-k3-image-gen +# +################################################################################ + +TI_K3_IMAGE_GEN_VERSION = 08.06.00.007 +TI_K3_IMAGE_GEN_SITE = https://git.ti.com/cgit/k3-image-gen/k3-image-gen/snapshot +TI_K3_IMAGE_GEN_SOURCE = k3-image-gen-$(TI_K3_IMAGE_GEN_VERSION).tar.gz +TI_K3_IMAGE_GEN_LICENSE = BSD-3-Clause +TI_K3_IMAGE_GEN_LICENSE_FILES = LICENSE +TI_K3_IMAGE_GEN_INSTALL_IMAGES = YES + +# - ti-k3-image-gen is used to build tiboot3.bin, using the +# r5-u-boot-spl.bin file from the ti-k3-r5-loader package. Hence the +# dependency on ti-k3-r5-loader. +# - the ti-k3-image-gen makefiles seem to need some feature from Make +# v4.0, similar to u-boot. +TI_K3_IMAGE_GEN_DEPENDENCIES = \ + host-arm-gnu-toolchain \ + host-python3 \ + host-openssl \ + host-uboot-tools \ + ti-k3-r5-loader \ + ti-k3-boot-firmware \ + $(BR2_MAKE_HOST_DEPENDENCY) + +TI_K3_IMAGE_GEN_FW_TYPE = $(call qstrip,$(BR2_TARGET_TI_K3_IMAGE_GEN_FW_TYPE)) +TI_K3_IMAGE_GEN_SOC = $(call qstrip,$(BR2_TARGET_TI_K3_IMAGE_GEN_SOC)) +TI_K3_IMAGE_GEN_SECTYPE = $(call qstrip,$(BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE)) + +TI_K3_IMAGE_GEN_SYSFW = $(TI_K3_IMAGE_GEN_FW_TYPE)-firmware-$(TI_K3_IMAGE_GEN_SOC)-$(TI_K3_IMAGE_GEN_SECTYPE).bin + +define TI_K3_IMAGE_GEN_CONFIGURE_CMDS + cp $(BINARIES_DIR)/ti-sysfw/$(TI_K3_IMAGE_GEN_SYSFW) $(@D) +endef + +define TI_K3_IMAGE_GEN_BUILD_CMDS + $(TARGET_MAKE_ENV) \ + $(BR2_MAKE) -C $(@D) \ + SOC=$(TI_K3_IMAGE_GEN_SOC) \ + SOC_TYPE=$(TI_K3_IMAGE_GEN_SECTYPE) \ + CONFIG=evm \ + CROSS_COMPILE=$(HOST_DIR)/bin/arm-none-eabi- \ + SBL=$(BINARIES_DIR)/r5-u-boot-spl.bin \ + O=$(@D)/tmp \ + BIN_DIR=$(@D) +endef + +define TI_K3_IMAGE_GEN_INSTALL_IMAGES_CMDS + cp $(@D)/tiboot3.bin $(BINARIES_DIR) +endef + +$(eval $(generic-package)) diff --git a/boot/ti-k3-r5-loader/Config.in b/boot/ti-k3-r5-loader/Config.in index 10602c8df32d..8c8368a1a5a8 100644 --- a/boot/ti-k3-r5-loader/Config.in +++ b/boot/ti-k3-r5-loader/Config.in @@ -2,13 +2,74 @@ config BR2_TARGET_TI_K3_R5_LOADER bool "ti-k3-r5-loader" depends on BR2_aarch64 help - Separate U-Boot build for R5 cores on TI's k3 boards. + Separate U-Boot SPL build for R5 core on TI's K3 processors. Usually used to build tiboot3.bin with k3-image-gen. if BR2_TARGET_TI_K3_R5_LOADER choice - prompt "Configuration" + prompt "U-Boot Version" + help + Select the specific U-Boot version you want to use to build + the initial SPL running on the R5 core. Note that for most + use cases you will want to use the exact same version/source + here as it is used to build the main U-Boot package. + +config BR2_TARGET_TI_K3_R5_LOADER_LATEST_VERSION + bool "2022.10" + +config BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_VERSION + bool "Custom version" + help + This option allows to use a specific official versions + +config BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_TARBALL + bool "Custom tarball" + +config BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_GIT + bool "Custom Git repository" + +config BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_HG + bool "Custom Mercurial repository" + +config BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_SVN + bool "Custom Subversion repository" + +endchoice + +config BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_VERSION_VALUE + string "U-Boot version" + depends on BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_VERSION + +config BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_TARBALL_LOCATION + string "URL of custom U-Boot tarball" + depends on BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_TARBALL + +if BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_GIT || BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_HG || BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_SVN + +config BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_REPO_URL + string "URL of custom repository" + +config BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_REPO_VERSION + string "Custom repository version" + help + Revision to use in the typical format used by + Git/Mercurial/Subversion E.G. a sha id, a tag, branch, .. + +endif + +config BR2_TARGET_TI_K3_R5_LOADER_VERSION + string + default "2022.10" if BR2_TARGET_TI_K3_R5_LOADER_LATEST_VERSION + default BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_VERSION_VALUE \ + if BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_VERSION + default "custom" if BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_TARBALL + default BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_REPO_VERSION \ + if BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_GIT || \ + BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_HG || \ + BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_SVN +choice + prompt "U-Boot Configuration" default BR2_TARGET_TI_K3_R5_LOADER_USE_DEFCONFIG config BR2_TARGET_TI_K3_R5_LOADER_USE_DEFCONFIG diff --git a/boot/ti-k3-r5-loader/ti-k3-r5-loader.mk b/boot/ti-k3-r5-loader/ti-k3-r5-loader.mk index afa309aa980a..0ffcb8235f2e 100644 --- a/boot/ti-k3-r5-loader/ti-k3-r5-loader.mk +++ b/boot/ti-k3-r5-loader/ti-k3-r5-loader.mk @@ -4,9 +4,32 @@ # ################################################################################ -TI_K3_R5_LOADER_VERSION = 2022.10 +TI_K3_R5_LOADER_VERSION = $(call qstrip,$(BR2_TARGET_TI_K3_R5_LOADER_VERSION)) + +ifeq ($(BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_TARBALL),y) +# Handle custom U-Boot tarballs as specified by the configuration +TI_K3_R5_LOADER_TARBALL = $(call qstrip,$(BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_TARBALL_LOCATION)) +TI_K3_R5_LOADER_SITE = $(patsubst %/,%,$(dir $(TI_K3_R5_LOADER_TARBALL))) +TI_K3_R5_LOADER_SOURCE = $(notdir $(TI_K3_R5_LOADER_TARBALL)) +else ifeq ($(BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_GIT),y) +TI_K3_R5_LOADER_SITE = $(call qstrip,$(BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_REPO_URL)) +TI_K3_R5_LOADER_SITE_METHOD = git +else ifeq ($(BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_HG),y) +TI_K3_R5_LOADER_SITE = $(call qstrip,$(BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_REPO_URL)) +TI_K3_R5_LOADER_SITE_METHOD = hg +else ifeq ($(BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_SVN),y) +TI_K3_R5_LOADER_SITE = $(call qstrip,$(BR2_TARGET_TI_K3_R5_LOADER_CUSTOM_REPO_URL)) +TI_K3_R5_LOADER_SITE_METHOD = svn +else +# Handle stable official U-Boot versions TI_K3_R5_LOADER_SITE = https://ftp.denx.de/pub/u-boot TI_K3_R5_LOADER_SOURCE = u-boot-$(TI_K3_R5_LOADER_VERSION).tar.bz2 +endif + +ifeq ($(BR2_TARGET_TI_K3_R5_LOADER)$(BR2_TARGET_TI_K3_R5_LOADER_LATEST_VERSION),y) +BR_NO_CHECK_HASH_FOR += $(TI_K3_R5_LOADER_SOURCE) +endif + TI_K3_R5_LOADER_LICENSE = GPL-2.0+ TI_K3_R5_LOADER_LICENSE_FILES = Licenses/gpl-2.0.txt TI_K3_R5_LOADER_CPE_ID_VENDOR = denx diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in index f5c20f51688e..21f19db89016 100644 --- a/boot/uboot/Config.in +++ b/boot/uboot/Config.in @@ -240,6 +240,25 @@ config BR2_TARGET_UBOOT_NEEDS_OPTEE_TEE U-Boot, and that the TEE variable pointing to OPTEE's tee.elf, is passed during the Buildroot build. +config BR2_TARGET_UBOOT_NEEDS_TI_K3_DM + bool "U-Boot needs TI K3 Device Manager (DM)" + # We use the SoC selection defined for the ti-k3-image-gen + # package + depends on BR2_TARGET_TI_K3_IMAGE_GEN + depends on BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62AX || BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62X + help + Some TI K3 devices need the Device Manager (DM) firmware to + be available for the U-Boot build. + +if BR2_TARGET_UBOOT_NEEDS_TI_K3_DM + +config BR2_TARGET_UBOOT_TI_K3_DM_SOCNAME + string + default "am62axx" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62AX + default "am62xx" if BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62X + +endif + config BR2_TARGET_UBOOT_NEEDS_OPENSBI bool "U-Boot needs OpenSBI" depends on BR2_TARGET_OPENSBI @@ -262,6 +281,15 @@ config BR2_TARGET_UBOOT_NEEDS_IMX_FIRMWARE This option makes sure that the i.MX firmwares are copied into the U-Boot source directory. +config BR2_TARGET_UBOOT_NEEDS_ROCKCHIP_RKBIN + bool "U-Boot needs rockchip-rkbin" + depends on BR2_PACKAGE_ROCKCHIP_RKBIN + help + For some Rockchip SoCs U-Boot needs binary blobs from + Rockchip. + This option makes sure that the needed binary blobs are copied + into the U-Boot source directory. + menu "U-Boot binary format" config BR2_TARGET_UBOOT_FORMAT_AIS @@ -395,6 +423,16 @@ config BR2_TARGET_UBOOT_FORMAT_STM32 bool "u-boot.stm32" depends on BR2_arm +if BR2_TARGET_UBOOT_FORMAT_STM32 +config BR2_TARGET_UBOOT_BUILD_FORMAT_STM32_LEGACY + bool "Legacy build (u-boot.stm32 target)" + help + Select this option if you use U-Boot with version older than + 2022.01), so that we use the old build target. Otherwise, + binman application is called to create the stm32 binary + format. +endif + config BR2_TARGET_UBOOT_FORMAT_CUSTOM bool "Custom (specify below)" help @@ -492,6 +530,8 @@ config BR2_TARGET_UBOOT_ZYNQMP_PMUFW (e.g. http://...), and it will be downloaded and used from the download directory. + The PMU firmware binary can be either in ELF or BIN format. + If empty, the generated boot.bin will not contain a PMU firmware. diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk index 4eae8e95c373..dda606a88059 100644 --- a/boot/uboot/uboot.mk +++ b/boot/uboot/uboot.mk @@ -133,8 +133,10 @@ endif ifeq ($(BR2_TARGET_UBOOT_FORMAT_STM32),y) UBOOT_BINS += u-boot.stm32 +ifeq ($(BR2_TARGET_UBOOT_BUILD_FORMAT_STM32_LEGACY),y) UBOOT_MAKE_TARGET += u-boot.stm32 endif +endif ifeq ($(BR2_TARGET_UBOOT_FORMAT_CUSTOM),y) UBOOT_BINS += $(call qstrip,$(BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME)) @@ -184,6 +186,12 @@ UBOOT_DEPENDENCIES += optee-os UBOOT_MAKE_OPTS += TEE=$(BINARIES_DIR)/tee.elf endif +ifeq ($(BR2_TARGET_UBOOT_NEEDS_TI_K3_DM),y) +UBOOT_TI_K3_DM_SOCNAME = $(call qstrip,$(BR2_TARGET_UBOOT_TI_K3_DM_SOCNAME)) +UBOOT_DEPENDENCIES += ti-k3-boot-firmware +UBOOT_MAKE_OPTS += DM=$(BINARIES_DIR)/ti-dm/$(UBOOT_TI_K3_DM_SOCNAME)/ipc_echo_testb_mcu1_0_release_strip.xer5f +endif + ifeq ($(BR2_TARGET_UBOOT_NEEDS_OPENSBI),y) UBOOT_DEPENDENCIES += opensbi UBOOT_MAKE_OPTS += OPENSBI=$(BINARIES_DIR)/fw_dynamic.bin @@ -207,8 +215,26 @@ endef UBOOT_PRE_BUILD_HOOKS += UBOOT_COPY_IMX_FW_FILES endif +ifeq ($(BR2_TARGET_UBOOT_NEEDS_ROCKCHIP_RKBIN),y) +UBOOT_DEPENDENCIES += rockchip-rkbin +define UBOOT_INSTALL_UBOOT_ROCKCHIP_BIN + $(INSTALL) -D -m 0644 $(@D)/u-boot-rockchip.bin $(BINARIES_DIR)/u-boot-rockchip.bin +endef +UBOOT_POST_INSTALL_IMAGES_HOOKS += UBOOT_INSTALL_UBOOT_ROCKCHIP_BIN +ifneq ($(ROCKCHIP_RKBIN_BL31_FILENAME),) +UBOOT_MAKE_OPTS += BL31=$(BINARIES_DIR)/$(notdir $(ROCKCHIP_RKBIN_BL31_FILENAME)) +endif +ifneq ($(ROCKCHIP_RKBIN_TPL_FILENAME),) +UBOOT_MAKE_OPTS += ROCKCHIP_TPL=$(BINARIES_DIR)/$(notdir $(ROCKCHIP_RKBIN_TPL_FILENAME)) +endif +ifneq ($(ROCKCHIP_RKBIN_TEE_FILENAME),) +UBOOT_MAKE_OPTS += TEE=$(BINARIES_DIR)/$(notdir $(ROCKCHIP_RKBIN_TEE_FILENAME)) +endif +endif + ifeq ($(BR2_TARGET_UBOOT_NEEDS_DTC),y) UBOOT_DEPENDENCIES += host-dtc +UBOOT_MAKE_OPTS += DTC=$(HOST_DIR)/bin/dtc endif ifeq ($(BR2_TARGET_UBOOT_NEEDS_PYTHON3),y) @@ -216,7 +242,7 @@ UBOOT_DEPENDENCIES += host-python3 host-python-setuptools endif ifeq ($(BR2_TARGET_UBOOT_NEEDS_PYLIBFDT),y) -UBOOT_DEPENDENCIES += host-swig +UBOOT_DEPENDENCIES += host-python-pylibfdt endif ifeq ($(BR2_TARGET_UBOOT_NEEDS_PYELFTOOLS),y) diff --git a/configs/acmesystems_acqua_a5_256mb_defconfig b/configs/acmesystems_acqua_a5_256mb_defconfig index 5a5b9559d6dc..5b3223429481 100644 --- a/configs/acmesystems_acqua_a5_256mb_defconfig +++ b/configs/acmesystems_acqua_a5_256mb_defconfig @@ -2,13 +2,13 @@ BR2_arm=y BR2_cortex_a5=y BR2_ARM_ENABLE_VFP=y BR2_ARM_INSTRUCTIONS_THUMB2=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_SYSTEM_DHCP="eth0" BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/acmesystems/acqua-a5/genimage.cfg" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.90" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.27" BR2_LINUX_KERNEL_DEFCONFIG="sama5" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/acmesystems/acqua-a5/at91-sama5d3_acqua.dts" diff --git a/configs/acmesystems_acqua_a5_512mb_defconfig b/configs/acmesystems_acqua_a5_512mb_defconfig index bb5bb1964e0a..69294cbec0e0 100644 --- a/configs/acmesystems_acqua_a5_512mb_defconfig +++ b/configs/acmesystems_acqua_a5_512mb_defconfig @@ -2,13 +2,13 @@ BR2_arm=y BR2_cortex_a5=y BR2_ARM_ENABLE_VFP=y BR2_ARM_INSTRUCTIONS_THUMB2=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_SYSTEM_DHCP="eth0" BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/acmesystems/acqua-a5/genimage.cfg" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.90" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.27" BR2_LINUX_KERNEL_DEFCONFIG="sama5" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/acmesystems/acqua-a5/at91-sama5d3_acqua.dts" diff --git a/configs/andes_ae350_45_defconfig b/configs/andes_ae350_45_defconfig index 998276635be7..fd8b7db0e74b 100644 --- a/configs/andes_ae350_45_defconfig +++ b/configs/andes_ae350_45_defconfig @@ -1,9 +1,5 @@ BR2_riscv=y -BR2_riscv_custom=y -BR2_RISCV_ISA_CUSTOM_RVM=y -BR2_RISCV_ISA_CUSTOM_RVF=y -BR2_RISCV_ISA_CUSTOM_RVD=y -BR2_RISCV_ISA_CUSTOM_RVC=y +BR2_RISCV_ISA_RVC=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_0=y BR2_GLOBAL_PATCH_DIR="board/andes/ae350/patches" BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" @@ -38,7 +34,6 @@ BR2_TARGET_UBOOT_NEEDS_OPENSBI=y BR2_TARGET_UBOOT_FORMAT_CUSTOM=y BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot.itb" BR2_TARGET_UBOOT_SPL=y -BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="ARCH_FLAGS=-march=rv64imafdc" BR2_PACKAGE_HOST_DOSFSTOOLS=y BR2_PACKAGE_HOST_GENIMAGE=y BR2_PACKAGE_HOST_MTOOLS=y diff --git a/configs/arm_foundationv8_defconfig b/configs/arm_foundationv8_defconfig index 3c63f5dc76aa..102fe8fd09b9 100644 --- a/configs/arm_foundationv8_defconfig +++ b/configs/arm_foundationv8_defconfig @@ -1,15 +1,16 @@ BR2_aarch64=y -# Linux headers same as kernel, a 5.16 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_16=y +# Linux headers same as kernel, a 6.1 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.16.20" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.13" BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="arm/foundation-v8-gicv3-psci" BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_SIZE="128M" # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_BOOT_WRAPPER_AARCH64=y BR2_TARGET_BOOT_WRAPPER_AARCH64_DTS="arm/foundation-v8-gicv3-psci" diff --git a/configs/asus_tinker-s_rk3288_defconfig b/configs/asus_tinker-s_rk3288_defconfig new file mode 100644 index 000000000000..96fc79ee85f9 --- /dev/null +++ b/configs/asus_tinker-s_rk3288_defconfig @@ -0,0 +1,46 @@ +# Architecture +BR2_arm=y +BR2_cortex_a17=y +BR2_ARM_FPU_NEON_VFPV4=y + +# Linux headers same as kernel, a 6.1 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y + +# Bootloader +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.04" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="tinker-s-rk3288" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_PYTHON3=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_FORMAT_DTB_IMG=y +BR2_TARGET_UBOOT_SPL=y +BR2_TARGET_UBOOT_SPL_NAME="spl/u-boot-spl-dtb.bin tpl/u-boot-tpl.bin" + +# Kernel +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.38" +BR2_LINUX_KERNEL_DEFCONFIG="multi_v7" +BR2_LINUX_KERNEL_UIMAGE=y +BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x02000000" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="rk3288-tinker-s" +BR2_LINUX_KERNEL_INSTALL_TARGET=y + +# Filesystem +BR2_TARGET_GENERIC_HOSTNAME="tinker-rk3288-s" +BR2_TARGET_GENERIC_ISSUE="Welcome to TINKER S RK3288!" +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_ROOTFS_EXT2_SIZE="512M" +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y +BR2_PACKAGE_HOST_UBOOT_TOOLS=y +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/asus/tinker/genimage.cfg" +BR2_ROOTFS_POST_BUILD_SCRIPT="board/asus/tinker-s/post-build.sh" diff --git a/configs/avenger96_defconfig b/configs/avenger96_defconfig index d2c1b9013ef2..142f6dd8c97b 100644 --- a/configs/avenger96_defconfig +++ b/configs/avenger96_defconfig @@ -1,6 +1,7 @@ BR2_arm=y BR2_cortex_a7=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_8=y +BR2_GLOBAL_PATCH_DIR="board/arrow/avenger96/patches" BR2_ROOTFS_OVERLAY="board/arrow/avenger96/overlay/" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/stmicroelectronics/common/stm32mp157/post-image.sh" BR2_LINUX_KERNEL=y @@ -17,10 +18,9 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M" # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.2" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.5" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="stm32mp1" -BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="STM32MP_SDMMC=1 AARCH32_SP=sp_min DTB_FILE_NAME=stm32mp157a-avenger96.dtb" -BR2_TARGET_ARM_TRUSTED_FIRMWARE_DEBUG=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="STM32MP_SDMMC=1 AARCH32_SP=sp_min DTB_FILE_NAME=stm32mp157a-avenger96.dtb E=0" BR2_TARGET_ARM_TRUSTED_FIRMWARE_IMAGES="*.stm32" BR2_TARGET_ARM_TRUSTED_FIRMWARE_NEEDS_DTC=y BR2_TARGET_UBOOT=y @@ -30,5 +30,6 @@ BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2020.07" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="stm32mp15_trusted" # BR2_TARGET_UBOOT_FORMAT_BIN is not set BR2_TARGET_UBOOT_FORMAT_STM32=y +BR2_TARGET_UBOOT_BUILD_FORMAT_STM32_LEGACY=y BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=stm32mp15xx-dhcor-avenger96" BR2_PACKAGE_HOST_GENIMAGE=y diff --git a/configs/bananapi_m2_berry_defconfig b/configs/bananapi_m2_berry_defconfig new file mode 100644 index 000000000000..200257ac0d5c --- /dev/null +++ b/configs/bananapi_m2_berry_defconfig @@ -0,0 +1,30 @@ +BR2_arm=y +BR2_cortex_a7=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TARGET_GENERIC_ISSUE="Welcome to Bananapi M2 Berry" +BR2_ROOTFS_POST_BUILD_SCRIPT="board/bananapi/bananapi-m2-berry/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/bananapi/bananapi-m2-berry/genimage.cfg" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.57" +BR2_LINUX_KERNEL_DEFCONFIG="sunxi" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-v40-bananapi-m2-berry" +BR2_LINUX_KERNEL_INSTALL_TARGET=y +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +# BR2_TARGET_ROOTFS_TAR is not set +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.10" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="bananapi_m2_berry" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_FORMAT_CUSTOM=y +BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-sunxi-with-spl.bin" +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y diff --git a/configs/bananapi_m2_ultra_defconfig b/configs/bananapi_m2_ultra_defconfig index 2ec0e60e8d77..6b2ba13e41e1 100644 --- a/configs/bananapi_m2_ultra_defconfig +++ b/configs/bananapi_m2_ultra_defconfig @@ -1,22 +1,24 @@ BR2_arm=y BR2_cortex_a7=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_18=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_TARGET_GENERIC_ISSUE="Welcome to Bananapi M2 Ultra" +BR2_ROOTFS_POST_BUILD_SCRIPT="board/bananapi/bananapi-m2-ultra/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/bananapi/bananapi-m2-ultra/genimage.cfg" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.18.12" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.57" BR2_LINUX_KERNEL_DEFCONFIG="sunxi" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-r40-bananapi-m2-ultra" +BR2_LINUX_KERNEL_INSTALL_TARGET=y BR2_TARGET_ROOTFS_EXT2=y BR2_TARGET_ROOTFS_EXT2_4=y # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.10" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.10" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="bananapi_m2_berry" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_PYTHON3=y @@ -27,6 +29,3 @@ BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-sunxi-with-spl.bin" BR2_PACKAGE_HOST_DOSFSTOOLS=y BR2_PACKAGE_HOST_GENIMAGE=y BR2_PACKAGE_HOST_MTOOLS=y -BR2_PACKAGE_HOST_UBOOT_TOOLS=y -BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y -BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/bananapi/bananapi-m2-ultra/boot.cmd" diff --git a/configs/beaglebone_defconfig b/configs/beaglebone_defconfig index d0aa5ad8603f..7e006e7a8562 100644 --- a/configs/beaglebone_defconfig +++ b/configs/beaglebone_defconfig @@ -20,7 +20,7 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/beaglebone/genimage.cfg" # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,beagleboard,linux,5.10.162-ti-r56)/linux-5.10.162-ti-r56.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,beagleboard,linux,5.10.162-ti-r59)/linux-5.10.162-ti-r59.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="omap2plus" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="am335x-evm am335x-bone am335x-boneblack am335x-bonegreen am335x-evmsk am335x-boneblue am335x-boneblack-wireless am335x-bonegreen-wireless" @@ -34,9 +34,10 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.10" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.04" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="am335x_evm" BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y # BR2_TARGET_UBOOT_FORMAT_BIN is not set BR2_TARGET_UBOOT_FORMAT_IMG=y BR2_TARGET_UBOOT_SPL=y diff --git a/configs/beaglebone_qt5_defconfig b/configs/beaglebone_qt5_defconfig index ff03a05a8eb3..0038acfcfdb6 100644 --- a/configs/beaglebone_qt5_defconfig +++ b/configs/beaglebone_qt5_defconfig @@ -15,7 +15,7 @@ BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,beagleboard,linux,4.19.7 BR2_LINUX_KERNEL_DEFCONFIG="omap2plus" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/beaglebone/linux-sgx.fragment" BR2_LINUX_KERNEL_DTS_SUPPORT=y -BR2_LINUX_KERNEL_INTREE_DTS_NAME="am335x-evm am335x-bone am335x-boneblack am335x-bonegreen am335x-evmsk am335x-boneblue am335x-boneblack-wireless" +BR2_LINUX_KERNEL_INTREE_DTS_NAME="am335x-evm am335x-bone am335x-boneblack am335x-bonegreen am335x-evmsk am335x-boneblue am335x-boneblack-wireless am335x-bonegreen-wireless" BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y BR2_PACKAGE_FBV=y BR2_PACKAGE_QT5=y diff --git a/configs/beaglev_defconfig b/configs/beaglev_defconfig index 79af8c2ece83..9984b8b74e4d 100644 --- a/configs/beaglev_defconfig +++ b/configs/beaglev_defconfig @@ -1,9 +1,10 @@ BR2_riscv=y BR2_riscv_custom=y -BR2_RISCV_ISA_CUSTOM_RVM=y -BR2_RISCV_ISA_CUSTOM_RVF=y -BR2_RISCV_ISA_CUSTOM_RVD=y -BR2_RISCV_ISA_CUSTOM_RVC=y +BR2_RISCV_ISA_RVM=y +BR2_RISCV_ISA_RVA=y +BR2_RISCV_ISA_RVF=y +BR2_RISCV_ISA_RVD=y +BR2_RISCV_ISA_RVC=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_13=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/beaglev/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" @@ -39,3 +40,4 @@ BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,starfive-tech,u-boot,64e BR2_TARGET_UBOOT_BOARD_DEFCONFIG="starfive_vic7100_beagle_v_smode" BR2_PACKAGE_HOST_GENIMAGE=y BR2_PACKAGE_HOST_JH71XX_TOOLS=y +BR2_GLOBAL_PATCH_DIR="board/beaglev/patches" diff --git a/configs/canaan_kd233_defconfig b/configs/canaan_kd233_defconfig index 77b8abf531bb..3335195f2589 100644 --- a/configs/canaan_kd233_defconfig +++ b/configs/canaan_kd233_defconfig @@ -2,11 +2,11 @@ BR2_riscv=y BR2_RISCV_64=y BR2_riscv_custom=y -BR2_RISCV_ISA_CUSTOM_RVM=y -BR2_RISCV_ISA_CUSTOM_RVA=y -BR2_RISCV_ISA_CUSTOM_RVF=y -BR2_RISCV_ISA_CUSTOM_RVD=y -BR2_RISCV_ISA_CUSTOM_RVC=y +BR2_RISCV_ISA_RVM=y +BR2_RISCV_ISA_RVA=y +BR2_RISCV_ISA_RVF=y +BR2_RISCV_ISA_RVD=y +BR2_RISCV_ISA_RVC=y # BR2_RISCV_USE_MMU is not set BR2_RISCV_ABI_LP64D=y diff --git a/configs/ci20_defconfig b/configs/ci20_defconfig index 09eddc4e68ab..7e119376e153 100644 --- a/configs/ci20_defconfig +++ b/configs/ci20_defconfig @@ -15,7 +15,7 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/ci20/genimage.cfg" # kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.58" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.254" BR2_LINUX_KERNEL_DEFCONFIG="ci20" BR2_LINUX_KERNEL_INSTALL_TARGET=y diff --git a/configs/freescale_imx6qsabresd_defconfig b/configs/freescale_imx6qsabresd_defconfig index 86513d8072fc..dddfaf5228d0 100644 --- a/configs/freescale_imx6qsabresd_defconfig +++ b/configs/freescale_imx6qsabresd_defconfig @@ -37,7 +37,6 @@ BR2_PACKAGE_HOST_MTOOLS=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BOARDNAME="mx6qsabresd" BR2_TARGET_UBOOT_FORMAT_IMX=y -BR2_TARGET_UBOOT_CUSTOM_GIT=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,uboot-imx,lf-5.10.y-1.0.0)/uboot-imx-lf-5.10.y-1.0.0.tar.gz" BR2_TARGET_UBOOT_NEEDS_DTC=y diff --git a/configs/freescale_imx6ullevk_defconfig b/configs/freescale_imx6ullevk_defconfig index 7a8965be18e2..db4fa69f7164 100644 --- a/configs/freescale_imx6ullevk_defconfig +++ b/configs/freescale_imx6ullevk_defconfig @@ -1,11 +1,11 @@ BR2_arm=y BR2_cortex_a7=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/post-image.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,linux-imx,lf-5.10.y-1.0.0)/linux-imx-lf-5.10.y-1.0.0.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,linux-imx,lf-5.15.71-2.2.0)/linux-imx-lf-5.15.71-2.2.0.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="imx_v7" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6ull-14x14-evk" @@ -15,8 +15,9 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BOARDNAME="mx6ull_14x14_evk" BR2_TARGET_UBOOT_CUSTOM_TARBALL=y -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,uboot-imx,lf-5.10.y-1.0.0)/uboot-imx-lf-5.10.y-1.0.0.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,uboot-imx,lf-5.15.71-2.2.0)/uboot-imx-lf-5.15.71-2.2.0.tar.gz" BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_TARGET_UBOOT_FORMAT_IMX=y BR2_PACKAGE_HOST_DOSFSTOOLS=y BR2_PACKAGE_HOST_GENIMAGE=y diff --git a/configs/freescale_imx8dxlevk_defconfig b/configs/freescale_imx8dxlevk_defconfig new file mode 100644 index 000000000000..0f4caa0ea9a4 --- /dev/null +++ b/configs/freescale_imx8dxlevk_defconfig @@ -0,0 +1,40 @@ +BR2_aarch64=y +BR2_cortex_a35=y +BR2_ARM_FPU_VFPV3=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y +BR2_TARGET_GENERIC_GETTY_PORT="ttyLP0" +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/fsl-imx8dxl-evk.dtb" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_TARBALL=y +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,linux-imx,lf-6.1.22-2.0.0)/linux-imx-lf-6.1.22-2.0.0.tar.gz" +BR2_LINUX_KERNEL_DEFCONFIG="imx_v8" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8dxl-evk" +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y +BR2_PACKAGE_FREESCALE_IMX=y +BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8DXL=y +BR2_PACKAGE_FIRMWARE_IMX=y +BR2_PACKAGE_IMX_SC_FIRMWARE=y +BR2_PACKAGE_IMX_SECO=y +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_ROOTFS_EXT2_SIZE="120M" +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,imx-atf,lf-6.1.22-2.0.0)/imx-atf-lf-6.1.22-2.0.0.tar.gz" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8dxl" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_TARBALL=y +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,uboot-imx,lf-6.1.22-2.0.0)/uboot-imx-lf-6.1.22-2.0.0.tar.gz" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="imx8dxl_evk" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_IMX_MKIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y +BR2_PACKAGE_HOST_UBOOT_TOOLS=y +BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SUPPORT=y diff --git a/configs/freescale_imx8mmevk_defconfig b/configs/freescale_imx8mmevk_defconfig index dcb4b42540c8..ca5c308da62f 100644 --- a/configs/freescale_imx8mmevk_defconfig +++ b/configs/freescale_imx8mmevk_defconfig @@ -1,6 +1,7 @@ BR2_aarch64=y BR2_ARM_FPU_VFPV3=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y +BR2_GLOBAL_PATCH_DIR="board/freescale/common/patches" BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/imx8mm-evk.dtb" diff --git a/configs/freescale_imx8mnevk_defconfig b/configs/freescale_imx8mnevk_defconfig index 0653978d9160..ac73bea76992 100644 --- a/configs/freescale_imx8mnevk_defconfig +++ b/configs/freescale_imx8mnevk_defconfig @@ -1,6 +1,7 @@ BR2_aarch64=y BR2_ARM_FPU_VFPV3=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y +BR2_GLOBAL_PATCH_DIR="board/freescale/common/patches" BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/imx8mn-ddr4-evk.dtb" diff --git a/configs/freescale_imx8mpevk_defconfig b/configs/freescale_imx8mpevk_defconfig index 5a72406b675d..82ed68c5a9f1 100644 --- a/configs/freescale_imx8mpevk_defconfig +++ b/configs/freescale_imx8mpevk_defconfig @@ -1,12 +1,12 @@ BR2_aarch64=y BR2_ARM_FPU_VFPV3=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/imx8mp-evk.dtb" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,linux-imx,lf-5.10.y-1.0.0)/linux-imx-lf-5.10.y-1.0.0.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,linux-imx,lf-6.1.22-2.0.0)/linux-imx-lf-6.1.22-2.0.0.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="imx_v8" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mp-evk" @@ -19,15 +19,18 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_ROOTFS_EXT2_SIZE="120M" BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,imx-atf,lf-5.10.y-1.0.0)/imx-atf-lf-5.10.y-1.0.0.tar.gz" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,imx-atf,lf-6.1.22-2.0.0)/imx-atf-lf-6.1.22-2.0.0.tar.gz" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mp" BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,uboot-imx,lf-5.10.y-1.0.0)/uboot-imx-lf-5.10.y-1.0.0.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,uboot-imx,lf-6.1.22-2.0.0)/uboot-imx-lf-6.1.22-2.0.0.tar.gz" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="imx8mp_evk" +BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="board/freescale/imx8mpevk/uboot-fragment.config" BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_UTIL_LINUX=y +BR2_TARGET_UBOOT_NEEDS_GNUTLS=y BR2_TARGET_UBOOT_FORMAT_CUSTOM=y BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-nodtb.bin" BR2_TARGET_UBOOT_SPL=y diff --git a/configs/freescale_imx8mqevk_defconfig b/configs/freescale_imx8mqevk_defconfig index e3f88dc44c95..79375d7f8869 100644 --- a/configs/freescale_imx8mqevk_defconfig +++ b/configs/freescale_imx8mqevk_defconfig @@ -1,6 +1,7 @@ BR2_aarch64=y BR2_ARM_FPU_VFPV3=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y +BR2_GLOBAL_PATCH_DIR="board/freescale/common/patches" BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/imx8mq-evk.dtb" diff --git a/configs/freescale_imx8qmmek_defconfig b/configs/freescale_imx8qmmek_defconfig index 75777646dfb6..0fc3fe7b077d 100644 --- a/configs/freescale_imx8qmmek_defconfig +++ b/configs/freescale_imx8qmmek_defconfig @@ -1,6 +1,7 @@ BR2_aarch64=y BR2_ARM_FPU_VFPV4=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y +BR2_GLOBAL_PATCH_DIR="board/freescale/common/patches" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/fsl-imx8qm-mek.dtb" BR2_LINUX_KERNEL=y diff --git a/configs/freescale_imx8qxpmek_defconfig b/configs/freescale_imx8qxpmek_defconfig index ce8f6b7c84f0..47a2104d5b0d 100644 --- a/configs/freescale_imx8qxpmek_defconfig +++ b/configs/freescale_imx8qxpmek_defconfig @@ -2,6 +2,7 @@ BR2_aarch64=y BR2_cortex_a35=y BR2_ARM_FPU_VFPV3=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y +BR2_GLOBAL_PATCH_DIR="board/freescale/common/patches" BR2_TARGET_GENERIC_GETTY_PORT="ttyLP0" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/fsl-imx8qxp-mek.dtb" diff --git a/configs/grinn_chiliboard_defconfig b/configs/grinn_chiliboard_defconfig index e7862d17380b..a5a8f7a65f2e 100644 --- a/configs/grinn_chiliboard_defconfig +++ b/configs/grinn_chiliboard_defconfig @@ -18,6 +18,7 @@ BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.01" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="chiliboard" +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_TARGET_UBOOT_FORMAT_IMG=y BR2_TARGET_UBOOT_FORMAT_CUSTOM=y BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="spl/u-boot-spl.bin" diff --git a/configs/hifive_unleashed_defconfig b/configs/hifive_unleashed_defconfig index 2b6ee6c08e59..1aa06f59e745 100644 --- a/configs/hifive_unleashed_defconfig +++ b/configs/hifive_unleashed_defconfig @@ -1,10 +1,11 @@ # Architecture BR2_riscv=y BR2_riscv_custom=y -BR2_RISCV_ISA_CUSTOM_RVM=y -BR2_RISCV_ISA_CUSTOM_RVF=y -BR2_RISCV_ISA_CUSTOM_RVD=y -BR2_RISCV_ISA_CUSTOM_RVC=y +BR2_RISCV_ISA_RVM=y +BR2_RISCV_ISA_RVA=y +BR2_RISCV_ISA_RVF=y +BR2_RISCV_ISA_RVD=y +BR2_RISCV_ISA_RVC=y BR2_RISCV_64=y BR2_RISCV_ABI_LP64D=y @@ -27,7 +28,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.10" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.10.190" BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/sifive/hifive-unleashed/linux.config.fragment" BR2_LINUX_KERNEL_IMAGE=y @@ -38,16 +39,19 @@ BR2_LINUX_KERNEL_INSTALL_TARGET=y # Bootloader BR2_TARGET_OPENSBI=y BR2_TARGET_OPENSBI_CUSTOM_VERSION=y -BR2_TARGET_OPENSBI_CUSTOM_VERSION_VALUE="0.9" +BR2_TARGET_OPENSBI_CUSTOM_VERSION_VALUE="1.2" BR2_TARGET_OPENSBI_PLAT="generic" BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.01" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.04" BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y -BR2_TARGET_UBOOT_BOARD_DEFCONFIG="sifive_fu540" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="sifive_unleashed" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_OPENSBI=y -BR2_TARGET_UBOOT_FORMAT_ITB=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_FORMAT_CUSTOM=y +BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot.itb" BR2_TARGET_UBOOT_SPL=y # Host tools diff --git a/configs/icnova-a20-adb4006_defconfig b/configs/icnova-a20-adb4006_defconfig new file mode 100644 index 000000000000..d572bbd0b577 --- /dev/null +++ b/configs/icnova-a20-adb4006_defconfig @@ -0,0 +1,50 @@ +BR2_arm=y +BR2_cortex_a7=y +BR2_ARM_FPU_NEON_VFPV4=y + +# Linux headers same as kernel, a 6.1 LTS series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y + +# System +BR2_TARGET_GENERIC_HOSTNAME="ICnova A20 ADB4006" +BR2_TARGET_GENERIC_ISSUE="Welcome to ICnova A20 ADB4006!" +BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" +BR2_SYSTEM_DHCP="eth0" +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/in-circuit/icnova-a20-adb4006/genimage.cfg" +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y + +# Kernel +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.35" +BR2_LINUX_KERNEL_DEFCONFIG="sunxi" +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/in-circuit/icnova-a20-adb4006/linux.fragment" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/in-circuit/icnova-a20-adb4006/sun7i-a20-icnova-a20.dtsi board/in-circuit/icnova-a20-adb4006/sun7i-a20-icnova-a20-adb4006.dts" +BR2_LINUX_KERNEL_INSTALL_TARGET=y + +# Filesystem +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_ROOTFS_EXT2_SIZE="128M" + +# Bootloaders +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.04" +BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG=y +BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE="board/in-circuit/icnova-a20-adb4006/sun7i-a20-icnova-a20-adb4006_uboot_defconfig" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_SPL=y +BR2_TARGET_UBOOT_SPL_NAME="u-boot-sunxi-with-spl.bin" +BR2_TARGET_UBOOT_CUSTOM_DTS_PATH="board/in-circuit/icnova-a20-adb4006/sun7i-a20-icnova-a20.dtsi board/in-circuit/icnova-a20-adb4006/sun7i-a20-icnova-a20-adb4006.dts" +BR2_PACKAGE_HOST_UBOOT_TOOLS=y +BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y +BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/in-circuit/icnova-a20-adb4006/boot.cmd" diff --git a/configs/imx6ullevk_defconfig b/configs/imx6ullevk_defconfig index c6e2981697f2..b507d1c0d61f 100644 --- a/configs/imx6ullevk_defconfig +++ b/configs/imx6ullevk_defconfig @@ -3,8 +3,8 @@ BR2_arm=y BR2_cortex_a7=y BR2_ARM_FPU_NEON_VFPV4=y -# Linux headers same as kernel, a 5.14 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_14=y +# Linux headers same as kernel, a 6.1 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # system BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0" @@ -12,7 +12,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0" # kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.14.14" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.12" BR2_LINUX_KERNEL_DEFCONFIG="imx_v6_v7" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6ull-14x14-evk" @@ -22,10 +22,10 @@ BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BOARDNAME="mx6ull_14x14_evk" BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.10" -BR2_TARGET_UBOOT_FORMAT_DTB_IMX=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.01" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_FORMAT_DTB_IMX=y # required tools to create the SD card image BR2_PACKAGE_HOST_DOSFSTOOLS=y diff --git a/configs/imx7d-sdb_defconfig b/configs/imx7d-sdb_defconfig index 8ee5e1fc4015..cf4da342c150 100644 --- a/configs/imx7d-sdb_defconfig +++ b/configs/imx7d-sdb_defconfig @@ -3,8 +3,8 @@ BR2_arm=y BR2_cortex_a7=y BR2_ARM_FPU_NEON_VFPV4=y -# Linux headers same as kernel, a 5.13 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_13=y +# Linux headers same as kernel, a 6.1 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # system BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0" @@ -12,7 +12,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0" # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.13" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.34" BR2_LINUX_KERNEL_DEFCONFIG="imx_v6_v7" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx7d-sdb" diff --git a/configs/imx8mn_bsh_smm_s2_defconfig b/configs/imx8mn_bsh_smm_s2_defconfig index 9b8ac8bfe2da..8b2b74395efc 100644 --- a/configs/imx8mn_bsh_smm_s2_defconfig +++ b/configs/imx8mn_bsh_smm_s2_defconfig @@ -1,6 +1,5 @@ BR2_aarch64=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y -BR2_GLOBAL_PATCH_DIR="board/bsh/imx8mn-bsh-smm-s2/patches" BR2_TARGET_GENERIC_GETTY_PORT="ttymxc3" BR2_ROOTFS_POST_BUILD_SCRIPT="board/bsh/imx8mn-bsh-smm-s2/post-build.sh" BR2_LINUX_KERNEL=y @@ -28,7 +27,7 @@ BR2_TARGET_ARM_TRUSTED_FIRMWARE_DEBUG=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.07" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.04" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="imx8mn_bsh_smm_s2" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y diff --git a/configs/imx8mn_bsh_smm_s2_pro_defconfig b/configs/imx8mn_bsh_smm_s2_pro_defconfig index ebef4e5932c1..e9ff244a3555 100644 --- a/configs/imx8mn_bsh_smm_s2_pro_defconfig +++ b/configs/imx8mn_bsh_smm_s2_pro_defconfig @@ -28,7 +28,7 @@ BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="IMX_BOOT_UART_BASE=0x30a60 BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.07" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.04" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="imx8mn_bsh_smm_s2pro" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y diff --git a/configs/imxrt1050-evk_defconfig b/configs/imxrt1050-evk_defconfig new file mode 100644 index 000000000000..af060fb9f4a5 --- /dev/null +++ b/configs/imxrt1050-evk_defconfig @@ -0,0 +1,44 @@ +# Architecture +BR2_arm=y +BR2_cortex_m7=y + +# Image +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/freescale/imxrt1050evk/genimage.cfg" + +# Toolchain +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y + +# Kernel +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1" +BR2_LINUX_KERNEL_DEFCONFIG="imxrt" +BR2_LINUX_KERNEL_UIMAGE=y +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="imxrt1050-evk" + +# Filesystem +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_ROOTFS_EXT2_SIZE="16M" + +# NOMMU Busybox +BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox-minimal.config" + +# Bootloader +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.10" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="imxrt1050-evk" +BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="board/freescale/imxrt1050evk/uboot.fragment" +BR2_TARGET_UBOOT_FORMAT_IMG=y +BR2_TARGET_UBOOT_SPL=y +BR2_TARGET_UBOOT_SPL_NAME="SPL" +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y + +# Required tools to create the SD card image +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_MTOOLS=y diff --git a/configs/khadas_vim3_defconfig b/configs/khadas_vim3_defconfig new file mode 100644 index 000000000000..0a8388333456 --- /dev/null +++ b/configs/khadas_vim3_defconfig @@ -0,0 +1,47 @@ +# Architecture +BR2_aarch64=y +BR2_cortex_a73_a53=y +BR2_ARM_FPU_VFPV4=y + +# Image +BR2_ROOTFS_POST_BUILD_SCRIPT="board/khadas/vim3/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/khadas/vim3/post-image.sh" + +# Kernel +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.3" +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="amlogic/meson-g12b-a311d-khadas-vim3" +BR2_LINUX_KERNEL_INSTALL_TARGET=y + +# Linux headers same as kernel, a 6.3 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_3=y + +# Filesystem +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_ROOTFS_EXT2_SIZE="128M" + +# Bootloader +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.04" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="khadas-vim3" +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y + +# Required tool to sign the bootloader image +BR2_PACKAGE_HOST_AMLOGIC_BOOT_FIP=y +BR2_PACKAGE_HOST_AMLOGIC_BOOT_FIP_DEVICE="khadas-vim3" + +# Required tools to create the SD image +BR2_PACKAGE_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y +BR2_PACKAGE_HOST_DOSFSTOOLS=y + +# Supporting host tools to build FIT image +# BR2_PACKAGE_HOST_UBOOT_TOOLS=y +# BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SUPPORT=y diff --git a/configs/licheepi_zero_defconfig b/configs/licheepi_zero_defconfig deleted file mode 100644 index 0d3115a996f2..000000000000 --- a/configs/licheepi_zero_defconfig +++ /dev/null @@ -1,53 +0,0 @@ -# Target options -BR2_arm=y -BR2_cortex_a7=y -BR2_ARM_FPU_VFPV4=y - -# Toolchain -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_3=y - -# System configuration -BR2_TARGET_GENERIC_HOSTNAME="licheepi-zero" -BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the LicheePi Zero" -BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" -BR2_TARGET_GENERIC_GETTY_BAUDRATE_115200=y -BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" -BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/licheepi/genimage.cfg" - -# Kernel -BR2_LINUX_KERNEL=y -BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.5" -BR2_LINUX_KERNEL_DEFCONFIG="sunxi" -BR2_LINUX_KERNEL_DTS_SUPPORT=y -BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-v3s-licheepi-zero sun8i-v3s-licheepi-zero-dock" - -BR2_PACKAGE_LINUX_FIRMWARE=y -BR2_PACKAGE_LINUX_FIRMWARE_RTL_87XX=y - -BR2_PACKAGE_WPA_SUPPLICANT=y -BR2_PACKAGE_WPA_SUPPLICANT_AUTOSCAN=y - -# Filesystem images -BR2_TARGET_ROOTFS_EXT2=y -BR2_TARGET_ROOTFS_EXT2_4=y - -# Bootloaders -BR2_TARGET_UBOOT=y -BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y -BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.01" -BR2_TARGET_UBOOT_BOARD_DEFCONFIG="LicheePi_Zero" -BR2_TARGET_UBOOT_NEEDS_DTC=y -BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y -BR2_TARGET_UBOOT_NEEDS_OPENSSL=y -BR2_TARGET_UBOOT_FORMAT_CUSTOM=y -BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-sunxi-with-spl.bin" -BR2_PACKAGE_HOST_UBOOT_TOOLS=y -BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y -BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/licheepi/boot.cmd" - -# Required host utilities for building an SDCard image -BR2_PACKAGE_HOST_DOSFSTOOLS=y -BR2_PACKAGE_HOST_GENIMAGE=y -BR2_PACKAGE_HOST_MTOOLS=y diff --git a/configs/linksprite_pcduino_defconfig b/configs/linksprite_pcduino_defconfig index 806c4f069766..cf58e021bade 100644 --- a/configs/linksprite_pcduino_defconfig +++ b/configs/linksprite_pcduino_defconfig @@ -19,12 +19,12 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="-c $(BINARIES_DIR)/genimage.cfg" BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y # Linux headers same as kernel, a 5.10 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_16=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.16.1" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.14" BR2_LINUX_KERNEL_DEFCONFIG="sunxi" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun4i-a10-pcduino" @@ -40,7 +40,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.01" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.01" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="Linksprite_pcDuino" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y diff --git a/configs/ls1028ardb_defconfig b/configs/ls1028ardb_defconfig index a46b94511a6d..d92c543b449a 100644 --- a/configs/ls1028ardb_defconfig +++ b/configs/ls1028ardb_defconfig @@ -2,6 +2,9 @@ BR2_aarch64=y BR2_cortex_a72=y +# patches +BR2_GLOBAL_PATCH_DIR="board/freescale/common/patches" + # Toolchain # Linux headers same as kernel, a 5.10 series BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y diff --git a/configs/ls1046a-frwy_defconfig b/configs/ls1046a-frwy_defconfig new file mode 100644 index 000000000000..ce796ce3ef46 --- /dev/null +++ b/configs/ls1046a-frwy_defconfig @@ -0,0 +1,61 @@ +# Architecture +BR2_aarch64=y +BR2_cortex_a72=y + +# patches +BR2_GLOBAL_PATCH_DIR="board/freescale/common/patches" + +# Toolchain +# Linux headers same as kernel, a 5.10 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y + +# System configuration +BR2_TARGET_GENERIC_HOSTNAME="ls1046afrwy" +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y +BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" +BR2_SYSTEM_DHCP="eth0" +BR2_ROOTFS_OVERLAY="board/freescale/ls1046a-frwy/rootfs_overlay" +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/freescale/ls1046a-frwy/genimage.cfg" + +# Kernel +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_TARBALL=y +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,nxp-qoriq,linux,LSDK-21.08)/linux-LSDK-21.08.tar.gz" +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(LINUX_DIR)/arch/arm64/configs/lsdk.config" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/fsl-ls1046a-frwy freescale/fsl-ls1046a-frwy-sdk" +BR2_LINUX_KERNEL_INSTALL_TARGET=y + +# Filesystem +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_ROOTFS_EXT2_SIZE="120M" +# BR2_TARGET_ROOTFS_TAR is not set + +# Bootloaders +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,nxp-qoriq,atf,LSDK-21.08)/atf-LSDK-21.08.tar.gz" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="ls1046afrwy" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_RCW=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="BOOT_MODE=sd" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_IMAGES="fip.bin bl2_sd.pbl" +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_TARBALL=y +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,nxp-qoriq,u-boot,LSDK-21.08)/u-boot-LSDK-21.08.tar.gz" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="ls1046afrwy_tfa" +BR2_TARGET_UBOOT_NEEDS_DTC=y + +# Firmware +BR2_PACKAGE_QORIQ_FM_UCODE=y +BR2_PACKAGE_QORIQ_FM_UCODE_PLATFORM="ls1046" + +# Host utilities +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_QORIQ_RCW=y +BR2_PACKAGE_HOST_QORIQ_RCW_INTREE="ls1046afrwy/NN_NNQNNPNP_3040_0506/rcw_1600_sdboot.bin" diff --git a/configs/microchip_mpfs_icicle_defconfig b/configs/microchip_mpfs_icicle_defconfig new file mode 100644 index 000000000000..1af7a3c474ba --- /dev/null +++ b/configs/microchip_mpfs_icicle_defconfig @@ -0,0 +1,29 @@ +BR2_riscv=y +BR2_RISCV_ISA_RVC=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y +BR2_TARGET_GENERIC_HOSTNAME="mpfs_icicle" +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/microchip/mpfs_icicle/post-image.sh" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_TARBALL=y +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4microchip,linux,linux-6.1-mchp+fpga)/linux4microchip+fpga-2023.09.tar.gz" +BR2_LINUX_KERNEL_DEFCONFIG="mpfs" +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/microchip/mpfs_icicle/linux.fragment" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="microchip/mpfs-icicle-kit" +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_TARBALL=y +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,polarfire-soc,u-boot)linux4microchip+fpga-2023.09.tar.gz" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="microchip_mpfs_icicle" +BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="board/microchip/mpfs_icicle/uboot-fragment-rootfs.config" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MICROCHIP_HSS_PAYLOAD_GENERATOR=y +BR2_PACKAGE_HOST_MTOOLS=y +BR2_PACKAGE_HOST_UBOOT_TOOLS=y +BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SUPPORT=y +BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y +BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/microchip/mpfs_icicle/uboot-env.txt" diff --git a/configs/mx53loco_defconfig b/configs/mx53loco_defconfig index 18785aa0c8d8..d03c7d0916e8 100644 --- a/configs/mx53loco_defconfig +++ b/configs/mx53loco_defconfig @@ -2,8 +2,8 @@ BR2_arm=y BR2_cortex_a8=y -# Linux headers same as kernel, a 5.10 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y +# Linux headers same as kernel, a 6.1 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # System BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0" @@ -22,13 +22,14 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BOARDNAME="mx53loco" BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.01" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.01" BR2_TARGET_UBOOT_FORMAT_IMX=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.10.9" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.20" BR2_LINUX_KERNEL_DEFCONFIG="imx_v6_v7" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx53-qsb imx53-qsrb" diff --git a/configs/nitrogen6sx_defconfig b/configs/nitrogen6sx_defconfig index 967d064f1c5a..ba2c79d4a70a 100644 --- a/configs/nitrogen6sx_defconfig +++ b/configs/nitrogen6sx_defconfig @@ -17,17 +17,18 @@ BR2_PACKAGE_HOST_UBOOT_TOOLS=y BR2_TARGET_ROOTFS_EXT2=y BR2_TARGET_ROOTFS_EXT2_4=y -# Linux headers same as kernel, a 5.15 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +# Linux headers same as kernel, a 6.1 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # bootloader BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y # Latest revision of branch boundary-v2022.04 -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/c2042594.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/7e7eff74.tar.gz" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen6sx" BR2_TARGET_UBOOT_FORMAT_IMX=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_PACKAGE_HOST_UBOOT_TOOLS=y BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/boundarydevices/common/boot.cmd" @@ -35,8 +36,8 @@ BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/boundarydevices/common/bo # kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -# Latest revision of branch boundary-imx_5.15.y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux/archive/97cc67c4.tar.gz" +# Latest revision of branch boundary-imx_6.1.y +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux/archive/4470b050.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="boundary" BR2_LINUX_KERNEL_INSTALL_TARGET=y BR2_LINUX_KERNEL_DTS_SUPPORT=y diff --git a/configs/nitrogen6x_defconfig b/configs/nitrogen6x_defconfig index 1cded537657c..d490ec3c4674 100644 --- a/configs/nitrogen6x_defconfig +++ b/configs/nitrogen6x_defconfig @@ -16,17 +16,18 @@ BR2_PACKAGE_HOST_GENIMAGE=y BR2_TARGET_ROOTFS_EXT2=y BR2_TARGET_ROOTFS_EXT2_4=y -# Linux headers same as kernel, a 5.15 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +# Linux headers same as kernel, a 6.1 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # bootloader BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y # Latest revision of branch boundary-v2022.04 -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/c2042594.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/7e7eff74.tar.gz" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen6q" BR2_TARGET_UBOOT_FORMAT_IMX=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_PACKAGE_HOST_UBOOT_TOOLS=y BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/boundarydevices/common/boot.cmd" @@ -34,8 +35,8 @@ BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/boundarydevices/common/bo # kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -# Latest revision of branch boundary-imx_5.15.y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux/archive/97cc67c4.tar.gz" +# Latest revision of branch boundary-imx_6.1.y +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux/archive/4470b050.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="boundary" BR2_LINUX_KERNEL_INSTALL_TARGET=y BR2_LINUX_KERNEL_DTS_SUPPORT=y diff --git a/configs/nitrogen7_defconfig b/configs/nitrogen7_defconfig index d1e81d90fdee..429d84c1d48e 100644 --- a/configs/nitrogen7_defconfig +++ b/configs/nitrogen7_defconfig @@ -16,17 +16,18 @@ BR2_PACKAGE_HOST_UBOOT_TOOLS=y BR2_TARGET_ROOTFS_EXT2=y BR2_TARGET_ROOTFS_EXT2_4=y -# Linux headers same as kernel, a 5.15 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +# Linux headers same as kernel, a 6.1 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # bootloader BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y # Latest revision of branch boundary-v2022.04 -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/c2042594.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/7e7eff74.tar.gz" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen7" BR2_TARGET_UBOOT_FORMAT_IMX=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_PACKAGE_HOST_UBOOT_TOOLS=y BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/boundarydevices/common/boot.cmd" @@ -34,8 +35,8 @@ BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/boundarydevices/common/bo # kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -# Latest revision of branch boundary-imx_5.15.y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux/archive/97cc67c4.tar.gz" +# Latest revision of branch boundary-imx_6.1.y +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux/archive/4470b050.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="boundary" BR2_LINUX_KERNEL_INSTALL_TARGET=y BR2_LINUX_KERNEL_DTS_SUPPORT=y diff --git a/configs/nitrogen8m_defconfig b/configs/nitrogen8m_defconfig index 6c490f195bad..ea5f21cb3da4 100644 --- a/configs/nitrogen8m_defconfig +++ b/configs/nitrogen8m_defconfig @@ -18,8 +18,8 @@ BR2_TARGET_ROOTFS_EXT2=y BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_ROOTFS_EXT2_SIZE="120M" -# Linux headers same as kernel, a 5.15 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +# Linux headers same as kernel, a 6.1 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # DDR training binaries BR2_PACKAGE_FREESCALE_IMX=y @@ -29,8 +29,8 @@ BR2_PACKAGE_FIRMWARE_IMX=y # ARM Trusted Firmware BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y -# Latest revision of branch boundary-lf-5.15.52-2.1.0 -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/imx-atf/archive/697a8319.tar.gz" +# Latest revision of branch boundary-lf-6.1.22-2.0.0 +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/imx-atf/archive/7e3484cc.tar.gz" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mq" BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y @@ -40,18 +40,19 @@ BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen8m" BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y # Latest revision of branch boundary-v2022.04 -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/c2042594.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/7e7eff74.tar.gz" BR2_TARGET_UBOOT_FORMAT_CUSTOM=y BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-nodtb.bin" BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_TARGET_UBOOT_SPL=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -# Latest revision of branch boundary-imx_5.15.y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux/archive/97cc67c4.tar.gz" +# Latest revision of branch boundary-imx_6.1.y +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux/archive/4470b050.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="boundary" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INSTALL_TARGET=y diff --git a/configs/nitrogen8mm_defconfig b/configs/nitrogen8mm_defconfig index 27cdc9e19e58..5b7fb4a3bc3e 100644 --- a/configs/nitrogen8mm_defconfig +++ b/configs/nitrogen8mm_defconfig @@ -18,8 +18,8 @@ BR2_TARGET_ROOTFS_EXT2=y BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_ROOTFS_EXT2_SIZE="120M" -# Linux headers same as kernel, a 5.15 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +# Linux headers same as kernel, a 6.1 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # DDR training binaries BR2_PACKAGE_FREESCALE_IMX=y @@ -29,8 +29,8 @@ BR2_PACKAGE_FIRMWARE_IMX=y # ARM Trusted Firmware BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y -# Latest revision of branch boundary-lf-5.15.52-2.1.0 -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/imx-atf/archive/697a8319.tar.gz" +# Latest revision of branch boundary-lf-6.1.22-2.0.0 +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/imx-atf/archive/7e3484cc.tar.gz" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mm" BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y @@ -40,18 +40,19 @@ BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen8mm_2g" BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y # Latest revision of branch boundary-v2022.04 -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/c2042594.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/7e7eff74.tar.gz" BR2_TARGET_UBOOT_FORMAT_CUSTOM=y BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-nodtb.bin" BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_TARGET_UBOOT_SPL=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -# Latest revision of branch boundary-imx_5.15.y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux/archive/97cc67c4.tar.gz" +# Latest revision of branch boundary-imx_6.1.y +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux/archive/4470b050.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="boundary" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INSTALL_TARGET=y diff --git a/configs/nitrogen8mn_defconfig b/configs/nitrogen8mn_defconfig index 775bdecd90a9..2fc9442d9e7c 100644 --- a/configs/nitrogen8mn_defconfig +++ b/configs/nitrogen8mn_defconfig @@ -18,8 +18,8 @@ BR2_TARGET_ROOTFS_EXT2=y BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_ROOTFS_EXT2_SIZE="120M" -# Linux headers same as kernel, a 5.15 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +# Linux headers same as kernel, a 6.1 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # DDR training binaries BR2_PACKAGE_FREESCALE_IMX=y @@ -29,8 +29,8 @@ BR2_PACKAGE_FIRMWARE_IMX=y # ARM Trusted Firmware BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y -# Latest revision of branch boundary-lf-5.15.52-2.1.0 -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/imx-atf/archive/697a8319.tar.gz" +# Latest revision of branch boundary-lf-6.1.22-2.0.0 +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/imx-atf/archive/7e3484cc.tar.gz" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mn" BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y @@ -40,18 +40,19 @@ BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen8_nano_8mn1gr0" BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y # Latest revision of branch boundary-v2022.04 -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/c2042594.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/7e7eff74.tar.gz" BR2_TARGET_UBOOT_FORMAT_CUSTOM=y BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-nodtb.bin" BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_TARGET_UBOOT_SPL=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -# Latest revision of branch boundary-imx_5.15.y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux/archive/97cc67c4.tar.gz" +# Latest revision of branch boundary-imx_6.1.y +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux/archive/4470b050.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="boundary" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INSTALL_TARGET=y diff --git a/configs/nitrogen8mp_defconfig b/configs/nitrogen8mp_defconfig index 0767ab137537..c5f79c391318 100644 --- a/configs/nitrogen8mp_defconfig +++ b/configs/nitrogen8mp_defconfig @@ -18,8 +18,8 @@ BR2_TARGET_ROOTFS_EXT2=y BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_ROOTFS_EXT2_SIZE="120M" -# Linux headers same as kernel, a 5.15 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +# Linux headers same as kernel, a 6.1 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # DDR training binaries BR2_PACKAGE_FREESCALE_IMX=y @@ -29,8 +29,8 @@ BR2_PACKAGE_FIRMWARE_IMX=y # ARM Trusted Firmware BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y -# Latest revision of branch boundary-lf-5.15.52-2.1.0 -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/imx-atf/archive/697a8319.tar.gz" +# Latest revision of branch boundary-lf-6.1.22-2.0.0 +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/imx-atf/archive/7e3484cc.tar.gz" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mp" BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y @@ -40,20 +40,21 @@ BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen8mp_2gr0" BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y # Latest revision of branch boundary-v2022.04 -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/c2042594.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/7e7eff74.tar.gz" BR2_TARGET_UBOOT_FORMAT_CUSTOM=y BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-nodtb.bin" BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_TARGET_UBOOT_SPL=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -# Latest revision of branch boundary-imx_5.15.y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux/archive/97cc67c4.tar.gz" +# Latest revision of branch boundary-imx_6.1.y +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux/archive/4470b050.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="boundary" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INSTALL_TARGET=y -BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mp-nitrogen8mp freescale/imx8mp-nitrogen8mp-m4 freescale/imx8mp-nitrogen8mp-enc freescale/imx8mp-nitrogen8mp-enc-tc358743" +BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mp-nitrogen_smarc freescale/imx8mp-nitrogen8mp freescale/imx8mp-nitrogen8mp-m4 freescale/imx8mp-nitrogen8mp-enc freescale/imx8mp-nitrogen8mp-enc-tc358743" BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y diff --git a/configs/olimex_a20_olinuxino_lime2_defconfig b/configs/olimex_a20_olinuxino_lime2_defconfig index 50a0986ab215..3294748b1424 100644 --- a/configs/olimex_a20_olinuxino_lime2_defconfig +++ b/configs/olimex_a20_olinuxino_lime2_defconfig @@ -15,6 +15,7 @@ BR2_TARGET_GENERIC_HOSTNAME="a20-olinuxino" BR2_TARGET_GENERIC_ISSUE="Welcome to OLinuXino!" BR2_TARGET_GENERIC_GETTY=y BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" +BR2_SYSTEM_DHCP="eth0" BR2_ROOTFS_OVERLAY="board/olimex/a20_olinuxino/rootfs_overlay" BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/olimex/a20_olinuxino/genimage.cfg" @@ -22,7 +23,7 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/olimex/a20_olinuxino/genimage.cfg" # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.9" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.55" BR2_LINUX_KERNEL_USE_DEFCONFIG=y BR2_LINUX_KERNEL_DEFCONFIG="sunxi" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/olimex/a20_olinuxino/linux-disable-lima.fragment" @@ -44,7 +45,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.01" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.10" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="A20-OLinuXino-Lime2" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_PYTHON3=y diff --git a/configs/olimex_a20_olinuxino_lime_defconfig b/configs/olimex_a20_olinuxino_lime_defconfig index 25ecf31146f5..6b46794df301 100644 --- a/configs/olimex_a20_olinuxino_lime_defconfig +++ b/configs/olimex_a20_olinuxino_lime_defconfig @@ -15,6 +15,7 @@ BR2_TARGET_GENERIC_HOSTNAME="a20-olinuxino" BR2_TARGET_GENERIC_ISSUE="Welcome to OLinuXino!" BR2_TARGET_GENERIC_GETTY=y BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" +BR2_SYSTEM_DHCP="eth0" BR2_ROOTFS_OVERLAY="board/olimex/a20_olinuxino/rootfs_overlay" BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/olimex/a20_olinuxino/genimage.cfg" @@ -22,7 +23,7 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/olimex/a20_olinuxino/genimage.cfg" # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.9" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.55" BR2_LINUX_KERNEL_USE_DEFCONFIG=y BR2_LINUX_KERNEL_DEFCONFIG="sunxi" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/olimex/a20_olinuxino/linux-disable-lima.fragment" @@ -44,7 +45,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.01" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.10" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="A20-OLinuXino-Lime" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_PYTHON3=y diff --git a/configs/olimex_stmp157_olinuxino_lime_defconfig b/configs/olimex_stmp157_olinuxino_lime_defconfig index 60c34d7fa13a..8bd8e10ca98d 100644 --- a/configs/olimex_stmp157_olinuxino_lime_defconfig +++ b/configs/olimex_stmp157_olinuxino_lime_defconfig @@ -17,8 +17,8 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/olimex/stmp1_olinuxino/genimage.cfg" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/OLIMEX/linux-olimex.git" -# branch release-20221011-v5.10.105 -BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="1b955f3ee7ef3234f290f65dbea108063996aea0" +# branch release-20230622-v5.10.180 +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="fc74113e14d76aea9482264ff42e07397b94553d" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/olimex/stmp1_olinuxino/linux.config" BR2_LINUX_KERNEL_DTS_SUPPORT=y @@ -35,12 +35,13 @@ BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_GIT=y BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/OLIMEX/u-boot-olinuxino.git" -# release-20220927, based on 2021.04 -BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="98ab5ecb0a16eeb426f34b2a1a28e56658c1a59c" +# release-20230515, based on 2021.04 +BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="efadf793a0a5924e2c96362dc1df3e56622ebb97" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="STM32-OLinuXino-LIME" # BR2_TARGET_UBOOT_FORMAT_BIN is not set BR2_TARGET_UBOOT_FORMAT_IMG=y BR2_TARGET_UBOOT_FORMAT_STM32=y +BR2_TARGET_UBOOT_BUILD_FORMAT_STM32_LEGACY=y BR2_TARGET_UBOOT_SPL=y BR2_TARGET_UBOOT_SPL_NAME="spl/u-boot-spl.stm32" diff --git a/configs/orangepi_one_defconfig b/configs/orangepi_one_defconfig index ba128424a0bf..ea988e87ea9f 100644 --- a/configs/orangepi_one_defconfig +++ b/configs/orangepi_one_defconfig @@ -1,13 +1,13 @@ BR2_arm=y BR2_cortex_a7=y BR2_ARM_FPU_VFPV4=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_12=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_TARGET_GENERIC_HOSTNAME="OrangePi_One" BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the Orange Pi One" BR2_SYSTEM_DHCP="eth0" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.12.2" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.14" BR2_LINUX_KERNEL_DEFCONFIG="sunxi" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-h3-orangepi-one" @@ -19,11 +19,12 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.04" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.01" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_one" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_PYTHON3=y BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_TARGET_UBOOT_SPL=y BR2_TARGET_UBOOT_SPL_NAME="u-boot-sunxi-with-spl.bin" BR2_PACKAGE_HOST_GENIMAGE=y diff --git a/configs/orangepi_pc2_defconfig b/configs/orangepi_pc2_defconfig new file mode 100644 index 000000000000..46d04b34c845 --- /dev/null +++ b/configs/orangepi_pc2_defconfig @@ -0,0 +1,37 @@ +BR2_aarch64=y +BR2_ARM_FPU_VFPV4=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y +BR2_TARGET_GENERIC_ISSUE="Welcome to Orangepi PC2" +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y +BR2_ROOTFS_POST_BUILD_SCRIPT="board/orangepi/common/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c $(BINARIES_DIR)/genimage.cfg" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.45" +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="allwinner/sun50i-h5-orangepi-pc2" +BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME=y +BR2_LINUX_KERNEL_INSTALL_TARGET=y +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_ROOTFS_EXT2_SIZE="128M" +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.9" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="sun50i_a64" +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.04" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_pc2" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y +BR2_TARGET_UBOOT_SPL=y +BR2_TARGET_UBOOT_SPL_NAME="u-boot-sunxi-with-spl.bin" +BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="SCP=/dev/null" +BR2_PACKAGE_HOST_GENIMAGE=y diff --git a/configs/orangepi_pc_plus_defconfig b/configs/orangepi_pc_plus_defconfig index ba946e5285ff..9dbf808da76f 100644 --- a/configs/orangepi_pc_plus_defconfig +++ b/configs/orangepi_pc_plus_defconfig @@ -2,13 +2,13 @@ BR2_arm=y BR2_cortex_a7=y BR2_ARM_FPU_VFPV4=y BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_12=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_TARGET_GENERIC_HOSTNAME="OrangePi_PC_Plus" BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the Orange Pi PC Plus" BR2_SYSTEM_DHCP="eth0" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.12.2" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.14" BR2_LINUX_KERNEL_DEFCONFIG="sunxi" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-h3-orangepi-pc-plus" @@ -21,11 +21,12 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.04" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.01" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_pc_plus" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_PYTHON3=y BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_TARGET_UBOOT_SPL=y BR2_TARGET_UBOOT_SPL_NAME="u-boot-sunxi-with-spl.bin" BR2_PACKAGE_HOST_GENIMAGE=y diff --git a/configs/orangepi_zero3_defconfig b/configs/orangepi_zero3_defconfig new file mode 100644 index 000000000000..51a6efd3edbe --- /dev/null +++ b/configs/orangepi_zero3_defconfig @@ -0,0 +1,57 @@ +BR2_aarch64=y +BR2_cortex_a53=y +BR2_ARM_FPU_VFPV4=y + +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y +BR2_SYSTEM_DHCP="eth0" + +# Firmware +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.9" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="sun50i_h616" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y + +# Bootloader +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_TARBALL=y +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,orangepi-xunlong,u-boot-orangepi,6fe17fac388aad17490cf386578b7532975e567f)/u-boot-orangepi-6fe17fac388aad17490cf386578b7532975e567f.tar.gz" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_zero3" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_PYTHON3=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y +BR2_TARGET_UBOOT_SPL=y +BR2_TARGET_UBOOT_SPL_NAME="u-boot-sunxi-with-spl.bin" +BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="SCP=/dev/null" + +# Kernel +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_TARBALL=y +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,orangepi-xunlong,linux-orangepi,3495b5ee0594566c9fed930b96b1cae90600412e)/linux-orangepi-3495b5ee0594566c9fed930b96b1cae90600412e.tar.gz" +BR2_LINUX_KERNEL_DEFCONFIG="linux_sunxi64" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="allwinner/sun50i-h616-orangepi-zero3" +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y +BR2_LINUX_KERNEL_INSTALL_TARGET=y +BR2_LINUX_KERNEL_DTB_KEEP_DIRNAME=y +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/orangepi/orangepi-zero3/linux.config" + +# Filesystem +BR2_TARGET_GENERIC_ISSUE="Welcome to Orangepi Zero3" +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_ROOTFS_EXT2_SIZE="180M" +# BR2_TARGET_ROOTFS_TAR is not set + +# host tools +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_UBOOT_TOOLS=y + +# image scripts +BR2_ROOTFS_POST_BUILD_SCRIPT="board/orangepi/common/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c $(BINARIES_DIR)/genimage.cfg" diff --git a/configs/orangepi_zero_defconfig b/configs/orangepi_zero_defconfig index 464e075e5c3f..e286f0b7f13d 100644 --- a/configs/orangepi_zero_defconfig +++ b/configs/orangepi_zero_defconfig @@ -8,13 +8,13 @@ BR2_TARGET_GENERIC_HOSTNAME="OrangePi_Zero" BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the Orange Pi Zero" BR2_GLOBAL_PATCH_DIR="board/orangepi/orangepi-zero/patches" BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_SYSTEM_DHCP="eth0" # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.16" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.14" BR2_LINUX_KERNEL_DEFCONFIG="sunxi" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-h2-plus-orangepi-zero" @@ -31,11 +31,12 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.01" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.01" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_zero" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_PYTHON3=y BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_TARGET_UBOOT_SPL=y BR2_TARGET_UBOOT_SPL_NAME="u-boot-sunxi-with-spl.bin" diff --git a/configs/orangepi_zero_plus2_defconfig b/configs/orangepi_zero_plus2_defconfig index ef171c3ad302..377e9f1c5915 100644 --- a/configs/orangepi_zero_plus2_defconfig +++ b/configs/orangepi_zero_plus2_defconfig @@ -2,14 +2,14 @@ BR2_aarch64=y BR2_cortex_a53=y BR2_ARM_FPU_VFPV4=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_16=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y BR2_ROOTFS_OVERLAY="board/orangepi/orangepi-zero-plus2/rootfs_overlay" # Firmware BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.5" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.8" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="sun50i_a64" BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y @@ -17,7 +17,7 @@ BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.01" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.01" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_zero_plus2" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y @@ -31,7 +31,7 @@ BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="SCP=/dev/null" # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.16.1" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.14" BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="allwinner/sun50i-h5-orangepi-zero-plus2" diff --git a/configs/orangepi_zero_plus_defconfig b/configs/orangepi_zero_plus_defconfig index 26a25bd9f89b..c564d8a34254 100644 --- a/configs/orangepi_zero_plus_defconfig +++ b/configs/orangepi_zero_plus_defconfig @@ -9,7 +9,7 @@ BR2_SYSTEM_DHCP="eth0" # Firmware BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.5" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.9" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="sun50i_a64" BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y @@ -17,7 +17,7 @@ BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.01" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.07.02" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_zero_plus" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y @@ -31,7 +31,7 @@ BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="SCP=/dev/null" # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.4" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.53" BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="allwinner/sun50i-h5-orangepi-zero-plus" diff --git a/configs/pc_x86_64_bios_defconfig b/configs/pc_x86_64_bios_defconfig index ec34a41667ff..6032544d2d41 100644 --- a/configs/pc_x86_64_bios_defconfig +++ b/configs/pc_x86_64_bios_defconfig @@ -21,17 +21,18 @@ BR2_ROOTFS_POST_BUILD_SCRIPT="board/pc/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/pc/genimage-bios.cfg" -# Linux headers same as kernel, a 4.19 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y +# Linux headers same as kernel, a 6.1 LTS series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.204" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.24" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/pc/linux.config" BR2_LINUX_KERNEL_INSTALL_TARGET=y BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y +BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y # Firmware BR2_PACKAGE_LINUX_FIRMWARE=y diff --git a/configs/pc_x86_64_efi_defconfig b/configs/pc_x86_64_efi_defconfig index da05471e28c1..afb652f3fc1c 100644 --- a/configs/pc_x86_64_efi_defconfig +++ b/configs/pc_x86_64_efi_defconfig @@ -22,17 +22,18 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M" BR2_ROOTFS_POST_BUILD_SCRIPT="board/pc/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/pc/post-image-efi.sh" -# Linux headers same as kernel, a 4.19 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y +# Linux headers same as kernel, a 6.1 LTS series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.204" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.24" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/pc/linux.config" BR2_LINUX_KERNEL_INSTALL_TARGET=y BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y +BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y # Firmware BR2_PACKAGE_LINUX_FIRMWARE=y diff --git a/configs/pine64_pinecube_defconfig b/configs/pine64_pinecube_defconfig new file mode 100644 index 000000000000..5cdaf59fae38 --- /dev/null +++ b/configs/pine64_pinecube_defconfig @@ -0,0 +1,45 @@ +# Target options +BR2_arm=y +BR2_cortex_a7=y +BR2_ARM_FPU_VFPV4=y + +# Toolchain options +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y + +# System configuration +BR2_TARGET_GENERIC_HOSTNAME="pinecube" +BR2_TARGET_GENERIC_ISSUE="Welcome to Pine64 Pinecube" +BR2_SYSTEM_DHCP="eth0" +BR2_ROOTFS_POST_BUILD_SCRIPT="board/pine64/pinecube/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/pine64/pinecube/genimage.cfg" + +# Kernel +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.60" +BR2_LINUX_KERNEL_DEFCONFIG="sunxi" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-s3-pinecube" +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y + +# Filesystem +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y + +# Bootloader +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.10" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="pinecube" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_SPL=y +BR2_TARGET_UBOOT_SPL_NAME="u-boot-sunxi-with-spl.bin" + +# Required host utilities for building an SDCard image +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y diff --git a/configs/qemu_aarch64_ebbr_defconfig b/configs/qemu_aarch64_ebbr_defconfig index d293ad0e6083..7807814aff43 100644 --- a/configs/qemu_aarch64_ebbr_defconfig +++ b/configs/qemu_aarch64_ebbr_defconfig @@ -6,12 +6,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh board/qemu/aarch64-ebbr/p BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG) -c board/qemu/aarch64-ebbr/genimage.cfg" # Linux headers -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_0=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_4=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.0.6" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.4.3" BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y @@ -27,7 +27,7 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="200M" # Firmware and bootloader BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.7" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.9" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="qemu" BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE=y @@ -39,9 +39,9 @@ BR2_TARGET_OPTEE_OS_PLATFORM="vexpress-qemu_armv8a" BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.10" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.07.02" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="qemu_arm64" -BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="board/qemu/aarch64-ebbr/u-boot.config" +BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="board/qemu/aarch64-ebbr/u-boot.fragment" BR2_TARGET_UBOOT_NEEDS_OPENSSL=y # Host tools diff --git a/configs/qemu_aarch64_sbsa_defconfig b/configs/qemu_aarch64_sbsa_defconfig index 609444e787f5..5acfaea77740 100644 --- a/configs/qemu_aarch64_sbsa_defconfig +++ b/configs/qemu_aarch64_sbsa_defconfig @@ -17,12 +17,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh board/qemu/aarch64-sbsa/a BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG) -c board/qemu/aarch64-sbsa/genimage.cfg" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y diff --git a/configs/qemu_aarch64_virt_defconfig b/configs/qemu_aarch64_virt_defconfig index 03df0ad9e209..116706030835 100644 --- a/configs/qemu_aarch64_virt_defconfig +++ b/configs/qemu_aarch64_virt_defconfig @@ -15,12 +15,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config" BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y diff --git a/configs/qemu_arm_ebbr_defconfig b/configs/qemu_arm_ebbr_defconfig index f3e2d42a54b5..cfeea623fff6 100644 --- a/configs/qemu_arm_ebbr_defconfig +++ b/configs/qemu_arm_ebbr_defconfig @@ -7,12 +7,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh board/qemu/arm-ebbr/post- BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG) -c board/qemu/arm-ebbr/genimage.cfg" # Linux headers -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_0=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_4=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.0.9" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.4.3" BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/arm-ebbr/linux.fragment" @@ -28,7 +28,7 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="200M" # Firmware and bootloader BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.7" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.9" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="qemu" BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE=y @@ -42,7 +42,7 @@ BR2_TARGET_OPTEE_OS_PLATFORM="vexpress-qemu_virt" BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.10" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.07.02" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="qemu_arm" BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="board/qemu/arm-ebbr/u-boot.fragment" BR2_TARGET_UBOOT_NEEDS_OPENSSL=y diff --git a/configs/qemu_arm_versatile_defconfig b/configs/qemu_arm_versatile_defconfig index 4f43273a8211..7c93ae3e7ec3 100644 --- a/configs/qemu_arm_versatile_defconfig +++ b/configs/qemu_arm_versatile_defconfig @@ -15,12 +15,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_DEFCONFIG="versatile" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/arm-versatile/linux.fragment" BR2_LINUX_KERNEL_DTS_SUPPORT=y diff --git a/configs/qemu_arm_vexpress_defconfig b/configs/qemu_arm_vexpress_defconfig index 2c813456f401..ccbcc8ea4efb 100644 --- a/configs/qemu_arm_vexpress_defconfig +++ b/configs/qemu_arm_vexpress_defconfig @@ -20,12 +20,12 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" BR2_TARGET_ROOTFS_EXT2_SIZE="64M" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_DEFCONFIG="vexpress" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9" diff --git a/configs/qemu_arm_vexpress_tz_defconfig b/configs/qemu_arm_vexpress_tz_defconfig index 576c44115490..11a5c9817485 100644 --- a/configs/qemu_arm_vexpress_tz_defconfig +++ b/configs/qemu_arm_vexpress_tz_defconfig @@ -17,12 +17,12 @@ BR2_TARGET_ROOTFS_CPIO_UIMAGE=y # BR2_TARGET_ROOTFS_TAR is not set # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_DEFCONFIG="vexpress" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/arm-vexpress-tz/linux.fragment" @@ -40,7 +40,6 @@ BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="BL32_RAM_LOCATION=tdram" BR2_TARGET_OPTEE_OS=y BR2_TARGET_OPTEE_OS_NEEDS_DTC=y BR2_TARGET_OPTEE_OS_PLATFORM="vexpress-qemu_virt" -BR2_PACKAGE_OPTEE_BENCHMARK=y BR2_PACKAGE_OPTEE_EXAMPLES=y BR2_PACKAGE_OPTEE_TEST=y diff --git a/configs/qemu_m68k_mcf5208_defconfig b/configs/qemu_m68k_mcf5208_defconfig index 0490b9e29e85..e35f3546fed4 100644 --- a/configs/qemu_m68k_mcf5208_defconfig +++ b/configs/qemu_m68k_mcf5208_defconfig @@ -14,14 +14,15 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/m68k-mcf5208/linux.config" +BR2_LINUX_KERNEL_PATCH="board/qemu/m68k-mcf5208/0001-m68k-Fix-invalid-.section-syntax.patch" BR2_LINUX_KERNEL_VMLINUX=y # Serial port config diff --git a/configs/qemu_m68k_q800_defconfig b/configs/qemu_m68k_q800_defconfig index 30d8982db3f9..a3a09ef775ae 100644 --- a/configs/qemu_m68k_q800_defconfig +++ b/configs/qemu_m68k_q800_defconfig @@ -14,14 +14,15 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/m68k-q800/linux.config" +BR2_LINUX_KERNEL_PATCH="board/qemu/m68k-q800/0001-m68k-Fix-invalid-.section-syntax.patch" BR2_LINUX_KERNEL_VMLINUX=y # Serial port config diff --git a/configs/qemu_microblazebe_mmu_defconfig b/configs/qemu_microblazebe_mmu_defconfig index 7bd2ae53b82c..e02b8dae2f7d 100644 --- a/configs/qemu_microblazebe_mmu_defconfig +++ b/configs/qemu_microblazebe_mmu_defconfig @@ -15,12 +15,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/microblazebe-mmu/linux.config" BR2_LINUX_KERNEL_LINUX_BIN=y diff --git a/configs/qemu_microblazeel_mmu_defconfig b/configs/qemu_microblazeel_mmu_defconfig index cd8c5a3cb29d..146bbb67de35 100644 --- a/configs/qemu_microblazeel_mmu_defconfig +++ b/configs/qemu_microblazeel_mmu_defconfig @@ -15,12 +15,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/microblazeel-mmu/linux.config" BR2_LINUX_KERNEL_LINUX_BIN=y diff --git a/configs/qemu_mips32r2_malta_defconfig b/configs/qemu_mips32r2_malta_defconfig index 49d84c308b50..1fdc58899840 100644 --- a/configs/qemu_mips32r2_malta_defconfig +++ b/configs/qemu_mips32r2_malta_defconfig @@ -14,12 +14,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/mips32r2-malta/linux.config" BR2_LINUX_KERNEL_VMLINUX=y diff --git a/configs/qemu_mips32r2el_malta_defconfig b/configs/qemu_mips32r2el_malta_defconfig index 5363018c47ca..35d071010db0 100644 --- a/configs/qemu_mips32r2el_malta_defconfig +++ b/configs/qemu_mips32r2el_malta_defconfig @@ -14,12 +14,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/mips32r2el-malta/linux.config" BR2_LINUX_KERNEL_VMLINUX=y diff --git a/configs/qemu_mips32r6_malta_defconfig b/configs/qemu_mips32r6_malta_defconfig index f77feb9b6d4b..a57347d2a680 100644 --- a/configs/qemu_mips32r6_malta_defconfig +++ b/configs/qemu_mips32r6_malta_defconfig @@ -14,12 +14,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/mips32r6-malta/linux.config" BR2_LINUX_KERNEL_VMLINUX=y diff --git a/configs/qemu_mips32r6el_malta_defconfig b/configs/qemu_mips32r6el_malta_defconfig index 575034441a6d..9fb82a76d2ef 100644 --- a/configs/qemu_mips32r6el_malta_defconfig +++ b/configs/qemu_mips32r6el_malta_defconfig @@ -14,12 +14,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/mips32r6el-malta/linux.config" BR2_LINUX_KERNEL_VMLINUX=y diff --git a/configs/qemu_mips64_malta_defconfig b/configs/qemu_mips64_malta_defconfig index e9438fda1e11..f314b123a8eb 100644 --- a/configs/qemu_mips64_malta_defconfig +++ b/configs/qemu_mips64_malta_defconfig @@ -14,12 +14,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/mips64-malta/linux.config" BR2_LINUX_KERNEL_VMLINUX=y diff --git a/configs/qemu_mips64el_malta_defconfig b/configs/qemu_mips64el_malta_defconfig index 4b1c8e22af7e..672c416a091c 100644 --- a/configs/qemu_mips64el_malta_defconfig +++ b/configs/qemu_mips64el_malta_defconfig @@ -14,12 +14,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/mips64el-malta/linux.config" BR2_LINUX_KERNEL_VMLINUX=y diff --git a/configs/qemu_mips64r6_malta_defconfig b/configs/qemu_mips64r6_malta_defconfig index 87ef7902af8f..15dba14cc612 100644 --- a/configs/qemu_mips64r6_malta_defconfig +++ b/configs/qemu_mips64r6_malta_defconfig @@ -15,12 +15,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/mips64r6-malta/linux.config" BR2_LINUX_KERNEL_VMLINUX=y diff --git a/configs/qemu_mips64r6el_malta_defconfig b/configs/qemu_mips64r6el_malta_defconfig index 5774207f65d7..39b9c73bcd90 100644 --- a/configs/qemu_mips64r6el_malta_defconfig +++ b/configs/qemu_mips64r6el_malta_defconfig @@ -15,12 +15,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/mips64r6el-malta/linux.config" BR2_LINUX_KERNEL_VMLINUX=y diff --git a/configs/qemu_nios2_10m50_defconfig b/configs/qemu_nios2_10m50_defconfig index 4b9c53e8debe..698ff68e5eb7 100644 --- a/configs/qemu_nios2_10m50_defconfig +++ b/configs/qemu_nios2_10m50_defconfig @@ -1,7 +1,7 @@ BR2_nios2=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_DEFCONFIG="10m50" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/nios2-10m50/linux.fragment" BR2_TARGET_ROOTFS_INITRAMFS=y @@ -11,7 +11,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel needs mkimage BR2_PACKAGE_HOST_UBOOT_TOOLS=y diff --git a/configs/qemu_or1k_defconfig b/configs/qemu_or1k_defconfig index b3d9d7915672..4f1030b35f13 100644 --- a/configs/qemu_or1k_defconfig +++ b/configs/qemu_or1k_defconfig @@ -1,6 +1,9 @@ # Architecture BR2_or1k=y +# System +BR2_SYSTEM_DHCP="eth0" + # Filesystem # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_ROOTFS_INITRAMFS=y @@ -10,12 +13,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/or1k/linux.config" diff --git a/configs/qemu_ppc64_e5500_defconfig b/configs/qemu_ppc64_e5500_defconfig index 6ad03c4c871b..8e68fae3c25b 100644 --- a/configs/qemu_ppc64_e5500_defconfig +++ b/configs/qemu_ppc64_e5500_defconfig @@ -3,7 +3,6 @@ BR2_powerpc64=y BR2_powerpc_e5500=y # System -BR2_BINUTILS_VERSION_2_38_X=y BR2_SYSTEM_DHCP="eth0" BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" @@ -12,12 +11,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as the kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_17=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.17.7" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_DEFCONFIG="corenet64_smp" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/ppc64-e5500/linux.fragment" BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y diff --git a/configs/qemu_ppc64_pseries_defconfig b/configs/qemu_ppc64_pseries_defconfig index 50844dc93b02..4bc9534166ad 100644 --- a/configs/qemu_ppc64_pseries_defconfig +++ b/configs/qemu_ppc64_pseries_defconfig @@ -3,7 +3,6 @@ BR2_powerpc64=y BR2_powerpc_power7=y # System -BR2_BINUTILS_VERSION_2_38_X=y BR2_SYSTEM_DHCP="eth0" BR2_TARGET_GENERIC_GETTY_PORT="hvc0" @@ -16,12 +15,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_17=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.17.7" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_DEFCONFIG="pseries" BR2_LINUX_KERNEL_VMLINUX=y diff --git a/configs/qemu_ppc64le_powernv8_defconfig b/configs/qemu_ppc64le_powernv8_defconfig index f6a5c3d409f3..4975a90bc6e3 100644 --- a/configs/qemu_ppc64le_powernv8_defconfig +++ b/configs/qemu_ppc64le_powernv8_defconfig @@ -3,7 +3,6 @@ BR2_powerpc64le=y BR2_powerpc_power8=y # System -BR2_BINUTILS_VERSION_2_38_X=y BR2_TARGET_GENERIC_GETTY_PORT="hvc0" BR2_SYSTEM_DHCP="eth0" @@ -16,12 +15,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_17=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.17.7" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_DEFCONFIG="powernv" BR2_LINUX_KERNEL_VMLINUX=y diff --git a/configs/qemu_ppc64le_pseries_defconfig b/configs/qemu_ppc64le_pseries_defconfig index 7ce5a9d31032..1cca03053b3a 100644 --- a/configs/qemu_ppc64le_pseries_defconfig +++ b/configs/qemu_ppc64le_pseries_defconfig @@ -3,7 +3,6 @@ BR2_powerpc64le=y BR2_powerpc_power8=y # System -BR2_BINUTILS_VERSION_2_38_X=y BR2_TARGET_GENERIC_GETTY_PORT="hvc0" BR2_SYSTEM_DHCP="eth0" @@ -16,12 +15,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_17=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.17.7" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_DEFCONFIG="pseries_le" BR2_LINUX_KERNEL_VMLINUX=y diff --git a/configs/qemu_ppc_bamboo_defconfig b/configs/qemu_ppc_bamboo_defconfig index f4cc5589e7b4..284982cf2c08 100644 --- a/configs/qemu_ppc_bamboo_defconfig +++ b/configs/qemu_ppc_bamboo_defconfig @@ -14,12 +14,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_17=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.17.7" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_DEFCONFIG="44x/bamboo" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/ppc-bamboo/linux.fragment" BR2_LINUX_KERNEL_VMLINUX=y diff --git a/configs/qemu_ppc_e500mc_defconfig b/configs/qemu_ppc_e500mc_defconfig index 0a1877c44b42..e50484f5a3cc 100644 --- a/configs/qemu_ppc_e500mc_defconfig +++ b/configs/qemu_ppc_e500mc_defconfig @@ -11,12 +11,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as the kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_17=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.17.7" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_DEFCONFIG="corenet32_smp" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/ppc-e500mc/linux.fragment" BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y diff --git a/configs/qemu_ppc_g3beige_defconfig b/configs/qemu_ppc_g3beige_defconfig index 1c11bcf77d03..6c14a1ca9027 100644 --- a/configs/qemu_ppc_g3beige_defconfig +++ b/configs/qemu_ppc_g3beige_defconfig @@ -14,12 +14,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_17=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.17.7" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/ppc-g3beige/linux.config" BR2_LINUX_KERNEL_VMLINUX=y diff --git a/configs/qemu_ppc_mac99_defconfig b/configs/qemu_ppc_mac99_defconfig index 2331041c2a88..33b9ec0d63f7 100644 --- a/configs/qemu_ppc_mac99_defconfig +++ b/configs/qemu_ppc_mac99_defconfig @@ -6,12 +6,12 @@ BR2_powerpc_7400=y BR2_SYSTEM_DHCP="eth0" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_17=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.17.7" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_DEFCONFIG="pmac32" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/ppc-mac99/linux.fragment" BR2_LINUX_KERNEL_VMLINUX=y diff --git a/configs/qemu_ppc_mpc8544ds_defconfig b/configs/qemu_ppc_mpc8544ds_defconfig index b9a0812d5254..efbc5fc81dda 100644 --- a/configs/qemu_ppc_mpc8544ds_defconfig +++ b/configs/qemu_ppc_mpc8544ds_defconfig @@ -3,7 +3,6 @@ BR2_powerpc=y BR2_powerpc_8548=y # System -BR2_GLOBAL_PATCH_DIR="board/qemu/ppc-mpc8544ds/patches" BR2_SYSTEM_DHCP="eth0" # Filesystem @@ -15,12 +14,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_17=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.17.7" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/ppc-mpc8544ds/linux.config" BR2_LINUX_KERNEL_VMLINUX=y diff --git a/configs/qemu_riscv32_virt_defconfig b/configs/qemu_riscv32_virt_defconfig index f354e303e5ce..74a67400ea5f 100644 --- a/configs/qemu_riscv32_virt_defconfig +++ b/configs/qemu_riscv32_virt_defconfig @@ -14,12 +14,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.43" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_DEFCONFIG="rv32" BR2_LINUX_KERNEL_IMAGE=y diff --git a/configs/qemu_riscv64_nommu_virt_defconfig b/configs/qemu_riscv64_nommu_virt_defconfig index ee70beb20888..2a0aea01d703 100644 --- a/configs/qemu_riscv64_nommu_virt_defconfig +++ b/configs/qemu_riscv64_nommu_virt_defconfig @@ -3,8 +3,8 @@ BR2_riscv=y BR2_RISCV_64=y # BR2_RISCV_USE_MMU is not set -# Linux headers same as kernel, a 5.19 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_19=y +# Linux headers same as kernel +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Busybox with hush BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox-minimal.config" @@ -22,7 +22,7 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.19" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_DEFCONFIG="nommu_virt" BR2_LINUX_KERNEL_IMAGE=y diff --git a/configs/qemu_riscv64_virt_defconfig b/configs/qemu_riscv64_virt_defconfig index b3174a152c10..52ad87fa7c46 100644 --- a/configs/qemu_riscv64_virt_defconfig +++ b/configs/qemu_riscv64_virt_defconfig @@ -14,12 +14,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.43" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y BR2_LINUX_KERNEL_IMAGE=y diff --git a/configs/qemu_s390x_defconfig b/configs/qemu_s390x_defconfig index 6bbcca0896de..39dae4be2a75 100644 --- a/configs/qemu_s390x_defconfig +++ b/configs/qemu_s390x_defconfig @@ -9,6 +9,7 @@ BR2_SYSTEM_DHCP="eth0" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_SIZE="120M" # BR2_TARGET_ROOTFS_TAR is not set # Linux headers same as kernel @@ -17,7 +18,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.4" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y diff --git a/configs/qemu_sh4_r2d_defconfig b/configs/qemu_sh4_r2d_defconfig index 0f12b7dfe9c1..038a9763c3b5 100644 --- a/configs/qemu_sh4_r2d_defconfig +++ b/configs/qemu_sh4_r2d_defconfig @@ -15,12 +15,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Linux kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/sh4-r2d/linux.config" BR2_LINUX_KERNEL_ZIMAGE=y diff --git a/configs/qemu_sh4eb_r2d_defconfig b/configs/qemu_sh4eb_r2d_defconfig index d5ee371e79f1..a8988d44462d 100644 --- a/configs/qemu_sh4eb_r2d_defconfig +++ b/configs/qemu_sh4eb_r2d_defconfig @@ -14,12 +14,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Linux kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/sh4eb-r2d/linux.config" BR2_LINUX_KERNEL_ZIMAGE=y diff --git a/configs/qemu_sparc64_sun4u_defconfig b/configs/qemu_sparc64_sun4u_defconfig index 485b497e71a8..8a6115541132 100644 --- a/configs/qemu_sparc64_sun4u_defconfig +++ b/configs/qemu_sparc64_sun4u_defconfig @@ -14,12 +14,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Linux kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/sparc64-sun4u/linux.config" diff --git a/configs/qemu_sparc_ss10_defconfig b/configs/qemu_sparc_ss10_defconfig deleted file mode 100644 index 2ba04c08642b..000000000000 --- a/configs/qemu_sparc_ss10_defconfig +++ /dev/null @@ -1,28 +0,0 @@ -# Architecture -BR2_sparc=y -BR2_sparc_v8=y - -# System -BR2_SYSTEM_DHCP="eth0" - -# Filesystem -BR2_TARGET_ROOTFS_EXT2=y -# BR2_TARGET_ROOTFS_TAR is not set - -# Image -BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" -BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" - -# Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y - -# Linux kernel -BR2_LINUX_KERNEL=y -BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" -BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y -BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/sparc-ss10/linux.config" - -# host-qemu for gitlab testing -BR2_PACKAGE_HOST_QEMU=y -BR2_PACKAGE_HOST_QEMU_SYSTEM_MODE=y diff --git a/configs/qemu_x86_64_defconfig b/configs/qemu_x86_64_defconfig index cc505a85401d..9e99d9d2b251 100644 --- a/configs/qemu_x86_64_defconfig +++ b/configs/qemu_x86_64_defconfig @@ -16,12 +16,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/x86_64/linux.config" BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y diff --git a/configs/qemu_x86_defconfig b/configs/qemu_x86_defconfig index 34b7e2d2926d..5c6bebd3e3c0 100644 --- a/configs/qemu_x86_defconfig +++ b/configs/qemu_x86_defconfig @@ -17,12 +17,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/x86/linux.config" diff --git a/configs/qemu_xtensa_lx60_defconfig b/configs/qemu_xtensa_lx60_defconfig index cb781060918d..8dcdced01be4 100644 --- a/configs/qemu_xtensa_lx60_defconfig +++ b/configs/qemu_xtensa_lx60_defconfig @@ -16,12 +16,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/xtensa-lx60/linux.config" BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y diff --git a/configs/qemu_xtensa_lx60_nommu_defconfig b/configs/qemu_xtensa_lx60_nommu_defconfig index 4be1b66edc54..c3224576f76b 100644 --- a/configs/qemu_xtensa_lx60_nommu_defconfig +++ b/configs/qemu_xtensa_lx60_nommu_defconfig @@ -20,12 +20,12 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_DEFCONFIG)" # Linux headers same as kernel -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.18" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/xtensa-lx60/linux-nommu.config" BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y diff --git a/configs/roc_pc_rk3399_defconfig b/configs/roc_pc_rk3399_defconfig new file mode 100644 index 000000000000..132375268374 --- /dev/null +++ b/configs/roc_pc_rk3399_defconfig @@ -0,0 +1,45 @@ +BR2_aarch64=y +BR2_cortex_a72_a53=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y +BR2_TARGET_GENERIC_HOSTNAME="roc-rk3399-pc" +BR2_TARGET_GENERIC_ISSUE="Welcome to ROC-RK3399-PC!" +BR2_ROOTFS_POST_BUILD_SCRIPT="board/firefly/roc-rk3399-pc/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/firefly/roc-rk3399-pc/genimage.cfg" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.61" +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="rockchip/rk3399-roc-pc" +BR2_LINUX_KERNEL_INSTALL_TARGET=y +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_ROOTFS_EXT2_SIZE="130M" +BR2_TARGET_ROOTFS_EXT2_MKFS_OPTIONS="-O 64bit" +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="v2.9" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="rk3399" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_IMAGES="" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_NEEDS_ARM32_TOOLCHAIN=y +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.10" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="roc-pc-rk3399" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_PYELFTOOLS=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y +BR2_TARGET_UBOOT_NEEDS_ATF_BL31_ELF=y +BR2_TARGET_UBOOT_FORMAT_CUSTOM=y +BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot.itb" +BR2_TARGET_UBOOT_SPL=y +BR2_TARGET_UBOOT_SPL_NAME="idbloader.img" +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y diff --git a/configs/rock5b_defconfig b/configs/rock5b_defconfig new file mode 100644 index 000000000000..eed656ef5f56 --- /dev/null +++ b/configs/rock5b_defconfig @@ -0,0 +1,41 @@ +BR2_aarch64=y +BR2_cortex_a76_a55=y +BR2_KERNEL_HEADERS_5_10=y +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/radxa/rock5b/post-image.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="" +BR2_TARGET_GENERIC_HOSTNAME="rock5b" +BR2_TARGET_GENERIC_ISSUE="Welcome to the rock5b board" +BR2_GLOBAL_PATCH_DIR="board/radxa/rock5b/patches" +BR2_SYSTEM_DHCP="eth0" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_GIT=y +BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/radxa/kernel.git" +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="52f51a2b5ba178f331af62260d2da86d7472c14b" +BR2_LINUX_KERNEL_DEFCONFIG="rockchip_linux" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="rockchip/rk3588-rock-5b" +BR2_LINUX_KERNEL_DTB_OVERLAY_SUPPORT=y +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/radxa/rock5b/linux.fragment" +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_ROOTFS_EXT2_SIZE="250M" +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.07" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="rock5b-rk3588" +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_PYELFTOOLS=y +BR2_TARGET_UBOOT_NEEDS_ROCKCHIP_RKBIN=y +BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SUPPORT=y +BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y +BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/radxa/rock5b/boot.cmd" +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_DTC=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y +BR2_PACKAGE_HOST_UBOOT_TOOLS=y +BR2_PACKAGE_ROCKCHIP_RKBIN=y +BR2_PACKAGE_ROCKCHIP_RKBIN_TPL_FILENAME="bin/rk35/rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.12.bin" +BR2_PACKAGE_ROCKCHIP_RKBIN_BL31_FILENAME="bin/rk35/rk3588_bl31_v1.40.elf" diff --git a/configs/rockpro64_defconfig b/configs/rockpro64_defconfig index d39640f855bc..472b9aded20a 100644 --- a/configs/rockpro64_defconfig +++ b/configs/rockpro64_defconfig @@ -2,13 +2,13 @@ BR2_aarch64=y BR2_cortex_a72_a53=y -# Linux headers same as kernel, a 5.8 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_8=y +# Linux headers same as kernel, a 6.5 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_5=y # Firmware BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.7" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.9.0" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="rk3399" BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_NEEDS_ARM32_TOOLCHAIN=y @@ -18,10 +18,13 @@ BR2_TARGET_ARM_TRUSTED_FIRMWARE_IMAGES="" BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2020.07" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.07" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="rockpro64-rk3399" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_PYTHON3=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_PYELFTOOLS=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y BR2_TARGET_UBOOT_NEEDS_ATF_BL31_ELF=y BR2_TARGET_UBOOT_FORMAT_CUSTOM=y @@ -32,7 +35,7 @@ BR2_TARGET_UBOOT_SPL_NAME="idbloader.img" # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.8.2" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.5.7" BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="rockchip/rk3399-rockpro64" @@ -43,6 +46,7 @@ BR2_TARGET_GENERIC_HOSTNAME="rockpro64" BR2_TARGET_GENERIC_ISSUE="Welcome to ROCKPRO64" BR2_TARGET_ROOTFS_EXT2=y BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_ROOTFS_EXT2_SIZE="120M" BR2_PACKAGE_HOST_DOSFSTOOLS=y BR2_PACKAGE_HOST_GENIMAGE=y BR2_PACKAGE_HOST_MTOOLS=y diff --git a/configs/sipeed_licheepi_nano_defconfig b/configs/sipeed_licheepi_nano_defconfig new file mode 100644 index 000000000000..8be26165d96d --- /dev/null +++ b/configs/sipeed_licheepi_nano_defconfig @@ -0,0 +1,45 @@ +# Target options +BR2_arm=y + +# System configuration +BR2_TARGET_GENERIC_HOSTNAME="licheepi-nano" +BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the LicheePi Nano" +BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" +BR2_TARGET_GENERIC_GETTY_BAUDRATE_115200=y +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/sipeed/licheepi_nano/genimage.cfg" + +# Kernel +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.5.9" +BR2_LINUX_KERNEL_DEFCONFIG="sunxi" +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/sipeed/licheepi_nano/linux.fragment" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="allwinner/suniv-f1c100s-licheepi-nano" + +# Filesystem images +BR2_TARGET_ROOTFS_JFFS2=y +BR2_TARGET_ROOTFS_JFFS2_FLASH_64=y +BR2_TARGET_ROOTFS_JFFS2_NOCLEANMARKER=y +BR2_TARGET_ROOTFS_JFFS2_PAD=y + +# Bootloaders +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.04" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="licheepi_nano" +BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="board/sipeed/licheepi_nano/uboot.fragment" +BR2_TARGET_UBOOT_SPL=y +BR2_TARGET_UBOOT_SPL_NAME="u-boot-sunxi-with-spl.bin" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y + +# Required host utilities +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_E2FSPROGS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y +BR2_PACKAGE_HOST_SUNXI_TOOLS=y diff --git a/configs/sipeed_licheepi_zero_defconfig b/configs/sipeed_licheepi_zero_defconfig new file mode 100644 index 000000000000..1fa76923c881 --- /dev/null +++ b/configs/sipeed_licheepi_zero_defconfig @@ -0,0 +1,53 @@ +# Target options +BR2_arm=y +BR2_cortex_a7=y +BR2_ARM_FPU_VFPV4=y + +# Toolchain +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_3=y + +# System configuration +BR2_TARGET_GENERIC_HOSTNAME="licheepi-zero" +BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the LicheePi Zero" +BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" +BR2_TARGET_GENERIC_GETTY_BAUDRATE_115200=y +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/sipeed/licheepi_zero/genimage.cfg" + +# Kernel +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.3.5" +BR2_LINUX_KERNEL_DEFCONFIG="sunxi" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-v3s-licheepi-zero sun8i-v3s-licheepi-zero-dock" + +BR2_PACKAGE_LINUX_FIRMWARE=y +BR2_PACKAGE_LINUX_FIRMWARE_RTL_87XX=y + +BR2_PACKAGE_WPA_SUPPLICANT=y +BR2_PACKAGE_WPA_SUPPLICANT_AUTOSCAN=y + +# Filesystem images +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y + +# Bootloaders +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.01" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="LicheePi_Zero" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_FORMAT_CUSTOM=y +BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-sunxi-with-spl.bin" +BR2_PACKAGE_HOST_UBOOT_TOOLS=y +BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y +BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/sipeed/licheepi_zero/boot.cmd" + +# Required host utilities for building an SDCard image +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y diff --git a/configs/sipeed_maix_bit_defconfig b/configs/sipeed_maix_bit_defconfig index d73ba0266aba..03ae57e1b7fd 100644 --- a/configs/sipeed_maix_bit_defconfig +++ b/configs/sipeed_maix_bit_defconfig @@ -2,11 +2,11 @@ BR2_riscv=y BR2_RISCV_64=y BR2_riscv_custom=y -BR2_RISCV_ISA_CUSTOM_RVM=y -BR2_RISCV_ISA_CUSTOM_RVA=y -BR2_RISCV_ISA_CUSTOM_RVF=y -BR2_RISCV_ISA_CUSTOM_RVD=y -BR2_RISCV_ISA_CUSTOM_RVC=y +BR2_RISCV_ISA_RVM=y +BR2_RISCV_ISA_RVA=y +BR2_RISCV_ISA_RVF=y +BR2_RISCV_ISA_RVD=y +BR2_RISCV_ISA_RVC=y # BR2_RISCV_USE_MMU is not set BR2_RISCV_ABI_LP64D=y diff --git a/configs/sipeed_maix_bit_sdcard_defconfig b/configs/sipeed_maix_bit_sdcard_defconfig index 34769eeca847..720d2169205a 100644 --- a/configs/sipeed_maix_bit_sdcard_defconfig +++ b/configs/sipeed_maix_bit_sdcard_defconfig @@ -2,11 +2,11 @@ BR2_riscv=y BR2_RISCV_64=y BR2_riscv_custom=y -BR2_RISCV_ISA_CUSTOM_RVM=y -BR2_RISCV_ISA_CUSTOM_RVA=y -BR2_RISCV_ISA_CUSTOM_RVF=y -BR2_RISCV_ISA_CUSTOM_RVD=y -BR2_RISCV_ISA_CUSTOM_RVC=y +BR2_RISCV_ISA_RVM=y +BR2_RISCV_ISA_RVA=y +BR2_RISCV_ISA_RVF=y +BR2_RISCV_ISA_RVD=y +BR2_RISCV_ISA_RVC=y # BR2_RISCV_USE_MMU is not set BR2_RISCV_ABI_LP64D=y @@ -17,6 +17,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_19=y BR2_BINFMT_FLAT=y BR2_BINFMT_FLAT_ONE=y # BR2_TARGET_ENABLE_ROOT_LOGIN is not set +BR2_GLOBAL_PATCH_DIR="board/canaan/k210-soc/patches" # Kernel BR2_LINUX_KERNEL=y diff --git a/configs/sipeed_maix_dock_defconfig b/configs/sipeed_maix_dock_defconfig index ccb563310eb8..045967f5899b 100644 --- a/configs/sipeed_maix_dock_defconfig +++ b/configs/sipeed_maix_dock_defconfig @@ -2,11 +2,11 @@ BR2_riscv=y BR2_RISCV_64=y BR2_riscv_custom=y -BR2_RISCV_ISA_CUSTOM_RVM=y -BR2_RISCV_ISA_CUSTOM_RVA=y -BR2_RISCV_ISA_CUSTOM_RVF=y -BR2_RISCV_ISA_CUSTOM_RVD=y -BR2_RISCV_ISA_CUSTOM_RVC=y +BR2_RISCV_ISA_RVM=y +BR2_RISCV_ISA_RVA=y +BR2_RISCV_ISA_RVF=y +BR2_RISCV_ISA_RVD=y +BR2_RISCV_ISA_RVC=y # BR2_RISCV_USE_MMU is not set BR2_RISCV_ABI_LP64D=y diff --git a/configs/sipeed_maix_dock_sdcard_defconfig b/configs/sipeed_maix_dock_sdcard_defconfig index 62f6a0e0b847..eb7294d55911 100644 --- a/configs/sipeed_maix_dock_sdcard_defconfig +++ b/configs/sipeed_maix_dock_sdcard_defconfig @@ -2,11 +2,11 @@ BR2_riscv=y BR2_RISCV_64=y BR2_riscv_custom=y -BR2_RISCV_ISA_CUSTOM_RVM=y -BR2_RISCV_ISA_CUSTOM_RVA=y -BR2_RISCV_ISA_CUSTOM_RVF=y -BR2_RISCV_ISA_CUSTOM_RVD=y -BR2_RISCV_ISA_CUSTOM_RVC=y +BR2_RISCV_ISA_RVM=y +BR2_RISCV_ISA_RVA=y +BR2_RISCV_ISA_RVF=y +BR2_RISCV_ISA_RVD=y +BR2_RISCV_ISA_RVC=y # BR2_RISCV_USE_MMU is not set BR2_RISCV_ABI_LP64D=y @@ -17,6 +17,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_19=y BR2_BINFMT_FLAT=y BR2_BINFMT_FLAT_ONE=y # BR2_TARGET_ENABLE_ROOT_LOGIN is not set +BR2_GLOBAL_PATCH_DIR="board/canaan/k210-soc/patches" # Kernel BR2_LINUX_KERNEL=y diff --git a/configs/sipeed_maix_go_defconfig b/configs/sipeed_maix_go_defconfig index c3bcf98f8120..c320d19703ab 100644 --- a/configs/sipeed_maix_go_defconfig +++ b/configs/sipeed_maix_go_defconfig @@ -2,11 +2,11 @@ BR2_riscv=y BR2_RISCV_64=y BR2_riscv_custom=y -BR2_RISCV_ISA_CUSTOM_RVM=y -BR2_RISCV_ISA_CUSTOM_RVA=y -BR2_RISCV_ISA_CUSTOM_RVF=y -BR2_RISCV_ISA_CUSTOM_RVD=y -BR2_RISCV_ISA_CUSTOM_RVC=y +BR2_RISCV_ISA_RVM=y +BR2_RISCV_ISA_RVA=y +BR2_RISCV_ISA_RVF=y +BR2_RISCV_ISA_RVD=y +BR2_RISCV_ISA_RVC=y # BR2_RISCV_USE_MMU is not set BR2_RISCV_ABI_LP64D=y diff --git a/configs/sipeed_maix_go_sdcard_defconfig b/configs/sipeed_maix_go_sdcard_defconfig index 6c61e3aaafe0..d2392ba822fb 100644 --- a/configs/sipeed_maix_go_sdcard_defconfig +++ b/configs/sipeed_maix_go_sdcard_defconfig @@ -2,11 +2,11 @@ BR2_riscv=y BR2_RISCV_64=y BR2_riscv_custom=y -BR2_RISCV_ISA_CUSTOM_RVM=y -BR2_RISCV_ISA_CUSTOM_RVA=y -BR2_RISCV_ISA_CUSTOM_RVF=y -BR2_RISCV_ISA_CUSTOM_RVD=y -BR2_RISCV_ISA_CUSTOM_RVC=y +BR2_RISCV_ISA_RVM=y +BR2_RISCV_ISA_RVA=y +BR2_RISCV_ISA_RVF=y +BR2_RISCV_ISA_RVD=y +BR2_RISCV_ISA_RVC=y # BR2_RISCV_USE_MMU is not set BR2_RISCV_ABI_LP64D=y @@ -17,6 +17,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_19=y BR2_BINFMT_FLAT=y BR2_BINFMT_FLAT_ONE=y # BR2_TARGET_ENABLE_ROOT_LOGIN is not set +BR2_GLOBAL_PATCH_DIR="board/canaan/k210-soc/patches" # Kernel BR2_LINUX_KERNEL=y diff --git a/configs/sipeed_maixduino_defconfig b/configs/sipeed_maixduino_defconfig index a30596af921f..ba83dd76ee7f 100644 --- a/configs/sipeed_maixduino_defconfig +++ b/configs/sipeed_maixduino_defconfig @@ -2,11 +2,11 @@ BR2_riscv=y BR2_RISCV_64=y BR2_riscv_custom=y -BR2_RISCV_ISA_CUSTOM_RVM=y -BR2_RISCV_ISA_CUSTOM_RVA=y -BR2_RISCV_ISA_CUSTOM_RVF=y -BR2_RISCV_ISA_CUSTOM_RVD=y -BR2_RISCV_ISA_CUSTOM_RVC=y +BR2_RISCV_ISA_RVM=y +BR2_RISCV_ISA_RVA=y +BR2_RISCV_ISA_RVF=y +BR2_RISCV_ISA_RVD=y +BR2_RISCV_ISA_RVC=y # BR2_RISCV_USE_MMU is not set BR2_RISCV_ABI_LP64D=y diff --git a/configs/sipeed_maixduino_sdcard_defconfig b/configs/sipeed_maixduino_sdcard_defconfig index da8cbe45f9fe..09bc1b4ab15a 100644 --- a/configs/sipeed_maixduino_sdcard_defconfig +++ b/configs/sipeed_maixduino_sdcard_defconfig @@ -2,11 +2,11 @@ BR2_riscv=y BR2_RISCV_64=y BR2_riscv_custom=y -BR2_RISCV_ISA_CUSTOM_RVM=y -BR2_RISCV_ISA_CUSTOM_RVA=y -BR2_RISCV_ISA_CUSTOM_RVF=y -BR2_RISCV_ISA_CUSTOM_RVD=y -BR2_RISCV_ISA_CUSTOM_RVC=y +BR2_RISCV_ISA_RVM=y +BR2_RISCV_ISA_RVA=y +BR2_RISCV_ISA_RVF=y +BR2_RISCV_ISA_RVD=y +BR2_RISCV_ISA_RVC=y # BR2_RISCV_USE_MMU is not set BR2_RISCV_ABI_LP64D=y @@ -17,6 +17,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_19=y BR2_BINFMT_FLAT=y BR2_BINFMT_FLAT_ONE=y # BR2_TARGET_ENABLE_ROOT_LOGIN is not set +BR2_GLOBAL_PATCH_DIR="board/canaan/k210-soc/patches" # Kernel BR2_LINUX_KERNEL=y diff --git a/configs/snps_arc700_nsim_defconfig b/configs/snps_arc700_nsim_defconfig new file mode 100644 index 000000000000..3964924bed8f --- /dev/null +++ b/configs/snps_arc700_nsim_defconfig @@ -0,0 +1,18 @@ +# Architecture +BR2_arcle=y + +# System +BR2_TARGET_GENERIC_HOSTNAME="arc700" + +# Linux headers same as kernel, a 6.0 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_0=y + +# Kernel +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.0.8" +BR2_LINUX_KERNEL_DEFCONFIG="nsim_700" +BR2_LINUX_KERNEL_VMLINUX=y + +# Rootfs +BR2_TARGET_ROOTFS_INITRAMFS=y diff --git a/configs/spike_riscv64_defconfig b/configs/spike_riscv64_defconfig index e23f1ce32cd0..73ea566084fe 100644 --- a/configs/spike_riscv64_defconfig +++ b/configs/spike_riscv64_defconfig @@ -2,9 +2,10 @@ BR2_riscv=y BR2_RISCV_64=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.86" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.14" BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/spike/riscv64/linux.fragment" +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_OPENSBI=y diff --git a/configs/stm32f429_disco_xip_defconfig b/configs/stm32f429_disco_xip_defconfig index 872e4b6a306c..d4e000487a80 100644 --- a/configs/stm32f429_disco_xip_defconfig +++ b/configs/stm32f429_disco_xip_defconfig @@ -6,7 +6,7 @@ BR2_ENABLE_LTO=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.10" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.27" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/stmicroelectronics/stm32f429-disco/linux.config" BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y @@ -14,6 +14,8 @@ BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="xipImage" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="stm32f429-disco" BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox-minimal.config" +BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES="board/stmicroelectronics/common/stm32f4xx/busybox.fragment" +# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set BR2_TARGET_ROOTFS_INITRAMFS=y # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_AFBOOT_STM32=y diff --git a/configs/stm32f469_disco_sd_defconfig b/configs/stm32f469_disco_sd_defconfig index ea1361efc02c..8b10bc674176 100644 --- a/configs/stm32f469_disco_sd_defconfig +++ b/configs/stm32f469_disco_sd_defconfig @@ -14,10 +14,15 @@ BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="zImage" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="stm32f469-disco" BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox-minimal.config" +BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES="board/stmicroelectronics/common/stm32f4xx/busybox.fragment" +# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set BR2_TARGET_ROOTFS_EXT2=y BR2_TARGET_ROOTFS_EXT2_SIZE="32M" # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.04" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="stm32f469-discovery" BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_PACKAGE_HOST_DOSFSTOOLS=y diff --git a/configs/stm32f469_disco_xip_defconfig b/configs/stm32f469_disco_xip_defconfig index fc3b3f921396..e362a9985116 100644 --- a/configs/stm32f469_disco_xip_defconfig +++ b/configs/stm32f469_disco_xip_defconfig @@ -14,6 +14,8 @@ BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="xipImage" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="stm32f469-disco" BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox-minimal.config" +BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES="board/stmicroelectronics/common/stm32f4xx/busybox.fragment" +# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set BR2_TARGET_ROOTFS_INITRAMFS=y # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_AFBOOT_STM32=y diff --git a/configs/stm32f769_disco_sd_defconfig b/configs/stm32f769_disco_sd_defconfig new file mode 100644 index 000000000000..2ae27fb2d852 --- /dev/null +++ b/configs/stm32f769_disco_sd_defconfig @@ -0,0 +1,30 @@ +BR2_arm=y +BR2_cortex_m7=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/stm32f769-disco/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/stmicroelectronics/stm32f769-disco/genimage.cfg" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.108" +BR2_LINUX_KERNEL_DEFCONFIG="stm32" +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(LINUX_DIR)/arch/arm/configs/dram_0xc0000000.config board/stmicroelectronics/stm32f769-disco/linux-sd.fragment" +BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y +BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="zImage" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="stm32f769-disco" +BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox-minimal.config" +# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_SIZE="32M" +# BR2_TARGET_ROOTFS_TAR is not set +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.04" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="stm32f769-disco" +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y +BR2_PACKAGE_HOST_OPENOCD=y diff --git a/configs/stm32mp157a_dk1_defconfig b/configs/stm32mp157a_dk1_defconfig index a487ce989148..e764a1558d8e 100644 --- a/configs/stm32mp157a_dk1_defconfig +++ b/configs/stm32mp157a_dk1_defconfig @@ -30,16 +30,17 @@ BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.5" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="stm32mp1" -BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="STM32MP_SDMMC=1 AARCH32_SP=sp_min DTB_FILE_NAME=stm32mp157a-dk1.dtb" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="STM32MP_SDMMC=1 AARCH32_SP=sp_min DTB_FILE_NAME=stm32mp157a-dk1.dtb E=0" BR2_TARGET_ARM_TRUSTED_FIRMWARE_IMAGES="*.stm32" BR2_TARGET_ARM_TRUSTED_FIRMWARE_NEEDS_DTC=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.10" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.04" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="stm32mp15_trusted" # BR2_TARGET_UBOOT_FORMAT_BIN is not set BR2_TARGET_UBOOT_FORMAT_STM32=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=stm32mp157a-dk1" diff --git a/configs/stm32mp157c_dk2_defconfig b/configs/stm32mp157c_dk2_defconfig index f1f7baaa0806..aa0fcfa84385 100644 --- a/configs/stm32mp157c_dk2_defconfig +++ b/configs/stm32mp157c_dk2_defconfig @@ -30,16 +30,17 @@ BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.5" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="stm32mp1" -BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="STM32MP_SDMMC=1 AARCH32_SP=sp_min DTB_FILE_NAME=stm32mp157c-dk2.dtb" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="STM32MP_SDMMC=1 AARCH32_SP=sp_min DTB_FILE_NAME=stm32mp157c-dk2.dtb E=0" BR2_TARGET_ARM_TRUSTED_FIRMWARE_IMAGES="*.stm32" BR2_TARGET_ARM_TRUSTED_FIRMWARE_NEEDS_DTC=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.10" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.04" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="stm32mp15_trusted" # BR2_TARGET_UBOOT_FORMAT_BIN is not set BR2_TARGET_UBOOT_FORMAT_STM32=y +BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=stm32mp157c-dk2" diff --git a/configs/stm32mp157c_odyssey_defconfig b/configs/stm32mp157c_odyssey_defconfig index 6b699830b171..2d3600410a54 100644 --- a/configs/stm32mp157c_odyssey_defconfig +++ b/configs/stm32mp157c_odyssey_defconfig @@ -17,8 +17,10 @@ BR2_TARGET_ROOTFS_EXT2=y BR2_TARGET_ROOTFS_EXT2_4=y # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_ARM_TRUSTED_FIRMWARE=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.5" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="stm32mp1" -BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="STM32MP_SDMMC=1 AARCH32_SP=sp_min DTB_FILE_NAME=stm32mp157c-odyssey.dtb" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="STM32MP_SDMMC=1 AARCH32_SP=sp_min DTB_FILE_NAME=stm32mp157c-odyssey.dtb E=0" BR2_TARGET_ARM_TRUSTED_FIRMWARE_IMAGES="*.stm32" BR2_TARGET_ARM_TRUSTED_FIRMWARE_NEEDS_DTC=y BR2_TARGET_UBOOT=y @@ -29,6 +31,7 @@ BR2_TARGET_UBOOT_BOARD_DEFCONFIG="stm32mp15_trusted" BR2_TARGET_UBOOT_NEEDS_DTC=y # BR2_TARGET_UBOOT_FORMAT_BIN is not set BR2_TARGET_UBOOT_FORMAT_STM32=y +BR2_TARGET_UBOOT_BUILD_FORMAT_STM32_LEGACY=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=stm32mp157c-odyssey" BR2_PACKAGE_HOST_GENIMAGE=y diff --git a/configs/ti_am62x_sk_defconfig b/configs/ti_am62x_sk_defconfig new file mode 100644 index 000000000000..b98a68ff153f --- /dev/null +++ b/configs/ti_am62x_sk_defconfig @@ -0,0 +1,43 @@ +BR2_aarch64=y +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/ti/am62x-sk/genimage.cfg" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="ti/k3-am625-sk" +BR2_LINUX_KERNEL_INSTALL_TARGET=y +BR2_PACKAGE_LINUX_FIRMWARE=y +BR2_PACKAGE_LINUX_FIRMWARE_TI_WL18XX=y +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_ROOTFS_EXT2_SIZE="256M" +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.7" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="k3" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_TARGET_BOARD="lite" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE=y +BR2_TARGET_OPTEE_OS=y +BR2_TARGET_OPTEE_OS_PLATFORM="k3" +BR2_TARGET_TI_K3_IMAGE_GEN=y +BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM62X=y +BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE_GP=y +BR2_TARGET_TI_K3_R5_LOADER=y +BR2_TARGET_TI_K3_R5_LOADER_BOARD_DEFCONFIG="am62x_evm_r5" +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.10" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="am62x_evm_a53" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y +BR2_TARGET_UBOOT_NEEDS_TI_K3_DM=y +# BR2_TARGET_UBOOT_FORMAT_BIN is not set +BR2_TARGET_UBOOT_FORMAT_IMG=y +BR2_TARGET_UBOOT_SPL=y +BR2_TARGET_UBOOT_SPL_NAME="tispl.bin" +BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="TEE=$(BINARIES_DIR)/tee-pager_v2.bin" +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y diff --git a/configs/ti_am64x_sk_defconfig b/configs/ti_am64x_sk_defconfig new file mode 100644 index 000000000000..052c4400934a --- /dev/null +++ b/configs/ti_am64x_sk_defconfig @@ -0,0 +1,42 @@ +BR2_aarch64=y +BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/ti/am64x-sk/genimage.cfg" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="ti/k3-am642-sk" +BR2_LINUX_KERNEL_INSTALL_TARGET=y +BR2_PACKAGE_LINUX_FIRMWARE=y +BR2_PACKAGE_LINUX_FIRMWARE_TI_WL18XX=y +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_ROOTFS_EXT2_SIZE="120M" +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.7" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="k3" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_TARGET_BOARD="lite" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE=y +BR2_TARGET_OPTEE_OS=y +BR2_TARGET_OPTEE_OS_PLATFORM="k3" +BR2_TARGET_TI_K3_IMAGE_GEN=y +BR2_TARGET_TI_K3_IMAGE_GEN_SOC_AM64X=y +BR2_TARGET_TI_K3_IMAGE_GEN_SECTYPE_GP=y +BR2_TARGET_TI_K3_R5_LOADER=y +BR2_TARGET_TI_K3_R5_LOADER_BOARD_DEFCONFIG="am64x_evm_r5" +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_VERSION=y +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.10" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="am64x_evm_a53" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y +# BR2_TARGET_UBOOT_FORMAT_BIN is not set +BR2_TARGET_UBOOT_FORMAT_IMG=y +BR2_TARGET_UBOOT_SPL=y +BR2_TARGET_UBOOT_SPL_NAME="tispl.bin" +BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="TEE=$(BINARIES_DIR)/tee-pager_v2.bin" +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y diff --git a/configs/toradex_apalis_imx6_defconfig b/configs/toradex_apalis_imx6_defconfig index 40a2d2d520d9..e447190e0cee 100644 --- a/configs/toradex_apalis_imx6_defconfig +++ b/configs/toradex_apalis_imx6_defconfig @@ -1,6 +1,7 @@ BR2_arm=y BR2_cortex_a9=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_9=y +BR2_GLOBAL_PATCH_DIR="board/toradex/apalis-imx6/patches" BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/toradex/apalis-imx6/post-image.sh" BR2_LINUX_KERNEL=y diff --git a/configs/versal_vck190_defconfig b/configs/versal_vck190_defconfig index 2808fa522b01..e30bb35b7454 100644 --- a/configs/versal_vck190_defconfig +++ b/configs/versal_vck190_defconfig @@ -1,12 +1,13 @@ BR2_aarch64=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_cortex_a72=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/versal/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/versal/post-image.sh" -BR2_ROOTFS_POST_SCRIPT_ARGS="ttyAMA0,115200 mmcblk0p2 vck190" +BR2_ROOTFS_POST_SCRIPT_ARGS="ttyAMA0,115200 mmcblk0p2" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v5.15_LTS_2022.2)/xlnx_rebase_v5.15_LTS_2022.2.tar.gz" -BR2_LINUX_KERNEL_DEFCONFIG="xilinx_versal" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.1_LTS_2023.1)/xlnx_rebase_v6.1_LTS_2023.1.tar.gz" +BR2_LINUX_KERNEL_DEFCONFIG="xilinx" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/versal-vck190-rev1.1" BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y @@ -15,7 +16,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,arm-trusted-firmware,xlnx_rebase_v2.6_2022.2)/xlnx_rebase_v2.6_2022.2.tar.gz" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,arm-trusted-firmware,xlnx_rebase_v2.8_2023.1)/xlnx_rebase_v2.8_2023.1.tar.gz" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="versal" BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31_UBOOT=y BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y @@ -23,18 +24,19 @@ BR2_TARGET_UBOOT_NEEDS_ATF_BL31_ELF=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2022.01_2022.2)/xlnx_rebase_v2022.01_2022.2.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2023.01_2023.1)/xlnx_rebase_v2023.01_2023.1.tar.gz" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="xilinx_versal_virt" -BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="board/versal/uboot.fragment" BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=versal-vck190-rev1.1" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_GNUTLS=y BR2_TARGET_UBOOT_FORMAT_REMAKE_ELF=y BR2_TARGET_UBOOT_FORMAT_DTB=y BR2_PACKAGE_VERSAL_FIRMWARE=y -BR2_PACKAGE_VERSAL_FIRMWARE_VERSION="2022.2_br_1" +BR2_PACKAGE_VERSAL_FIRMWARE_VERSION="xilinx_v2023.1" BR2_PACKAGE_VERSAL_FIRMWARE_BOARD="vck190" BR2_PACKAGE_HOST_DOSFSTOOLS=y BR2_PACKAGE_HOST_GENIMAGE=y BR2_PACKAGE_HOST_MTOOLS=y BR2_PACKAGE_HOST_BOOTGEN=y +BR2_GLOBAL_PATCH_DIR="board/versal/patches" diff --git a/configs/visionfive2_defconfig b/configs/visionfive2_defconfig index 5b07a8efbc3a..dc086953a0f1 100644 --- a/configs/visionfive2_defconfig +++ b/configs/visionfive2_defconfig @@ -6,7 +6,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/visionfive/genimage.cfg" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,starfive-tech,linux,7b7b4eddd8d5ae55f6e0ee09b93e16e23ab4f97b)/linux-7b7b4eddd8d5ae55f6e0ee09b93e16e23ab4f97b.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,starfive-tech,linux,05533e9c31d6f0da20efc2d436a3b0f6d516ed4b)/linux-05533e9c31d6f0da20efc2d436a3b0f6d516ed4b.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="starfive_visionfive2" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="starfive/jh7110-visionfive-v2" diff --git a/configs/warp7_defconfig b/configs/warp7_defconfig index 04dfc94f7dd5..7389919396a9 100644 --- a/configs/warp7_defconfig +++ b/configs/warp7_defconfig @@ -3,8 +3,8 @@ BR2_arm=y BR2_cortex_a7=y BR2_ARM_FPU_NEON_VFPV4=y -# Linux headers same as kernel, a 5.16 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_16=y +# Linux headers same as kernel, a 6.6 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_6=y # system BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0" @@ -15,17 +15,17 @@ BR2_ROOTFS_OVERLAY="board/warp7/rootfs_overlay" # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.16.5" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6" BR2_LINUX_KERNEL_DEFCONFIG="imx_v6_v7" BR2_LINUX_KERNEL_DTS_SUPPORT=y -BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx7s-warp" +BR2_LINUX_KERNEL_INTREE_DTS_NAME="nxp/imx/imx7s-warp" BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y # U-Boot BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BOARDNAME="warp7" BR2_TARGET_UBOOT_CUSTOM_VERSION=y -BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.01" +BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.10" BR2_TARGET_UBOOT_FORMAT_DTB_IMX=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y diff --git a/configs/zynq_microzed_defconfig b/configs/zynq_microzed_defconfig index 459a3a40bc07..d598a46c3969 100644 --- a/configs/zynq_microzed_defconfig +++ b/configs/zynq_microzed_defconfig @@ -2,12 +2,12 @@ BR2_arm=y BR2_cortex_a9=y BR2_ARM_ENABLE_NEON=y BR2_ARM_ENABLE_VFP=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynq/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynq/post-image.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v5.15_LTS_2022.2)/xlnx_rebase_v5.15_LTS_2022.2.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.1_LTS_2023.2)/xlnx_rebase_v6.1_LTS_2023.2.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx_zynq" BR2_LINUX_KERNEL_UIMAGE=y BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x8000" @@ -19,11 +19,12 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2022.01_2022.2)/xlnx_rebase_v2022.01_2022.2.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2023.01_2023.2)/xlnx_rebase_v2023.01_2023.2.tar.gz" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="xilinx_zynq_virt" BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=zynq-microzed" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_GNUTLS=y BR2_TARGET_UBOOT_FORMAT_IMG=y BR2_TARGET_UBOOT_SPL=y BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin" diff --git a/configs/zynq_zc702_defconfig b/configs/zynq_zc702_defconfig new file mode 100644 index 000000000000..e85285a8321f --- /dev/null +++ b/configs/zynq_zc702_defconfig @@ -0,0 +1,33 @@ +BR2_arm=y +BR2_cortex_a9=y +BR2_ARM_ENABLE_NEON=y +BR2_ARM_ENABLE_VFP=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y +BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynq/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynq/post-image.sh" +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_TARBALL=y +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.1_LTS_2023.2)/xlnx_rebase_v6.1_LTS_2023.2.tar.gz" +BR2_LINUX_KERNEL_DEFCONFIG="xilinx_zynq" +BR2_LINUX_KERNEL_UIMAGE=y +BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x8000" +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="zynq-zc702" +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y +BR2_TARGET_ROOTFS_EXT2=y +BR2_TARGET_ROOTFS_EXT2_4=y +BR2_TARGET_UBOOT=y +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y +BR2_TARGET_UBOOT_CUSTOM_TARBALL=y +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2023.01_2023.2)/xlnx_rebase_v2023.01_2023.2.tar.gz" +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="xilinx_zynq_virt" +BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=zynq-zc702" +BR2_TARGET_UBOOT_NEEDS_DTC=y +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_GNUTLS=y +BR2_TARGET_UBOOT_FORMAT_IMG=y +BR2_TARGET_UBOOT_SPL=y +BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin" +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y diff --git a/configs/zynq_zc706_defconfig b/configs/zynq_zc706_defconfig index 3ad8cbafe39c..3489f864e1e1 100644 --- a/configs/zynq_zc706_defconfig +++ b/configs/zynq_zc706_defconfig @@ -2,12 +2,12 @@ BR2_arm=y BR2_cortex_a9=y BR2_ARM_ENABLE_NEON=y BR2_ARM_ENABLE_VFP=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynq/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynq/post-image.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v5.15_LTS_2022.2)/xlnx_rebase_v5.15_LTS_2022.2.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.1_LTS_2023.2)/xlnx_rebase_v6.1_LTS_2023.2.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx_zynq" BR2_LINUX_KERNEL_UIMAGE=y BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x8000" @@ -19,11 +19,12 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2022.01_2022.2)/xlnx_rebase_v2022.01_2022.2.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2023.01_2023.2)/xlnx_rebase_v2023.01_2023.2.tar.gz" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="xilinx_zynq_virt" BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=zynq-zc706" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_GNUTLS=y BR2_TARGET_UBOOT_FORMAT_IMG=y BR2_TARGET_UBOOT_SPL=y BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin" diff --git a/configs/zynq_zed_defconfig b/configs/zynq_zed_defconfig index a39911b757bb..a3a94687f58a 100644 --- a/configs/zynq_zed_defconfig +++ b/configs/zynq_zed_defconfig @@ -2,12 +2,12 @@ BR2_arm=y BR2_cortex_a9=y BR2_ARM_ENABLE_NEON=y BR2_ARM_ENABLE_VFP=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynq/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynq/post-image.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v5.15_LTS_2022.2)/xlnx_rebase_v5.15_LTS_2022.2.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.1_LTS_2023.2)/xlnx_rebase_v6.1_LTS_2023.2.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx_zynq" BR2_LINUX_KERNEL_UIMAGE=y BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x8000" @@ -19,11 +19,12 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2022.01_2022.2)/xlnx_rebase_v2022.01_2022.2.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2023.01_2023.2)/xlnx_rebase_v2023.01_2023.2.tar.gz" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="xilinx_zynq_virt" BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=zynq-zed" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_GNUTLS=y BR2_TARGET_UBOOT_FORMAT_IMG=y BR2_TARGET_UBOOT_SPL=y BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin" diff --git a/configs/zynqmp_kria_kv260_defconfig b/configs/zynqmp_kria_kv260_defconfig index e180d5e7e77c..78b62a9ff854 100644 --- a/configs/zynqmp_kria_kv260_defconfig +++ b/configs/zynqmp_kria_kv260_defconfig @@ -1,12 +1,12 @@ BR2_aarch64=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynqmp/post-build.sh board/zynqmp/kria/kv260/kv260.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynqmp/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="ttyPS1,115200 mmcblk1p2 ${UBOOT_DIR}" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v5.15_LTS_2022.2)/xlnx_rebase_v5.15_LTS_2022.2.tar.gz" -BR2_LINUX_KERNEL_DEFCONFIG="xilinx_zynqmp" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.1_LTS_2023.1)/xlnx_rebase_v6.1_LTS_2023.1.tar.gz" +BR2_LINUX_KERNEL_DEFCONFIG="xilinx" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/zynqmp-smk-k26-revA-sck-kv-g-revB" BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y @@ -15,27 +15,28 @@ BR2_TARGET_ROOTFS_EXT2_4=y # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,arm-trusted-firmware,xlnx_rebase_v2.6_2022.2)/xlnx_rebase_v2.6_2022.2.tar.gz" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,arm-trusted-firmware,xlnx_rebase_v2.8_2023.1)/xlnx_rebase_v2.8_2023.1.tar.gz" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="zynqmp" BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="ZYNQMP_CONSOLE=cadence1" BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31_UBOOT=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2022.01_2022.2)/xlnx_rebase_v2022.01_2022.2.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2023.01_2023.1)/xlnx_rebase_v2023.01_2023.1.tar.gz" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="xilinx_zynqmp_virt" BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="board/zynqmp/kria/uboot.fragment" BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=zynqmp-smk-k26-revA" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_GNUTLS=y BR2_TARGET_UBOOT_SPL=y BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin" BR2_TARGET_UBOOT_ZYNQMP=y -BR2_TARGET_UBOOT_ZYNQMP_PMUFW="https://github.com/Xilinx/ubuntu-firmware/raw/2022.2_br_1/kv260/kv260_pmufw.elf" +BR2_TARGET_UBOOT_ZYNQMP_PMUFW="https://github.com/Xilinx/soc-prebuilt-firmware/raw/xilinx_v2023.1/kv260-kria/pmufw.elf" BR2_TARGET_UBOOT_ZYNQMP_PM_CFG="board/zynqmp/kria/kv260/pm_cfg_obj.c" BR2_TARGET_UBOOT_FORMAT_ITB=y BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y BR2_PACKAGE_HOST_DOSFSTOOLS=y BR2_PACKAGE_HOST_GENIMAGE=y BR2_PACKAGE_HOST_MTOOLS=y -BR2_GLOBAL_PATCH_DIR="board/zynqmp/kria/patches" +BR2_GLOBAL_PATCH_DIR="board/zynqmp/patches" diff --git a/configs/zynqmp_zcu102_defconfig b/configs/zynqmp_zcu102_defconfig index 00b33261b605..18230cf89ba3 100644 --- a/configs/zynqmp_zcu102_defconfig +++ b/configs/zynqmp_zcu102_defconfig @@ -1,12 +1,12 @@ BR2_aarch64=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynqmp/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynqmp/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="ttyPS0,115200 mmcblk0p2" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v5.15_LTS_2022.2)/xlnx_rebase_v5.15_LTS_2022.2.tar.gz" -BR2_LINUX_KERNEL_DEFCONFIG="xilinx_zynqmp" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.1_LTS_2023.1)/xlnx_rebase_v6.1_LTS_2023.1.tar.gz" +BR2_LINUX_KERNEL_DEFCONFIG="xilinx" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/zynqmp-zcu102-rev1.0" BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y @@ -15,24 +15,26 @@ BR2_TARGET_ROOTFS_EXT2_4=y # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,arm-trusted-firmware,xlnx_rebase_v2.6_2022.2)/xlnx_rebase_v2.6_2022.2.tar.gz" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,arm-trusted-firmware,xlnx_rebase_v2.8_2023.1)/xlnx_rebase_v2.8_2023.1.tar.gz" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="zynqmp" BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31_UBOOT=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2022.01_2022.2)/xlnx_rebase_v2022.01_2022.2.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2023.01_2023.1)/xlnx_rebase_v2023.01_2023.1.tar.gz" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="xilinx_zynqmp_virt" BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=zynqmp-zcu102-rev1.0" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_GNUTLS=y BR2_TARGET_UBOOT_SPL=y BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin" BR2_TARGET_UBOOT_ZYNQMP=y -BR2_TARGET_UBOOT_ZYNQMP_PMUFW="https://github.com/Xilinx/ubuntu-firmware/raw/2022.2_br_1/zcu102/zcu102_pmufw.elf" +BR2_TARGET_UBOOT_ZYNQMP_PMUFW="https://github.com/Xilinx/soc-prebuilt-firmware/raw/xilinx_v2023.1/zcu102-zynqmp/pmufw.elf" BR2_TARGET_UBOOT_ZYNQMP_PM_CFG="board/zynqmp/zcu102/pm_cfg_obj.c" BR2_TARGET_UBOOT_FORMAT_ITB=y BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y BR2_PACKAGE_HOST_DOSFSTOOLS=y BR2_PACKAGE_HOST_GENIMAGE=y BR2_PACKAGE_HOST_MTOOLS=y +BR2_GLOBAL_PATCH_DIR="board/zynqmp/patches" diff --git a/configs/zynqmp_zcu106_defconfig b/configs/zynqmp_zcu106_defconfig index 88295571af97..21f41a2d8fda 100644 --- a/configs/zynqmp_zcu106_defconfig +++ b/configs/zynqmp_zcu106_defconfig @@ -1,12 +1,12 @@ BR2_aarch64=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynqmp/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynqmp/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="ttyPS0,115200 mmcblk0p2" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v5.15_LTS_2022.2)/xlnx_rebase_v5.15_LTS_2022.2.tar.gz" -BR2_LINUX_KERNEL_DEFCONFIG="xilinx_zynqmp" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.1_LTS_2023.1)/xlnx_rebase_v6.1_LTS_2023.1.tar.gz" +BR2_LINUX_KERNEL_DEFCONFIG="xilinx" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/zynqmp-zcu106-revA" BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y @@ -15,24 +15,26 @@ BR2_TARGET_ROOTFS_EXT2_4=y # BR2_TARGET_ROOTFS_TAR is not set BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y -BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,arm-trusted-firmware,xlnx_rebase_v2.6_2022.2)/xlnx_rebase_v2.6_2022.2.tar.gz" +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,arm-trusted-firmware,xlnx_rebase_v2.8_2023.1)/xlnx_rebase_v2.8_2023.1.tar.gz" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="zynqmp" BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31_UBOOT=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2022.01_2022.2)/xlnx_rebase_v2022.01_2022.2.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2023.01_2023.1)/xlnx_rebase_v2023.01_2023.1.tar.gz" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="xilinx_zynqmp_virt" BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=zynqmp-zcu106-revA" BR2_TARGET_UBOOT_NEEDS_DTC=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y +BR2_TARGET_UBOOT_NEEDS_GNUTLS=y BR2_TARGET_UBOOT_SPL=y BR2_TARGET_UBOOT_SPL_NAME="spl/boot.bin" BR2_TARGET_UBOOT_ZYNQMP=y -BR2_TARGET_UBOOT_ZYNQMP_PMUFW="https://github.com/Xilinx/ubuntu-firmware/raw/2022.2_br_1/zcu106/zcu106_pmufw.elf" +BR2_TARGET_UBOOT_ZYNQMP_PMUFW="https://github.com/Xilinx/soc-prebuilt-firmware/raw/xilinx_v2023.1/zcu106-zynqmp/pmufw.elf" BR2_TARGET_UBOOT_ZYNQMP_PM_CFG="board/zynqmp/zcu106/pm_cfg_obj.c" BR2_TARGET_UBOOT_FORMAT_ITB=y BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y BR2_PACKAGE_HOST_DOSFSTOOLS=y BR2_PACKAGE_HOST_GENIMAGE=y BR2_PACKAGE_HOST_MTOOLS=y +BR2_GLOBAL_PATCH_DIR="board/zynqmp/patches" diff --git a/docs/manual/adding-board-support.adoc b/docs/manual/adding-board-support.adoc new file mode 100644 index 000000000000..ef6dbd3c2b92 --- /dev/null +++ b/docs/manual/adding-board-support.adoc @@ -0,0 +1,73 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[adding-board-support]] +== Adding support for a particular board + +Buildroot contains basic configurations for several publicly available +hardware boards, so that users of such a board can easily build a system +that is known to work. You are welcome to add support for other boards +to Buildroot too. + +To do so, you need to create a normal Buildroot configuration that +builds a basic system for the hardware: (internal) toolchain, kernel, +bootloader, filesystem and a simple BusyBox-only userspace. No specific +package should be selected: the configuration should be as minimal as +possible, and should only build a working basic BusyBox system for the +target platform. You can of course use more complicated configurations +for your internal projects, but the Buildroot project will only +integrate basic board configurations. This is because package +selections are highly application-specific. + +Once you have a known working configuration, run +make +savedefconfig+. This will generate a minimal +defconfig+ file at the +root of the Buildroot source tree. Move this file into the +configs/+ +directory, and rename it +_defconfig+. If the configuration +is a bit more complicated, it is nice to manually reformat it and +separate it into sections, with a comment before each section. Typical +sections are _Architecture_, _Toolchain options_ (typically just linux +headers version), _Firmware_, _Bootloader_, _Kernel_, and _Filesystem_. + +Always use fixed versions or commit hashes for the different +components, not the "latest" version. For example, set ++BR2_LINUX_KERNEL_CUSTOM_VERSION=y+ and ++BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE+ to the kernel version you tested +with. + +It is recommended to use as much as possible upstream versions of the +Linux kernel and bootloaders, and to use as much as possible default +kernel and bootloader configurations. If they are incorrect for your +board, or no default exists, we encourage you to send fixes to the +corresponding upstream projects. + +However, in the mean time, you may want to store kernel or bootloader +configuration or patches specific to your target platform. To do so, +create a directory +board/+ and a subdirectory ++board//+. You can then store your patches +and configurations in these directories, and reference them from the main +Buildroot configuration. Refer to xref:customize[] for more details. + +Before submitting patches for new boards it is recommended to test it by +building it using latest gitlab-CI docker container. To do this use ++utils/docker-run+ script and inside it issue these commands: + +-------------------- + $ make _defconfig + $ make +-------------------- + +By default, Buildroot developers use the official image hosted on the +https://gitlab.com/buildroot.org/buildroot/container_registry/2395076[gitlab.com +registry] and it should be convenient for most usage. If you still want +to build your own docker image, you can base it off the official image +as the +FROM+ directive of your own _Dockerfile_: + +---- +FROM registry.gitlab.com/buildroot.org/buildroot/base:YYYYMMDD.HHMM +RUN ... +COPY ... +---- + +The current version _YYYYMMDD.HHMM_ can be found in the +.gitlab-ci.yml+ +file at the top of the Buildroot source tree; all past versions are +listed in the aforementioned registry as well. diff --git a/docs/manual/adding-board-support.txt b/docs/manual/adding-board-support.txt deleted file mode 100644 index cd90a5871fa2..000000000000 --- a/docs/manual/adding-board-support.txt +++ /dev/null @@ -1,56 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -[[adding-board-support]] -== Adding support for a particular board - -Buildroot contains basic configurations for several publicly available -hardware boards, so that users of such a board can easily build a system -that is known to work. You are welcome to add support for other boards -to Buildroot too. - -To do so, you need to create a normal Buildroot configuration that -builds a basic system for the hardware: (internal) toolchain, kernel, -bootloader, filesystem and a simple BusyBox-only userspace. No specific -package should be selected: the configuration should be as minimal as -possible, and should only build a working basic BusyBox system for the -target platform. You can of course use more complicated configurations -for your internal projects, but the Buildroot project will only -integrate basic board configurations. This is because package -selections are highly application-specific. - -Once you have a known working configuration, run +make -savedefconfig+. This will generate a minimal +defconfig+ file at the -root of the Buildroot source tree. Move this file into the +configs/+ -directory, and rename it +_defconfig+. If the configuration -is a bit more complicated, it is nice to manually reformat it and -separate it into sections, with a comment before each section. Typical -sections are _Architecture_, _Toolchain options_ (typically just linux -headers version), _Firmware_, _Bootloader_, _Kernel_, and _Filesystem_. - -Always use fixed versions or commit hashes for the different -components, not the "latest" version. For example, set -+BR2_LINUX_KERNEL_CUSTOM_VERSION=y+ and -+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE+ to the kernel version you tested -with. - -It is recommended to use as much as possible upstream versions of the -Linux kernel and bootloaders, and to use as much as possible default -kernel and bootloader configurations. If they are incorrect for your -board, or no default exists, we encourage you to send fixes to the -corresponding upstream projects. - -However, in the mean time, you may want to store kernel or bootloader -configuration or patches specific to your target platform. To do so, -create a directory +board/+ and a subdirectory -+board//+. You can then store your patches -and configurations in these directories, and reference them from the main -Buildroot configuration. Refer to xref:customize[] for more details. - -Before submitting patches for new boards it is recommended to test it by -building it using latest gitlab-CI docker container. To do this use -utils/docker-run script and inside it issue these commands: --------------------- - $ make +_defconfig+ - $ make --------------------- diff --git a/docs/manual/adding-packages-asciidoc.adoc b/docs/manual/adding-packages-asciidoc.adoc new file mode 100644 index 000000000000..d68978b1cbd8 --- /dev/null +++ b/docs/manual/adding-packages-asciidoc.adoc @@ -0,0 +1,143 @@ +// -*- mode:doc; -*- +// vim: syntax=asciidoc + +=== Infrastructure for asciidoc documents + +[[asciidoc-documents-tutorial]] + +The Buildroot manual, which you are currently reading, is entirely written +using the http://asciidoc.org/[AsciiDoc] mark-up syntax. The manual is then +rendered to many formats: + +* html +* split-html +* pdf +* epub +* text + +Although Buildroot only contains one document written in AsciiDoc, there +is, as for packages, an infrastructure for rendering documents using the +AsciiDoc syntax. + +Also as for packages, the AsciiDoc infrastructure is available from a +xref:outside-br-custom[br2-external tree]. This allows documentation for +a br2-external tree to match the Buildroot documentation, as it will be +rendered to the same formats and use the same layout and theme. + +==== +asciidoc-document+ tutorial + +Whereas package infrastructures are suffixed with +-package+, the document +infrastructures are suffixed with +-document+. So, the AsciiDoc infrastructure +is named +asciidoc-document+. + +Here is an example to render a simple AsciiDoc document. + +---- +01: ################################################################################ +02: # +03: # foo-document +04: # +05: ################################################################################ +06: +07: FOO_SOURCES = $(sort $(wildcard $(FOO_DOCDIR)/*)) +08: $(eval $(call asciidoc-document)) +---- + +On line 7, the Makefile declares what the sources of the document are. +Currently, it is expected that the document's sources are only local; +Buildroot will not attempt to download anything to render a document. +Thus, you must indicate where the sources are. Usually, the string +above is sufficient for a document with no sub-directory structure. + +On line 8, we call the +asciidoc-document+ function, which generates all +the Makefile code necessary to render the document. + +==== +asciidoc-document+ reference + +The list of variables that can be set in a +.mk+ file to give metadata +information is (assuming the document name is +foo+) : + +* +FOO_SOURCES+, mandatory, defines the source files for the document. + +* +FOO_RESOURCES+, optional, may contain a space-separated list of paths + to one or more directories containing so-called resources (like CSS or + images). By default, empty. + +* +FOO_DEPENDENCIES+, optional, the list of packages (most probably, + host-packages) that must be built before building this document. + +* +FOO_TOC_DEPTH+, +FOO_TOC_DEPTH_+, optionals, the depth of the + table of content for this document, which can be overridden for the + specified format ++ (see the list of rendered formats, above, + but in uppercase, and with dash replaced by underscore; see example, + below). By default: +1+. + +There are also additional hooks (see xref:hooks[] for general information +on hooks), that a document may set to define extra actions to be done at +various steps: + +* +FOO_POST_RSYNC_HOOKS+ to run additional commands after the sources + have been copied by Buildroot. This can for example be used to + generate part of the manual with information extracted from the + tree. As an example, Buildroot uses this hook to generate the tables + in the appendices. + +* +FOO_CHECK_DEPENDENCIES_HOOKS+ to run additional tests on required + components to generate the document. In AsciiDoc, it is possible to + call filters, that is, programs that will parse an AsciiDoc block and + render it appropriately (e.g. http://ditaa.sourceforge.net/[ditaa] or + https://pythonhosted.org/aafigure/[aafigure]). + +* +FOO_CHECK_DEPENDENCIES__HOOKS+, to run additional tests for + the specified format ++ (see the list of rendered formats, above). + +Buildroot sets the following variable that can be used in the definitions +above: + +* +$(FOO_DOCDIR)+, similar to +$(FOO_PKGDIR)+, contains the path to the + directory containing +foo.mk+. It can be used to refer to the document + sources, and can be used in the hooks, especially the post-rsync hook + if parts of the documentation needs to be generated. + +* +$(@D)+, as for traditional packages, contains the path to the directory + where the document will be copied and built. + +Here is a complete example that uses all variables and all hooks: + +---- +01: ################################################################################ +02: # +03: # foo-document +04: # +05: ################################################################################ +06: +07: FOO_SOURCES = $(sort $(wildcard $(FOO_DOCDIR)/*)) +08: FOO_RESOURCES = $(sort $(wildcard $(FOO_DOCDIR)/ressources)) +09: +10: FOO_TOC_DEPTH = 2 +11: FOO_TOC_DEPTH_HTML = 1 +12: FOO_TOC_DEPTH_SPLIT_HTML = 3 +13: +14: define FOO_GEN_EXTRA_DOC +15: /path/to/generate-script --outdir=$(@D) +16: endef +17: FOO_POST_RSYNC_HOOKS += FOO_GEN_EXTRA_DOC +18: +19: define FOO_CHECK_MY_PROG +20: if ! which my-prog >/dev/null 2>&1; then \ +21: echo "You need my-prog to generate the foo document"; \ +22: exit 1; \ +23: fi +24: endef +25: FOO_CHECK_DEPENDENCIES_HOOKS += FOO_CHECK_MY_PROG +26: +27: define FOO_CHECK_MY_OTHER_PROG +28: if ! which my-other-prog >/dev/null 2>&1; then \ +29: echo "You need my-other-prog to generate the foo document as PDF"; \ +30: exit 1; \ +31: fi +32: endef +33: FOO_CHECK_DEPENDENCIES_PDF_HOOKS += FOO_CHECK_MY_OTHER_PROG +34: +35: $(eval $(call asciidoc-document)) +---- diff --git a/docs/manual/adding-packages-asciidoc.txt b/docs/manual/adding-packages-asciidoc.txt deleted file mode 100644 index 0bfe99d22e86..000000000000 --- a/docs/manual/adding-packages-asciidoc.txt +++ /dev/null @@ -1,133 +0,0 @@ -// -*- mode:doc; -*- -// vim: syntax=asciidoc - -=== Infrastructure for asciidoc documents - -[[asciidoc-documents-tutorial]] - -The Buildroot manual, which you are currently reading, is entirely written -using the http://asciidoc.org/[AsciiDoc] mark-up syntax. The manual is then -rendered to many formats: - -* html -* split-html -* pdf -* epub -* text - -Although Buildroot only contains one document written in AsciiDoc, there -is, as for packages, an infrastructure for rendering documents using the -AsciiDoc syntax. - -Also as for packages, the AsciiDoc infrastructure is available from a -xref:outside-br-custom[br2-external tree]. This allows documentation for -a br2-external tree to match the Buildroot documentation, as it will be -rendered to the same formats and use the same layout and theme. - -==== +asciidoc-document+ tutorial - -Whereas package infrastructures are suffixed with +-package+, the document -infrastructures are suffixed with +-document+. So, the AsciiDoc infrastructure -is named +asciidoc-document+. - -Here is an example to render a simple AsciiDoc document. - ----- -01: ################################################################################ -02: # -03: # foo-document -04: # -05: ################################################################################ -06: -07: FOO_SOURCES = $(sort $(wildcard $(FOO_DOCDIR)/*)) -08: $(eval $(call asciidoc-document)) ----- - -On line 7, the Makefile declares what the sources of the document are. -Currently, it is expected that the document's sources are only local; -Buildroot will not attempt to download anything to render a document. -Thus, you must indicate where the sources are. Usually, the string -above is sufficient for a document with no sub-directory structure. - -On line 8, we call the +asciidoc-document+ function, which generates all -the Makefile code necessary to render the document. - -==== +asciidoc-document+ reference - -The list of variables that can be set in a +.mk+ file to give metadata -information is (assuming the document name is +foo+) : - -* +FOO_SOURCES+, mandatory, defines the source files for the document. - -* +FOO_RESOURCES+, optional, may contain a space-separated list of paths - to one or more directories containing so-called resources (like CSS or - images). By default, empty. - -* +FOO_DEPENDENCIES+, optional, the list of packages (most probably, - host-packages) that must be built before building this document. - -There are also additional hooks (see xref:hooks[] for general information -on hooks), that a document may set to define extra actions to be done at -various steps: - -* +FOO_POST_RSYNC_HOOKS+ to run additional commands after the sources - have been copied by Buildroot. This can for example be used to - generate part of the manual with information extracted from the - tree. As an example, Buildroot uses this hook to generate the tables - in the appendices. - -* +FOO_CHECK_DEPENDENCIES_HOOKS+ to run additional tests on required - components to generate the document. In AsciiDoc, it is possible to - call filters, that is, programs that will parse an AsciiDoc block and - render it appropriately (e.g. http://ditaa.sourceforge.net/[ditaa] or - https://pythonhosted.org/aafigure/[aafigure]). - -* +FOO_CHECK_DEPENDENCIES__HOOKS+, to run additional tests for - the specified format ++ (see the list of rendered formats, above). - -Buildroot sets the following variable that can be used in the definitions -above: - -* +$(FOO_DOCDIR)+, similar to +$(FOO_PKGDIR)+, contains the path to the - directory containing +foo.mk+. It can be used to refer to the document - sources, and can be used in the hooks, especially the post-rsync hook - if parts of the documentation needs to be generated. - -* +$(@D)+, as for traditional packages, contains the path to the directory - where the document will be copied and built. - -Here is a complete example that uses all variables and all hooks: - ----- -01: ################################################################################ -02: # -03: # foo-document -04: # -05: ################################################################################ -06: -07: FOO_SOURCES = $(sort $(wildcard $(FOO_DOCDIR)/*)) -08: FOO_RESOURCES = $(sort $(wildcard $(FOO_DOCDIR)/ressources)) -09: -10: define FOO_GEN_EXTRA_DOC -11: /path/to/generate-script --outdir=$(@D) -12: endef -13: FOO_POST_RSYNC_HOOKS += FOO_GEN_EXTRA_DOC -14: -15: define FOO_CHECK_MY_PROG -16: if ! which my-prog >/dev/null 2>&1; then \ -17: echo "You need my-prog to generate the foo document"; \ -18: exit 1; \ -19: fi -20: endef -21: FOO_CHECK_DEPENDENCIES_HOOKS += FOO_CHECK_MY_PROG -22: -23: define FOO_CHECK_MY_OTHER_PROG -24: if ! which my-other-prog >/dev/null 2>&1; then \ -25: echo "You need my-other-prog to generate the foo document as PDF"; \ -26: exit 1; \ -27: fi -28: endef -29: FOO_CHECK_DEPENDENCIES_PDF_HOOKS += FOO_CHECK_MY_OTHER_PROG -30: -31: $(eval $(call asciidoc-document)) ----- diff --git a/docs/manual/adding-packages-autotools.adoc b/docs/manual/adding-packages-autotools.adoc new file mode 100644 index 000000000000..ad96957f3d85 --- /dev/null +++ b/docs/manual/adding-packages-autotools.adoc @@ -0,0 +1,168 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +=== Infrastructure for autotools-based packages + +[[autotools-package-tutorial]] + +==== +autotools-package+ tutorial + +First, let's see how to write a +.mk+ file for an autotools-based +package, with an example : + +------------------------ +01: ################################################################################ +02: # +03: # libfoo +04: # +05: ################################################################################ +06: +07: LIBFOO_VERSION = 1.0 +08: LIBFOO_SOURCE = libfoo-$(LIBFOO_VERSION).tar.gz +09: LIBFOO_SITE = http://www.foosoftware.org/download +10: LIBFOO_INSTALL_STAGING = YES +11: LIBFOO_INSTALL_TARGET = NO +12: LIBFOO_CONF_OPTS = --disable-shared +13: LIBFOO_DEPENDENCIES = libglib2 host-pkgconf +14: +15: $(eval $(autotools-package)) +------------------------ + +On line 7, we declare the version of the package. + +On line 8 and 9, we declare the name of the tarball (xz-ed tarball recommended) +and the location of the tarball on the Web. Buildroot will automatically +download the tarball from this location. + +On line 10, we tell Buildroot to install the package to the staging +directory. The staging directory, located in +output/staging/+ +is the directory where all the packages are installed, including their +development files, etc. By default, packages are not installed to the +staging directory, since usually, only libraries need to be installed in +the staging directory: their development files are needed to compile +other libraries or applications depending on them. Also by default, when +staging installation is enabled, packages are installed in this location +using the +make install+ command. + +On line 11, we tell Buildroot to not install the package to the +target directory. This directory contains what will become the root +filesystem running on the target. For purely static libraries, it is +not necessary to install them in the target directory because they will +not be used at runtime. By default, target installation is enabled; setting +this variable to NO is almost never needed. Also by default, packages are +installed in this location using the +make install+ command. + +On line 12, we tell Buildroot to pass a custom configure option, that +will be passed to the +./configure+ script before configuring +and building the package. + +On line 13, we declare our dependencies, so that they are built +before the build process of our package starts. + +Finally, on line line 15, we invoke the +autotools-package+ +macro that generates all the Makefile rules that actually allows the +package to be built. + +[[autotools-package-reference]] + +==== +autotools-package+ reference + +The main macro of the autotools package infrastructure is ++autotools-package+. It is similar to the +generic-package+ macro. The ability to +have target and host packages is also available, with the ++host-autotools-package+ macro. + +Just like the generic infrastructure, the autotools infrastructure +works by defining a number of variables before calling the ++autotools-package+ macro. + +First, all the package metadata information variables that exist in the +generic infrastructure also exist in the autotools infrastructure: ++LIBFOO_VERSION+, +LIBFOO_SOURCE+, ++LIBFOO_PATCH+, +LIBFOO_SITE+, ++LIBFOO_SUBDIR+, +LIBFOO_DEPENDENCIES+, ++LIBFOO_INSTALL_STAGING+, +LIBFOO_INSTALL_TARGET+. + +A few additional variables, specific to the autotools infrastructure, +can also be defined. Many of them are only useful in very specific +cases, typical packages will therefore only use a few of them. + +* +LIBFOO_SUBDIR+ may contain the name of a subdirectory + inside the package that contains the configure script. This is useful, + if for example, the main configure script is not at the root of the + tree extracted by the tarball. If +HOST_LIBFOO_SUBDIR+ is + not specified, it defaults to +LIBFOO_SUBDIR+. + +* +LIBFOO_CONF_ENV+, to specify additional environment + variables to pass to the configure script. By default, empty. + +* +LIBFOO_CONF_OPTS+, to specify additional configure + options to pass to the configure script. By default, empty. + +* +LIBFOO_MAKE+, to specify an alternate +make+ + command. This is typically useful when parallel make is enabled in + the configuration (using +BR2_JLEVEL+) but that this + feature should be disabled for the given package, for one reason or + another. By default, set to +$(MAKE)+. If parallel building + is not supported by the package, then it should be set to + +LIBFOO_MAKE=$(MAKE1)+. + +* +LIBFOO_MAKE_ENV+, to specify additional environment + variables to pass to make in the build step. These are passed before + the +make+ command. By default, empty. + +* +LIBFOO_MAKE_OPTS+, to specify additional variables to + pass to make in the build step. These are passed after the + +make+ command. By default, empty. + +* +LIBFOO_AUTORECONF+, tells whether the package should + be autoreconfigured or not (i.e. if the configure script and + Makefile.in files should be re-generated by re-running autoconf, + automake, libtool, etc.). Valid values are +YES+ and + +NO+. By default, the value is +NO+ + +* +LIBFOO_AUTORECONF_ENV+, to specify additional environment + variables to pass to the 'autoreconf' program if + +LIBFOO_AUTORECONF=YES+. These are passed in the environment of + the 'autoreconf' command. By default, empty. + +* +LIBFOO_AUTORECONF_OPTS+ to specify additional options + passed to the 'autoreconf' program if + +LIBFOO_AUTORECONF=YES+. By default, empty. + +* +LIBFOO_AUTOPOINT+, tells whether the package should be + autopointed or not (i.e. if the package needs I18N infrastructure + copied in.) Only valid when +LIBFOO_AUTORECONF=YES+. Valid + values are +YES+ and +NO+. The default is +NO+. + +* +LIBFOO_LIBTOOL_PATCH+ tells whether the Buildroot + patch to fix libtool cross-compilation issues should be applied or + not. Valid values are +YES+ and +NO+. By + default, the value is +YES+ + +* +LIBFOO_INSTALL_STAGING_OPTS+ contains the make options + used to install the package to the staging directory. By default, the + value is +DESTDIR=$(STAGING_DIR) install+, which is + correct for most autotools packages. It is still possible to override + it. + +* +LIBFOO_INSTALL_TARGET_OPTS+ contains the make options + used to install the package to the target directory. By default, the + value is +DESTDIR=$(TARGET_DIR) install+. The default + value is correct for most autotools packages, but it is still possible + to override it if needed. + +With the autotools infrastructure, all the steps required to build +and install the packages are already defined, and they generally work +well for most autotools-based packages. However, when required, it is +still possible to customize what is done in any particular step: + +* By adding a post-operation hook (after extract, patch, configure, + build or install). See xref:hooks[] for details. + +* By overriding one of the steps. For example, even if the autotools + infrastructure is used, if the package +.mk+ file defines its + own +LIBFOO_CONFIGURE_CMDS+ variable, it will be used + instead of the default autotools one. However, using this method + should be restricted to very specific cases. Do not use it in the + general case. diff --git a/docs/manual/adding-packages-autotools.txt b/docs/manual/adding-packages-autotools.txt deleted file mode 100644 index a041d91eb623..000000000000 --- a/docs/manual/adding-packages-autotools.txt +++ /dev/null @@ -1,175 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -=== Infrastructure for autotools-based packages - -[[autotools-package-tutorial]] - -==== +autotools-package+ tutorial - -First, let's see how to write a +.mk+ file for an autotools-based -package, with an example : - ------------------------- -01: ################################################################################ -02: # -03: # libfoo -04: # -05: ################################################################################ -06: -07: LIBFOO_VERSION = 1.0 -08: LIBFOO_SOURCE = libfoo-$(LIBFOO_VERSION).tar.gz -09: LIBFOO_SITE = http://www.foosoftware.org/download -10: LIBFOO_INSTALL_STAGING = YES -11: LIBFOO_INSTALL_TARGET = NO -12: LIBFOO_CONF_OPTS = --disable-shared -13: LIBFOO_DEPENDENCIES = libglib2 host-pkgconf -14: -15: $(eval $(autotools-package)) ------------------------- - -On line 7, we declare the version of the package. - -On line 8 and 9, we declare the name of the tarball (xz-ed tarball recommended) -and the location of the tarball on the Web. Buildroot will automatically -download the tarball from this location. - -On line 10, we tell Buildroot to install the package to the staging -directory. The staging directory, located in +output/staging/+ -is the directory where all the packages are installed, including their -development files, etc. By default, packages are not installed to the -staging directory, since usually, only libraries need to be installed in -the staging directory: their development files are needed to compile -other libraries or applications depending on them. Also by default, when -staging installation is enabled, packages are installed in this location -using the +make install+ command. - -On line 11, we tell Buildroot to not install the package to the -target directory. This directory contains what will become the root -filesystem running on the target. For purely static libraries, it is -not necessary to install them in the target directory because they will -not be used at runtime. By default, target installation is enabled; setting -this variable to NO is almost never needed. Also by default, packages are -installed in this location using the +make install+ command. - -On line 12, we tell Buildroot to pass a custom configure option, that -will be passed to the +./configure+ script before configuring -and building the package. - -On line 13, we declare our dependencies, so that they are built -before the build process of our package starts. - -Finally, on line line 15, we invoke the +autotools-package+ -macro that generates all the Makefile rules that actually allows the -package to be built. - -[[autotools-package-reference]] - -==== +autotools-package+ reference - -The main macro of the autotools package infrastructure is -+autotools-package+. It is similar to the +generic-package+ macro. The ability to -have target and host packages is also available, with the -+host-autotools-package+ macro. - -Just like the generic infrastructure, the autotools infrastructure -works by defining a number of variables before calling the -+autotools-package+ macro. - -First, all the package metadata information variables that exist in the -generic infrastructure also exist in the autotools infrastructure: -+LIBFOO_VERSION+, +LIBFOO_SOURCE+, -+LIBFOO_PATCH+, +LIBFOO_SITE+, -+LIBFOO_SUBDIR+, +LIBFOO_DEPENDENCIES+, -+LIBFOO_INSTALL_STAGING+, +LIBFOO_INSTALL_TARGET+. - -A few additional variables, specific to the autotools infrastructure, -can also be defined. Many of them are only useful in very specific -cases, typical packages will therefore only use a few of them. - -* +LIBFOO_SUBDIR+ may contain the name of a subdirectory - inside the package that contains the configure script. This is useful, - if for example, the main configure script is not at the root of the - tree extracted by the tarball. If +HOST_LIBFOO_SUBDIR+ is - not specified, it defaults to +LIBFOO_SUBDIR+. - -* +LIBFOO_CONF_ENV+, to specify additional environment - variables to pass to the configure script. By default, empty. - -* +LIBFOO_CONF_OPTS+, to specify additional configure - options to pass to the configure script. By default, empty. - -* +LIBFOO_MAKE+, to specify an alternate +make+ - command. This is typically useful when parallel make is enabled in - the configuration (using +BR2_JLEVEL+) but that this - feature should be disabled for the given package, for one reason or - another. By default, set to +$(MAKE)+. If parallel building - is not supported by the package, then it should be set to - +LIBFOO_MAKE=$(MAKE1)+. - -* +LIBFOO_MAKE_ENV+, to specify additional environment - variables to pass to make in the build step. These are passed before - the +make+ command. By default, empty. - -* +LIBFOO_MAKE_OPTS+, to specify additional variables to - pass to make in the build step. These are passed after the - +make+ command. By default, empty. - -* +LIBFOO_AUTORECONF+, tells whether the package should - be autoreconfigured or not (i.e. if the configure script and - Makefile.in files should be re-generated by re-running autoconf, - automake, libtool, etc.). Valid values are +YES+ and - +NO+. By default, the value is +NO+ - -* +LIBFOO_AUTORECONF_ENV+, to specify additional environment - variables to pass to the 'autoreconf' program if - +LIBFOO_AUTORECONF=YES+. These are passed in the environment of - the 'autoreconf' command. By default, empty. - -* +LIBFOO_AUTORECONF_OPTS+ to specify additional options - passed to the 'autoreconf' program if - +LIBFOO_AUTORECONF=YES+. By default, empty. - -* +LIBFOO_GETTEXTIZE+, tells whether the package should be - gettextized or not (i.e. if the package uses a different gettext - version than Buildroot provides, and it is needed to run - 'gettextize'.) Only valid when +LIBFOO_AUTORECONF=YES+. Valid - values are +YES+ and +NO+. The default is +NO+. - -* +LIBFOO_GETTEXTIZE_OPTS+, to specify additional options passed to - the 'gettextize' program, if +LIBFOO_GETTEXTIZE=YES+. You may - use that if, for example, the +.po+ files are not located in the - standard place (i.e. in +po/+ at the root of the package.) By - default, '-f'. - -* +LIBFOO_LIBTOOL_PATCH+ tells whether the Buildroot - patch to fix libtool cross-compilation issues should be applied or - not. Valid values are +YES+ and +NO+. By - default, the value is +YES+ - -* +LIBFOO_INSTALL_STAGING_OPTS+ contains the make options - used to install the package to the staging directory. By default, the - value is +DESTDIR=$(STAGING_DIR) install+, which is - correct for most autotools packages. It is still possible to override - it. - -* +LIBFOO_INSTALL_TARGET_OPTS+ contains the make options - used to install the package to the target directory. By default, the - value is +DESTDIR=$(TARGET_DIR) install+. The default - value is correct for most autotools packages, but it is still possible - to override it if needed. - -With the autotools infrastructure, all the steps required to build -and install the packages are already defined, and they generally work -well for most autotools-based packages. However, when required, it is -still possible to customize what is done in any particular step: - -* By adding a post-operation hook (after extract, patch, configure, - build or install). See xref:hooks[] for details. - -* By overriding one of the steps. For example, even if the autotools - infrastructure is used, if the package +.mk+ file defines its - own +LIBFOO_CONFIGURE_CMDS+ variable, it will be used - instead of the default autotools one. However, using this method - should be restricted to very specific cases. Do not use it in the - general case. diff --git a/docs/manual/adding-packages-cargo.txt b/docs/manual/adding-packages-cargo.adoc similarity index 100% rename from docs/manual/adding-packages-cargo.txt rename to docs/manual/adding-packages-cargo.adoc diff --git a/docs/manual/adding-packages-cmake.adoc b/docs/manual/adding-packages-cmake.adoc new file mode 100644 index 000000000000..4f336db73734 --- /dev/null +++ b/docs/manual/adding-packages-cmake.adoc @@ -0,0 +1,165 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +=== Infrastructure for CMake-based packages + +[[cmake-package-tutorial]] + +==== +cmake-package+ tutorial + +First, let's see how to write a +.mk+ file for a CMake-based package, +with an example : + +------------------------ +01: ################################################################################ +02: # +03: # libfoo +04: # +05: ################################################################################ +06: +07: LIBFOO_VERSION = 1.0 +08: LIBFOO_SOURCE = libfoo-$(LIBFOO_VERSION).tar.gz +09: LIBFOO_SITE = http://www.foosoftware.org/download +10: LIBFOO_INSTALL_STAGING = YES +11: LIBFOO_INSTALL_TARGET = NO +12: LIBFOO_CONF_OPTS = -DBUILD_DEMOS=ON +13: LIBFOO_DEPENDENCIES = libglib2 host-pkgconf +14: +15: $(eval $(cmake-package)) +------------------------ + +On line 7, we declare the version of the package. + +On line 8 and 9, we declare the name of the tarball (xz-ed tarball recommended) +and the location of the tarball on the Web. Buildroot will automatically +download the tarball from this location. + +On line 10, we tell Buildroot to install the package to the staging +directory. The staging directory, located in +output/staging/+ +is the directory where all the packages are installed, including their +development files, etc. By default, packages are not installed to the +staging directory, since usually, only libraries need to be installed in +the staging directory: their development files are needed to compile +other libraries or applications depending on them. Also by default, when +staging installation is enabled, packages are installed in this location +using the +make install+ command. + +On line 11, we tell Buildroot to not install the package to the +target directory. This directory contains what will become the root +filesystem running on the target. For purely static libraries, it is +not necessary to install them in the target directory because they will +not be used at runtime. By default, target installation is enabled; setting +this variable to NO is almost never needed. Also by default, packages are +installed in this location using the +make install+ command. + +On line 12, we tell Buildroot to pass custom options to CMake when it is +configuring the package. + +On line 13, we declare our dependencies, so that they are built +before the build process of our package starts. + +Finally, on line line 15, we invoke the +cmake-package+ +macro that generates all the Makefile rules that actually allows the +package to be built. + +[[cmake-package-reference]] + +==== +cmake-package+ reference + +The main macro of the CMake package infrastructure is ++cmake-package+. It is similar to the +generic-package+ macro. The ability to +have target and host packages is also available, with the ++host-cmake-package+ macro. + +Just like the generic infrastructure, the CMake infrastructure works +by defining a number of variables before calling the +cmake-package+ +macro. + +First, all the package metadata information variables that exist in +the generic infrastructure also exist in the CMake infrastructure: ++LIBFOO_VERSION+, +LIBFOO_SOURCE+, +LIBFOO_PATCH+, +LIBFOO_SITE+, ++LIBFOO_SUBDIR+, +LIBFOO_DEPENDENCIES+, +LIBFOO_INSTALL_STAGING+, ++LIBFOO_INSTALL_TARGET+. + +A few additional variables, specific to the CMake infrastructure, can +also be defined. Many of them are only useful in very specific cases, +typical packages will therefore only use a few of them. + +* +LIBFOO_SUBDIR+ may contain the name of a subdirectory inside the + package that contains the main CMakeLists.txt file. This is useful, + if for example, the main CMakeLists.txt file is not at the root of + the tree extracted by the tarball. If +HOST_LIBFOO_SUBDIR+ is not + specified, it defaults to +LIBFOO_SUBDIR+. + +* +LIBFOO_CMAKE_BACKEND+ specifies the cmake backend to use, one of + `make` (to use the GNU Makefiles generator, the default) or `ninja` + (to use the Ninja generator). + +* +LIBFOO_CONF_ENV+, to specify additional environment variables to + pass to CMake. By default, empty. + +* +LIBFOO_CONF_OPTS+, to specify additional configure options to pass + to CMake. By default, empty. A number of common CMake options are + set by the +cmake-package+ infrastructure; so it is normally not + necessary to set them in the package's +*.mk+ file unless you want + to override them: + +** +CMAKE_BUILD_TYPE+ is driven by +BR2_ENABLE_RUNTIME_DEBUG+; +** +CMAKE_INSTALL_PREFIX+; +** +BUILD_SHARED_LIBS+ is driven by +BR2_STATIC_LIBS+; +** +BUILD_DOC+, +BUILD_DOCS+ are disabled; +** +BUILD_EXAMPLE+, +BUILD_EXAMPLES+ are disabled; +** +BUILD_TEST+, +BUILD_TESTS+, +BUILD_TESTING+ are disabled. + +* +LIBFOO_BUILD_ENV+ and +LIBFOO_BUILD_OPTS+ to specify additional + environment variables, or command line options, to pass to the backend + at build time. + +* +LIBFOO_SUPPORTS_IN_SOURCE_BUILD = NO+ should be set when the package + cannot be built inside the source tree but needs a separate build + directory. + +* +LIBFOO_MAKE+, to specify an alternate +make+ command. This is + typically useful when parallel make is enabled in the configuration + (using +BR2_JLEVEL+) but that this feature should be disabled for + the given package, for one reason or another. By default, set to + +$(MAKE)+. If parallel building is not supported by the package, + then it should be set to +LIBFOO_MAKE=$(MAKE1)+. + +* +LIBFOO_MAKE_ENV+, to specify additional environment variables to + pass to make in the build step. These are passed before the +make+ + command. By default, empty. + +* +LIBFOO_MAKE_OPTS+, to specify additional variables to pass to make + in the build step. These are passed after the +make+ command. By + default, empty. + +* +LIBFOO_INSTALL_OPTS+ contains the make options used to + install the package to the host directory. By default, the value + is +install+, which is correct for most CMake packages. It is still + possible to override it. + +* +LIBFOO_INSTALL_STAGING_OPTS+ contains the make options used to + install the package to the staging directory. By default, the value + is +DESTDIR=$(STAGING_DIR) install/fast+, which is correct for most + CMake packages. It is still possible to override it. + +* +LIBFOO_INSTALL_TARGET_OPTS+ contains the make options used to + install the package to the target directory. By default, the value + is +DESTDIR=$(TARGET_DIR) install/fast+. The default value is correct + for most CMake packages, but it is still possible to override it if + needed. + +With the CMake infrastructure, all the steps required to build and +install the packages are already defined, and they generally work well +for most CMake-based packages. However, when required, it is still +possible to customize what is done in any particular step: + +* By adding a post-operation hook (after extract, patch, configure, + build or install). See xref:hooks[] for details. + +* By overriding one of the steps. For example, even if the CMake + infrastructure is used, if the package +.mk+ file defines its own + +LIBFOO_CONFIGURE_CMDS+ variable, it will be used instead of the + default CMake one. However, using this method should be restricted + to very specific cases. Do not use it in the general case. diff --git a/docs/manual/adding-packages-cmake.txt b/docs/manual/adding-packages-cmake.txt deleted file mode 100644 index 541d7422cf37..000000000000 --- a/docs/manual/adding-packages-cmake.txt +++ /dev/null @@ -1,157 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -=== Infrastructure for CMake-based packages - -[[cmake-package-tutorial]] - -==== +cmake-package+ tutorial - -First, let's see how to write a +.mk+ file for a CMake-based package, -with an example : - ------------------------- -01: ################################################################################ -02: # -03: # libfoo -04: # -05: ################################################################################ -06: -07: LIBFOO_VERSION = 1.0 -08: LIBFOO_SOURCE = libfoo-$(LIBFOO_VERSION).tar.gz -09: LIBFOO_SITE = http://www.foosoftware.org/download -10: LIBFOO_INSTALL_STAGING = YES -11: LIBFOO_INSTALL_TARGET = NO -12: LIBFOO_CONF_OPTS = -DBUILD_DEMOS=ON -13: LIBFOO_DEPENDENCIES = libglib2 host-pkgconf -14: -15: $(eval $(cmake-package)) ------------------------- - -On line 7, we declare the version of the package. - -On line 8 and 9, we declare the name of the tarball (xz-ed tarball recommended) -and the location of the tarball on the Web. Buildroot will automatically -download the tarball from this location. - -On line 10, we tell Buildroot to install the package to the staging -directory. The staging directory, located in +output/staging/+ -is the directory where all the packages are installed, including their -development files, etc. By default, packages are not installed to the -staging directory, since usually, only libraries need to be installed in -the staging directory: their development files are needed to compile -other libraries or applications depending on them. Also by default, when -staging installation is enabled, packages are installed in this location -using the +make install+ command. - -On line 11, we tell Buildroot to not install the package to the -target directory. This directory contains what will become the root -filesystem running on the target. For purely static libraries, it is -not necessary to install them in the target directory because they will -not be used at runtime. By default, target installation is enabled; setting -this variable to NO is almost never needed. Also by default, packages are -installed in this location using the +make install+ command. - -On line 12, we tell Buildroot to pass custom options to CMake when it is -configuring the package. - -On line 13, we declare our dependencies, so that they are built -before the build process of our package starts. - -Finally, on line line 15, we invoke the +cmake-package+ -macro that generates all the Makefile rules that actually allows the -package to be built. - -[[cmake-package-reference]] - -==== +cmake-package+ reference - -The main macro of the CMake package infrastructure is -+cmake-package+. It is similar to the +generic-package+ macro. The ability to -have target and host packages is also available, with the -+host-cmake-package+ macro. - -Just like the generic infrastructure, the CMake infrastructure works -by defining a number of variables before calling the +cmake-package+ -macro. - -First, all the package metadata information variables that exist in -the generic infrastructure also exist in the CMake infrastructure: -+LIBFOO_VERSION+, +LIBFOO_SOURCE+, +LIBFOO_PATCH+, +LIBFOO_SITE+, -+LIBFOO_SUBDIR+, +LIBFOO_DEPENDENCIES+, +LIBFOO_INSTALL_STAGING+, -+LIBFOO_INSTALL_TARGET+. - -A few additional variables, specific to the CMake infrastructure, can -also be defined. Many of them are only useful in very specific cases, -typical packages will therefore only use a few of them. - -* +LIBFOO_SUBDIR+ may contain the name of a subdirectory inside the - package that contains the main CMakeLists.txt file. This is useful, - if for example, the main CMakeLists.txt file is not at the root of - the tree extracted by the tarball. If +HOST_LIBFOO_SUBDIR+ is not - specified, it defaults to +LIBFOO_SUBDIR+. - -* +LIBFOO_CONF_ENV+, to specify additional environment variables to - pass to CMake. By default, empty. - -* +LIBFOO_CONF_OPTS+, to specify additional configure options to pass - to CMake. By default, empty. A number of common CMake options are - set by the +cmake-package+ infrastructure; so it is normally not - necessary to set them in the package's +*.mk+ file unless you want - to override them: - -** +CMAKE_BUILD_TYPE+ is driven by +BR2_ENABLE_RUNTIME_DEBUG+; -** +CMAKE_INSTALL_PREFIX+; -** +BUILD_SHARED_LIBS+ is driven by +BR2_STATIC_LIBS+; -** +BUILD_DOC+, +BUILD_DOCS+ are disabled; -** +BUILD_EXAMPLE+, +BUILD_EXAMPLES+ are disabled; -** +BUILD_TEST+, +BUILD_TESTS+, +BUILD_TESTING+ are disabled. - -* +LIBFOO_SUPPORTS_IN_SOURCE_BUILD = NO+ should be set when the package - cannot be built inside the source tree but needs a separate build - directory. - -* +LIBFOO_MAKE+, to specify an alternate +make+ command. This is - typically useful when parallel make is enabled in the configuration - (using +BR2_JLEVEL+) but that this feature should be disabled for - the given package, for one reason or another. By default, set to - +$(MAKE)+. If parallel building is not supported by the package, - then it should be set to +LIBFOO_MAKE=$(MAKE1)+. - -* +LIBFOO_MAKE_ENV+, to specify additional environment variables to - pass to make in the build step. These are passed before the +make+ - command. By default, empty. - -* +LIBFOO_MAKE_OPTS+, to specify additional variables to pass to make - in the build step. These are passed after the +make+ command. By - default, empty. - -* +LIBFOO_INSTALL_OPTS+ contains the make options used to - install the package to the host directory. By default, the value - is +install+, which is correct for most CMake packages. It is still - possible to override it. - -* +LIBFOO_INSTALL_STAGING_OPTS+ contains the make options used to - install the package to the staging directory. By default, the value - is +DESTDIR=$(STAGING_DIR) install/fast+, which is correct for most - CMake packages. It is still possible to override it. - -* +LIBFOO_INSTALL_TARGET_OPTS+ contains the make options used to - install the package to the target directory. By default, the value - is +DESTDIR=$(TARGET_DIR) install/fast+. The default value is correct - for most CMake packages, but it is still possible to override it if - needed. - -With the CMake infrastructure, all the steps required to build and -install the packages are already defined, and they generally work well -for most CMake-based packages. However, when required, it is still -possible to customize what is done in any particular step: - -* By adding a post-operation hook (after extract, patch, configure, - build or install). See xref:hooks[] for details. - -* By overriding one of the steps. For example, even if the CMake - infrastructure is used, if the package +.mk+ file defines its own - +LIBFOO_CONFIGURE_CMDS+ variable, it will be used instead of the - default CMake one. However, using this method should be restricted - to very specific cases. Do not use it in the general case. diff --git a/docs/manual/adding-packages-conclusion.txt b/docs/manual/adding-packages-conclusion.adoc similarity index 100% rename from docs/manual/adding-packages-conclusion.txt rename to docs/manual/adding-packages-conclusion.adoc diff --git a/docs/manual/adding-packages-directory.adoc b/docs/manual/adding-packages-directory.adoc new file mode 100644 index 000000000000..5a0f298eb140 --- /dev/null +++ b/docs/manual/adding-packages-directory.adoc @@ -0,0 +1,651 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +=== Package directory + +First of all, create a directory under the +package+ directory for +your software, for example +libfoo+. + +Some packages have been grouped by topic in a sub-directory: ++x11r7+, +qt5+ and +gstreamer+. If your package fits in +one of these categories, then create your package directory in these. +New subdirectories are discouraged, however. + +=== Config files + +For the package to be displayed in the configuration tool, you need to +create a Config file in your package directory. There are two types: ++Config.in+ and +Config.in.host+. + +==== +Config.in+ file + +For packages used on the target, create a file named +Config.in+. This +file will contain the option descriptions related to our +libfoo+ software +that will be used and displayed in the configuration tool. It should basically +contain: + +--------------------------- +config BR2_PACKAGE_LIBFOO + bool "libfoo" + help + This is a comment that explains what libfoo is. The help text + should be wrapped. + + http://foosoftware.org/libfoo/ +--------------------------- + +The +bool+ line, +help+ line and other metadata information about the +configuration option must be indented with one tab. The help text +itself should be indented with one tab and two spaces, lines should +be wrapped to fit 72 columns, where tab counts for 8, so 62 characters +in the text itself. The help text must mention the upstream URL of the +project after an empty line. + +As a convention specific to Buildroot, the ordering of the attributes +is as follows: + +1. The type of option: +bool+, +string+... with the prompt +2. If needed, the +default+ value(s) +3. Any dependencies on the target in +depends on+ form +4. Any dependencies on the toolchain in +depends on+ form +5. Any dependencies on other packages in +depends on+ form +6. Any dependency of the +select+ form +7. The help keyword and help text. + +You can add other sub-options into a +if BR2_PACKAGE_LIBFOO...endif+ +statement to configure particular things in your software. You can look at +examples in other packages. The syntax of the +Config.in+ file is the same +as the one for the kernel Kconfig file. The documentation for this syntax is +available at http://kernel.org/doc/Documentation/kbuild/kconfig-language.txt[] + +Finally you have to add your new +libfoo/Config.in+ to ++package/Config.in+ (or in a category subdirectory if you decided to +put your package in one of the existing categories). The files +included there are 'sorted alphabetically' per category and are 'NOT' +supposed to contain anything but the 'bare' name of the package. + +-------------------------- +source "package/libfoo/Config.in" +-------------------------- + + +==== +Config.in.host+ file + +Some packages also need to be built for the host system. There are two +options here: + +* The host package is only required to satisfy build-time + dependencies of one or more target packages. In this case, add + +host-foo+ to the target package's +BAR_DEPENDENCIES+ variable. No + +Config.in.host+ file should be created. + +* The host package should be explicitly selectable by the user from + the configuration menu. In this case, create a +Config.in.host+ file + for that host package: ++ +--------------------------- +config BR2_PACKAGE_HOST_FOO + bool "host foo" + help + This is a comment that explains what foo for the host is. + + http://foosoftware.org/foo/ +--------------------------- ++ +The same coding style and options as for the +Config.in+ file are valid. ++ +Finally you have to add your new +libfoo/Config.in.host+ to ++package/Config.in.host+. The files included there are 'sorted alphabetically' +and are 'NOT' supposed to contain anything but the 'bare' name of the package. ++ +-------------------------- +source "package/foo/Config.in.host" +-------------------------- ++ +The host package will then be available from the +Host utilities+ menu. + +[[depends-on-vs-select]] +==== Choosing +depends on+ or +select+ + +The +Config.in+ file of your package must also ensure that +dependencies are enabled. Typically, Buildroot uses the following +rules: + +* Use a +select+ type of dependency for dependencies on + libraries. These dependencies are generally not obvious and it + therefore make sense to have the kconfig system ensure that the + dependencies are selected. For example, the _libgtk2_ package uses + +select BR2_PACKAGE_LIBGLIB2+ to make sure this library is also + enabled. + The +select+ keyword expresses the dependency with a backward + semantic. + +* Use a +depends on+ type of dependency when the user really needs to + be aware of the dependency. Typically, Buildroot uses this type of + dependency for dependencies on target architecture, MMU support and + toolchain options (see xref:dependencies-target-toolchain-options[]), + or for dependencies on "big" things, such as the X.org system. + The +depends on+ keyword expresses the dependency with a forward + semantic. + +.Note +The current problem with the _kconfig_ language is that these two +dependency semantics are not internally linked. Therefore, it may be +possible to select a package, whom one of its dependencies/requirement +is not met. + +An example illustrates both the usage of +select+ and +depends on+. + +-------------------------- +config BR2_PACKAGE_RRDTOOL + bool "rrdtool" + depends on BR2_USE_WCHAR + select BR2_PACKAGE_FREETYPE + select BR2_PACKAGE_LIBART + select BR2_PACKAGE_LIBPNG + select BR2_PACKAGE_ZLIB + help + RRDtool is the OpenSource industry standard, high performance + data logging and graphing system for time series data. + + http://oss.oetiker.ch/rrdtool/ + +comment "rrdtool needs a toolchain w/ wchar" + depends on !BR2_USE_WCHAR +-------------------------- + + +Note that these two dependency types are only transitive with the +dependencies of the same kind. + +This means, in the following example: + +-------------------------- +config BR2_PACKAGE_A + bool "Package A" + +config BR2_PACKAGE_B + bool "Package B" + depends on BR2_PACKAGE_A + +config BR2_PACKAGE_C + bool "Package C" + depends on BR2_PACKAGE_B + +config BR2_PACKAGE_D + bool "Package D" + select BR2_PACKAGE_B + +config BR2_PACKAGE_E + bool "Package E" + select BR2_PACKAGE_D +-------------------------- + +* Selecting +Package C+ will be visible if +Package B+ has been + selected, which in turn is only visible if +Package A+ has been + selected. + +* Selecting +Package E+ will select +Package D+, which will select + +Package B+, it will not check for the dependencies of +Package B+, + so it will not select +Package A+. + +* Since +Package B+ is selected but +Package A+ is not, this violates + the dependency of +Package B+ on +Package A+. Therefore, in such a + situation, the transitive dependency has to be added explicitly: + +-------------------------- +config BR2_PACKAGE_D + bool "Package D" + depends on BR2_PACKAGE_A + select BR2_PACKAGE_B + +config BR2_PACKAGE_E + bool "Package E" + depends on BR2_PACKAGE_A + select BR2_PACKAGE_D +-------------------------- + +Overall, for package library dependencies, +select+ should be +preferred. + +Note that such dependencies will ensure that the dependency option +is also enabled, but not necessarily built before your package. To do +so, the dependency also needs to be expressed in the +.mk+ file of the +package. + +Further formatting details: see xref:writing-rules-config-in[the +coding style]. + +[[dependencies-target-toolchain-options]] +==== Dependencies on target and toolchain options + +Many packages depend on certain options of the toolchain: the choice of +C library, C++ support, thread support, RPC support, wchar support, +or dynamic library support. Some packages can only be built on certain +target architectures, or if an MMU is available in the processor. + +These dependencies have to be expressed with the appropriate 'depends +on' statements in the Config.in file. Additionally, for dependencies on +toolchain options, a +comment+ should be displayed when the option is +not enabled, so that the user knows why the package is not available. +Dependencies on target architecture or MMU support should not be +made visible in a comment: since it is unlikely that the user can +freely choose another target, it makes little sense to show these +dependencies explicitly. + +The +comment+ should only be visible if the +config+ option itself would +be visible when the toolchain option dependencies are met. This means +that all other dependencies of the package (including dependencies on +target architecture and MMU support) have to be repeated on the ++comment+ definition. To keep it clear, the +depends on+ statement for +these non-toolchain option should be kept separate from the +depends on+ +statement for the toolchain options. +If there is a dependency on a config option in that same file (typically +the main package) it is preferable to have a global +if ... endif+ +construct rather than repeating the +depends on+ statement on the +comment and other config options. + +The general format of a dependency +comment+ for package foo is: + +-------------------------- +foo needs a toolchain w/ featA, featB, featC +-------------------------- + +for example: + +-------------------------- +mpd needs a toolchain w/ C++, threads, wchar +-------------------------- + +or + +-------------------------- +crda needs a toolchain w/ threads +-------------------------- + +Note that this text is kept brief on purpose, so that it will fit on a +80-character terminal. + +The rest of this section enumerates the different target and toolchain +options, the corresponding config symbols to depend on, and the text to +use in the comment. + +* Target architecture +** Dependency symbol: +BR2_powerpc+, +BR2_mips+, ... (see +arch/Config.in+) +** Comment string: no comment to be added + +* MMU support +** Dependency symbol: +BR2_USE_MMU+ +** Comment string: no comment to be added + +* Gcc +__sync_*+ built-ins used for atomic operations. They are + available in variants operating on 1 byte, 2 bytes, 4 bytes and 8 + bytes. Since different architectures support atomic operations on + different sizes, one dependency symbol is available for each size: +** Dependency symbol: +BR2_TOOLCHAIN_HAS_SYNC_1+ for 1 byte, + +BR2_TOOLCHAIN_HAS_SYNC_2+ for 2 bytes, + +BR2_TOOLCHAIN_HAS_SYNC_4+ for 4 bytes, +BR2_TOOLCHAIN_HAS_SYNC_8+ + for 8 bytes. +** Comment string: no comment to be added + +* Gcc +__atomic_*+ built-ins used for atomic operations. +** Dependency symbol: +BR2_TOOLCHAIN_HAS_ATOMIC+. +** Comment string: no comment to be added + +* Kernel headers +** Dependency symbol: +BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y+, (replace + +X_Y+ with the proper version, see +toolchain/Config.in+) +** Comment string: +headers >= X.Y+ and/or `headers <= X.Y` (replace + +X.Y+ with the proper version) + +* GCC version +** Dependency symbol: +BR2_TOOLCHAIN_GCC_AT_LEAST_X_Y+, (replace + +X_Y+ with the proper version, see +toolchain/Config.in+) +** Comment string: +gcc >= X.Y+ and/or `gcc <= X.Y` (replace + +X.Y+ with the proper version) + +* Host GCC version +** Dependency symbol: +BR2_HOST_GCC_AT_LEAST_X_Y+, (replace + +X_Y+ with the proper version, see +Config.in+) +** Comment string: no comment to be added +** Note that it is usually not the package itself that has a minimum + host GCC version, but rather a host-package on which it depends. + +* C library +** Dependency symbol: +BR2_TOOLCHAIN_USES_GLIBC+, + +BR2_TOOLCHAIN_USES_MUSL+, +BR2_TOOLCHAIN_USES_UCLIBC+ +** Comment string: for the C library, a slightly different comment text + is used: +foo needs a glibc toolchain+, or `foo needs a glibc + toolchain w/ C++` + +* C++ support +** Dependency symbol: +BR2_INSTALL_LIBSTDCPP+ +** Comment string: `C++` + +* D support +** Dependency symbol: +BR2_TOOLCHAIN_HAS_DLANG+ +** Comment string: `Dlang` + +* Fortran support +** Dependency symbol: +BR2_TOOLCHAIN_HAS_FORTRAN+ +** Comment string: `fortran` + +* thread support +** Dependency symbol: +BR2_TOOLCHAIN_HAS_THREADS+ +** Comment string: +threads+ (unless +BR2_TOOLCHAIN_HAS_THREADS_NPTL+ + is also needed, in which case, specifying only +NPTL+ is sufficient) + +* NPTL thread support +** Dependency symbol: +BR2_TOOLCHAIN_HAS_THREADS_NPTL+ +** Comment string: +NPTL+ + +* RPC support +** Dependency symbol: +BR2_TOOLCHAIN_HAS_NATIVE_RPC+ +** Comment string: +RPC+ + +* wchar support +** Dependency symbol: +BR2_USE_WCHAR+ +** Comment string: +wchar+ + +* dynamic library +** Dependency symbol: +!BR2_STATIC_LIBS+ +** Comment string: +dynamic library+ + +==== Dependencies on a Linux kernel built by buildroot + +Some packages need a Linux kernel to be built by buildroot. These are +typically kernel modules or firmware. A comment should be added in the +Config.in file to express this dependency, similar to dependencies on +toolchain options. The general format is: + +-------------------------- +foo needs a Linux kernel to be built +-------------------------- + +If there is a dependency on both toolchain options and the Linux +kernel, use this format: + +-------------------------- +foo needs a toolchain w/ featA, featB, featC and a Linux kernel to be built +-------------------------- + +==== Dependencies on udev /dev management + +If a package needs udev /dev management, it should depend on symbol ++BR2_PACKAGE_HAS_UDEV+, and the following comment should be added: + +-------------------------- +foo needs udev /dev management +-------------------------- + +If there is a dependency on both toolchain options and udev /dev +management, use this format: + +-------------------------- +foo needs udev /dev management and a toolchain w/ featA, featB, featC +-------------------------- + +==== Dependencies on features provided by virtual packages + +Some features can be provided by more than one package, such as the +openGL libraries. + +See xref:virtual-package-tutorial[] for more on the virtual packages. + +=== The +.mk+ file + +[[adding-packages-mk]] + +Finally, here's the hardest part. Create a file named +libfoo.mk+. It +describes how the package should be downloaded, configured, built, +installed, etc. + +Depending on the package type, the +.mk+ file must be written in a +different way, using different infrastructures: + +* *Makefiles for generic packages* (not using autotools or CMake): + These are based on an infrastructure similar to the one used for + autotools-based packages, but require a little more work from the + developer. They specify what should be done for the configuration, + compilation and installation of the package. This + infrastructure must be used for all packages that do not use the + autotools as their build system. In the future, other specialized + infrastructures might be written for other build systems. We cover + them through in a xref:generic-package-tutorial[tutorial] and a + xref:generic-package-reference[reference]. + +* *Makefiles for autotools-based software* (autoconf, automake, etc.): + We provide a dedicated infrastructure for such packages, since + autotools is a very common build system. This infrastructure 'must' + be used for new packages that rely on the autotools as their build + system. We cover them through a xref:autotools-package-tutorial[tutorial] + and xref:autotools-package-reference[reference]. + +* *Makefiles for cmake-based software*: We provide a dedicated + infrastructure for such packages, as CMake is a more and more + commonly used build system and has a standardized behaviour. This + infrastructure 'must' be used for new packages that rely on + CMake. We cover them through a xref:cmake-package-tutorial[tutorial] + and xref:cmake-package-reference[reference]. + +* *Makefiles for Python modules*: We have a dedicated infrastructure + for Python modules that use the +distutils+, +flit+, +pep517+ or + +setuptools+ mechanisms. We cover them through a + xref:python-package-tutorial[tutorial] and a + xref:python-package-reference[reference]. + +* *Makefiles for Lua modules*: We have a dedicated infrastructure for + Lua modules available through the LuaRocks web site. We cover them + through a xref:luarocks-package-tutorial[tutorial] and a + xref:luarocks-package-reference[reference]. + +Further formatting details: see xref:writing-rules-mk[the writing +rules]. + +[[adding-packages-hash]] +=== The +.hash+ file + +When possible, you must add a third file, named +libfoo.hash+, that +contains the hashes of the downloaded files for the +libfoo+ +package. The only reason for not adding a +.hash+ file is when hash +checking is not possible due to how the package is downloaded. + +When a package has a version selection choice, then the hash file may be +stored in a subdirectory named after the version, e.g. ++package/libfoo/1.2.3/libfoo.hash+. This is especially important if the +different versions have different licensing terms, but they are stored +in the same file. Otherwise, the hash file should stay in the package's +directory. + +The hashes stored in that file are used to validate the integrity of the +downloaded files and of the license files. + +The format of this file is one line for each file for which to check the +hash, each line with the following three fields separated by two spaces: + +* the type of hash, one of: +** +md5+, +sha1+, +sha224+, +sha256+, +sha384+, +sha512+ +* the hash of the file: +** for +md5+, 32 hexadecimal characters +** for +sha1+, 40 hexadecimal characters +** for +sha224+, 56 hexadecimal characters +** for +sha256+, 64 hexadecimal characters +** for +sha384+, 96 hexadecimal characters +** for +sha512+, 128 hexadecimal characters +* the name of the file: +** for a source archive: the basename of the file, without any directory + component, +** for a license file: the path as it appears in +FOO_LICENSE_FILES+. + +Lines starting with a +#+ sign are considered comments, and ignored. Empty +lines are ignored. + +There can be more than one hash for a single file, each on its own line. In +this case, all hashes must match. + +.Note +Ideally, the hashes stored in this file should match the hashes published by +upstream, e.g. on their website, in the e-mail announcement... If upstream +provides more than one type of hash (e.g. +sha1+ and +sha512+), then it is +best to add all those hashes in the +.hash+ file. If upstream does not +provide any hash, or only provides an +md5+ hash, then compute at least one +strong hash yourself (preferably +sha256+, but not +md5+), and mention +this in a comment line above the hashes. + +.Note +The hashes for license files are used to detect a license change when a +package version is bumped. The hashes are checked during the make legal-info +target run. For a package with multiple versions (like Qt5), +create the hash file in a subdirectory ++ of that package +(see also xref:patch-apply-order[]). + +The example below defines a +sha1+ and a +sha256+ published by upstream for +the main +libfoo-1.2.3.tar.bz2+ tarball, an +md5+ from upstream and a +locally-computed +sha256+ hashes for a binary blob, a +sha256+ for a +downloaded patch, and an archive with no hash: + +---- +# Hashes from: http://www.foosoftware.org/download/libfoo-1.2.3.tar.bz2.{sha1,sha256}: +sha1 486fb55c3efa71148fe07895fd713ea3a5ae343a libfoo-1.2.3.tar.bz2 +sha256 efc8103cc3bcb06bda6a781532d12701eb081ad83e8f90004b39ab81b65d4369 libfoo-1.2.3.tar.bz2 + +# md5 from: http://www.foosoftware.org/download/libfoo-1.2.3.tar.bz2.md5, sha256 locally computed: +md5 2d608f3c318c6b7557d551a5a09314f03452f1a1 libfoo-data.bin +sha256 01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b libfoo-data.bin + +# Locally computed: +sha256 ff52101fb90bbfc3fe9475e425688c660f46216d7e751c4bbdb1dc85cdccacb9 libfoo-fix-blabla.patch + +# Hash for license files: +sha256 a45a845012742796534f7e91fe623262ccfb99460a2bd04015bd28d66fba95b8 COPYING +sha256 01b1f9f2c8ee648a7a596a1abe8aa4ed7899b1c9e5551bda06da6e422b04aa55 doc/COPYING.LGPL +---- + +If the +.hash+ file is present, and it contains one or more hashes for a +downloaded file, the hash(es) computed by Buildroot (after download) must +match the hash(es) stored in the +.hash+ file. If one or more hashes do +not match, Buildroot considers this an error, deletes the downloaded file, +and aborts. + +If the +.hash+ file is present, but it does not contain a hash for a +downloaded file, Buildroot considers this an error and aborts. However, +the downloaded file is left in the download directory since this +typically indicates that the +.hash+ file is wrong but the downloaded +file is probably OK. + +Hashes are currently checked for files fetched from http/ftp servers, +Git or subversion repositories, files copied using scp and local files. +Hashes are not checked for other version control systems (such as CVS, +mercurial) because Buildroot currently does not generate reproducible +tarballs when source code is fetched from such version control +systems. + +Additionally, for packages for which it is possible to specify a custom +version (e.g. a custom version string, a remote tarball URL, or a VCS +repository location and changeset), Buildroot can't carry hashes for +those. It is however possible to xref:customize-hashes[provide a list of +extra hashes] that can cover such cases. + +Hashes should only be added in +.hash+ files for files that are +guaranteed to be stable. For example, patches auto-generated by Github +are not guaranteed to be stable, and therefore their hashes can change +over time. Such patches should not be downloaded, and instead be added +locally to the package folder. + +If the +.hash+ file is missing, then no check is done at all. + +[[adding-packages-start-script]] +=== The +SNNfoo+ start script + +Packages that provide a system daemon usually need to be started somehow +at boot. Buildroot comes with support for several init systems, some +are considered tier one (see xref:init-system[]), while others are also +available but do not have the same level of integration. Ideally, all +packages providing a system daemon should provide a start script for +BusyBox/SysV init and a systemd unit file. + +For consistency, the start script must follow the style and composition +as shown in the reference: +package/busybox/S01syslogd+. An annotated +example of this style is shown below. There is no specific coding style +for systemd unit files, but if a package comes with its own unit file, +that is preferred over a buildroot specific one, if it is compatible +with buildroot. + +The name of the start script is composed of the +SNN+ and the daemon +name. The +NN+ is the start order number which needs to be carefully +chosen. For example, a program that requires networking to be up should +not start before +S40network+. The scripts are started in alphabetical +order, so +S01syslogd+ starts before +S01watchdogd+, and +S02sysctl+ +start thereafter. + +------------------------------ +01: #!/bin/sh +02: +03: DAEMON="syslogd" +04: PIDFILE="/var/run/$DAEMON.pid" +05: +06: SYSLOGD_ARGS="" +07: +08: # shellcheck source=/dev/null +09: [ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON" +10: +11: # BusyBox' syslogd does not create a pidfile, so pass "-n" in the command line +12: # and use "-m" to instruct start-stop-daemon to create one. +13: start() { +14: printf 'Starting %s: ' "$DAEMON" +15: # shellcheck disable=SC2086 # we need the word splitting +16: start-stop-daemon -b -m -S -q -p "$PIDFILE" -x "/sbin/$DAEMON" \ +17: -- -n $SYSLOGD_ARGS +18: status=$? +19: if [ "$status" -eq 0 ]; then +20: echo "OK" +21: else +22: echo "FAIL" +23: fi +24: return "$status" +25: } +26: +27: stop() { +28: printf 'Stopping %s: ' "$DAEMON" +29: start-stop-daemon -K -q -p "$PIDFILE" +30: status=$? +31: if [ "$status" -eq 0 ]; then +32: rm -f "$PIDFILE" +33: echo "OK" +34: else +35: echo "FAIL" +36: fi +37: return "$status" +38: } +39: +40: restart() { +41: stop +42: sleep 1 +43: start +44: } +45: +46: case "$1" in +47: start|stop|restart) +48: "$1";; +49: reload) +50: # Restart, since there is no true "reload" feature. +51: restart;; +52: *) +53: echo "Usage: $0 {start|stop|restart|reload}" +54: exit 1 +55: esac +------------------------------ + +*Note:* programs that support reloading their configuration in some +fashion (+SIGHUP+) should provide a +reload()+ function similar to ++stop()+. The +start-stop-daemon+ supports +-K -s HUP+ for this. +It is recommended to always append +-x "/sbin/$DAEMON"+ to all the ++start-stop-daemon+ commands to ensure signals are set to a PID that +matches +$DAEMON+. + +Both start scripts and unit files can source command line arguments from ++/etc/default/foo+, in general, if such a file does not exist it should +not block the start of the daemon, unless there is some site specirfic +command line argument the daemon requires to start. For start scripts a ++FOO_ARGS="-s -o -m -e -args"+ can be defined to a default value in and +the user can override this from +/etc/default/foo+. diff --git a/docs/manual/adding-packages-directory.txt b/docs/manual/adding-packages-directory.txt deleted file mode 100644 index 04f5241d053b..000000000000 --- a/docs/manual/adding-packages-directory.txt +++ /dev/null @@ -1,645 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -=== Package directory - -First of all, create a directory under the +package+ directory for -your software, for example +libfoo+. - -Some packages have been grouped by topic in a sub-directory: -+x11r7+, +qt5+ and +gstreamer+. If your package fits in -one of these categories, then create your package directory in these. -New subdirectories are discouraged, however. - -=== Config files - -For the package to be displayed in the configuration tool, you need to -create a Config file in your package directory. There are two types: -+Config.in+ and +Config.in.host+. - -==== +Config.in+ file - -For packages used on the target, create a file named +Config.in+. This -file will contain the option descriptions related to our +libfoo+ software -that will be used and displayed in the configuration tool. It should basically -contain: - ---------------------------- -config BR2_PACKAGE_LIBFOO - bool "libfoo" - help - This is a comment that explains what libfoo is. The help text - should be wrapped. - - http://foosoftware.org/libfoo/ ---------------------------- - -The +bool+ line, +help+ line and other metadata information about the -configuration option must be indented with one tab. The help text -itself should be indented with one tab and two spaces, lines should -be wrapped to fit 72 columns, where tab counts for 8, so 62 characters -in the text itself. The help text must mention the upstream URL of the -project after an empty line. - -As a convention specific to Buildroot, the ordering of the attributes -is as follows: - -1. The type of option: +bool+, +string+... with the prompt -2. If needed, the +default+ value(s) -3. Any dependencies on the target in +depends on+ form -4. Any dependencies on the toolchain in +depends on+ form -5. Any dependencies on other packages in +depends on+ form -6. Any dependency of the +select+ form -7. The help keyword and help text. - -You can add other sub-options into a +if BR2_PACKAGE_LIBFOO...endif+ -statement to configure particular things in your software. You can look at -examples in other packages. The syntax of the +Config.in+ file is the same -as the one for the kernel Kconfig file. The documentation for this syntax is -available at http://kernel.org/doc/Documentation/kbuild/kconfig-language.txt[] - -Finally you have to add your new +libfoo/Config.in+ to -+package/Config.in+ (or in a category subdirectory if you decided to -put your package in one of the existing categories). The files -included there are 'sorted alphabetically' per category and are 'NOT' -supposed to contain anything but the 'bare' name of the package. - --------------------------- -source "package/libfoo/Config.in" --------------------------- - - -==== +Config.in.host+ file - -Some packages also need to be built for the host system. There are two -options here: - -* The host package is only required to satisfy build-time - dependencies of one or more target packages. In this case, add - +host-foo+ to the target package's +BAR_DEPENDENCIES+ variable. No - +Config.in.host+ file should be created. - -* The host package should be explicitly selectable by the user from - the configuration menu. In this case, create a +Config.in.host+ file - for that host package: -+ ---------------------------- -config BR2_PACKAGE_HOST_FOO - bool "host foo" - help - This is a comment that explains what foo for the host is. - - http://foosoftware.org/foo/ ---------------------------- -+ -The same coding style and options as for the +Config.in+ file are valid. -+ -Finally you have to add your new +libfoo/Config.in.host+ to -+package/Config.in.host+. The files included there are 'sorted alphabetically' -and are 'NOT' supposed to contain anything but the 'bare' name of the package. -+ --------------------------- -source "package/foo/Config.in.host" --------------------------- -+ -The host package will then be available from the +Host utilities+ menu. - -[[depends-on-vs-select]] -==== Choosing +depends on+ or +select+ - -The +Config.in+ file of your package must also ensure that -dependencies are enabled. Typically, Buildroot uses the following -rules: - -* Use a +select+ type of dependency for dependencies on - libraries. These dependencies are generally not obvious and it - therefore make sense to have the kconfig system ensure that the - dependencies are selected. For example, the _libgtk2_ package uses - +select BR2_PACKAGE_LIBGLIB2+ to make sure this library is also - enabled. - The +select+ keyword expresses the dependency with a backward - semantic. - -* Use a +depends on+ type of dependency when the user really needs to - be aware of the dependency. Typically, Buildroot uses this type of - dependency for dependencies on target architecture, MMU support and - toolchain options (see xref:dependencies-target-toolchain-options[]), - or for dependencies on "big" things, such as the X.org system. - The +depends on+ keyword expresses the dependency with a forward - semantic. - -.Note -The current problem with the _kconfig_ language is that these two -dependency semantics are not internally linked. Therefore, it may be -possible to select a package, whom one of its dependencies/requirement -is not met. - -An example illustrates both the usage of +select+ and +depends on+. - --------------------------- -config BR2_PACKAGE_RRDTOOL - bool "rrdtool" - depends on BR2_USE_WCHAR - select BR2_PACKAGE_FREETYPE - select BR2_PACKAGE_LIBART - select BR2_PACKAGE_LIBPNG - select BR2_PACKAGE_ZLIB - help - RRDtool is the OpenSource industry standard, high performance - data logging and graphing system for time series data. - - http://oss.oetiker.ch/rrdtool/ - -comment "rrdtool needs a toolchain w/ wchar" - depends on !BR2_USE_WCHAR --------------------------- - - -Note that these two dependency types are only transitive with the -dependencies of the same kind. - -This means, in the following example: - --------------------------- -config BR2_PACKAGE_A - bool "Package A" - -config BR2_PACKAGE_B - bool "Package B" - depends on BR2_PACKAGE_A - -config BR2_PACKAGE_C - bool "Package C" - depends on BR2_PACKAGE_B - -config BR2_PACKAGE_D - bool "Package D" - select BR2_PACKAGE_B - -config BR2_PACKAGE_E - bool "Package E" - select BR2_PACKAGE_D --------------------------- - -* Selecting +Package C+ will be visible if +Package B+ has been - selected, which in turn is only visible if +Package A+ has been - selected. - -* Selecting +Package E+ will select +Package D+, which will select - +Package B+, it will not check for the dependencies of +Package B+, - so it will not select +Package A+. - -* Since +Package B+ is selected but +Package A+ is not, this violates - the dependency of +Package B+ on +Package A+. Therefore, in such a - situation, the transitive dependency has to be added explicitly: - --------------------------- -config BR2_PACKAGE_D - bool "Package D" - depends on BR2_PACKAGE_A - select BR2_PACKAGE_B - -config BR2_PACKAGE_E - bool "Package E" - depends on BR2_PACKAGE_A - select BR2_PACKAGE_D --------------------------- - -Overall, for package library dependencies, +select+ should be -preferred. - -Note that such dependencies will ensure that the dependency option -is also enabled, but not necessarily built before your package. To do -so, the dependency also needs to be expressed in the +.mk+ file of the -package. - -Further formatting details: see xref:writing-rules-config-in[the -coding style]. - -[[dependencies-target-toolchain-options]] -==== Dependencies on target and toolchain options - -Many packages depend on certain options of the toolchain: the choice of -C library, C++ support, thread support, RPC support, wchar support, -or dynamic library support. Some packages can only be built on certain -target architectures, or if an MMU is available in the processor. - -These dependencies have to be expressed with the appropriate 'depends -on' statements in the Config.in file. Additionally, for dependencies on -toolchain options, a +comment+ should be displayed when the option is -not enabled, so that the user knows why the package is not available. -Dependencies on target architecture or MMU support should not be -made visible in a comment: since it is unlikely that the user can -freely choose another target, it makes little sense to show these -dependencies explicitly. - -The +comment+ should only be visible if the +config+ option itself would -be visible when the toolchain option dependencies are met. This means -that all other dependencies of the package (including dependencies on -target architecture and MMU support) have to be repeated on the -+comment+ definition. To keep it clear, the +depends on+ statement for -these non-toolchain option should be kept separate from the +depends on+ -statement for the toolchain options. -If there is a dependency on a config option in that same file (typically -the main package) it is preferable to have a global +if ... endif+ -construct rather than repeating the +depends on+ statement on the -comment and other config options. - -The general format of a dependency +comment+ for package foo is: - --------------------------- -foo needs a toolchain w/ featA, featB, featC --------------------------- - -for example: - --------------------------- -mpd needs a toolchain w/ C++, threads, wchar --------------------------- - -or - --------------------------- -crda needs a toolchain w/ threads --------------------------- - -Note that this text is kept brief on purpose, so that it will fit on a -80-character terminal. - -The rest of this section enumerates the different target and toolchain -options, the corresponding config symbols to depend on, and the text to -use in the comment. - -* Target architecture -** Dependency symbol: +BR2_powerpc+, +BR2_mips+, ... (see +arch/Config.in+) -** Comment string: no comment to be added - -* MMU support -** Dependency symbol: +BR2_USE_MMU+ -** Comment string: no comment to be added - -* Gcc +__sync_*+ built-ins used for atomic operations. They are - available in variants operating on 1 byte, 2 bytes, 4 bytes and 8 - bytes. Since different architectures support atomic operations on - different sizes, one dependency symbol is available for each size: -** Dependency symbol: +BR2_TOOLCHAIN_HAS_SYNC_1+ for 1 byte, - +BR2_TOOLCHAIN_HAS_SYNC_2+ for 2 bytes, - +BR2_TOOLCHAIN_HAS_SYNC_4+ for 4 bytes, +BR2_TOOLCHAIN_HAS_SYNC_8+ - for 8 bytes. -** Comment string: no comment to be added - -* Gcc +__atomic_*+ built-ins used for atomic operations. -** Dependency symbol: +BR2_TOOLCHAIN_HAS_ATOMIC+. -** Comment string: no comment to be added - -* Kernel headers -** Dependency symbol: +BR2_TOOLCHAIN_HEADERS_AT_LEAST_X_Y+, (replace - +X_Y+ with the proper version, see +toolchain/Config.in+) -** Comment string: +headers >= X.Y+ and/or `headers <= X.Y` (replace - +X.Y+ with the proper version) - -* GCC version -** Dependency symbol: +BR2_TOOLCHAIN_GCC_AT_LEAST_X_Y+, (replace - +X_Y+ with the proper version, see +toolchain/Config.in+) -** Comment string: +gcc >= X.Y+ and/or `gcc <= X.Y` (replace - +X.Y+ with the proper version) - -* Host GCC version -** Dependency symbol: +BR2_HOST_GCC_AT_LEAST_X_Y+, (replace - +X_Y+ with the proper version, see +Config.in+) -** Comment string: no comment to be added -** Note that it is usually not the package itself that has a minimum - host GCC version, but rather a host-package on which it depends. - -* C library -** Dependency symbol: +BR2_TOOLCHAIN_USES_GLIBC+, - +BR2_TOOLCHAIN_USES_MUSL+, +BR2_TOOLCHAIN_USES_UCLIBC+ -** Comment string: for the C library, a slightly different comment text - is used: +foo needs a glibc toolchain+, or `foo needs a glibc - toolchain w/ C++` - -* C++ support -** Dependency symbol: +BR2_INSTALL_LIBSTDCPP+ -** Comment string: `C++` - -* D support -** Dependency symbol: +BR2_TOOLCHAIN_HAS_DLANG+ -** Comment string: `Dlang` - -* Fortran support -** Dependency symbol: +BR2_TOOLCHAIN_HAS_FORTRAN+ -** Comment string: `fortran` - -* thread support -** Dependency symbol: +BR2_TOOLCHAIN_HAS_THREADS+ -** Comment string: +threads+ (unless +BR2_TOOLCHAIN_HAS_THREADS_NPTL+ - is also needed, in which case, specifying only +NPTL+ is sufficient) - -* NPTL thread support -** Dependency symbol: +BR2_TOOLCHAIN_HAS_THREADS_NPTL+ -** Comment string: +NPTL+ - -* RPC support -** Dependency symbol: +BR2_TOOLCHAIN_HAS_NATIVE_RPC+ -** Comment string: +RPC+ - -* wchar support -** Dependency symbol: +BR2_USE_WCHAR+ -** Comment string: +wchar+ - -* dynamic library -** Dependency symbol: +!BR2_STATIC_LIBS+ -** Comment string: +dynamic library+ - -==== Dependencies on a Linux kernel built by buildroot - -Some packages need a Linux kernel to be built by buildroot. These are -typically kernel modules or firmware. A comment should be added in the -Config.in file to express this dependency, similar to dependencies on -toolchain options. The general format is: - --------------------------- -foo needs a Linux kernel to be built --------------------------- - -If there is a dependency on both toolchain options and the Linux -kernel, use this format: - --------------------------- -foo needs a toolchain w/ featA, featB, featC and a Linux kernel to be built --------------------------- - -==== Dependencies on udev /dev management - -If a package needs udev /dev management, it should depend on symbol -+BR2_PACKAGE_HAS_UDEV+, and the following comment should be added: - --------------------------- -foo needs udev /dev management --------------------------- - -If there is a dependency on both toolchain options and udev /dev -management, use this format: - --------------------------- -foo needs udev /dev management and a toolchain w/ featA, featB, featC --------------------------- - -==== Dependencies on features provided by virtual packages - -Some features can be provided by more than one package, such as the -openGL libraries. - -See xref:virtual-package-tutorial[] for more on the virtual packages. - -=== The +.mk+ file - -[[adding-packages-mk]] - -Finally, here's the hardest part. Create a file named +libfoo.mk+. It -describes how the package should be downloaded, configured, built, -installed, etc. - -Depending on the package type, the +.mk+ file must be written in a -different way, using different infrastructures: - -* *Makefiles for generic packages* (not using autotools or CMake): - These are based on an infrastructure similar to the one used for - autotools-based packages, but require a little more work from the - developer. They specify what should be done for the configuration, - compilation and installation of the package. This - infrastructure must be used for all packages that do not use the - autotools as their build system. In the future, other specialized - infrastructures might be written for other build systems. We cover - them through in a xref:generic-package-tutorial[tutorial] and a - xref:generic-package-reference[reference]. - -* *Makefiles for autotools-based software* (autoconf, automake, etc.): - We provide a dedicated infrastructure for such packages, since - autotools is a very common build system. This infrastructure 'must' - be used for new packages that rely on the autotools as their build - system. We cover them through a xref:autotools-package-tutorial[tutorial] - and xref:autotools-package-reference[reference]. - -* *Makefiles for cmake-based software*: We provide a dedicated - infrastructure for such packages, as CMake is a more and more - commonly used build system and has a standardized behaviour. This - infrastructure 'must' be used for new packages that rely on - CMake. We cover them through a xref:cmake-package-tutorial[tutorial] - and xref:cmake-package-reference[reference]. - -* *Makefiles for Python modules*: We have a dedicated infrastructure - for Python modules that use the +distutils+, +flit+, +pep517+ or - +setuptools+ mechanisms. We cover them through a - xref:python-package-tutorial[tutorial] and a - xref:python-package-reference[reference]. - -* *Makefiles for Lua modules*: We have a dedicated infrastructure for - Lua modules available through the LuaRocks web site. We cover them - through a xref:luarocks-package-tutorial[tutorial] and a - xref:luarocks-package-reference[reference]. - -Further formatting details: see xref:writing-rules-mk[the writing -rules]. - -[[adding-packages-hash]] -=== The +.hash+ file - -When possible, you must add a third file, named +libfoo.hash+, that -contains the hashes of the downloaded files for the +libfoo+ -package. The only reason for not adding a +.hash+ file is when hash -checking is not possible due to how the package is downloaded. - -When a package has a version selection choice, then the hash file may be -stored in a subdirectory named after the version, e.g. -+package/libfoo/1.2.3/libfoo.hash+. This is especially important if the -different versions have different licensing terms, but they are stored -in the same file. Otherwise, the hash file should stay in the package's -directory. - -The hashes stored in that file are used to validate the integrity of the -downloaded files and of the license files. - -The format of this file is one line for each file for which to check the -hash, each line with the following three fields separated by two spaces: - -* the type of hash, one of: -** +md5+, +sha1+, +sha224+, +sha256+, +sha384+, +sha512+ -* the hash of the file: -** for +md5+, 32 hexadecimal characters -** for +sha1+, 40 hexadecimal characters -** for +sha224+, 56 hexadecimal characters -** for +sha256+, 64 hexadecimal characters -** for +sha384+, 96 hexadecimal characters -** for +sha512+, 128 hexadecimal characters -* the name of the file: -** for a source archive: the basename of the file, without any directory - component, -** for a license file: the path as it appears in +FOO_LICENSE_FILES+. - -Lines starting with a +#+ sign are considered comments, and ignored. Empty -lines are ignored. - -There can be more than one hash for a single file, each on its own line. In -this case, all hashes must match. - -.Note -Ideally, the hashes stored in this file should match the hashes published by -upstream, e.g. on their website, in the e-mail announcement... If upstream -provides more than one type of hash (e.g. +sha1+ and +sha512+), then it is -best to add all those hashes in the +.hash+ file. If upstream does not -provide any hash, or only provides an +md5+ hash, then compute at least one -strong hash yourself (preferably +sha256+, but not +md5+), and mention -this in a comment line above the hashes. - -.Note -The hashes for license files are used to detect a license change when a -package version is bumped. The hashes are checked during the make legal-info -target run. For a package with multiple versions (like Qt5), -create the hash file in a subdirectory ++ of that package -(see also xref:patch-apply-order[]). - -The example below defines a +sha1+ and a +sha256+ published by upstream for -the main +libfoo-1.2.3.tar.bz2+ tarball, an +md5+ from upstream and a -locally-computed +sha256+ hashes for a binary blob, a +sha256+ for a -downloaded patch, and an archive with no hash: - ----- -# Hashes from: http://www.foosoftware.org/download/libfoo-1.2.3.tar.bz2.{sha1,sha256}: -sha1 486fb55c3efa71148fe07895fd713ea3a5ae343a libfoo-1.2.3.tar.bz2 -sha256 efc8103cc3bcb06bda6a781532d12701eb081ad83e8f90004b39ab81b65d4369 libfoo-1.2.3.tar.bz2 - -# md5 from: http://www.foosoftware.org/download/libfoo-1.2.3.tar.bz2.md5, sha256 locally computed: -md5 2d608f3c318c6b7557d551a5a09314f03452f1a1 libfoo-data.bin -sha256 01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b libfoo-data.bin - -# Locally computed: -sha256 ff52101fb90bbfc3fe9475e425688c660f46216d7e751c4bbdb1dc85cdccacb9 libfoo-fix-blabla.patch - -# Hash for license files: -sha256 a45a845012742796534f7e91fe623262ccfb99460a2bd04015bd28d66fba95b8 COPYING -sha256 01b1f9f2c8ee648a7a596a1abe8aa4ed7899b1c9e5551bda06da6e422b04aa55 doc/COPYING.LGPL ----- - -If the +.hash+ file is present, and it contains one or more hashes for a -downloaded file, the hash(es) computed by Buildroot (after download) must -match the hash(es) stored in the +.hash+ file. If one or more hashes do -not match, Buildroot considers this an error, deletes the downloaded file, -and aborts. - -If the +.hash+ file is present, but it does not contain a hash for a -downloaded file, Buildroot considers this an error and aborts. However, -the downloaded file is left in the download directory since this -typically indicates that the +.hash+ file is wrong but the downloaded -file is probably OK. - -Hashes are currently checked for files fetched from http/ftp servers, -Git repositories, files copied using scp and local files. Hashes are -not checked for other version control systems (such as Subversion, -CVS, etc.) because Buildroot currently does not generate reproducible -tarballs when source code is fetched from such version control -systems. - -Hashes should only be added in +.hash+ files for files that are -guaranteed to be stable. For example, patches auto-generated by Github -are not guaranteed to be stable, and therefore their hashes can change -over time. Such patches should not be downloaded, and instead be added -locally to the package folder. - -If the +.hash+ file is missing, then no check is done at all. - -[[adding-packages-start-script]] -=== The +SNNfoo+ start script - -Packages that provide a system daemon usually need to be started somehow -at boot. Buildroot comes with support for several init systems, some -are considered tier one (see xref:init-system[]), while others are also -available but do not have the same level of integration. Ideally, all -packages providing a system daemon should provide a start script for -BusyBox/SysV init and a systemd unit file. - -For consistency, the start script must follow the style and composition -as shown in the reference: +package/busybox/S01syslogd+. An annotated -example of this style is shown below. There is no specific coding style -for systemd unit files, but if a package comes with its own unit file, -that is preferred over a buildroot specific one, if it is compatible -with buildroot. - -The name of the start script is composed of the +SNN+ and the daemon -name. The +NN+ is the start order number which needs to be carefully -chosen. For example, a program that requires networking to be up should -not start before +S40network+. The scripts are started in alphabetical -order, so +S01syslogd+ starts before +S01watchdogd+, and +S02sysctl+ -start thereafter. - ------------------------------- -01: #!/bin/sh -02: -03: DAEMON="syslogd" -04: PIDFILE="/var/run/$DAEMON.pid" -05: -06: SYSLOGD_ARGS="" -07: -08: # shellcheck source=/dev/null -09: [ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON" -10: -11: # BusyBox' syslogd does not create a pidfile, so pass "-n" in the command line -12: # and use "-m" to instruct start-stop-daemon to create one. -13: start() { -14: printf 'Starting %s: ' "$DAEMON" -15: # shellcheck disable=SC2086 # we need the word splitting -16: start-stop-daemon -b -m -S -q -p "$PIDFILE" -x "/sbin/$DAEMON" \ -17: -- -n $SYSLOGD_ARGS -18: status=$? -19: if [ "$status" -eq 0 ]; then -20: echo "OK" -21: else -22: echo "FAIL" -23: fi -24: return "$status" -25: } -26: -27: stop() { -28: printf 'Stopping %s: ' "$DAEMON" -29: start-stop-daemon -K -q -p "$PIDFILE" -30: status=$? -31: if [ "$status" -eq 0 ]; then -32: rm -f "$PIDFILE" -33: echo "OK" -34: else -35: echo "FAIL" -36: fi -37: return "$status" -38: } -39: -40: restart() { -41: stop -42: sleep 1 -43: start -44: } -45: -46: case "$1" in -47: start|stop|restart) -48: "$1";; -49: reload) -50: # Restart, since there is no true "reload" feature. -51: restart;; -52: *) -53: echo "Usage: $0 {start|stop|restart|reload}" -54: exit 1 -55: esac ------------------------------- - -*Note:* programs that support reloading their configuration in some -fashion (+SIGHUP+) should provide a +reload()+ function similar to -+stop()+. The +start-stop-daemon+ supports +-K -s HUP+ for this. -It is recommended to always append +-x "/sbin/$DAEMON"+ to all the -+start-stop-daemon+ commands to ensure signals are set to a PID that -matches +$DAEMON+. - -Both start scripts and unit files can source command line arguments from -+/etc/default/foo+, in general, if such a file does not exist it should -not block the start of the daemon, unless there is some site specirfic -command line argument the daemon requires to start. For start scripts a -+FOO_ARGS="-s -o -m -e -args"+ can be defined to a default value in and -the user can override this from +/etc/default/foo+. diff --git a/docs/manual/adding-packages-generic.adoc b/docs/manual/adding-packages-generic.adoc new file mode 100644 index 000000000000..76b037f43668 --- /dev/null +++ b/docs/manual/adding-packages-generic.adoc @@ -0,0 +1,668 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +=== Infrastructure for packages with specific build systems + +By 'packages with specific build systems' we mean all the packages +whose build system is not one of the standard ones, such as +'autotools' or 'CMake'. This typically includes packages whose build +system is based on hand-written Makefiles or shell scripts. + +[[generic-package-tutorial]] + +==== +generic-package+ tutorial + +------------------------------ +01: ################################################################################ +02: # +03: # libfoo +04: # +05: ################################################################################ +06: +07: LIBFOO_VERSION = 1.0 +08: LIBFOO_SOURCE = libfoo-$(LIBFOO_VERSION).tar.gz +09: LIBFOO_SITE = http://www.foosoftware.org/download +10: LIBFOO_LICENSE = GPL-3.0+ +11: LIBFOO_LICENSE_FILES = COPYING +12: LIBFOO_INSTALL_STAGING = YES +13: LIBFOO_CONFIG_SCRIPTS = libfoo-config +14: LIBFOO_DEPENDENCIES = host-libaaa libbbb +15: +16: define LIBFOO_BUILD_CMDS +17: $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) all +18: endef +19: +20: define LIBFOO_INSTALL_STAGING_CMDS +21: $(INSTALL) -D -m 0755 $(@D)/libfoo.a $(STAGING_DIR)/usr/lib/libfoo.a +22: $(INSTALL) -D -m 0644 $(@D)/foo.h $(STAGING_DIR)/usr/include/foo.h +23: $(INSTALL) -D -m 0755 $(@D)/libfoo.so* $(STAGING_DIR)/usr/lib +24: endef +25: +26: define LIBFOO_INSTALL_TARGET_CMDS +27: $(INSTALL) -D -m 0755 $(@D)/libfoo.so* $(TARGET_DIR)/usr/lib +28: $(INSTALL) -d -m 0755 $(TARGET_DIR)/etc/foo.d +29: endef +30: +31: define LIBFOO_USERS +32: foo -1 libfoo -1 * - - - LibFoo daemon +33: endef +34: +35: define LIBFOO_DEVICES +36: /dev/foo c 666 0 0 42 0 - - - +37: endef +38: +39: define LIBFOO_PERMISSIONS +40: /bin/foo f 4755 foo libfoo - - - - - +41: endef +42: +43: $(eval $(generic-package)) +-------------------------------- + +The Makefile begins on line 7 to 11 with metadata information: the +version of the package (+LIBFOO_VERSION+), the name of the +tarball containing the package (+LIBFOO_SOURCE+) (xz-ed tarball recommended) +the Internet location at which the tarball can be downloaded from +(+LIBFOO_SITE+), the license (+LIBFOO_LICENSE+) and file with the +license text (+LIBFOO_LICENSE_FILES+). All variables must start with +the same prefix, +LIBFOO_+ in this case. This prefix is always the +uppercased version of the package name (see below to understand where +the package name is defined). + +On line 12, we specify that this package wants to install something to +the staging space. This is often needed for libraries, since they must +install header files and other development files in the staging space. +This will ensure that the commands listed in the ++LIBFOO_INSTALL_STAGING_CMDS+ variable will be executed. + +On line 13, we specify that there is some fixing to be done to some +of the 'libfoo-config' files that were installed during ++LIBFOO_INSTALL_STAGING_CMDS+ phase. +These *-config files are executable shell script files that are +located in '$(STAGING_DIR)/usr/bin' directory and are executed +by other 3rd party packages to find out the location and the linking +flags of this particular package. + +The problem is that all these *-config files by default give wrong, +host system linking flags that are unsuitable for cross-compiling. + +For example: '-I/usr/include' instead of '-I$(STAGING_DIR)/usr/include' +or: '-L/usr/lib' instead of '-L$(STAGING_DIR)/usr/lib' + +So some sed magic is done to these scripts to make them give correct +flags. +The argument to be given to +LIBFOO_CONFIG_SCRIPTS+ is the file name(s) +of the shell script(s) needing fixing. All these names are relative to +'$(STAGING_DIR)/usr/bin' and if needed multiple names can be given. + +In addition, the scripts listed in +LIBFOO_CONFIG_SCRIPTS+ are removed +from +$(TARGET_DIR)/usr/bin+, since they are not needed on the target. + +.Config script: 'divine' package +================================ +Package divine installs shell script '$(STAGING_DIR)/usr/bin/divine-config'. + +So its fixup would be: + +-------------------------------- +DIVINE_CONFIG_SCRIPTS = divine-config +-------------------------------- +================================ + +.Config script: 'imagemagick' package: +================================ +Package imagemagick installs the following scripts: +'$(STAGING_DIR)/usr/bin/{Magick,Magick++,MagickCore,MagickWand,Wand}-config' + +So it's fixup would be: + +-------------------------------- +IMAGEMAGICK_CONFIG_SCRIPTS = \ + Magick-config Magick++-config \ + MagickCore-config MagickWand-config Wand-config +-------------------------------- +================================ + +On line 14, we specify the list of dependencies this package relies +on. These dependencies are listed in terms of lower-case package names, +which can be packages for the target (without the +host-+ +prefix) or packages for the host (with the +host-+) prefix). +Buildroot will ensure that all these packages are built and installed +'before' the current package starts its configuration. + +The rest of the Makefile, lines 16..29, defines what should be done +at the different steps of the package configuration, compilation and +installation. ++LIBFOO_BUILD_CMDS+ tells what steps should be performed to +build the package. +LIBFOO_INSTALL_STAGING_CMDS+ tells what +steps should be performed to install the package in the staging space. ++LIBFOO_INSTALL_TARGET_CMDS+ tells what steps should be +performed to install the package in the target space. + +All these steps rely on the +$(@D)+ variable, which +contains the directory where the source code of the package has been +extracted. + +On lines 31..33, we define a user that is used by this package (e.g. +to run a daemon as non-root) (+LIBFOO_USERS+). + +On line 35..37, we define a device-node file used by this package +(+LIBFOO_DEVICES+). + +On line 39..41, we define the permissions to set to specific files +installed by this package (+LIBFOO_PERMISSIONS+). + +Finally, on line 43, we call the +generic-package+ function, which +generates, according to the variables defined previously, all the +Makefile code necessary to make your package working. + +[[generic-package-reference]] + +==== +generic-package+ reference + +There are two variants of the generic target. The +generic-package+ macro is +used for packages to be cross-compiled for the target. The ++host-generic-package+ macro is used for host packages, natively compiled +for the host. It is possible to call both of them in a single +.mk+ +file: once to create the rules to generate a target +package and once to create the rules to generate a host package: + +---------------------- +$(eval $(generic-package)) +$(eval $(host-generic-package)) +---------------------- + +This might be useful if the compilation of the target package requires +some tools to be installed on the host. If the package name is ++libfoo+, then the name of the package for the target is also ++libfoo+, while the name of the package for the host is ++host-libfoo+. These names should be used in the DEPENDENCIES +variables of other packages, if they depend on +libfoo+ or ++host-libfoo+. + +The call to the +generic-package+ and/or +host-generic-package+ macro +*must* be at the end of the +.mk+ file, after all variable definitions. +The call to +host-generic-package+ *must* be after the call to ++generic-package+, if any. + +For the target package, the +generic-package+ uses the variables defined by +the .mk file and prefixed by the uppercased package name: ++LIBFOO_*+. +host-generic-package+ uses the +HOST_LIBFOO_*+ variables. For +'some' variables, if the +HOST_LIBFOO_+ prefixed variable doesn't +exist, the package infrastructure uses the corresponding variable +prefixed by +LIBFOO_+. This is done for variables that are likely to +have the same value for both the target and host packages. See below +for details. + +The list of variables that can be set in a +.mk+ file to give metadata +information is (assuming the package name is +libfoo+) : + +* +LIBFOO_VERSION+, mandatory, must contain the version of the + package. Note that if +HOST_LIBFOO_VERSION+ doesn't exist, it is + assumed to be the same as +LIBFOO_VERSION+. It can also be a + revision number or a tag for packages that are fetched directly + from their version control system. Examples: + ** a version for a release tarball: +LIBFOO_VERSION = 0.1.2+ + ** a sha1 for a git tree: +LIBFOO_VERSION = cb9d6aa9429e838f0e54faa3d455bcbab5eef057+ + ** a tag for a git tree +LIBFOO_VERSION = v0.1.2+ ++ +.Note: +Using a branch name as +FOO_VERSION+ is not supported, because it does +not and can not work as people would expect it should: ++ + 1. due to local caching, Buildroot will not re-fetch the repository, + so people who expect to be able to follow the remote repository + would be quite surprised and disappointed; + 2. because two builds can never be perfectly simultaneous, and because + the remote repository may get new commits on the branch anytime, + two users, using the same Buildroot tree and building the same + configuration, may get different source, thus rendering the build + non reproducible, and people would be quite surprised and + disappointed. + +* +LIBFOO_SOURCE+ may contain the name of the tarball of the package, + which Buildroot will use to download the tarball from + +LIBFOO_SITE+. If +HOST_LIBFOO_SOURCE+ is not specified, it defaults + to +LIBFOO_SOURCE+. If none are specified, then the value is assumed + to be +libfoo-$(LIBFOO_VERSION).tar.gz+. + + Example: +LIBFOO_SOURCE = foobar-$(LIBFOO_VERSION).tar.bz2+ + +* +LIBFOO_PATCH+ may contain a space-separated list of patch file + names, that Buildroot will download and apply to the package source + code. If an entry contains +://+, then Buildroot will assume it is a + full URL and download the patch from this location. Otherwise, + Buildroot will assume that the patch should be downloaded from + +LIBFOO_SITE+. If +HOST_LIBFOO_PATCH+ is not specified, it defaults + to +LIBFOO_PATCH+. Note that patches that are included in Buildroot + itself use a different mechanism: all files of the form + +*.patch+ present in the package directory inside + Buildroot will be applied to the package after extraction (see + xref:patch-policy[patching a package]). Finally, patches listed in + the +LIBFOO_PATCH+ variable are applied _before_ the patches stored + in the Buildroot package directory. + +* +LIBFOO_SITE+ provides the location of the package, which can be a + URL or a local filesystem path. HTTP, FTP and SCP are supported URL + types for retrieving package tarballs. In these cases don't include a + trailing slash: it will be added by Buildroot between the directory + and the filename as appropriate. Git, Subversion, Mercurial, + and Bazaar are supported URL types for retrieving packages directly + from source code management systems. There is a helper function to make + it easier to download source tarballs from GitHub (refer to + xref:github-download-url[] for details). A filesystem path may be used + to specify either a tarball or a directory containing the package + source code. See +LIBFOO_SITE_METHOD+ below for more details on how + retrieval works. + + Note that SCP URLs should be of the form + +scp://[user@]host:filepath+, and that filepath is relative to the + user's home directory, so you may want to prepend the path with a + slash for absolute paths: + +scp://[user@]host:/absolutepath+. The same goes for SFTP URLs. + + If +HOST_LIBFOO_SITE+ is not specified, it defaults to + +LIBFOO_SITE+. + Examples: + + +LIBFOO_SITE=http://www.libfoosoftware.org/libfoo+ + + +LIBFOO_SITE=http://svn.xiph.org/trunk/Tremor+ + + +LIBFOO_SITE=/opt/software/libfoo.tar.gz+ + + +LIBFOO_SITE=$(TOPDIR)/../src/libfoo+ + +* +LIBFOO_DL_OPTS+ is a space-separated list of additional options to + pass to the downloader. Useful for retrieving documents with + server-side checking for user logins and passwords, or to use a proxy. + All download methods valid for +LIBFOO_SITE_METHOD+ are supported; + valid options depend on the download method (consult the man page + for the respective download utilities). + +* +LIBFOO_EXTRA_DOWNLOADS+ is a space-separated list of additional + files that Buildroot should download. If an entry contains +://+ + then Buildroot will assume it is a complete URL and will download + the file using this URL. Otherwise, Buildroot will assume the file + to be downloaded is located at +LIBFOO_SITE+. Buildroot will not do + anything with those additional files, except download them: it will + be up to the package recipe to use them from +$(LIBFOO_DL_DIR)+. + +* +LIBFOO_SITE_METHOD+ determines the method used to fetch or copy the + package source code. In many cases, Buildroot guesses the method + from the contents of +LIBFOO_SITE+ and setting +LIBFOO_SITE_METHOD+ + is unnecessary. When +HOST_LIBFOO_SITE_METHOD+ is not specified, it + defaults to the value of +LIBFOO_SITE_METHOD+. + + The possible values of +LIBFOO_SITE_METHOD+ are: + ** +wget+ for normal FTP/HTTP downloads of tarballs. Used by + default when +LIBFOO_SITE+ begins with +http://+, +https://+ or + +ftp://+. + ** +scp+ for downloads of tarballs over SSH with scp. Used by + default when +LIBFOO_SITE+ begins with +scp://+. + ** +sftp+ for downloads of tarballs over SSH with sftp. Used by + default when +LIBFOO_SITE+ begins with +sftp://+. + ** +svn+ for retrieving source code from a Subversion repository. + Used by default when +LIBFOO_SITE+ begins with +svn://+. When a + +http://+ Subversion repository URL is specified in + +LIBFOO_SITE+, one 'must' specify +LIBFOO_SITE_METHOD=svn+. + Buildroot performs a checkout which is preserved as a tarball in + the download cache; subsequent builds use the tarball instead of + performing another checkout. + ** +cvs+ for retrieving source code from a CVS repository. + Used by default when +LIBFOO_SITE+ begins with +cvs://+. + The downloaded source code is cached as with the +svn+ method. + Anonymous pserver mode is assumed otherwise explicitly defined + on +LIBFOO_SITE+. Both + +LIBFOO_SITE=cvs://libfoo.net:/cvsroot/libfoo+ and + +LIBFOO_SITE=cvs://:ext:libfoo.net:/cvsroot/libfoo+ + are accepted, on the former anonymous pserver access mode is + assumed. + +LIBFOO_SITE+ 'must' contain the source URL as well as the remote + repository directory. The module is the package name. + +LIBFOO_VERSION+ is 'mandatory' and 'must' be a tag, a branch, or + a date (e.g. "2014-10-20", "2014-10-20 13:45", "2014-10-20 + 13:45+01" see "man cvs" for further details). + ** +git+ for retrieving source code from a Git repository. Used by + default when +LIBFOO_SITE+ begins with +git://+. The downloaded + source code is cached as with the +svn+ method. + ** +hg+ for retrieving source code from a Mercurial repository. One + 'must' specify +LIBFOO_SITE_METHOD=hg+ when +LIBFOO_SITE+ + contains a Mercurial repository URL. The downloaded source code + is cached as with the +svn+ method. + ** +bzr+ for retrieving source code from a Bazaar repository. Used + by default when +LIBFOO_SITE+ begins with +bzr://+. The + downloaded source code is cached as with the +svn+ method. + ** +file+ for a local tarball. One should use this when + +LIBFOO_SITE+ specifies a package tarball as a local filename. + Useful for software that isn't available publicly or in version + control. + ** +local+ for a local source code directory. One should use this + when +LIBFOO_SITE+ specifies a local directory path containing + the package source code. Buildroot copies the contents of the + source directory into the package's build directory. Note that + for +local+ packages, no patches are applied. If you need to + still patch the source code, use +LIBFOO_POST_RSYNC_HOOKS+, see + xref:hooks-rsync[]. + +* +LIBFOO_GIT_SUBMODULES+ can be set to +YES+ to create an archive + with the git submodules in the repository. This is only available + for packages downloaded with git (i.e. when + +LIBFOO_SITE_METHOD=git+). Note that we try not to use such git + submodules when they contain bundled libraries, in which case we + prefer to use those libraries from their own package. + +* +LIBFOO_GIT_LFS+ should be set to +YES+ if the Git repository uses + Git LFS to store large files out of band. This is only available for + packages downloaded with git (i.e. when +LIBFOO_SITE_METHOD=git+). + +* +LIBFOO_SVN_EXTERNALS+ can be set to +YES+ to create an archive with + the svn external references. This is only available for packages + downloaded with subversion. + +* +LIBFOO_STRIP_COMPONENTS+ is the number of leading components + (directories) that tar must strip from file names on extraction. + The tarball for most packages has one leading component named + "-", thus Buildroot passes + --strip-components=1 to tar to remove it. + For non-standard packages that don't have this component, or + that have more than one leading component to strip, set this + variable with the value to be passed to tar. Default: 1. + +* +LIBFOO_EXCLUDES+ is a space-separated list of patterns to exclude + when extracting the archive. Each item from that list is passed as + a tar's +--exclude+ option. By default, empty. + +* +LIBFOO_DEPENDENCIES+ lists the dependencies (in terms of package + name) that are required for the current target package to + compile. These dependencies are guaranteed to be compiled and + installed before the configuration of the current package starts. + However, modifications to configuration of these dependencies will + not force a rebuild of the current package. In a similar way, + +HOST_LIBFOO_DEPENDENCIES+ lists the dependencies for the current + host package. + +* +LIBFOO_EXTRACT_DEPENDENCIES+ lists the dependencies (in terms of + package name) that are required for the current target package to be + extracted. These dependencies are guaranteed to be compiled and + installed before the extract step of the current package + starts. This is only used internally by the package infrastructure, + and should typically not be used directly by packages. + +* +LIBFOO_PATCH_DEPENDENCIES+ lists the dependencies (in terms of + package name) that are required for the current package to be + patched. These dependencies are guaranteed to be extracted and + patched (but not necessarily built) before the current package is + patched. In a similar way, +HOST_LIBFOO_PATCH_DEPENDENCIES+ lists + the dependencies for the current host package. + This is seldom used; usually, +LIBFOO_DEPENDENCIES+ is what you + really want to use. + +* +LIBFOO_PROVIDES+ lists all the virtual packages +libfoo+ is an + implementation of. See xref:virtual-package-tutorial[]. + +* +LIBFOO_INSTALL_STAGING+ can be set to +YES+ or +NO+ (default). If + set to +YES+, then the commands in the +LIBFOO_INSTALL_STAGING_CMDS+ + variables are executed to install the package into the staging + directory. + +* +LIBFOO_INSTALL_TARGET+ can be set to +YES+ (default) or +NO+. If + set to +YES+, then the commands in the +LIBFOO_INSTALL_TARGET_CMDS+ + variables are executed to install the package into the target + directory. + +* +LIBFOO_INSTALL_IMAGES+ can be set to +YES+ or +NO+ (default). If + set to +YES+, then the commands in the +LIBFOO_INSTALL_IMAGES_CMDS+ + variable are executed to install the package into the images + directory. + +* +LIBFOO_CONFIG_SCRIPTS+ lists the names of the files in + '$(STAGING_DIR)/usr/bin' that need some special fixing to make them + cross-compiling friendly. Multiple file names separated by space can + be given and all are relative to '$(STAGING_DIR)/usr/bin'. The files + listed in +LIBFOO_CONFIG_SCRIPTS+ are also removed from + +$(TARGET_DIR)/usr/bin+ since they are not needed on the target. + +* +LIBFOO_DEVICES+ lists the device files to be created by Buildroot + when using the static device table. The syntax to use is the + makedevs one. You can find some documentation for this syntax in the + xref:makedev-syntax[]. This variable is optional. + +* +LIBFOO_PERMISSIONS+ lists the changes of permissions to be done at + the end of the build process. The syntax is once again the makedevs one. + You can find some documentation for this syntax in the xref:makedev-syntax[]. + This variable is optional. + +* +LIBFOO_USERS+ lists the users to create for this package, if it installs + a program you want to run as a specific user (e.g. as a daemon, or as a + cron-job). The syntax is similar in spirit to the makedevs one, and is + described in the xref:makeuser-syntax[]. This variable is optional. + +* +LIBFOO_LICENSE+ defines the license (or licenses) under which the package + is released. + This name will appear in the manifest file produced by +make legal-info+. + If the license appears in https://spdx.org/licenses/[the SPDX License List], + use the SPDX short identifier to make the manifest file uniform. + Otherwise, describe the license in a precise and concise way, avoiding + ambiguous names such as +BSD+ which actually name a family of licenses. + This variable is optional. If it is not defined, +unknown+ will appear in + the +license+ field of the manifest file for this package. + + The expected format for this variable must comply with the following rules: + ** If different parts of the package are released under different + licenses, then +comma+ separate licenses (e.g. +`LIBFOO_LICENSE = + GPL-2.0+, LGPL-2.1+`+). If there is clear distinction between which + component is licensed under what license, then annotate the license + with that component, between parenthesis (e.g. +`LIBFOO_LICENSE = + GPL-2.0+ (programs), LGPL-2.1+ (libraries)`+). + ** If some licenses are conditioned on a sub-option being enabled, append + the conditional licenses with a comma (e.g.: `FOO_LICENSE += , GPL-2.0+ + (programs)`); the infrastructure will internally remove the space before + the comma. + ** If the package is dual licensed, then separate licenses with the + +or+ keyword (e.g. +`LIBFOO_LICENSE = AFL-2.1 or GPL-2.0+`+). + +* +LIBFOO_LICENSE_FILES+ is a space-separated list of files in the package + tarball that contain the license(s) under which the package is released. + +make legal-info+ copies all of these files in the +legal-info+ directory. + See xref:legal-info[] for more information. + This variable is optional. If it is not defined, a warning will be produced + to let you know, and +not saved+ will appear in the +license files+ field + of the manifest file for this package. + +* +LIBFOO_ACTUAL_SOURCE_TARBALL+ only applies to packages whose + +LIBFOO_SITE+ / +LIBFOO_SOURCE+ pair points to an archive that does + not actually contain source code, but binary code. This a very + uncommon case, only known to apply to external toolchains which come + already compiled, although theoretically it might apply to other + packages. In such cases a separate tarball is usually available with + the actual source code. Set +LIBFOO_ACTUAL_SOURCE_TARBALL+ to the + name of the actual source code archive and Buildroot will download + it and use it when you run +make legal-info+ to collect + legally-relevant material. Note this file will not be downloaded + during regular builds nor by +make source+. + +* +LIBFOO_ACTUAL_SOURCE_SITE+ provides the location of the actual + source tarball. The default value is +LIBFOO_SITE+, so you don't + need to set this variable if the binary and source archives are + hosted on the same directory. If +LIBFOO_ACTUAL_SOURCE_TARBALL+ is + not set, it doesn't make sense to define + +LIBFOO_ACTUAL_SOURCE_SITE+. + +* +LIBFOO_REDISTRIBUTE+ can be set to +YES+ (default) or +NO+ to indicate if + the package source code is allowed to be redistributed. Set it to +NO+ for + non-opensource packages: Buildroot will not save the source code for this + package when collecting the +legal-info+. + +* +LIBFOO_FLAT_STACKSIZE+ defines the stack size of an application built into + the FLAT binary format. The application stack size on the NOMMU architecture + processors can't be enlarged at run time. The default stack size for the + FLAT binary format is only 4k bytes. If the application consumes more stack, + append the required number here. + +* +LIBFOO_BIN_ARCH_EXCLUDE+ is a space-separated list of paths (relative + to the target directory) to ignore when checking that the package + installs correctly cross-compiled binaries. You seldom need to set this + variable, unless the package installs binary blobs outside the default + locations, `/lib/firmware`, `/usr/lib/firmware`, `/lib/modules`, + `/usr/lib/modules`, and `/usr/share`, which are automatically excluded. + +* +LIBFOO_IGNORE_CVES+ is a space-separated list of CVEs that tells + Buildroot CVE tracking tools which CVEs should be ignored for this + package. This is typically used when the CVE is fixed by a patch in + the package, or when the CVE for some reason does not affect the + Buildroot package. A Makefile comment must always precede the + addition of a CVE to this variable. Example: + +---------------------- +# 0001-fix-cve-2020-12345.patch +LIBFOO_IGNORE_CVES += CVE-2020-12345 +# only when built with libbaz, which Buildroot doesn't support +LIBFOO_IGNORE_CVES += CVE-2020-54321 +---------------------- + +* +LIBFOO_CPE_ID_*+ variables is a set of variables that allows the + package to define its https://nvd.nist.gov/products/cpe[CPE + identifier]. The available variables are: ++ +-- +** +LIBFOO_CPE_ID_PREFIX+, specifies the prefix of the CPE identifier, + i.e the first three fields. When not defined, the default value is + +cpe:2.3:a+. + +** +LIBFOO_CPE_ID_VENDOR+, specifies the vendor part of the CPE + identifier. When not defined, the default value is + +_project+. + +** +LIBFOO_CPE_ID_PRODUCT+, specifies the product part of the CPE + identifier. When not defined, the default value is ++. + +** +LIBFOO_CPE_ID_VERSION+, specifies the version part of the CPE + identifier. When not defined the default value is + +$(LIBFOO_VERSION)+. + +** +LIBFOO_CPE_ID_UPDATE+ specifies the _update_ part of the CPE + identifier. When not defined the default value is +*+. +-- ++ +If any of those variables is defined, then the generic package +infrastructure assumes the package provides valid CPE information. In +this case, the generic package infrastructure will define ++LIBFOO_CPE_ID+. ++ +For a host package, if its +LIBFOO_CPE_ID_*+ variables are not +defined, it inherits the value of those variables from the +corresponding target package. + +The recommended way to define these variables is to use the following +syntax: + +---------------------- +LIBFOO_VERSION = 2.32 +---------------------- + +Now, the variables that define what should be performed at the +different steps of the build process. + +* +LIBFOO_EXTRACT_CMDS+ lists the actions to be performed to extract + the package. This is generally not needed as tarballs are + automatically handled by Buildroot. However, if the package uses a + non-standard archive format, such as a ZIP or RAR file, or has a + tarball with a non-standard organization, this variable allows to + override the package infrastructure default behavior. + +* +LIBFOO_CONFIGURE_CMDS+ lists the actions to be performed to + configure the package before its compilation. + +* +LIBFOO_BUILD_CMDS+ lists the actions to be performed to + compile the package. + +* +HOST_LIBFOO_INSTALL_CMDS+ lists the actions to be performed + to install the package, when the package is a host package. The + package must install its files to the directory given by + +$(HOST_DIR)+. All files, including development files such as + headers should be installed, since other packages might be compiled + on top of this package. + +* +LIBFOO_INSTALL_TARGET_CMDS+ lists the actions to be + performed to install the package to the target directory, when the + package is a target package. The package must install its files to + the directory given by +$(TARGET_DIR)+. Only the files required for + 'execution' of the package have to be + installed. Header files, static libraries and documentation will be + removed again when the target filesystem is finalized. + +* +LIBFOO_INSTALL_STAGING_CMDS+ lists the actions to be + performed to install the package to the staging directory, when the + package is a target package. The package must install its files to + the directory given by +$(STAGING_DIR)+. All development files + should be installed, since they might be needed to compile other + packages. + +* +LIBFOO_INSTALL_IMAGES_CMDS+ lists the actions to be performed to + install the package to the images directory, when the package is a + target package. The package must install its files to the directory + given by +$(BINARIES_DIR)+. Only files that are binary images (aka + images) that do not belong in the +TARGET_DIR+ but are necessary + for booting the board should be placed here. For example, a package + should utilize this step if it has binaries which would be similar + to the kernel image, bootloader or root filesystem images. + +* +LIBFOO_INSTALL_INIT_SYSV+, +LIBFOO_INSTALL_INIT_OPENRC+ and + +LIBFOO_INSTALL_INIT_SYSTEMD+ list the actions to install init + scripts either for the systemV-like init systems (busybox, + sysvinit, etc.), openrc or for the systemd units. These commands + will be run only when the relevant init system is installed (i.e. + if systemd is selected as the init system in the configuration, + only +LIBFOO_INSTALL_INIT_SYSTEMD+ will be run). The only exception + is when openrc is chosen as init system and +LIBFOO_INSTALL_INIT_OPENRC+ + has not been set, in such situation +LIBFOO_INSTALL_INIT_SYSV+ will + be called, since openrc supports sysv init scripts. + When systemd is used as the init system, buildroot will automatically enable + all services using the +systemctl preset-all+ command in the final phase of + image building. You can add preset files to prevent a particular unit from + being automatically enabled by buildroot. + +* +LIBFOO_HELP_CMDS+ lists the actions to print the package help, which + is included to the main +make help+ output. These commands can print + anything in any format. + This is seldom used, as packages rarely have custom rules. *Do not use + this variable*, unless you really know that you need to print help. + +* +LIBFOO_LINUX_CONFIG_FIXUPS+ lists the Linux kernel configuration + options that are needed to build and use this package, and without + which the package is fundamentally broken. This shall be a set of + calls to one of the kconfig tweaking option: `KCONFIG_ENABLE_OPT`, + `KCONFIG_DISABLE_OPT`, or `KCONFIG_SET_OPT`. + This is seldom used, as package usually have no strict requirements on + the kernel options. + +The preferred way to define these variables is: + +---------------------- +define LIBFOO_CONFIGURE_CMDS + action 1 + action 2 + action 3 +endef +---------------------- + +In the action definitions, you can use the following variables: + +* +$(LIBFOO_PKGDIR)+ contains the path to the directory containing the + +libfoo.mk+ and +Config.in+ files. This variable is useful when it is + necessary to install a file bundled in Buildroot, like a runtime + configuration file, a splashscreen image... + +* +$(@D)+, which contains the directory in which the package source + code has been uncompressed. + +* +$(LIBFOO_DL_DIR)+ contains the path to the directory where all the downloads + made by Buildroot for +libfoo+ are stored in. + +* +$(TARGET_CC)+, +$(TARGET_LD)+, etc. to get the target + cross-compilation utilities + +* +$(TARGET_CROSS)+ to get the cross-compilation toolchain prefix + +* Of course the +$(HOST_DIR)+, +$(STAGING_DIR)+ and +$(TARGET_DIR)+ + variables to install the packages properly. Those variables point to + the global _host_, _staging_ and _target_ directories, unless + _per-package directory_ support is used, in which case they point to + the current package _host_, _staging_ and _target_ directories. In + both cases, it doesn't make any difference from the package point of + view: it should simply use +HOST_DIR+, +STAGING_DIR+ and + +TARGET_DIR+. See xref:top-level-parallel-build[] for more details + about _per-package directory_ support. + +Finally, you can also use hooks. See xref:hooks[] for more information. diff --git a/docs/manual/adding-packages-generic.txt b/docs/manual/adding-packages-generic.txt deleted file mode 100644 index fbe37f9ca9ff..000000000000 --- a/docs/manual/adding-packages-generic.txt +++ /dev/null @@ -1,664 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -=== Infrastructure for packages with specific build systems - -By 'packages with specific build systems' we mean all the packages -whose build system is not one of the standard ones, such as -'autotools' or 'CMake'. This typically includes packages whose build -system is based on hand-written Makefiles or shell scripts. - -[[generic-package-tutorial]] - -==== +generic-package+ tutorial - ------------------------------- -01: ################################################################################ -02: # -03: # libfoo -04: # -05: ################################################################################ -06: -07: LIBFOO_VERSION = 1.0 -08: LIBFOO_SOURCE = libfoo-$(LIBFOO_VERSION).tar.gz -09: LIBFOO_SITE = http://www.foosoftware.org/download -10: LIBFOO_LICENSE = GPL-3.0+ -11: LIBFOO_LICENSE_FILES = COPYING -12: LIBFOO_INSTALL_STAGING = YES -13: LIBFOO_CONFIG_SCRIPTS = libfoo-config -14: LIBFOO_DEPENDENCIES = host-libaaa libbbb -15: -16: define LIBFOO_BUILD_CMDS -17: $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) all -18: endef -19: -20: define LIBFOO_INSTALL_STAGING_CMDS -21: $(INSTALL) -D -m 0755 $(@D)/libfoo.a $(STAGING_DIR)/usr/lib/libfoo.a -22: $(INSTALL) -D -m 0644 $(@D)/foo.h $(STAGING_DIR)/usr/include/foo.h -23: $(INSTALL) -D -m 0755 $(@D)/libfoo.so* $(STAGING_DIR)/usr/lib -24: endef -25: -26: define LIBFOO_INSTALL_TARGET_CMDS -27: $(INSTALL) -D -m 0755 $(@D)/libfoo.so* $(TARGET_DIR)/usr/lib -28: $(INSTALL) -d -m 0755 $(TARGET_DIR)/etc/foo.d -29: endef -30: -31: define LIBFOO_USERS -32: foo -1 libfoo -1 * - - - LibFoo daemon -33: endef -34: -35: define LIBFOO_DEVICES -36: /dev/foo c 666 0 0 42 0 - - - -37: endef -38: -39: define LIBFOO_PERMISSIONS -40: /bin/foo f 4755 foo libfoo - - - - - -41: endef -42: -43: $(eval $(generic-package)) --------------------------------- - -The Makefile begins on line 7 to 11 with metadata information: the -version of the package (+LIBFOO_VERSION+), the name of the -tarball containing the package (+LIBFOO_SOURCE+) (xz-ed tarball recommended) -the Internet location at which the tarball can be downloaded from -(+LIBFOO_SITE+), the license (+LIBFOO_LICENSE+) and file with the -license text (+LIBFOO_LICENSE_FILES+). All variables must start with -the same prefix, +LIBFOO_+ in this case. This prefix is always the -uppercased version of the package name (see below to understand where -the package name is defined). - -On line 12, we specify that this package wants to install something to -the staging space. This is often needed for libraries, since they must -install header files and other development files in the staging space. -This will ensure that the commands listed in the -+LIBFOO_INSTALL_STAGING_CMDS+ variable will be executed. - -On line 13, we specify that there is some fixing to be done to some -of the 'libfoo-config' files that were installed during -+LIBFOO_INSTALL_STAGING_CMDS+ phase. -These *-config files are executable shell script files that are -located in '$(STAGING_DIR)/usr/bin' directory and are executed -by other 3rd party packages to find out the location and the linking -flags of this particular package. - -The problem is that all these *-config files by default give wrong, -host system linking flags that are unsuitable for cross-compiling. - -For example: '-I/usr/include' instead of '-I$(STAGING_DIR)/usr/include' -or: '-L/usr/lib' instead of '-L$(STAGING_DIR)/usr/lib' - -So some sed magic is done to these scripts to make them give correct -flags. -The argument to be given to +LIBFOO_CONFIG_SCRIPTS+ is the file name(s) -of the shell script(s) needing fixing. All these names are relative to -'$(STAGING_DIR)/usr/bin' and if needed multiple names can be given. - -In addition, the scripts listed in +LIBFOO_CONFIG_SCRIPTS+ are removed -from +$(TARGET_DIR)/usr/bin+, since they are not needed on the target. - -.Config script: 'divine' package -================================ -Package divine installs shell script '$(STAGING_DIR)/usr/bin/divine-config'. - -So its fixup would be: - --------------------------------- -DIVINE_CONFIG_SCRIPTS = divine-config --------------------------------- -================================ - -.Config script: 'imagemagick' package: -================================ -Package imagemagick installs the following scripts: -'$(STAGING_DIR)/usr/bin/{Magick,Magick++,MagickCore,MagickWand,Wand}-config' - -So it's fixup would be: - --------------------------------- -IMAGEMAGICK_CONFIG_SCRIPTS = \ - Magick-config Magick++-config \ - MagickCore-config MagickWand-config Wand-config --------------------------------- -================================ - -On line 14, we specify the list of dependencies this package relies -on. These dependencies are listed in terms of lower-case package names, -which can be packages for the target (without the +host-+ -prefix) or packages for the host (with the +host-+) prefix). -Buildroot will ensure that all these packages are built and installed -'before' the current package starts its configuration. - -The rest of the Makefile, lines 16..29, defines what should be done -at the different steps of the package configuration, compilation and -installation. -+LIBFOO_BUILD_CMDS+ tells what steps should be performed to -build the package. +LIBFOO_INSTALL_STAGING_CMDS+ tells what -steps should be performed to install the package in the staging space. -+LIBFOO_INSTALL_TARGET_CMDS+ tells what steps should be -performed to install the package in the target space. - -All these steps rely on the +$(@D)+ variable, which -contains the directory where the source code of the package has been -extracted. - -On lines 31..33, we define a user that is used by this package (e.g. -to run a daemon as non-root) (+LIBFOO_USERS+). - -On line 35..37, we define a device-node file used by this package -(+LIBFOO_DEVICES+). - -On line 39..41, we define the permissions to set to specific files -installed by this package (+LIBFOO_PERMISSIONS+). - -Finally, on line 43, we call the +generic-package+ function, which -generates, according to the variables defined previously, all the -Makefile code necessary to make your package working. - -[[generic-package-reference]] - -==== +generic-package+ reference - -There are two variants of the generic target. The +generic-package+ macro is -used for packages to be cross-compiled for the target. The -+host-generic-package+ macro is used for host packages, natively compiled -for the host. It is possible to call both of them in a single +.mk+ -file: once to create the rules to generate a target -package and once to create the rules to generate a host package: - ----------------------- -$(eval $(generic-package)) -$(eval $(host-generic-package)) ----------------------- - -This might be useful if the compilation of the target package requires -some tools to be installed on the host. If the package name is -+libfoo+, then the name of the package for the target is also -+libfoo+, while the name of the package for the host is -+host-libfoo+. These names should be used in the DEPENDENCIES -variables of other packages, if they depend on +libfoo+ or -+host-libfoo+. - -The call to the +generic-package+ and/or +host-generic-package+ macro -*must* be at the end of the +.mk+ file, after all variable definitions. -The call to +host-generic-package+ *must* be after the call to -+generic-package+, if any. - -For the target package, the +generic-package+ uses the variables defined by -the .mk file and prefixed by the uppercased package name: -+LIBFOO_*+. +host-generic-package+ uses the +HOST_LIBFOO_*+ variables. For -'some' variables, if the +HOST_LIBFOO_+ prefixed variable doesn't -exist, the package infrastructure uses the corresponding variable -prefixed by +LIBFOO_+. This is done for variables that are likely to -have the same value for both the target and host packages. See below -for details. - -The list of variables that can be set in a +.mk+ file to give metadata -information is (assuming the package name is +libfoo+) : - -* +LIBFOO_VERSION+, mandatory, must contain the version of the - package. Note that if +HOST_LIBFOO_VERSION+ doesn't exist, it is - assumed to be the same as +LIBFOO_VERSION+. It can also be a - revision number or a tag for packages that are fetched directly - from their version control system. Examples: - ** a version for a release tarball: +LIBFOO_VERSION = 0.1.2+ - ** a sha1 for a git tree: +LIBFOO_VERSION = cb9d6aa9429e838f0e54faa3d455bcbab5eef057+ - ** a tag for a git tree +LIBFOO_VERSION = v0.1.2+ -+ -.Note: -Using a branch name as +FOO_VERSION+ is not supported, because it does -not and can not work as people would expect it should: -+ - 1. due to local caching, Buildroot will not re-fetch the repository, - so people who expect to be able to follow the remote repository - would be quite surprised and disappointed; - 2. because two builds can never be perfectly simultaneous, and because - the remote repository may get new commits on the branch anytime, - two users, using the same Buildroot tree and building the same - configuration, may get different source, thus rendering the build - non reproducible, and people would be quite surprised and - disappointed. - -* +LIBFOO_SOURCE+ may contain the name of the tarball of the package, - which Buildroot will use to download the tarball from - +LIBFOO_SITE+. If +HOST_LIBFOO_SOURCE+ is not specified, it defaults - to +LIBFOO_SOURCE+. If none are specified, then the value is assumed - to be +libfoo-$(LIBFOO_VERSION).tar.gz+. + - Example: +LIBFOO_SOURCE = foobar-$(LIBFOO_VERSION).tar.bz2+ - -* +LIBFOO_PATCH+ may contain a space-separated list of patch file - names, that Buildroot will download and apply to the package source - code. If an entry contains +://+, then Buildroot will assume it is a - full URL and download the patch from this location. Otherwise, - Buildroot will assume that the patch should be downloaded from - +LIBFOO_SITE+. If +HOST_LIBFOO_PATCH+ is not specified, it defaults - to +LIBFOO_PATCH+. Note that patches that are included in Buildroot - itself use a different mechanism: all files of the form - +*.patch+ present in the package directory inside - Buildroot will be applied to the package after extraction (see - xref:patch-policy[patching a package]). Finally, patches listed in - the +LIBFOO_PATCH+ variable are applied _before_ the patches stored - in the Buildroot package directory. - -* +LIBFOO_SITE+ provides the location of the package, which can be a - URL or a local filesystem path. HTTP, FTP and SCP are supported URL - types for retrieving package tarballs. In these cases don't include a - trailing slash: it will be added by Buildroot between the directory - and the filename as appropriate. Git, Subversion, Mercurial, - and Bazaar are supported URL types for retrieving packages directly - from source code management systems. There is a helper function to make - it easier to download source tarballs from GitHub (refer to - xref:github-download-url[] for details). A filesystem path may be used - to specify either a tarball or a directory containing the package - source code. See +LIBFOO_SITE_METHOD+ below for more details on how - retrieval works. + - Note that SCP URLs should be of the form - +scp://[user@]host:filepath+, and that filepath is relative to the - user's home directory, so you may want to prepend the path with a - slash for absolute paths: - +scp://[user@]host:/absolutepath+. The same goes for SFTP URLs. + - If +HOST_LIBFOO_SITE+ is not specified, it defaults to - +LIBFOO_SITE+. - Examples: + - +LIBFOO_SITE=http://www.libfoosoftware.org/libfoo+ + - +LIBFOO_SITE=http://svn.xiph.org/trunk/Tremor+ + - +LIBFOO_SITE=/opt/software/libfoo.tar.gz+ + - +LIBFOO_SITE=$(TOPDIR)/../src/libfoo+ - -* +LIBFOO_DL_OPTS+ is a space-separated list of additional options to - pass to the downloader. Useful for retrieving documents with - server-side checking for user logins and passwords, or to use a proxy. - All download methods valid for +LIBFOO_SITE_METHOD+ are supported; - valid options depend on the download method (consult the man page - for the respective download utilities). - -* +LIBFOO_EXTRA_DOWNLOADS+ is a space-separated list of additional - files that Buildroot should download. If an entry contains +://+ - then Buildroot will assume it is a complete URL and will download - the file using this URL. Otherwise, Buildroot will assume the file - to be downloaded is located at +LIBFOO_SITE+. Buildroot will not do - anything with those additional files, except download them: it will - be up to the package recipe to use them from +$(LIBFOO_DL_DIR)+. - -* +LIBFOO_SITE_METHOD+ determines the method used to fetch or copy the - package source code. In many cases, Buildroot guesses the method - from the contents of +LIBFOO_SITE+ and setting +LIBFOO_SITE_METHOD+ - is unnecessary. When +HOST_LIBFOO_SITE_METHOD+ is not specified, it - defaults to the value of +LIBFOO_SITE_METHOD+. + - The possible values of +LIBFOO_SITE_METHOD+ are: - ** +wget+ for normal FTP/HTTP downloads of tarballs. Used by - default when +LIBFOO_SITE+ begins with +http://+, +https://+ or - +ftp://+. - ** +scp+ for downloads of tarballs over SSH with scp. Used by - default when +LIBFOO_SITE+ begins with +scp://+. - ** +sftp+ for downloads of tarballs over SSH with sftp. Used by - default when +LIBFOO_SITE+ begins with +sftp://+. - ** +svn+ for retrieving source code from a Subversion repository. - Used by default when +LIBFOO_SITE+ begins with +svn://+. When a - +http://+ Subversion repository URL is specified in - +LIBFOO_SITE+, one 'must' specify +LIBFOO_SITE_METHOD=svn+. - Buildroot performs a checkout which is preserved as a tarball in - the download cache; subsequent builds use the tarball instead of - performing another checkout. - ** +cvs+ for retrieving source code from a CVS repository. - Used by default when +LIBFOO_SITE+ begins with +cvs://+. - The downloaded source code is cached as with the +svn+ method. - Anonymous pserver mode is assumed otherwise explicitly defined - on +LIBFOO_SITE+. Both - +LIBFOO_SITE=cvs://libfoo.net:/cvsroot/libfoo+ and - +LIBFOO_SITE=cvs://:ext:libfoo.net:/cvsroot/libfoo+ - are accepted, on the former anonymous pserver access mode is - assumed. - +LIBFOO_SITE+ 'must' contain the source URL as well as the remote - repository directory. The module is the package name. - +LIBFOO_VERSION+ is 'mandatory' and 'must' be a tag, a branch, or - a date (e.g. "2014-10-20", "2014-10-20 13:45", "2014-10-20 - 13:45+01" see "man cvs" for further details). - ** +git+ for retrieving source code from a Git repository. Used by - default when +LIBFOO_SITE+ begins with +git://+. The downloaded - source code is cached as with the +svn+ method. - ** +hg+ for retrieving source code from a Mercurial repository. One - 'must' specify +LIBFOO_SITE_METHOD=hg+ when +LIBFOO_SITE+ - contains a Mercurial repository URL. The downloaded source code - is cached as with the +svn+ method. - ** +bzr+ for retrieving source code from a Bazaar repository. Used - by default when +LIBFOO_SITE+ begins with +bzr://+. The - downloaded source code is cached as with the +svn+ method. - ** +file+ for a local tarball. One should use this when - +LIBFOO_SITE+ specifies a package tarball as a local filename. - Useful for software that isn't available publicly or in version - control. - ** +local+ for a local source code directory. One should use this - when +LIBFOO_SITE+ specifies a local directory path containing - the package source code. Buildroot copies the contents of the - source directory into the package's build directory. Note that - for +local+ packages, no patches are applied. If you need to - still patch the source code, use +LIBFOO_POST_RSYNC_HOOKS+, see - xref:hooks-rsync[]. - -* +LIBFOO_GIT_SUBMODULES+ can be set to +YES+ to create an archive - with the git submodules in the repository. This is only available - for packages downloaded with git (i.e. when - +LIBFOO_SITE_METHOD=git+). Note that we try not to use such git - submodules when they contain bundled libraries, in which case we - prefer to use those libraries from their own package. - -* +LIBFOO_GIT_LFS+ should be set to +YES+ if the Git repository uses - Git LFS to store large files out of band. This is only available for - packages downloaded with git (i.e. when +LIBFOO_SITE_METHOD=git+). - -* +LIBFOO_STRIP_COMPONENTS+ is the number of leading components - (directories) that tar must strip from file names on extraction. - The tarball for most packages has one leading component named - "-", thus Buildroot passes - --strip-components=1 to tar to remove it. - For non-standard packages that don't have this component, or - that have more than one leading component to strip, set this - variable with the value to be passed to tar. Default: 1. - -* +LIBFOO_EXCLUDES+ is a space-separated list of patterns to exclude - when extracting the archive. Each item from that list is passed as - a tar's +--exclude+ option. By default, empty. - -* +LIBFOO_DEPENDENCIES+ lists the dependencies (in terms of package - name) that are required for the current target package to - compile. These dependencies are guaranteed to be compiled and - installed before the configuration of the current package starts. - However, modifications to configuration of these dependencies will - not force a rebuild of the current package. In a similar way, - +HOST_LIBFOO_DEPENDENCIES+ lists the dependencies for the current - host package. - -* +LIBFOO_EXTRACT_DEPENDENCIES+ lists the dependencies (in terms of - package name) that are required for the current target package to be - extracted. These dependencies are guaranteed to be compiled and - installed before the extract step of the current package - starts. This is only used internally by the package infrastructure, - and should typically not be used directly by packages. - -* +LIBFOO_PATCH_DEPENDENCIES+ lists the dependencies (in terms of - package name) that are required for the current package to be - patched. These dependencies are guaranteed to be extracted and - patched (but not necessarily built) before the current package is - patched. In a similar way, +HOST_LIBFOO_PATCH_DEPENDENCIES+ lists - the dependencies for the current host package. - This is seldom used; usually, +LIBFOO_DEPENDENCIES+ is what you - really want to use. - -* +LIBFOO_PROVIDES+ lists all the virtual packages +libfoo+ is an - implementation of. See xref:virtual-package-tutorial[]. - -* +LIBFOO_INSTALL_STAGING+ can be set to +YES+ or +NO+ (default). If - set to +YES+, then the commands in the +LIBFOO_INSTALL_STAGING_CMDS+ - variables are executed to install the package into the staging - directory. - -* +LIBFOO_INSTALL_TARGET+ can be set to +YES+ (default) or +NO+. If - set to +YES+, then the commands in the +LIBFOO_INSTALL_TARGET_CMDS+ - variables are executed to install the package into the target - directory. - -* +LIBFOO_INSTALL_IMAGES+ can be set to +YES+ or +NO+ (default). If - set to +YES+, then the commands in the +LIBFOO_INSTALL_IMAGES_CMDS+ - variable are executed to install the package into the images - directory. - -* +LIBFOO_CONFIG_SCRIPTS+ lists the names of the files in - '$(STAGING_DIR)/usr/bin' that need some special fixing to make them - cross-compiling friendly. Multiple file names separated by space can - be given and all are relative to '$(STAGING_DIR)/usr/bin'. The files - listed in +LIBFOO_CONFIG_SCRIPTS+ are also removed from - +$(TARGET_DIR)/usr/bin+ since they are not needed on the target. - -* +LIBFOO_DEVICES+ lists the device files to be created by Buildroot - when using the static device table. The syntax to use is the - makedevs one. You can find some documentation for this syntax in the - xref:makedev-syntax[]. This variable is optional. - -* +LIBFOO_PERMISSIONS+ lists the changes of permissions to be done at - the end of the build process. The syntax is once again the makedevs one. - You can find some documentation for this syntax in the xref:makedev-syntax[]. - This variable is optional. - -* +LIBFOO_USERS+ lists the users to create for this package, if it installs - a program you want to run as a specific user (e.g. as a daemon, or as a - cron-job). The syntax is similar in spirit to the makedevs one, and is - described in the xref:makeuser-syntax[]. This variable is optional. - -* +LIBFOO_LICENSE+ defines the license (or licenses) under which the package - is released. - This name will appear in the manifest file produced by +make legal-info+. - If the license appears in https://spdx.org/licenses/[the SPDX License List], - use the SPDX short identifier to make the manifest file uniform. - Otherwise, describe the license in a precise and concise way, avoiding - ambiguous names such as +BSD+ which actually name a family of licenses. - This variable is optional. If it is not defined, +unknown+ will appear in - the +license+ field of the manifest file for this package. + - The expected format for this variable must comply with the following rules: - ** If different parts of the package are released under different - licenses, then +comma+ separate licenses (e.g. +`LIBFOO_LICENSE = - GPL-2.0+, LGPL-2.1+`+). If there is clear distinction between which - component is licensed under what license, then annotate the license - with that component, between parenthesis (e.g. +`LIBFOO_LICENSE = - GPL-2.0+ (programs), LGPL-2.1+ (libraries)`+). - ** If some licenses are conditioned on a sub-option being enabled, append - the conditional licenses with a comma (e.g.: `FOO_LICENSE += , GPL-2.0+ - (programs)`); the infrastructure will internally remove the space before - the comma. - ** If the package is dual licensed, then separate licenses with the - +or+ keyword (e.g. +`LIBFOO_LICENSE = AFL-2.1 or GPL-2.0+`+). - -* +LIBFOO_LICENSE_FILES+ is a space-separated list of files in the package - tarball that contain the license(s) under which the package is released. - +make legal-info+ copies all of these files in the +legal-info+ directory. - See xref:legal-info[] for more information. - This variable is optional. If it is not defined, a warning will be produced - to let you know, and +not saved+ will appear in the +license files+ field - of the manifest file for this package. - -* +LIBFOO_ACTUAL_SOURCE_TARBALL+ only applies to packages whose - +LIBFOO_SITE+ / +LIBFOO_SOURCE+ pair points to an archive that does - not actually contain source code, but binary code. This a very - uncommon case, only known to apply to external toolchains which come - already compiled, although theoretically it might apply to other - packages. In such cases a separate tarball is usually available with - the actual source code. Set +LIBFOO_ACTUAL_SOURCE_TARBALL+ to the - name of the actual source code archive and Buildroot will download - it and use it when you run +make legal-info+ to collect - legally-relevant material. Note this file will not be downloaded - during regular builds nor by +make source+. - -* +LIBFOO_ACTUAL_SOURCE_SITE+ provides the location of the actual - source tarball. The default value is +LIBFOO_SITE+, so you don't - need to set this variable if the binary and source archives are - hosted on the same directory. If +LIBFOO_ACTUAL_SOURCE_TARBALL+ is - not set, it doesn't make sense to define - +LIBFOO_ACTUAL_SOURCE_SITE+. - -* +LIBFOO_REDISTRIBUTE+ can be set to +YES+ (default) or +NO+ to indicate if - the package source code is allowed to be redistributed. Set it to +NO+ for - non-opensource packages: Buildroot will not save the source code for this - package when collecting the +legal-info+. - -* +LIBFOO_FLAT_STACKSIZE+ defines the stack size of an application built into - the FLAT binary format. The application stack size on the NOMMU architecture - processors can't be enlarged at run time. The default stack size for the - FLAT binary format is only 4k bytes. If the application consumes more stack, - append the required number here. - -* +LIBFOO_BIN_ARCH_EXCLUDE+ is a space-separated list of paths (relative - to the target directory) to ignore when checking that the package - installs correctly cross-compiled binaries. You seldom need to set this - variable, unless the package installs binary blobs outside the default - locations, `/lib/firmware`, `/usr/lib/firmware`, `/lib/modules`, - `/usr/lib/modules`, and `/usr/share`, which are automatically excluded. - -* +LIBFOO_IGNORE_CVES+ is a space-separated list of CVEs that tells - Buildroot CVE tracking tools which CVEs should be ignored for this - package. This is typically used when the CVE is fixed by a patch in - the package, or when the CVE for some reason does not affect the - Buildroot package. A Makefile comment must always precede the - addition of a CVE to this variable. Example: - ----------------------- -# 0001-fix-cve-2020-12345.patch -LIBFOO_IGNORE_CVES += CVE-2020-12345 -# only when built with libbaz, which Buildroot doesn't support -LIBFOO_IGNORE_CVES += CVE-2020-54321 ----------------------- - -* +LIBFOO_CPE_ID_*+ variables is a set of variables that allows the - package to define its https://nvd.nist.gov/products/cpe[CPE - identifier]. The available variables are: -+ --- -** +LIBFOO_CPE_ID_PREFIX+, specifies the prefix of the CPE identifier, - i.e the first three fields. When not defined, the default value is - +cpe:2.3:a+. - -** +LIBFOO_CPE_ID_VENDOR+, specifies the vendor part of the CPE - identifier. When not defined, the default value is - +_project+. - -** +LIBFOO_CPE_ID_PRODUCT+, specifies the product part of the CPE - identifier. When not defined, the default value is ++. - -** +LIBFOO_CPE_ID_VERSION+, specifies the version part of the CPE - identifier. When not defined the default value is - +$(LIBFOO_VERSION)+. - -** +LIBFOO_CPE_ID_UPDATE+ specifies the _update_ part of the CPE - identifier. When not defined the default value is +*+. --- -+ -If any of those variables is defined, then the generic package -infrastructure assumes the package provides valid CPE information. In -this case, the generic package infrastructure will define -+LIBFOO_CPE_ID+. -+ -For a host package, if its +LIBFOO_CPE_ID_*+ variables are not -defined, it inherits the value of those variables from the -corresponding target package. - -The recommended way to define these variables is to use the following -syntax: - ----------------------- -LIBFOO_VERSION = 2.32 ----------------------- - -Now, the variables that define what should be performed at the -different steps of the build process. - -* +LIBFOO_EXTRACT_CMDS+ lists the actions to be performed to extract - the package. This is generally not needed as tarballs are - automatically handled by Buildroot. However, if the package uses a - non-standard archive format, such as a ZIP or RAR file, or has a - tarball with a non-standard organization, this variable allows to - override the package infrastructure default behavior. - -* +LIBFOO_CONFIGURE_CMDS+ lists the actions to be performed to - configure the package before its compilation. - -* +LIBFOO_BUILD_CMDS+ lists the actions to be performed to - compile the package. - -* +HOST_LIBFOO_INSTALL_CMDS+ lists the actions to be performed - to install the package, when the package is a host package. The - package must install its files to the directory given by - +$(HOST_DIR)+. All files, including development files such as - headers should be installed, since other packages might be compiled - on top of this package. - -* +LIBFOO_INSTALL_TARGET_CMDS+ lists the actions to be - performed to install the package to the target directory, when the - package is a target package. The package must install its files to - the directory given by +$(TARGET_DIR)+. Only the files required for - 'execution' of the package have to be - installed. Header files, static libraries and documentation will be - removed again when the target filesystem is finalized. - -* +LIBFOO_INSTALL_STAGING_CMDS+ lists the actions to be - performed to install the package to the staging directory, when the - package is a target package. The package must install its files to - the directory given by +$(STAGING_DIR)+. All development files - should be installed, since they might be needed to compile other - packages. - -* +LIBFOO_INSTALL_IMAGES_CMDS+ lists the actions to be performed to - install the package to the images directory, when the package is a - target package. The package must install its files to the directory - given by +$(BINARIES_DIR)+. Only files that are binary images (aka - images) that do not belong in the +TARGET_DIR+ but are necessary - for booting the board should be placed here. For example, a package - should utilize this step if it has binaries which would be similar - to the kernel image, bootloader or root filesystem images. - -* +LIBFOO_INSTALL_INIT_SYSV+, +LIBFOO_INSTALL_INIT_OPENRC+ and - +LIBFOO_INSTALL_INIT_SYSTEMD+ list the actions to install init - scripts either for the systemV-like init systems (busybox, - sysvinit, etc.), openrc or for the systemd units. These commands - will be run only when the relevant init system is installed (i.e. - if systemd is selected as the init system in the configuration, - only +LIBFOO_INSTALL_INIT_SYSTEMD+ will be run). The only exception - is when openrc is chosen as init system and +LIBFOO_INSTALL_INIT_OPENRC+ - has not been set, in such situation +LIBFOO_INSTALL_INIT_SYSV+ will - be called, since openrc supports sysv init scripts. - When systemd is used as the init system, buildroot will automatically enable - all services using the +systemctl preset-all+ command in the final phase of - image building. You can add preset files to prevent a particular unit from - being automatically enabled by buildroot. - -* +LIBFOO_HELP_CMDS+ lists the actions to print the package help, which - is included to the main +make help+ output. These commands can print - anything in any format. - This is seldom used, as packages rarely have custom rules. *Do not use - this variable*, unless you really know that you need to print help. - -* +LIBFOO_LINUX_CONFIG_FIXUPS+ lists the Linux kernel configuration - options that are needed to build and use this package, and without - which the package is fundamentally broken. This shall be a set of - calls to one of the kconfig tweaking option: `KCONFIG_ENABLE_OPT`, - `KCONFIG_DISABLE_OPT`, or `KCONFIG_SET_OPT`. - This is seldom used, as package usually have no strict requirements on - the kernel options. - -The preferred way to define these variables is: - ----------------------- -define LIBFOO_CONFIGURE_CMDS - action 1 - action 2 - action 3 -endef ----------------------- - -In the action definitions, you can use the following variables: - -* +$(LIBFOO_PKGDIR)+ contains the path to the directory containing the - +libfoo.mk+ and +Config.in+ files. This variable is useful when it is - necessary to install a file bundled in Buildroot, like a runtime - configuration file, a splashscreen image... - -* +$(@D)+, which contains the directory in which the package source - code has been uncompressed. - -* +$(LIBFOO_DL_DIR)+ contains the path to the directory where all the downloads - made by Buildroot for +libfoo+ are stored in. - -* +$(TARGET_CC)+, +$(TARGET_LD)+, etc. to get the target - cross-compilation utilities - -* +$(TARGET_CROSS)+ to get the cross-compilation toolchain prefix - -* Of course the +$(HOST_DIR)+, +$(STAGING_DIR)+ and +$(TARGET_DIR)+ - variables to install the packages properly. Those variables point to - the global _host_, _staging_ and _target_ directories, unless - _per-package directory_ support is used, in which case they point to - the current package _host_, _staging_ and _target_ directories. In - both cases, it doesn't make any difference from the package point of - view: it should simply use +HOST_DIR+, +STAGING_DIR+ and - +TARGET_DIR+. See xref:top-level-parallel-build[] for more details - about _per-package directory_ support. - -Finally, you can also use hooks. See xref:hooks[] for more information. diff --git a/docs/manual/adding-packages-gettext.txt b/docs/manual/adding-packages-gettext.adoc similarity index 100% rename from docs/manual/adding-packages-gettext.txt rename to docs/manual/adding-packages-gettext.adoc diff --git a/docs/manual/adding-packages-golang.txt b/docs/manual/adding-packages-golang.adoc similarity index 100% rename from docs/manual/adding-packages-golang.txt rename to docs/manual/adding-packages-golang.adoc diff --git a/docs/manual/adding-packages-hooks.txt b/docs/manual/adding-packages-hooks.adoc similarity index 100% rename from docs/manual/adding-packages-hooks.txt rename to docs/manual/adding-packages-hooks.adoc diff --git a/docs/manual/adding-packages-kconfig.txt b/docs/manual/adding-packages-kconfig.adoc similarity index 100% rename from docs/manual/adding-packages-kconfig.txt rename to docs/manual/adding-packages-kconfig.adoc diff --git a/docs/manual/adding-packages-kernel-module.txt b/docs/manual/adding-packages-kernel-module.adoc similarity index 100% rename from docs/manual/adding-packages-kernel-module.txt rename to docs/manual/adding-packages-kernel-module.adoc diff --git a/docs/manual/adding-packages-linux-kernel-spec-infra.txt b/docs/manual/adding-packages-linux-kernel-spec-infra.adoc similarity index 100% rename from docs/manual/adding-packages-linux-kernel-spec-infra.txt rename to docs/manual/adding-packages-linux-kernel-spec-infra.adoc diff --git a/docs/manual/adding-packages-luarocks.txt b/docs/manual/adding-packages-luarocks.adoc similarity index 100% rename from docs/manual/adding-packages-luarocks.txt rename to docs/manual/adding-packages-luarocks.adoc diff --git a/docs/manual/adding-packages-meson.txt b/docs/manual/adding-packages-meson.adoc similarity index 100% rename from docs/manual/adding-packages-meson.txt rename to docs/manual/adding-packages-meson.adoc diff --git a/docs/manual/adding-packages-perl.txt b/docs/manual/adding-packages-perl.adoc similarity index 100% rename from docs/manual/adding-packages-perl.txt rename to docs/manual/adding-packages-perl.adoc diff --git a/docs/manual/adding-packages-python.txt b/docs/manual/adding-packages-python.adoc similarity index 100% rename from docs/manual/adding-packages-python.txt rename to docs/manual/adding-packages-python.adoc diff --git a/docs/manual/adding-packages-qmake.txt b/docs/manual/adding-packages-qmake.adoc similarity index 100% rename from docs/manual/adding-packages-qmake.txt rename to docs/manual/adding-packages-qmake.adoc diff --git a/docs/manual/adding-packages-rebar.txt b/docs/manual/adding-packages-rebar.adoc similarity index 100% rename from docs/manual/adding-packages-rebar.txt rename to docs/manual/adding-packages-rebar.adoc diff --git a/docs/manual/adding-packages-tips.txt b/docs/manual/adding-packages-tips.adoc similarity index 100% rename from docs/manual/adding-packages-tips.txt rename to docs/manual/adding-packages-tips.adoc diff --git a/docs/manual/adding-packages-virtual.txt b/docs/manual/adding-packages-virtual.adoc similarity index 100% rename from docs/manual/adding-packages-virtual.txt rename to docs/manual/adding-packages-virtual.adoc diff --git a/docs/manual/adding-packages-waf.txt b/docs/manual/adding-packages-waf.adoc similarity index 100% rename from docs/manual/adding-packages-waf.txt rename to docs/manual/adding-packages-waf.adoc diff --git a/docs/manual/adding-packages.adoc b/docs/manual/adding-packages.adoc new file mode 100644 index 000000000000..10acae0b1af8 --- /dev/null +++ b/docs/manual/adding-packages.adoc @@ -0,0 +1,58 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[adding-packages]] +== Adding new packages to Buildroot + +This section covers how new packages (userspace libraries or +applications) can be integrated into Buildroot. It also shows how +existing packages are integrated, which is needed for fixing issues or +tuning their configuration. + +When you add a new package, be sure to test it in various conditions +(see xref:testing-package[]) and also check it for coding style (see +xref:check-package[]). + +include::adding-packages-directory.adoc[] + +include::adding-packages-generic.adoc[] + +include::adding-packages-autotools.adoc[] + +include::adding-packages-cmake.adoc[] + +include::adding-packages-python.adoc[] + +include::adding-packages-luarocks.adoc[] + +include::adding-packages-perl.adoc[] + +include::adding-packages-virtual.adoc[] + +include::adding-packages-kconfig.adoc[] + +include::adding-packages-rebar.adoc[] + +include::adding-packages-waf.adoc[] + +include::adding-packages-meson.adoc[] + +include::adding-packages-cargo.adoc[] + +include::adding-packages-golang.adoc[] + +include::adding-packages-qmake.adoc[] + +include::adding-packages-kernel-module.adoc[] + +include::adding-packages-asciidoc.adoc[] + +include::adding-packages-linux-kernel-spec-infra.adoc[] + +include::adding-packages-hooks.adoc[] + +include::adding-packages-gettext.adoc[] + +include::adding-packages-tips.adoc[] + +include::adding-packages-conclusion.adoc[] diff --git a/docs/manual/adding-packages.txt b/docs/manual/adding-packages.txt deleted file mode 100644 index 814355cd76b9..000000000000 --- a/docs/manual/adding-packages.txt +++ /dev/null @@ -1,58 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -[[adding-packages]] -== Adding new packages to Buildroot - -This section covers how new packages (userspace libraries or -applications) can be integrated into Buildroot. It also shows how -existing packages are integrated, which is needed for fixing issues or -tuning their configuration. - -When you add a new package, be sure to test it in various conditions -(see xref:testing-package[]) and also check it for coding style (see -xref:check-package[]). - -include::adding-packages-directory.txt[] - -include::adding-packages-generic.txt[] - -include::adding-packages-autotools.txt[] - -include::adding-packages-cmake.txt[] - -include::adding-packages-python.txt[] - -include::adding-packages-luarocks.txt[] - -include::adding-packages-perl.txt[] - -include::adding-packages-virtual.txt[] - -include::adding-packages-kconfig.txt[] - -include::adding-packages-rebar.txt[] - -include::adding-packages-waf.txt[] - -include::adding-packages-meson.txt[] - -include::adding-packages-cargo.txt[] - -include::adding-packages-golang.txt[] - -include::adding-packages-qmake.txt[] - -include::adding-packages-kernel-module.txt[] - -include::adding-packages-asciidoc.txt[] - -include::adding-packages-linux-kernel-spec-infra.txt[] - -include::adding-packages-hooks.txt[] - -include::adding-packages-gettext.txt[] - -include::adding-packages-tips.txt[] - -include::adding-packages-conclusion.txt[] diff --git a/docs/manual/advanced.adoc b/docs/manual/advanced.adoc new file mode 100644 index 000000000000..7f650e668925 --- /dev/null +++ b/docs/manual/advanced.adoc @@ -0,0 +1,16 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +=== Advanced usage + +include::using-buildroot-toolchain.adoc[] + +include::using-buildroot-debugger.adoc[] + +include::ccache-support.adoc[] + +include::download-location.adoc[] + +include::package-make-target.adoc[] + +include::using-buildroot-development.adoc[] diff --git a/docs/manual/advanced.txt b/docs/manual/advanced.txt deleted file mode 100644 index b7bfc4923de0..000000000000 --- a/docs/manual/advanced.txt +++ /dev/null @@ -1,16 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -=== Advanced usage - -include::using-buildroot-toolchain.txt[] - -include::using-buildroot-debugger.txt[] - -include::ccache-support.txt[] - -include::download-location.txt[] - -include::package-make-target.txt[] - -include::using-buildroot-development.txt[] diff --git a/docs/manual/appendix.adoc b/docs/manual/appendix.adoc new file mode 100644 index 000000000000..4eece71672c0 --- /dev/null +++ b/docs/manual/appendix.adoc @@ -0,0 +1,6 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +include::makedev-syntax.adoc[] +include::makeusers-syntax.adoc[] +include::migrating.adoc[] diff --git a/docs/manual/appendix.txt b/docs/manual/appendix.txt deleted file mode 100644 index 86afa4bdaa63..000000000000 --- a/docs/manual/appendix.txt +++ /dev/null @@ -1,6 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -include::makedev-syntax.txt[] -include::makeusers-syntax.txt[] -include::migrating.txt[] diff --git a/docs/manual/beyond-buildroot.txt b/docs/manual/beyond-buildroot.adoc similarity index 100% rename from docs/manual/beyond-buildroot.txt rename to docs/manual/beyond-buildroot.adoc diff --git a/docs/manual/ccache-support.txt b/docs/manual/ccache-support.adoc similarity index 100% rename from docs/manual/ccache-support.txt rename to docs/manual/ccache-support.adoc diff --git a/docs/manual/common-usage.adoc b/docs/manual/common-usage.adoc new file mode 100644 index 000000000000..e0ab1a9f660c --- /dev/null +++ b/docs/manual/common-usage.adoc @@ -0,0 +1,420 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +== General Buildroot usage + +include::make-tips.adoc[] + +include::rebuilding-packages.adoc[] + +=== Offline builds + +If you intend to do an offline build and just want to download +all sources that you previously selected in the configurator +('menuconfig', 'nconfig', 'xconfig' or 'gconfig'), then issue: + +-------------------- + $ make source +-------------------- + +You can now disconnect or copy the content of your +dl+ +directory to the build-host. + +=== Building out-of-tree + +As default, everything built by Buildroot is stored in the directory ++output+ in the Buildroot tree. + +Buildroot also supports building out of tree with a syntax similar to +the Linux kernel. To use it, add +O=+ to the make command +line: + +-------------------- + $ make O=/tmp/build menuconfig +-------------------- + +Or: + +-------------------- + $ cd /tmp/build; make O=$PWD -C path/to/buildroot menuconfig +-------------------- + +All the output files will be located under +/tmp/build+. If the +O+ +path does not exist, Buildroot will create it. + +*Note:* the +O+ path can be either an absolute or a relative path, but if it's +passed as a relative path, it is important to note that it is interpreted +relative to the main Buildroot source directory, *not* the current working +directory. + +When using out-of-tree builds, the Buildroot +.config+ and temporary +files are also stored in the output directory. This means that you can +safely run multiple builds in parallel using the same source tree as +long as they use unique output directories. + +For ease of use, Buildroot generates a Makefile wrapper in the output +directory - so after the first run, you no longer need to pass +O=<...>+ +and +-C <...>+, simply run (in the output directory): + +-------------------- + $ make +-------------------- + +[[env-vars]] + +=== Environment variables + +Buildroot also honors some environment variables, when they are passed +to +make+ or set in the environment: + +* +HOSTCXX+, the host C++ compiler to use +* +HOSTCC+, the host C compiler to use +* +UCLIBC_CONFIG_FILE=+, path to + the uClibc configuration file, used to compile uClibc, if an + internal toolchain is being built. + + + Note that the uClibc configuration file can also be set from the + configuration interface, so through the Buildroot +.config+ file; this + is the recommended way of setting it. + + +* +BUSYBOX_CONFIG_FILE=+, path to + the BusyBox configuration file. + + + Note that the BusyBox configuration file can also be set from the + configuration interface, so through the Buildroot +.config+ file; this + is the recommended way of setting it. + + +* +BR2_CCACHE_DIR+ to override the directory where + Buildroot stores the cached files when using ccache. + + +* +BR2_DL_DIR+ to override the directory in which + Buildroot stores/retrieves downloaded files. + + + Note that the Buildroot download directory can also be set from the + configuration interface, so through the Buildroot +.config+ file. See + xref:download-location[] for more details on how you can set the download + directory. +* +BR2_GRAPH_ALT+, if set and non-empty, to use an alternate color-scheme in + build-time graphs +* +BR2_GRAPH_OUT+ to set the filetype of generated graphs, either +pdf+ (the + default), or +png+. +* +BR2_GRAPH_DEPS_OPTS+ to pass extra options to the dependency graph; see + xref:graph-depends[] for the accepted options +* +BR2_GRAPH_DOT_OPTS+ is passed verbatim as options to the +dot+ utility to + draw the dependency graph. +* +BR2_GRAPH_SIZE_OPTS+ to pass extra options to the size graph; see + xref:graph-size[] for the acepted options + +An example that uses config files located in the toplevel directory and +in your $HOME: + +-------------------- + $ make UCLIBC_CONFIG_FILE=uClibc.config BUSYBOX_CONFIG_FILE=$HOME/bb.config +-------------------- + +If you want to use a compiler other than the default +gcc+ +or +g+++ for building helper-binaries on your host, then do + +-------------------- + $ make HOSTCXX=g++-4.3-HEAD HOSTCC=gcc-4.3-HEAD +-------------------- + +=== Dealing efficiently with filesystem images + +Filesystem images can get pretty big, depending on the filesystem you choose, +the number of packages, whether you provisioned free space... Yet, some +locations in the filesystems images may just be _empty_ (e.g. a long run of +'zeroes'); such a file is called a _sparse_ file. + +Most tools can handle sparse files efficiently, and will only store or write +those parts of a sparse file that are not empty. + +For example: + +* +tar+ accepts the +-S+ option to tell it to only store non-zero blocks + of sparse files: +** +tar cf archive.tar -S [files...]+ will efficiently store sparse files + in a tarball +** +tar xf archive.tar -S+ will efficiently store sparse files extracted + from a tarball + +* +cp+ accepts the +--sparse=WHEN+ option (+WHEN+ is one of +auto+, + +never+ or +always+): +** +cp --sparse=always source.file dest.file+ will make +dest.file+ a + sparse file if +source.file+ has long runs of zeroes + +Other tools may have similar options. Please consult their respective man +pages. + +You can use sparse files if you need to store the filesystem images (e.g. +to transfer from one machine to another), or if you need to send them (e.g. +to the Q&A team). + +Note however that flashing a filesystem image to a device while using the +sparse mode of +dd+ may result in a broken filesystem (e.g. the block bitmap +of an ext2 filesystem may be corrupted; or, if you have sparse files in +your filesystem, those parts may not be all-zeroes when read back). You +should only use sparse files when handling files on the build machine, not +when transferring them to an actual device that will be used on the target. + +=== Details about packages + +[[package-details]] + +Buildroot can produce a JSON blurb that describes the set of enabled +packages in the current configuration, together with their +dependencies, licenses and other metadata. This JSON blurb is produced +by using the +show-info+ make target: + +------------------------ +make show-info +------------------------ + +Buildroot can also produce details about packages as HTML and JSON +output using the +pkg-stats+ make target. Amongst other things, these +details include whether known CVEs (security vulnerabilities) affect +the packages in your current configuration. It also shows if there is +a newer upstream version for those packages. + +------------------------ +make pkg-stats +------------------------ + +=== Graphing the dependencies between packages + +[[graph-depends]] + +One of Buildroot's jobs is to know the dependencies between packages, +and make sure they are built in the right order. These dependencies +can sometimes be quite complicated, and for a given system, it is +often not easy to understand why such or such package was brought into +the build by Buildroot. + +In order to help understanding the dependencies, and therefore better +understand what is the role of the different components in your +embedded Linux system, Buildroot is capable of generating dependency +graphs. + +To generate a dependency graph of the full system you have compiled, +simply run: + +------------------------ +make graph-depends +------------------------ + +You will find the generated graph in ++output/graphs/graph-depends.pdf+. + +If your system is quite large, the dependency graph may be too complex +and difficult to read. It is therefore possible to generate the +dependency graph just for a given package: + +------------------------ +make -graph-depends +------------------------ + +You will find the generated graph in ++output/graph/-graph-depends.pdf+. + +Note that the dependency graphs are generated using the +dot+ tool +from the _Graphviz_ project, which you must have installed on your +system to use this feature. In most distributions, it is available as +the +graphviz+ package. + +By default, the dependency graphs are generated in the PDF +format. However, by passing the +BR2_GRAPH_OUT+ environment variable, you +can switch to other output formats, such as PNG, PostScript or +SVG. All formats supported by the +-T+ option of the +dot+ tool are +supported. + +-------------------------------- +BR2_GRAPH_OUT=svg make graph-depends +-------------------------------- + +The +graph-depends+ behaviour can be controlled by setting options in the ++BR2_GRAPH_DEPS_OPTS+ environment variable. The accepted options are: + +* +--depth N+, +-d N+, to limit the dependency depth to +N+ levels. The + default, +0+, means no limit. + +* +--stop-on PKG+, +-s PKG+, to stop the graph on the package +PKG+. + +PKG+ can be an actual package name, a glob, the keyword 'virtual' + (to stop on virtual packages), or the keyword 'host' (to stop on + host packages). The package is still present on the graph, but its + dependencies are not. + +* +--exclude PKG+, +-x PKG+, like +--stop-on+, but also omits +PKG+ from + the graph. + +* +--transitive+, +--no-transitive+, to draw (or not) the transitive + dependencies. The default is to not draw transitive dependencies. + +* +--colors R,T,H+, the comma-separated list of colors to draw the + root package (+R+), the target packages (+T+) and the host packages + (+H+). Defaults to: +lightblue,grey,gainsboro+ + +-------------------------------- +BR2_GRAPH_DEPS_OPTS='-d 3 --no-transitive --colors=red,green,blue' make graph-depends +-------------------------------- + +=== Graphing the build duration + +[[graph-duration]] + +When the build of a system takes a long time, it is sometimes useful +to be able to understand which packages are the longest to build, to +see if anything can be done to speed up the build. In order to help +such build time analysis, Buildroot collects the build time of each +step of each package, and allows to generate graphs from this data. + +To generate the build time graph after a build, run: + +---------------- +make graph-build +---------------- + +This will generate a set of files in +output/graphs+ : + +* +build.hist-build.pdf+, a histogram of the build time for each + package, ordered in the build order. + +* +build.hist-duration.pdf+, a histogram of the build time for each + package, ordered by duration (longest first) + +* +build.hist-name.pdf+, a histogram of the build time for each + package, order by package name. + +* +build.pie-packages.pdf+, a pie chart of the build time per package + +* +build.pie-steps.pdf+, a pie chart of the global time spent in each + step of the packages build process. + +This +graph-build+ target requires the Python Matplotlib and Numpy +libraries to be installed (+python-matplotlib+ and +python-numpy+ on +most distributions), and also the +argparse+ module if you're using a +Python version older than 2.7 (+python-argparse+ on most +distributions). + +By default, the output format for the graph is PDF, but a different +format can be selected using the +BR2_GRAPH_OUT+ environment variable. The +only other format supported is PNG: + +---------------- +BR2_GRAPH_OUT=png make graph-build +---------------- + +[[graph-size]] +=== Graphing the filesystem size contribution of packages + +When your target system grows, it is sometimes useful to understand +how much each Buildroot package is contributing to the overall root +filesystem size. To help with such an analysis, Buildroot collects +data about files installed by each package and using this data, +generates a graph and CSV files detailing the size contribution of +the different packages. + +To generate these data after a build, run: + +---------------- +make graph-size +---------------- + +This will generate: + +* +output/graphs/graph-size.pdf+, a pie chart of the contribution of + each package to the overall root filesystem size + +* +output/graphs/package-size-stats.csv+, a CSV file giving the size + contribution of each package to the overall root filesystem size + +* +output/graphs/file-size-stats.csv+, a CSV file giving the size + contribution of each installed file to the package it belongs, and + to the overall filesystem size. + +This +graph-size+ target requires the Python Matplotlib library to be +installed (+python-matplotlib+ on most distributions), and also the ++argparse+ module if you're using a Python version older than 2.7 +(+python-argparse+ on most distributions). + +Just like for the duration graph, a +BR2_GRAPH_OUT+ environment variable +is supported to adjust the output file format. See xref:graph-depends[] +for details about this environment variable. + +Additionally, one may set the environment variable +BR2_GRAPH_SIZE_OPTS+ +to further control the generated graph. Accepted options are: + +* `--size-limit X`, `-l X`, will group all packages which individual + contribution is below `X` percent, to a single entry labelled _Others_ + in the graph. By default, `X=0.01`, which means packages each + contributing less than 1% are grouped under _Others_. Accepted values + are in the range `[0.0..1.0]`. + +* `--iec`, `--binary`, `--si`, `--decimal`, to use IEC (binary, powers + of 1024) or SI (decimal, powers of 1000; the default) prefixes. + +* `--biggest-first`, to sort packages in decreasing size order, rather + than in increasing size order. + +.Note +The collected filesystem size data is only meaningful after a complete +clean rebuild. Be sure to run +make clean all+ before using +make +graph-size+. + +To compare the root filesystem size of two different Buildroot compilations, +for example after adjusting the configuration or when switching to another +Buildroot release, use the +size-stats-compare+ script. It takes two ++file-size-stats.csv+ files (produced by +make graph-size+) as input. +Refer to the help text of this script for more details: + +---------------- +utils/size-stats-compare -h +---------------- + +[[top-level-parallel-build]] +=== Top-level parallel build + +.Note +This section deals with a very experimental feature, which is known to +break even in some non-unusual situations. Use at your own risk. + +Buildroot has always been capable of using parallel build on a per +package basis: each package is built by Buildroot using +make -jN+ (or +the equivalent invocation for non-make-based build systems). The level +of parallelism is by default number of CPUs + 1, but it can be +adjusted using the +BR2_JLEVEL+ configuration option. + +Until 2020.02, Buildroot was however building packages in a serial +fashion: each package was built one after the other, without +parallelization of the build between packages. As of 2020.02, +Buildroot has experimental support for *top-level parallel build*, +which allows some signicant build time savings by building packages +that have no dependency relationship in parallel. This feature is +however marked as experimental and is known not to work in some cases. + +In order to use top-level parallel build, one must: + +. Enable the option +BR2_PER_PACKAGE_DIRECTORIES+ in the Buildroot +configuration + +. Use +make -jN+ when starting the Buildroot build + +Internally, the +BR2_PER_PACKAGE_DIRECTORIES+ will enable a mechanism +called *per-package directories*, which will have the following +effects: + +* Instead of a global _target_ directory and a global _host_ directory + common to all packages, per-package _target_ and _host_ directories + will be used, in +$(O)/per-package//target/+ and + +$(O)/per-package//host/+ respectively. Those folders will be + populated from the corresponding folders of the package dependencies + at the beginning of ++ build. The compiler and all other tools + will therefore only be able to see and access files installed by + dependencies explicitly listed by ++. + +* At the end of the build, the global _target_ and _host_ directories + will be populated, located in +$(O)/target+ and +$(O)/host+ + respectively. This means that during the build, those folders will + be empty and it's only at the very end of the build that they will + be populated. + +include::advanced.adoc[] diff --git a/docs/manual/common-usage.txt b/docs/manual/common-usage.txt deleted file mode 100644 index bc78f4a87164..000000000000 --- a/docs/manual/common-usage.txt +++ /dev/null @@ -1,420 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -== General Buildroot usage - -include::make-tips.txt[] - -include::rebuilding-packages.txt[] - -=== Offline builds - -If you intend to do an offline build and just want to download -all sources that you previously selected in the configurator -('menuconfig', 'nconfig', 'xconfig' or 'gconfig'), then issue: - --------------------- - $ make source --------------------- - -You can now disconnect or copy the content of your +dl+ -directory to the build-host. - -=== Building out-of-tree - -As default, everything built by Buildroot is stored in the directory -+output+ in the Buildroot tree. - -Buildroot also supports building out of tree with a syntax similar to -the Linux kernel. To use it, add +O=+ to the make command -line: - --------------------- - $ make O=/tmp/build menuconfig --------------------- - -Or: - --------------------- - $ cd /tmp/build; make O=$PWD -C path/to/buildroot menuconfig --------------------- - -All the output files will be located under +/tmp/build+. If the +O+ -path does not exist, Buildroot will create it. - -*Note:* the +O+ path can be either an absolute or a relative path, but if it's -passed as a relative path, it is important to note that it is interpreted -relative to the main Buildroot source directory, *not* the current working -directory. - -When using out-of-tree builds, the Buildroot +.config+ and temporary -files are also stored in the output directory. This means that you can -safely run multiple builds in parallel using the same source tree as -long as they use unique output directories. - -For ease of use, Buildroot generates a Makefile wrapper in the output -directory - so after the first run, you no longer need to pass +O=<...>+ -and +-C <...>+, simply run (in the output directory): - --------------------- - $ make --------------------- - -[[env-vars]] - -=== Environment variables - -Buildroot also honors some environment variables, when they are passed -to +make+ or set in the environment: - -* +HOSTCXX+, the host C++ compiler to use -* +HOSTCC+, the host C compiler to use -* +UCLIBC_CONFIG_FILE=+, path to - the uClibc configuration file, used to compile uClibc, if an - internal toolchain is being built. - + - Note that the uClibc configuration file can also be set from the - configuration interface, so through the Buildroot +.config+ file; this - is the recommended way of setting it. - + -* +BUSYBOX_CONFIG_FILE=+, path to - the BusyBox configuration file. - + - Note that the BusyBox configuration file can also be set from the - configuration interface, so through the Buildroot +.config+ file; this - is the recommended way of setting it. - + -* +BR2_CCACHE_DIR+ to override the directory where - Buildroot stores the cached files when using ccache. - + -* +BR2_DL_DIR+ to override the directory in which - Buildroot stores/retrieves downloaded files. - + - Note that the Buildroot download directory can also be set from the - configuration interface, so through the Buildroot +.config+ file. See - xref:download-location[] for more details on how you can set the download - directory. -* +BR2_GRAPH_ALT+, if set and non-empty, to use an alternate color-scheme in - build-time graphs -* +BR2_GRAPH_OUT+ to set the filetype of generated graphs, either +pdf+ (the - default), or +png+. -* +BR2_GRAPH_DEPS_OPTS+ to pass extra options to the dependency graph; see - xref:graph-depends[] for the accepted options -* +BR2_GRAPH_DOT_OPTS+ is passed verbatim as options to the +dot+ utility to - draw the dependency graph. -* +BR2_GRAPH_SIZE_OPTS+ to pass extra options to the size graph; see - xref:graph-size[] for the acepted options - -An example that uses config files located in the toplevel directory and -in your $HOME: - --------------------- - $ make UCLIBC_CONFIG_FILE=uClibc.config BUSYBOX_CONFIG_FILE=$HOME/bb.config --------------------- - -If you want to use a compiler other than the default +gcc+ -or +g+++ for building helper-binaries on your host, then do - --------------------- - $ make HOSTCXX=g++-4.3-HEAD HOSTCC=gcc-4.3-HEAD --------------------- - -=== Dealing efficiently with filesystem images - -Filesystem images can get pretty big, depending on the filesystem you choose, -the number of packages, whether you provisioned free space... Yet, some -locations in the filesystems images may just be _empty_ (e.g. a long run of -'zeroes'); such a file is called a _sparse_ file. - -Most tools can handle sparse files efficiently, and will only store or write -those parts of a sparse file that are not empty. - -For example: - -* +tar+ accepts the +-S+ option to tell it to only store non-zero blocks - of sparse files: -** +tar cf archive.tar -S [files...]+ will efficiently store sparse files - in a tarball -** +tar xf archive.tar -S+ will efficiently store sparse files extracted - from a tarball - -* +cp+ accepts the +--sparse=WHEN+ option (+WHEN+ is one of +auto+, - +never+ or +always+): -** +cp --sparse=always source.file dest.file+ will make +dest.file+ a - sparse file if +source.file+ has long runs of zeroes - -Other tools may have similar options. Please consult their respective man -pages. - -You can use sparse files if you need to store the filesystem images (e.g. -to transfer from one machine to another), or if you need to send them (e.g. -to the Q&A team). - -Note however that flashing a filesystem image to a device while using the -sparse mode of +dd+ may result in a broken filesystem (e.g. the block bitmap -of an ext2 filesystem may be corrupted; or, if you have sparse files in -your filesystem, those parts may not be all-zeroes when read back). You -should only use sparse files when handling files on the build machine, not -when transferring them to an actual device that will be used on the target. - -=== Details about packages - -[[package-details]] - -Buildroot can produce a JSON blurb that describes the set of enabled -packages in the current configuration, together with their -dependencies, licenses and other metadata. This JSON blurb is produced -by using the +show-info+ make target: - ------------------------- -make show-info ------------------------- - -Buildroot can also produce details about packages as HTML and JSON -output using the +pkg-stats+ make target. Amongst other things, these -details include whether known CVEs (security vulnerabilities) affect -the packages in your current configuration. It also shows if there is -a newer upstream version for those packages. - ------------------------- -make pkg-stats ------------------------- - -=== Graphing the dependencies between packages - -[[graph-depends]] - -One of Buildroot's jobs is to know the dependencies between packages, -and make sure they are built in the right order. These dependencies -can sometimes be quite complicated, and for a given system, it is -often not easy to understand why such or such package was brought into -the build by Buildroot. - -In order to help understanding the dependencies, and therefore better -understand what is the role of the different components in your -embedded Linux system, Buildroot is capable of generating dependency -graphs. - -To generate a dependency graph of the full system you have compiled, -simply run: - ------------------------- -make graph-depends ------------------------- - -You will find the generated graph in -+output/graphs/graph-depends.pdf+. - -If your system is quite large, the dependency graph may be too complex -and difficult to read. It is therefore possible to generate the -dependency graph just for a given package: - ------------------------- -make -graph-depends ------------------------- - -You will find the generated graph in -+output/graph/-graph-depends.pdf+. - -Note that the dependency graphs are generated using the +dot+ tool -from the _Graphviz_ project, which you must have installed on your -system to use this feature. In most distributions, it is available as -the +graphviz+ package. - -By default, the dependency graphs are generated in the PDF -format. However, by passing the +BR2_GRAPH_OUT+ environment variable, you -can switch to other output formats, such as PNG, PostScript or -SVG. All formats supported by the +-T+ option of the +dot+ tool are -supported. - --------------------------------- -BR2_GRAPH_OUT=svg make graph-depends --------------------------------- - -The +graph-depends+ behaviour can be controlled by setting options in the -+BR2_GRAPH_DEPS_OPTS+ environment variable. The accepted options are: - -* +--depth N+, +-d N+, to limit the dependency depth to +N+ levels. The - default, +0+, means no limit. - -* +--stop-on PKG+, +-s PKG+, to stop the graph on the package +PKG+. - +PKG+ can be an actual package name, a glob, the keyword 'virtual' - (to stop on virtual packages), or the keyword 'host' (to stop on - host packages). The package is still present on the graph, but its - dependencies are not. - -* +--exclude PKG+, +-x PKG+, like +--stop-on+, but also omits +PKG+ from - the graph. - -* +--transitive+, +--no-transitive+, to draw (or not) the transitive - dependencies. The default is to not draw transitive dependencies. - -* +--colors R,T,H+, the comma-separated list of colors to draw the - root package (+R+), the target packages (+T+) and the host packages - (+H+). Defaults to: +lightblue,grey,gainsboro+ - --------------------------------- -BR2_GRAPH_DEPS_OPTS='-d 3 --no-transitive --colors=red,green,blue' make graph-depends --------------------------------- - -=== Graphing the build duration - -[[graph-duration]] - -When the build of a system takes a long time, it is sometimes useful -to be able to understand which packages are the longest to build, to -see if anything can be done to speed up the build. In order to help -such build time analysis, Buildroot collects the build time of each -step of each package, and allows to generate graphs from this data. - -To generate the build time graph after a build, run: - ----------------- -make graph-build ----------------- - -This will generate a set of files in +output/graphs+ : - -* +build.hist-build.pdf+, a histogram of the build time for each - package, ordered in the build order. - -* +build.hist-duration.pdf+, a histogram of the build time for each - package, ordered by duration (longest first) - -* +build.hist-name.pdf+, a histogram of the build time for each - package, order by package name. - -* +build.pie-packages.pdf+, a pie chart of the build time per package - -* +build.pie-steps.pdf+, a pie chart of the global time spent in each - step of the packages build process. - -This +graph-build+ target requires the Python Matplotlib and Numpy -libraries to be installed (+python-matplotlib+ and +python-numpy+ on -most distributions), and also the +argparse+ module if you're using a -Python version older than 2.7 (+python-argparse+ on most -distributions). - -By default, the output format for the graph is PDF, but a different -format can be selected using the +BR2_GRAPH_OUT+ environment variable. The -only other format supported is PNG: - ----------------- -BR2_GRAPH_OUT=png make graph-build ----------------- - -[[graph-size]] -=== Graphing the filesystem size contribution of packages - -When your target system grows, it is sometimes useful to understand -how much each Buildroot package is contributing to the overall root -filesystem size. To help with such an analysis, Buildroot collects -data about files installed by each package and using this data, -generates a graph and CSV files detailing the size contribution of -the different packages. - -To generate these data after a build, run: - ----------------- -make graph-size ----------------- - -This will generate: - -* +output/graphs/graph-size.pdf+, a pie chart of the contribution of - each package to the overall root filesystem size - -* +output/graphs/package-size-stats.csv+, a CSV file giving the size - contribution of each package to the overall root filesystem size - -* +output/graphs/file-size-stats.csv+, a CSV file giving the size - contribution of each installed file to the package it belongs, and - to the overall filesystem size. - -This +graph-size+ target requires the Python Matplotlib library to be -installed (+python-matplotlib+ on most distributions), and also the -+argparse+ module if you're using a Python version older than 2.7 -(+python-argparse+ on most distributions). - -Just like for the duration graph, a +BR2_GRAPH_OUT+ environment variable -is supported to adjust the output file format. See xref:graph-depends[] -for details about this environment variable. - -Additionally, one may set the environment variable +BR2_GRAPH_SIZE_OPTS+ -to further control the generated graph. Accepted options are: - -* `--size-limit X`, `-l X`, will group all packages which individual - contribution is below `X` percent, to a single entry labelled _Others_ - in the graph. By default, `X=0.01`, which means packages each - contributing less than 1% are grouped under _Others_. Accepted values - are in the range `[0.0..1.0]`. - -* `--iec`, `--binary`, `--si`, `--decimal`, to use IEC (binary, powers - of 1024) or SI (decimal, powers of 1000; the default) prefixes. - -* `--biggest-first`, to sort packages in decreasing size order, rather - than in increasing size order. - -.Note -The collected filesystem size data is only meaningful after a complete -clean rebuild. Be sure to run +make clean all+ before using +make -graph-size+. - -To compare the root filesystem size of two different Buildroot compilations, -for example after adjusting the configuration or when switching to another -Buildroot release, use the +size-stats-compare+ script. It takes two -+file-size-stats.csv+ files (produced by +make graph-size+) as input. -Refer to the help text of this script for more details: - ----------------- -utils/size-stats-compare -h ----------------- - -[[top-level-parallel-build]] -=== Top-level parallel build - -.Note -This section deals with a very experimental feature, which is known to -break even in some non-unusual situations. Use at your own risk. - -Buildroot has always been capable of using parallel build on a per -package basis: each package is built by Buildroot using +make -jN+ (or -the equivalent invocation for non-make-based build systems). The level -of parallelism is by default number of CPUs + 1, but it can be -adjusted using the +BR2_JLEVEL+ configuration option. - -Until 2020.02, Buildroot was however building packages in a serial -fashion: each package was built one after the other, without -parallelization of the build between packages. As of 2020.02, -Buildroot has experimental support for *top-level parallel build*, -which allows some signicant build time savings by building packages -that have no dependency relationship in parallel. This feature is -however marked as experimental and is known not to work in some cases. - -In order to use top-level parallel build, one must: - -. Enable the option +BR2_PER_PACKAGE_DIRECTORIES+ in the Buildroot -configuration - -. Use +make -jN+ when starting the Buildroot build - -Internally, the +BR2_PER_PACKAGE_DIRECTORIES+ will enable a mechanism -called *per-package directories*, which will have the following -effects: - -* Instead of a global _target_ directory and a global _host_ directory - common to all packages, per-package _target_ and _host_ directories - will be used, in +$(O)/per-package//target/+ and - +$(O)/per-package//host/+ respectively. Those folders will be - populated from the corresponding folders of the package dependencies - at the beginning of ++ build. The compiler and all other tools - will therefore only be able to see and access files installed by - dependencies explicitly listed by ++. - -* At the end of the build, the global _target_ and _host_ directories - will be populated, located in +$(O)/target+ and +$(O)/host+ - respectively. This means that during the build, those folders will - be empty and it's only at the very end of the build that they will - be populated. - -include::advanced.txt[] diff --git a/docs/manual/configure-other-components.txt b/docs/manual/configure-other-components.adoc similarity index 100% rename from docs/manual/configure-other-components.txt rename to docs/manual/configure-other-components.adoc diff --git a/docs/manual/configure.txt b/docs/manual/configure.adoc similarity index 100% rename from docs/manual/configure.txt rename to docs/manual/configure.adoc diff --git a/docs/manual/contribute.adoc b/docs/manual/contribute.adoc new file mode 100644 index 000000000000..15fe36aef03e --- /dev/null +++ b/docs/manual/contribute.adoc @@ -0,0 +1,739 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +== Contributing to Buildroot + +There are many ways in which you can contribute to Buildroot: analyzing +and fixing bugs, analyzing and fixing package build failures detected by +the autobuilders, testing and reviewing patches sent by other +developers, working on the items in our TODO list and sending your own +improvements to Buildroot or its manual. The following sections give a +little more detail on each of these items. + +If you are interested in contributing to Buildroot, the first thing you +should do is to subscribe to the Buildroot mailing list. This list is +the main way of interacting with other Buildroot developers and to send +contributions to. If you aren't subscribed yet, then refer to +xref:community-resources[] for the subscription link. + +If you are going to touch the code, it is highly recommended to use a +git repository of Buildroot, rather than starting from an extracted +source code tarball. Git is the easiest way to develop from and directly +send your patches to the mailing list. Refer to xref:getting-buildroot[] +for more information on obtaining a Buildroot git tree. + +=== Reproducing, analyzing and fixing bugs + +A first way of contributing is to have a look at the open bug reports in +the https://bugs.buildroot.org/buglist.cgi?product=buildroot[Buildroot bug +tracker]. As we strive to keep the bug count as small as possible, all +help in reproducing, analyzing and fixing reported bugs is more than +welcome. Don't hesitate to add a comment to bug reports reporting your +findings, even if you don't yet see the full picture. + +=== Analyzing and fixing autobuild failures + +The Buildroot autobuilders are a set of build machines that continuously +run Buildroot builds based on random configurations. This is done for +all architectures supported by Buildroot, with various toolchains, and +with a random selection of packages. With the large commit activity on +Buildroot, these autobuilders are a great help in detecting problems +very early after commit. + +All build results are available at http://autobuild.buildroot.org[], +statistics are at http://autobuild.buildroot.org/stats.php[]. Every day, +an overview of all failed packages is sent to the mailing list. + +Detecting problems is great, but obviously these problems have to be +fixed as well. Your contribution is very welcome here! There are +basically two things that can be done: + +- Analyzing the problems. The daily summary mails do not contain details + about the actual failures: in order to see what's going on you have to + open the build log and check the last output. Having someone doing + this for all packages in the mail is very useful for other developers, + as they can make a quick initial analysis based on this output alone. + +- Fixing a problem. When fixing autobuild failures, you should follow + these steps: + . Check if you can reproduce the problem by building with the same + configuration. You can do this manually, or use the + http://git.buildroot.org/buildroot-test/tree/utils/br-reproduce-build[br-reproduce-build] + script that will automatically clone a Buildroot git repository, + checkout the correct revision, download and set the right + configuration, and start the build. + . Analyze the problem and create a fix. + . Verify that the problem is really fixed by starting from a clean + Buildroot tree and only applying your fix. + . Send the fix to the Buildroot mailing list (see + xref:submitting-patches[]). In case you created a patch against the + package sources, you should also send the patch upstream so that the + problem will be fixed in a later release, and the patch in Buildroot + can be removed. + In the commit message of a patch fixing an autobuild failure, add a + reference to the build result directory, as follows: +--------------------- +Fixes: http://autobuild.buildroot.org/results/51000a9d4656afe9e0ea6f07b9f8ed374c2e4069 +--------------------- + +=== Reviewing and testing patches + +With the amount of patches sent to the mailing list each day, the +maintainer has a very hard job to judge which patches are ready to apply +and which ones aren't. Contributors can greatly help here by reviewing +and testing these patches. + +In the review process, do not hesitate to respond to patch submissions +for remarks, suggestions or anything that will help everyone to +understand the patches and make them better. Please use internet +style replies in plain text emails when responding to patch +submissions. + +To indicate approval of a patch, there are three formal tags that keep +track of this approval. To add your tag to a patch, reply to it with the +approval tag below the original author's Signed-off-by line. These tags +will be picked up automatically by patchwork (see +xref:apply-patches-patchwork[]) and will be part of the commit log when +the patch is accepted. + +Tested-by:: Indicates that the patch has been tested successfully. + You are encouraged to specify what kind of testing you performed + (compile-test on architecture X and Y, runtime test on target A, + ...). This additional information helps other testers and the + maintainer. + +Reviewed-by:: Indicates that you code-reviewed the patch and did your + best in spotting problems, but you are not sufficiently familiar with + the area touched to provide an Acked-by tag. This means that there + may be remaining problems in the patch that would be spotted by + someone with more experience in that area. Should such problems be + detected, your Reviewed-by tag remains appropriate and you cannot + be blamed. + +Acked-by:: Indicates that you code-reviewed the patch and you are + familiar enough with the area touched to feel that the patch can be + committed as-is (no additional changes required). In case it later + turns out that something is wrong with the patch, your Acked-by could + be considered inappropriate. The difference between Acked-by and + Reviewed-by is thus mainly that you are prepared to take the blame on + Acked patches, but not on Reviewed ones. + +If you reviewed a patch and have comments on it, you should simply reply +to the patch stating these comments, without providing a Reviewed-by or +Acked-by tag. These tags should only be provided if you judge the patch +to be good as it is. + +It is important to note that neither Reviewed-by nor Acked-by imply +that testing has been performed. To indicate that you both reviewed and +tested the patch, provide two separate tags (Reviewed/Acked-by and +Tested-by). + +Note also that _any developer_ can provide Tested/Reviewed/Acked-by +tags, without exception, and we encourage everyone to do this. Buildroot +does not have a defined group of _core_ developers, it just so happens +that some developers are more active than others. The maintainer will +value tags according to the track record of their submitter. Tags +provided by a regular contributor will naturally be trusted more than +tags provided by a newcomer. As you provide tags more regularly, your +'trustworthiness' (in the eyes of the maintainer) will go up, but _any_ +tag provided is valuable. + +Buildroot's Patchwork website can be used to pull in patches for testing +purposes. Please see xref:apply-patches-patchwork[] for more +information on using Buildroot's Patchwork website to apply patches. + +[[apply-patches-patchwork]] +==== Applying Patches from Patchwork + +The main use of Buildroot's Patchwork website for a developer is for +pulling in patches into their local git repository for testing +purposes. + +When browsing patches in the patchwork management interface, an +mbox+ +link is provided at the top of the page. Copy this link address and +run the following commands: + +--------------------- +$ git checkout -b +$ wget -O - | git am +--------------------- + +Another option for applying patches is to create a bundle. A bundle is +a set of patches that you can group together using the patchwork +interface. Once the bundle is created and the bundle is made public, +you can copy the +mbox+ link for the bundle and apply the bundle +using the above commands. + + +=== Work on items from the TODO list + +If you want to contribute to Buildroot but don't know where to start, +and you don't like any of the above topics, you can always work on items +from the http://elinux.org/Buildroot#Todo_list[Buildroot TODO list]. +Don't hesitate to discuss an item first on the mailing list or on IRC. +Do edit the wiki to indicate when you start working on an item, so we +avoid duplicate efforts. + +[[submitting-patches]] +=== Submitting patches + +[NOTE] +_Please, do not attach patches to bugs, send them to the mailing list +instead_. + +If you made some changes to Buildroot and you would like to contribute +them to the Buildroot project, proceed as follows. + +==== The formatting of a patch + +We expect patches to be formatted in a specific way. This is necessary +to make it easy to review patches, to be able to apply them easily to +the git repository, to make it easy to find back in the history how +and why things have changed, and to make it possible to use +git +bisect+ to locate the origin of a problem. + +First of all, it is essential that the patch has a good commit +message. The commit message should start with a separate line with a +brief summary of the change, prefixed by the area touched by the +patch. A few examples of good commit titles: + +* +package/linuxptp: bump version to 2.0+ + +* +configs/imx23evk: bump Linux version to 4.19+ + +* +package/pkg-generic: postpone evaluation of dependency conditions+ + +* +boot/uboot: needs host-{flex,bison}+ + +* +support/testing: add python-ubjson tests+ + +The description that follows the prefix should start with a lower case +letter (i.e "bump", "needs", "postpone", "add" in the above examples). + +Second, the body of the commit message should describe _why_ this +change is needed, and if necessary also give details about _how_ it +was done. When writing the commit message, think of how the reviewers +will read it, but also think about how you will read it when you look +at this change again a few years down the line. + +Third, the patch itself should do only one change, but do it +completely. Two unrelated or weakly related changes should usually be +done in two separate patches. This usually means that a patch affects +only a single package. If several changes are related, it is often +still possible to split them up in small patches and apply them in a +specific order. Small patches make it easier to review, and often +make it easier to understand afterwards why a change was done. +However, each patch must be complete. It is not allowed that the +build is broken when only the first but not the second patch is +applied. This is necessary to be able to use +git bisect+ afterwards. + +Of course, while you're doing your development, you're probably going +back and forth between packages, and certainly not committing things +immediately in a way that is clean enough for submission. So most +developers rewrite the history of commits to produce a clean set of +commits that is appropriate for submission. To do this, you need to +use _interactive rebasing_. You can learn about it +https://git-scm.com/book/en/v2/Git-Tools-Rewriting-History[in the Pro +Git book]. Sometimes, it is even easier to discard you history with ++git reset --soft origin/master+ and select individual changes with ++git add -i+ or +git add -p+. + +Finally, the patch should be signed off. This is done by adding ++Signed-off-by: Your Real Name + at the end of the +commit message. +git commit -s+ does that for you, if configured +properly. The +Signed-off-by+ tag means that you publish the patch +under the Buildroot license (i.e. GPL-2.0+, except for package patches, +which have the upstream license), and that you are allowed to do so. +See http://developercertificate.org/[the Developer Certificate of +Origin] for details. + +To give credits to who sponsored the creation of a patch or the process of +upstreaming it, you may use +https://datatracker.ietf.org/doc/html/rfc5233[email subaddressing] for +your git identity (i.e. what is used as commit author and email +From:+ +field, as well as your Signed-off-by tag); add suffix to the local part, +separated from it by a plus `+` sign. E.g.: + +* for a company which sponsored the submitted work, use the company name + as the detail (suffix) part: ++ +`Your-Name Your-Surname ` + +* for an individual who sponsored who sponsored the submitted work, use + their name and surname: ++ +`Your-Name Your-Surname ` + +When adding new packages, you should submit every package in a +separate patch. This patch should have the update to ++package/Config.in+, the package +Config.in+ file, the +.mk+ file, the ++.hash+ file, any init script, and all package patches. If the package +has many sub-options, these are sometimes better added as separate +follow-up patches. The summary line should be something like ++: new package+. The body of the commit message can be +empty for simple packages, or it can contain the description of the +package (like the Config.in help text). If anything special has to be +done to build the package, this should also be explained explicitly in +the commit message body. + +When you bump a package to a new version, you should also submit a +separate patch for each package. Don't forget to update the +.hash+ +file, or add it if it doesn't exist yet. Also don't forget to check if +the +_LICENSE+ and +_LICENSE_FILES+ are still valid. The summary line +should be something like +: bump to version +. If the new version only contains security updates compared +to the existing one, the summary should be +: security +bump to version + and the commit message body should show +the CVE numbers that are fixed. If some package patches can be removed +in the new version, it should be explained explicitly why they can be +removed, preferably with the upstream commit ID. Also any other +required changes should be explained explicitly, like configure +options that no longer exist or are no longer needed. + +If you are interested in getting notified of build failures and of +further changes in the packages you added or modified, please add +yourself to the DEVELOPERS file. This should be done in the same patch +creating or modifying the package. See xref:DEVELOPERS[the DEVELOPERS file] +for more information. + +Buildroot provides a handy tool to check for common coding style +mistakes on files you created or modified, called +check-package+ (see +xref:check-package[] for more information). + +==== Preparing a patch series + +Starting from the changes committed in your local git view, _rebase_ +your development branch on top of the upstream tree before generating +a patch set. To do so, run: + +--------------------- +$ git fetch --all --tags +$ git rebase origin/master +--------------------- + +Now check the coding style for the changes you committed: + +--------------------- +$ utils/docker-run make check-package +--------------------- + +Now, you are ready to generate then submit your patch set. + +To generate it, run: + +--------------------- +$ git format-patch -M -n -s -o outgoing origin/master +--------------------- + +This will generate patch files in the +outgoing+ subdirectory, +automatically adding the +Signed-off-by+ line. + +Once patch files are generated, you can review/edit the commit message +before submitting them, using your favorite text editor. + +Buildroot provides a handy tool to know to whom your patches should be +sent, called +get-developers+ (see xref:DEVELOPERS[] for more +information). This tool reads your patches and outputs the appropriate ++git send-email+ command to use: + +--------------------- +$ ./utils/get-developers outgoing/* +--------------------- + +Use the output of +get-developers+ to send your patches: + +--------------------- +$ git send-email --to buildroot@buildroot.org --cc bob --cc alice outgoing/* +--------------------- + +Alternatively, +get-developers -e+ can be used directly with the ++--cc-cmd+ argument to +git send-email+ to automatically CC the +affected developers: + +--------------------- +$ git send-email --to buildroot@buildroot.org \ + --cc-cmd './utils/get-developers -e' origin/master +--------------------- + ++git+ can be configured to automatically do this out of the box with: + +--------------------- +$ git config sendemail.to buildroot@buildroot.org +$ git config sendemail.ccCmd "$(pwd)/utils/get-developers -e" +--------------------- + +And then just do: + +--------------------- +$ git send-email origin/master +--------------------- + +Note that +git+ should be configured to use your mail account. +To configure +git+, see +man git-send-email+ or google it. + +If you do not use +git send-email+, make sure posted *patches are not +line-wrapped*, otherwise they cannot easily be applied. In such a case, +fix your e-mail client, or better yet, learn to use +git send-email+. + +==== Cover letter + +If you want to present the whole patch set in a separate mail, add ++--cover-letter+ to the +git format-patch+ command (see +man +git-format-patch+ for further information). This will generate a +template for an introduction e-mail to your patch series. + +A 'cover letter' may be useful to introduce the changes you propose +in the following cases: + +* large number of commits in the series; + +* deep impact of the changes in the rest of the project; + +* RFC footnote:[RFC: (Request for comments) change proposal]; + +* whenever you feel it will help presenting your work, your choices, + the review process, etc. + +==== Patches for maintenance branches + +When fixing bugs on a maintenance branch, bugs should be fixed on the +master branch first. The commit log for such a patch may then contain a +post-commit note specifying what branches are affected: + +---- +package/foo: fix stuff + +Signed-off-by: Your Real Name +--- +Backport to: 2020.02.x, 2020.05.x +(2020.08.x not affected as the version was bumped) +---- + +Those changes will then be backported by a maintainer to the affected +branches. + +However, some bugs may apply only to a specific release, for example +because it is using an older version of a package. In that case, patches +should be based off the maintenance branch, and the patch subject prefix +must include the maintenance branch name (for example "[PATCH 2020.02.x]"). +This can be done with the +git format-patch+ flag +--subject-prefix+: + +--------------------- +$ git format-patch --subject-prefix "PATCH 2020.02.x" \ + -M -s -o outgoing origin/2020.02.x +--------------------- + +Then send the patches with +git send-email+, as described above. + +==== Patch revision changelog + +When improvements are requested, the new revision of each commit +should include a changelog of the modifications between each +submission. Note that when your patch series is introduced by a cover +letter, an overall changelog may be added to the cover letter in +addition to the changelog in the individual commits. +The best thing to rework a patch series is by interactive rebasing: ++git rebase -i origin/master+. Consult the git manual for more +information. + +When added to the individual commits, this changelog is added when +editing the commit message. Below the +Signed-off-by+ section, add ++---+ and your changelog. + +Although the changelog will be visible for the reviewers in the mail +thread, as well as in +https://patchwork.ozlabs.org/project/buildroot/list/[patchwork], +git+ +will automatically ignores lines below +---+ when the patch will be +merged. This is the intended behavior: the changelog is not meant to +be preserved forever in the +git+ history of the project. + +Hereafter the recommended layout: + +--------------- +Patch title: short explanation, max 72 chars + +A paragraph that explains the problem, and how it manifests itself. If +the problem is complex, it is OK to add more paragraphs. All paragraphs +should be wrapped at 72 characters. + +A paragraph that explains the root cause of the problem. Again, more +than one paragraph is OK. + +Finally, one or more paragraphs that explain how the problem is solved. +Don't hesitate to explain complex solutions in detail. + +Signed-off-by: John DOE + +--- +Changes v2 -> v3: + - foo bar (suggested by Jane) + - bar buz + +Changes v1 -> v2: + - alpha bravo (suggested by John) + - charly delta +--------------- + +Any patch revision should include the version number. The version number +is simply composed of the letter +v+ followed by an +integer+ greater or +equal to two (i.e. "PATCH v2", "PATCH v3" ...). + +This can be easily handled with +git format-patch+ by using the option ++--subject-prefix+: + +--------------------- +$ git format-patch --subject-prefix "PATCH v4" \ + -M -s -o outgoing origin/master +--------------------- + +Since git version 1.8.1, you can also use +-v + (where is the +version number): + +--------------------- +$ git format-patch -v4 -M -s -o outgoing origin/master +--------------------- + +When you provide a new version of a patch, please mark the old one as +superseded in +https://patchwork.ozlabs.org/project/buildroot/list/[patchwork]. You +need to create an account on +https://patchwork.ozlabs.org/project/buildroot/list/[patchwork] to be +able to modify the status of your patches. Note that you can only change +the status of patches you submitted yourself, which means the email +address you register in +https://patchwork.ozlabs.org/project/buildroot/list/[patchwork] should +match the one you use for sending patches to the mailing list. + +You can also add the +--in-reply-to + option when +submitting a patch to the mailing list. The id of the mail to reply to +can be found under the "Message Id" tag on +https://patchwork.ozlabs.org/project/buildroot/list/[patchwork]. The +advantage of *in-reply-to* is that patchwork will automatically mark +the previous version of the patch as superseded. + +[[reporting-bugs]] +=== Reporting issues/bugs or getting help + +Before reporting any issue, please check in +xref:community-resources[the mailing list archive] whether someone has +already reported and/or fixed a similar problem. + +However you choose to report bugs or get help, either by +opening a bug in the xref:community-resources[bug tracker] or by +xref:community-resources[sending a mail to the mailing list], there are +a number of details to provide in order to help people reproduce and +find a solution to the issue. + +Try to think as if you were trying to help someone else; in +that case, what would you need? + +Here is a short list of details to provide in such case: + +* host machine (OS/release) +* version of Buildroot +* target for which the build fails +* package(s) for which the build fails +* the command that fails and its output +* any information you think that may be relevant + +Additionally, you should add the +.config+ file (or if you know how, a ++defconfig+; see xref:customize-store-buildroot-config[]). + +If some of these details are too large, do not hesitate to use a +pastebin service. Note that not all available pastebin services will +preserve Unix-style line terminators when downloading raw pastes. +Following pastebin services are known to work correctly: +- https://gist.github.com/ +- http://code.bulix.org/ + +=== Using the runtime tests framework + +Buildroot includes a run-time testing framework built upon Python +scripting and QEMU runtime execution. The goals of the framework are +the following: + +* build a well defined Buildroot configuration +* optionally, verify some properties of the build output +* optionally, boot the build results under Qemu, and verify that a + given feature is working as expected + +The entry point to use the runtime tests framework is the ++support/testing/run-tests+ tool, which has a series of options +documented in the tool's help '-h' description. Some common options +include setting the download folder, the output folder, keeping build +output, and for multiple test cases, you can set the JLEVEL for each. + +Here is an example walk through of running a test case. + +* For a first step, let us see what all the test case options are. The test +cases can be listed by executing +support/testing/run-tests -l+. These tests +can all be run individually during test development from the console. Both +one at a time and selectively as a group of a subset of tests. + +--------------------- +$ support/testing/run-tests -l +List of tests +test_run (tests.utils.test_check_package.TestCheckPackage) +test_run (tests.toolchain.test_external.TestExternalToolchainBuildrootMusl) ... ok +test_run (tests.toolchain.test_external.TestExternalToolchainBuildrootuClibc) ... ok +test_run (tests.toolchain.test_external.TestExternalToolchainCCache) ... ok +test_run (tests.toolchain.test_external.TestExternalToolchainCtngMusl) ... ok +test_run (tests.toolchain.test_external.TestExternalToolchainLinaroArm) ... ok +test_run (tests.toolchain.test_external.TestExternalToolchainSourceryArmv4) ... ok +test_run (tests.toolchain.test_external.TestExternalToolchainSourceryArmv5) ... ok +test_run (tests.toolchain.test_external.TestExternalToolchainSourceryArmv7) ... ok +[snip] +test_run (tests.init.test_systemd.TestInitSystemSystemdRoFull) ... ok +test_run (tests.init.test_systemd.TestInitSystemSystemdRoIfupdown) ... ok +test_run (tests.init.test_systemd.TestInitSystemSystemdRoNetworkd) ... ok +test_run (tests.init.test_systemd.TestInitSystemSystemdRwFull) ... ok +test_run (tests.init.test_systemd.TestInitSystemSystemdRwIfupdown) ... ok +test_run (tests.init.test_systemd.TestInitSystemSystemdRwNetworkd) ... ok +test_run (tests.init.test_busybox.TestInitSystemBusyboxRo) ... ok +test_run (tests.init.test_busybox.TestInitSystemBusyboxRoNet) ... ok +test_run (tests.init.test_busybox.TestInitSystemBusyboxRw) ... ok +test_run (tests.init.test_busybox.TestInitSystemBusyboxRwNet) ... ok + +Ran 157 tests in 0.021s + +OK +--------------------- + +* Then, to run one test case: + +--------------------- +$ support/testing/run-tests -d dl -o output_folder -k tests.init.test_busybox.TestInitSystemBusyboxRw +15:03:26 TestInitSystemBusyboxRw Starting +15:03:28 TestInitSystemBusyboxRw Building +15:08:18 TestInitSystemBusyboxRw Building done +15:08:27 TestInitSystemBusyboxRw Cleaning up +. +Ran 1 test in 301.140s + +OK +--------------------- + +The standard output indicates if the test is successful or not. By +default, the output folder for the test is deleted automatically +unless the option +-k+ is passed to *keep* the output directory. + +==== Creating a test case + +Within the Buildroot repository, the testing framework is organized at the +top level in +support/testing/+ by folders of +conf+, +infra+ and +tests+. +All the test cases live under the +tests+ folder and are organized in various +folders representing the category of test. + +The best way to get familiar with how to create a test case is to look +at a few of the basic file system +support/testing/tests/fs/+ and init ++support/testing/tests/init/+ test scripts. Those tests give good +examples of a basic tests that include both checking the build +results, and doing runtime tests. There are other more advanced cases +that use things like nested +br2-external+ folders to provide +skeletons and additional packages. + +Creating a basic test case involves: + +* Defining a test class that inherits from +infra.basetest.BRTest+ + +* Defining the +config+ member of the test class, to the Buildroot + configuration to build for this test case. It can optionally rely on + configuration snippets provided by the runtime test infrastructure: + +infra.basetest.BASIC_TOOLCHAIN_CONFIG+ to get a basic + architecture/toolchain configuration, and + +infra.basetest.MINIMAL_CONFIG+ to not build any filesystem. The + advantage of using +infra.basetest.BASIC_TOOLCHAIN_CONFIG+ is that a + matching Linux kernel image is provided, which allows to boot the + resulting image in Qemu without having to build a Linux kernel image + as part of the test case, therefore significant decreasing the build + time required for the test case. + +* Implementing a +def test_run(self):+ function to implement the + actual tests to run after the build has completed. They may be tests + that verify the build output, by running command on the host using + the +run_cmd_on_host()+ helper function. Or they may boot the + generated system in Qemu using the +Emulator+ object available as + +self.emulator+ in the test case. For example +self.emulator.boot()+ + allows to boot the system in Qemu, +self.emulator.login()+ allows to + login, +self.emulator.run()+ allows to run shell commands inside + Qemu. + +After creating the test script, add yourself to the +DEVELOPERS+ file to +be the maintainer of that test case. + +==== Debugging a test case + +When a test case runs, the +output_folder+ will contain the following: + +--------------------- +$ ls output_folder/ +TestInitSystemBusyboxRw/ +TestInitSystemBusyboxRw-build.log +TestInitSystemBusyboxRw-run.log +--------------------- + ++TestInitSystemBusyboxRw/+ is the Buildroot output directory, and it +is preserved only if the +-k+ option is passed. + ++TestInitSystemBusyboxRw-build.log+ is the log of the Buildroot build. + ++TestInitSystemBusyboxRw-run.log+ is the log of the Qemu boot and +test. This file will only exist if the build was successful and the +test case involves booting under Qemu. + +If you want to manually run Qemu to do manual tests of the build +result, the first few lines of +TestInitSystemBusyboxRw-run.log+ +contain the Qemu command line to use. + +You can also make modifications to the current sources inside the ++output_folder+ (e.g. for debug purposes) and rerun the standard +Buildroot make targets (in order to regenerate the complete image with +the new modifications) and then rerun the test. + +==== Runtime tests and Gitlab CI + +All runtime tests are regularly executed by Buildroot Gitlab CI +infrastructure, see .gitlab.yml and +https://gitlab.com/buildroot.org/buildroot/-/jobs. + +You can also use Gitlab CI to test your new test cases, or verify that +existing tests continue to work after making changes in Buildroot. + +In order to achieve this, you need to create a fork of the Buildroot +project on Gitlab, and be able to push branches to your Buildroot fork +on Gitlab. + +The name of the branch that you push will determine if a Gitlab CI +pipeline will be triggered or not, and for which test cases. + +In the examples below, the component of the branch name is an +arbitrary string you choose. + +* To trigger all run-test test case jobs, push a branch that ends with + +-runtime-tests+: + +--------------------- + $ git push gitlab HEAD:-runtime-tests +--------------------- + +* To trigger one or several test case jobs, push a branch that ends + with the complete test case name + (+tests.init.test_busybox.TestInitSystemBusyboxRo+) or with the name + of a category of tests (+tests.init.test_busybox+): + +--------------------- + $ git push gitlab HEAD:- +--------------------- + +Example to run one test: + +--------------------- + $ git push gitlab HEAD:foo-tests.init.test_busybox.TestInitSystemBusyboxRo +--------------------- + +Examples to run several tests part of the same group: + +--------------------- + $ git push gitlab HEAD:foo-tests.init.test_busybox + $ git push gitlab HEAD:foo-tests.init +--------------------- diff --git a/docs/manual/contribute.txt b/docs/manual/contribute.txt deleted file mode 100644 index 94f1c64496fd..000000000000 --- a/docs/manual/contribute.txt +++ /dev/null @@ -1,722 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -== Contributing to Buildroot - -There are many ways in which you can contribute to Buildroot: analyzing -and fixing bugs, analyzing and fixing package build failures detected by -the autobuilders, testing and reviewing patches sent by other -developers, working on the items in our TODO list and sending your own -improvements to Buildroot or its manual. The following sections give a -little more detail on each of these items. - -If you are interested in contributing to Buildroot, the first thing you -should do is to subscribe to the Buildroot mailing list. This list is -the main way of interacting with other Buildroot developers and to send -contributions to. If you aren't subscribed yet, then refer to -xref:community-resources[] for the subscription link. - -If you are going to touch the code, it is highly recommended to use a -git repository of Buildroot, rather than starting from an extracted -source code tarball. Git is the easiest way to develop from and directly -send your patches to the mailing list. Refer to xref:getting-buildroot[] -for more information on obtaining a Buildroot git tree. - -=== Reproducing, analyzing and fixing bugs - -A first way of contributing is to have a look at the open bug reports in -the https://bugs.buildroot.org/buglist.cgi?product=buildroot[Buildroot bug -tracker]. As we strive to keep the bug count as small as possible, all -help in reproducing, analyzing and fixing reported bugs is more than -welcome. Don't hesitate to add a comment to bug reports reporting your -findings, even if you don't yet see the full picture. - -=== Analyzing and fixing autobuild failures - -The Buildroot autobuilders are a set of build machines that continuously -run Buildroot builds based on random configurations. This is done for -all architectures supported by Buildroot, with various toolchains, and -with a random selection of packages. With the large commit activity on -Buildroot, these autobuilders are a great help in detecting problems -very early after commit. - -All build results are available at http://autobuild.buildroot.org[], -statistics are at http://autobuild.buildroot.org/stats.php[]. Every day, -an overview of all failed packages is sent to the mailing list. - -Detecting problems is great, but obviously these problems have to be -fixed as well. Your contribution is very welcome here! There are -basically two things that can be done: - -- Analyzing the problems. The daily summary mails do not contain details - about the actual failures: in order to see what's going on you have to - open the build log and check the last output. Having someone doing - this for all packages in the mail is very useful for other developers, - as they can make a quick initial analysis based on this output alone. - -- Fixing a problem. When fixing autobuild failures, you should follow - these steps: - . Check if you can reproduce the problem by building with the same - configuration. You can do this manually, or use the - http://git.buildroot.org/buildroot-test/tree/utils/br-reproduce-build[br-reproduce-build] - script that will automatically clone a Buildroot git repository, - checkout the correct revision, download and set the right - configuration, and start the build. - . Analyze the problem and create a fix. - . Verify that the problem is really fixed by starting from a clean - Buildroot tree and only applying your fix. - . Send the fix to the Buildroot mailing list (see - xref:submitting-patches[]). In case you created a patch against the - package sources, you should also send the patch upstream so that the - problem will be fixed in a later release, and the patch in Buildroot - can be removed. - In the commit message of a patch fixing an autobuild failure, add a - reference to the build result directory, as follows: ---------------------- -Fixes: http://autobuild.buildroot.org/results/51000a9d4656afe9e0ea6f07b9f8ed374c2e4069 ---------------------- - -=== Reviewing and testing patches - -With the amount of patches sent to the mailing list each day, the -maintainer has a very hard job to judge which patches are ready to apply -and which ones aren't. Contributors can greatly help here by reviewing -and testing these patches. - -In the review process, do not hesitate to respond to patch submissions -for remarks, suggestions or anything that will help everyone to -understand the patches and make them better. Please use internet -style replies in plain text emails when responding to patch -submissions. - -To indicate approval of a patch, there are three formal tags that keep -track of this approval. To add your tag to a patch, reply to it with the -approval tag below the original author's Signed-off-by line. These tags -will be picked up automatically by patchwork (see -xref:apply-patches-patchwork[]) and will be part of the commit log when -the patch is accepted. - -Tested-by:: Indicates that the patch has been tested successfully. - You are encouraged to specify what kind of testing you performed - (compile-test on architecture X and Y, runtime test on target A, - ...). This additional information helps other testers and the - maintainer. - -Reviewed-by:: Indicates that you code-reviewed the patch and did your - best in spotting problems, but you are not sufficiently familiar with - the area touched to provide an Acked-by tag. This means that there - may be remaining problems in the patch that would be spotted by - someone with more experience in that area. Should such problems be - detected, your Reviewed-by tag remains appropriate and you cannot - be blamed. - -Acked-by:: Indicates that you code-reviewed the patch and you are - familiar enough with the area touched to feel that the patch can be - committed as-is (no additional changes required). In case it later - turns out that something is wrong with the patch, your Acked-by could - be considered inappropriate. The difference between Acked-by and - Reviewed-by is thus mainly that you are prepared to take the blame on - Acked patches, but not on Reviewed ones. - -If you reviewed a patch and have comments on it, you should simply reply -to the patch stating these comments, without providing a Reviewed-by or -Acked-by tag. These tags should only be provided if you judge the patch -to be good as it is. - -It is important to note that neither Reviewed-by nor Acked-by imply -that testing has been performed. To indicate that you both reviewed and -tested the patch, provide two separate tags (Reviewed/Acked-by and -Tested-by). - -Note also that _any developer_ can provide Tested/Reviewed/Acked-by -tags, without exception, and we encourage everyone to do this. Buildroot -does not have a defined group of _core_ developers, it just so happens -that some developers are more active than others. The maintainer will -value tags according to the track record of their submitter. Tags -provided by a regular contributor will naturally be trusted more than -tags provided by a newcomer. As you provide tags more regularly, your -'trustworthiness' (in the eyes of the maintainer) will go up, but _any_ -tag provided is valuable. - -Buildroot's Patchwork website can be used to pull in patches for testing -purposes. Please see xref:apply-patches-patchwork[] for more -information on using Buildroot's Patchwork website to apply patches. - -[[apply-patches-patchwork]] -==== Applying Patches from Patchwork - -The main use of Buildroot's Patchwork website for a developer is for -pulling in patches into their local git repository for testing -purposes. - -When browsing patches in the patchwork management interface, an +mbox+ -link is provided at the top of the page. Copy this link address and -run the following commands: - ---------------------- -$ git checkout -b -$ wget -O - | git am ---------------------- - -Another option for applying patches is to create a bundle. A bundle is -a set of patches that you can group together using the patchwork -interface. Once the bundle is created and the bundle is made public, -you can copy the +mbox+ link for the bundle and apply the bundle -using the above commands. - - -=== Work on items from the TODO list - -If you want to contribute to Buildroot but don't know where to start, -and you don't like any of the above topics, you can always work on items -from the http://elinux.org/Buildroot#Todo_list[Buildroot TODO list]. -Don't hesitate to discuss an item first on the mailing list or on IRC. -Do edit the wiki to indicate when you start working on an item, so we -avoid duplicate efforts. - -[[submitting-patches]] -=== Submitting patches - -[NOTE] -_Please, do not attach patches to bugs, send them to the mailing list -instead_. - -If you made some changes to Buildroot and you would like to contribute -them to the Buildroot project, proceed as follows. - -==== The formatting of a patch - -We expect patches to be formatted in a specific way. This is necessary -to make it easy to review patches, to be able to apply them easily to -the git repository, to make it easy to find back in the history how -and why things have changed, and to make it possible to use +git -bisect+ to locate the origin of a problem. - -First of all, it is essential that the patch has a good commit -message. The commit message should start with a separate line with a -brief summary of the change, prefixed by the area touched by the -patch. A few examples of good commit titles: - -* +package/linuxptp: bump version to 2.0+ - -* +configs/imx23evk: bump Linux version to 4.19+ - -* +package/pkg-generic: postpone evaluation of dependency conditions+ - -* +boot/uboot: needs host-{flex,bison}+ - -* +support/testing: add python-ubjson tests+ - -The description that follows the prefix should start with a lower case -letter (i.e "bump", "needs", "postpone", "add" in the above examples). - -Second, the body of the commit message should describe _why_ this -change is needed, and if necessary also give details about _how_ it -was done. When writing the commit message, think of how the reviewers -will read it, but also think about how you will read it when you look -at this change again a few years down the line. - -Third, the patch itself should do only one change, but do it -completely. Two unrelated or weakly related changes should usually be -done in two separate patches. This usually means that a patch affects -only a single package. If several changes are related, it is often -still possible to split them up in small patches and apply them in a -specific order. Small patches make it easier to review, and often -make it easier to understand afterwards why a change was done. -However, each patch must be complete. It is not allowed that the -build is broken when only the first but not the second patch is -applied. This is necessary to be able to use +git bisect+ afterwards. - -Of course, while you're doing your development, you're probably going -back and forth between packages, and certainly not committing things -immediately in a way that is clean enough for submission. So most -developers rewrite the history of commits to produce a clean set of -commits that is appropriate for submission. To do this, you need to -use _interactive rebasing_. You can learn about it -https://git-scm.com/book/en/v2/Git-Tools-Rewriting-History[in the Pro -Git book]. Sometimes, it is even easier to discard you history with -+git reset --soft origin/master+ and select individual changes with -+git add -i+ or +git add -p+. - -Finally, the patch should be signed off. This is done by adding -+Signed-off-by: Your Real Name + at the end of the -commit message. +git commit -s+ does that for you, if configured -properly. The +Signed-off-by+ tag means that you publish the patch -under the Buildroot license (i.e. GPL-2.0+, except for package patches, -which have the upstream license), and that you are allowed to do so. -See http://developercertificate.org/[the Developer Certificate of -Origin] for details. - -When adding new packages, you should submit every package in a -separate patch. This patch should have the update to -+package/Config.in+, the package +Config.in+ file, the +.mk+ file, the -+.hash+ file, any init script, and all package patches. If the package -has many sub-options, these are sometimes better added as separate -follow-up patches. The summary line should be something like -+: new package+. The body of the commit message can be -empty for simple packages, or it can contain the description of the -package (like the Config.in help text). If anything special has to be -done to build the package, this should also be explained explicitly in -the commit message body. - -When you bump a package to a new version, you should also submit a -separate patch for each package. Don't forget to update the +.hash+ -file, or add it if it doesn't exist yet. Also don't forget to check if -the +_LICENSE+ and +_LICENSE_FILES+ are still valid. The summary line -should be something like +: bump to version +. If the new version only contains security updates compared -to the existing one, the summary should be +: security -bump to version + and the commit message body should show -the CVE numbers that are fixed. If some package patches can be removed -in the new version, it should be explained explicitly why they can be -removed, preferably with the upstream commit ID. Also any other -required changes should be explained explicitly, like configure -options that no longer exist or are no longer needed. - -If you are interested in getting notified of build failures and of -further changes in the packages you added or modified, please add -yourself to the DEVELOPERS file. This should be done in the same patch -creating or modifying the package. See xref:DEVELOPERS[the DEVELOPERS file] -for more information. - -Buildroot provides a handy tool to check for common coding style -mistakes on files you created or modified, called +check-package+ (see -xref:check-package[] for more information). - -==== Preparing a patch series - -Starting from the changes committed in your local git view, _rebase_ -your development branch on top of the upstream tree before generating -a patch set. To do so, run: - ---------------------- -$ git fetch --all --tags -$ git rebase origin/master ---------------------- - -Now check the coding style for the changes you committed: - ---------------------- -$ utils/docker-run make check-package ---------------------- - -Now, you are ready to generate then submit your patch set. - -To generate it, run: - ---------------------- -$ git format-patch -M -n -s -o outgoing origin/master ---------------------- - -This will generate patch files in the +outgoing+ subdirectory, -automatically adding the +Signed-off-by+ line. - -Once patch files are generated, you can review/edit the commit message -before submitting them, using your favorite text editor. - -Buildroot provides a handy tool to know to whom your patches should be -sent, called +get-developers+ (see xref:DEVELOPERS[] for more -information). This tool reads your patches and outputs the appropriate -+git send-email+ command to use: - ---------------------- -$ ./utils/get-developers outgoing/* ---------------------- - -Use the output of +get-developers+ to send your patches: - ---------------------- -$ git send-email --to buildroot@buildroot.org --cc bob --cc alice outgoing/* ---------------------- - -Alternatively, +get-developers -e+ can be used directly with the -+--cc-cmd+ argument to +git send-email+ to automatically CC the -affected developers: - ---------------------- -$ git send-email --to buildroot@buildroot.org \ - --cc-cmd './utils/get-developers -e' origin/master ---------------------- - -+git+ can be configured to automatically do this out of the box with: - ---------------------- -$ git config sendemail.to buildroot@buildroot.org -$ git config sendemail.ccCmd "$(pwd)/utils/get-developers -e" ---------------------- - -And then just do: - ---------------------- -$ git send-email origin/master ---------------------- - -Note that +git+ should be configured to use your mail account. -To configure +git+, see +man git-send-email+ or google it. - -If you do not use +git send-email+, make sure posted *patches are not -line-wrapped*, otherwise they cannot easily be applied. In such a case, -fix your e-mail client, or better yet, learn to use +git send-email+. - -==== Cover letter - -If you want to present the whole patch set in a separate mail, add -+--cover-letter+ to the +git format-patch+ command (see +man -git-format-patch+ for further information). This will generate a -template for an introduction e-mail to your patch series. - -A 'cover letter' may be useful to introduce the changes you propose -in the following cases: - -* large number of commits in the series; - -* deep impact of the changes in the rest of the project; - -* RFC footnote:[RFC: (Request for comments) change proposal]; - -* whenever you feel it will help presenting your work, your choices, - the review process, etc. - -==== Patches for maintenance branches - -When fixing bugs on a maintenance branch, bugs should be fixed on the -master branch first. The commit log for such a patch may then contain a -post-commit note specifying what branches are affected: - ----- -package/foo: fix stuff - -Signed-off-by: Your Real Name ---- -Backport to: 2020.02.x, 2020.05.x -(2020.08.x not affected as the version was bumped) ----- - -Those changes will then be backported by a maintainer to the affected -branches. - -However, some bugs may apply only to a specific release, for example -because it is using an older version of a package. In that case, patches -should be based off the maintenance branch, and the patch subject prefix -must include the maintenance branch name (for example "[PATCH 2020.02.x]"). -This can be done with the +git format-patch+ flag +--subject-prefix+: - ---------------------- -$ git format-patch --subject-prefix "PATCH 2020.02.x" \ - -M -s -o outgoing origin/2020.02.x ---------------------- - -Then send the patches with +git send-email+, as described above. - -==== Patch revision changelog - -When improvements are requested, the new revision of each commit -should include a changelog of the modifications between each -submission. Note that when your patch series is introduced by a cover -letter, an overall changelog may be added to the cover letter in -addition to the changelog in the individual commits. -The best thing to rework a patch series is by interactive rebasing: -+git rebase -i origin/master+. Consult the git manual for more -information. - -When added to the individual commits, this changelog is added when -editing the commit message. Below the +Signed-off-by+ section, add -+---+ and your changelog. - -Although the changelog will be visible for the reviewers in the mail -thread, as well as in -https://patchwork.ozlabs.org/project/buildroot/list/[patchwork], +git+ -will automatically ignores lines below +---+ when the patch will be -merged. This is the intended behavior: the changelog is not meant to -be preserved forever in the +git+ history of the project. - -Hereafter the recommended layout: - ---------------- -Patch title: short explanation, max 72 chars - -A paragraph that explains the problem, and how it manifests itself. If -the problem is complex, it is OK to add more paragraphs. All paragraphs -should be wrapped at 72 characters. - -A paragraph that explains the root cause of the problem. Again, more -than one paragraph is OK. - -Finally, one or more paragraphs that explain how the problem is solved. -Don't hesitate to explain complex solutions in detail. - -Signed-off-by: John DOE - ---- -Changes v2 -> v3: - - foo bar (suggested by Jane) - - bar buz - -Changes v1 -> v2: - - alpha bravo (suggested by John) - - charly delta ---------------- - -Any patch revision should include the version number. The version number -is simply composed of the letter +v+ followed by an +integer+ greater or -equal to two (i.e. "PATCH v2", "PATCH v3" ...). - -This can be easily handled with +git format-patch+ by using the option -+--subject-prefix+: - ---------------------- -$ git format-patch --subject-prefix "PATCH v4" \ - -M -s -o outgoing origin/master ---------------------- - -Since git version 1.8.1, you can also use +-v + (where is the -version number): - ---------------------- -$ git format-patch -v4 -M -s -o outgoing origin/master ---------------------- - -When you provide a new version of a patch, please mark the old one as -superseded in -https://patchwork.ozlabs.org/project/buildroot/list/[patchwork]. You -need to create an account on -https://patchwork.ozlabs.org/project/buildroot/list/[patchwork] to be -able to modify the status of your patches. Note that you can only change -the status of patches you submitted yourself, which means the email -address you register in -https://patchwork.ozlabs.org/project/buildroot/list/[patchwork] should -match the one you use for sending patches to the mailing list. - -You can also add the +--in-reply-to + option when -submitting a patch to the mailing list. The id of the mail to reply to -can be found under the "Message Id" tag on -https://patchwork.ozlabs.org/project/buildroot/list/[patchwork]. The -advantage of *in-reply-to* is that patchwork will automatically mark -the previous version of the patch as superseded. - -[[reporting-bugs]] -=== Reporting issues/bugs or getting help - -Before reporting any issue, please check in -xref:community-resources[the mailing list archive] whether someone has -already reported and/or fixed a similar problem. - -However you choose to report bugs or get help, either by -opening a bug in the xref:community-resources[bug tracker] or by -xref:community-resources[sending a mail to the mailing list], there are -a number of details to provide in order to help people reproduce and -find a solution to the issue. - -Try to think as if you were trying to help someone else; in -that case, what would you need? - -Here is a short list of details to provide in such case: - -* host machine (OS/release) -* version of Buildroot -* target for which the build fails -* package(s) for which the build fails -* the command that fails and its output -* any information you think that may be relevant - -Additionally, you should add the +.config+ file (or if you know how, a -+defconfig+; see xref:customize-store-buildroot-config[]). - -If some of these details are too large, do not hesitate to use a -pastebin service. Note that not all available pastebin services will -preserve Unix-style line terminators when downloading raw pastes. -Following pastebin services are known to work correctly: -- https://gist.github.com/ -- http://code.bulix.org/ - -=== Using the runtime tests framework - -Buildroot includes a run-time testing framework built upon Python -scripting and QEMU runtime execution. The goals of the framework are -the following: - -* build a well defined Buildroot configuration -* optionally, verify some properties of the build output -* optionally, boot the build results under Qemu, and verify that a - given feature is working as expected - -The entry point to use the runtime tests framework is the -+support/testing/run-tests+ tool, which has a series of options -documented in the tool's help '-h' description. Some common options -include setting the download folder, the output folder, keeping build -output, and for multiple test cases, you can set the JLEVEL for each. - -Here is an example walk through of running a test case. - -* For a first step, let us see what all the test case options are. The test -cases can be listed by executing +support/testing/run-tests -l+. These tests -can all be run individually during test development from the console. Both -one at a time and selectively as a group of a subset of tests. - ---------------------- -$ support/testing/run-tests -l -List of tests -test_run (tests.utils.test_check_package.TestCheckPackage) -test_run (tests.toolchain.test_external.TestExternalToolchainBuildrootMusl) ... ok -test_run (tests.toolchain.test_external.TestExternalToolchainBuildrootuClibc) ... ok -test_run (tests.toolchain.test_external.TestExternalToolchainCCache) ... ok -test_run (tests.toolchain.test_external.TestExternalToolchainCtngMusl) ... ok -test_run (tests.toolchain.test_external.TestExternalToolchainLinaroArm) ... ok -test_run (tests.toolchain.test_external.TestExternalToolchainSourceryArmv4) ... ok -test_run (tests.toolchain.test_external.TestExternalToolchainSourceryArmv5) ... ok -test_run (tests.toolchain.test_external.TestExternalToolchainSourceryArmv7) ... ok -[snip] -test_run (tests.init.test_systemd.TestInitSystemSystemdRoFull) ... ok -test_run (tests.init.test_systemd.TestInitSystemSystemdRoIfupdown) ... ok -test_run (tests.init.test_systemd.TestInitSystemSystemdRoNetworkd) ... ok -test_run (tests.init.test_systemd.TestInitSystemSystemdRwFull) ... ok -test_run (tests.init.test_systemd.TestInitSystemSystemdRwIfupdown) ... ok -test_run (tests.init.test_systemd.TestInitSystemSystemdRwNetworkd) ... ok -test_run (tests.init.test_busybox.TestInitSystemBusyboxRo) ... ok -test_run (tests.init.test_busybox.TestInitSystemBusyboxRoNet) ... ok -test_run (tests.init.test_busybox.TestInitSystemBusyboxRw) ... ok -test_run (tests.init.test_busybox.TestInitSystemBusyboxRwNet) ... ok - -Ran 157 tests in 0.021s - -OK ---------------------- - -* Then, to run one test case: - ---------------------- -$ support/testing/run-tests -d dl -o output_folder -k tests.init.test_busybox.TestInitSystemBusyboxRw -15:03:26 TestInitSystemBusyboxRw Starting -15:03:28 TestInitSystemBusyboxRw Building -15:08:18 TestInitSystemBusyboxRw Building done -15:08:27 TestInitSystemBusyboxRw Cleaning up -. -Ran 1 test in 301.140s - -OK ---------------------- - -The standard output indicates if the test is successful or not. By -default, the output folder for the test is deleted automatically -unless the option +-k+ is passed to *keep* the output directory. - -==== Creating a test case - -Within the Buildroot repository, the testing framework is organized at the -top level in +support/testing/+ by folders of +conf+, +infra+ and +tests+. -All the test cases live under the +tests+ folder and are organized in various -folders representing the category of test. - -The best way to get familiar with how to create a test case is to look -at a few of the basic file system +support/testing/tests/fs/+ and init -+support/testing/tests/init/+ test scripts. Those tests give good -examples of a basic tests that include both checking the build -results, and doing runtime tests. There are other more advanced cases -that use things like nested +br2-external+ folders to provide -skeletons and additional packages. - -Creating a basic test case involves: - -* Defining a test class that inherits from +infra.basetest.BRTest+ - -* Defining the +config+ member of the test class, to the Buildroot - configuration to build for this test case. It can optionally rely on - configuration snippets provided by the runtime test infrastructure: - +infra.basetest.BASIC_TOOLCHAIN_CONFIG+ to get a basic - architecture/toolchain configuration, and - +infra.basetest.MINIMAL_CONFIG+ to not build any filesystem. The - advantage of using +infra.basetest.BASIC_TOOLCHAIN_CONFIG+ is that a - matching Linux kernel image is provided, which allows to boot the - resulting image in Qemu without having to build a Linux kernel image - as part of the test case, therefore significant decreasing the build - time required for the test case. - -* Implementing a +def test_run(self):+ function to implement the - actual tests to run after the build has completed. They may be tests - that verify the build output, by running command on the host using - the +run_cmd_on_host()+ helper function. Or they may boot the - generated system in Qemu using the +Emulator+ object available as - +self.emulator+ in the test case. For example +self.emulator.boot()+ - allows to boot the system in Qemu, +self.emulator.login()+ allows to - login, +self.emulator.run()+ allows to run shell commands inside - Qemu. - -After creating the test script, add yourself to the +DEVELOPERS+ file to -be the maintainer of that test case. - -==== Debugging a test case - -When a test case runs, the +output_folder+ will contain the following: - ---------------------- -$ ls output_folder/ -TestInitSystemBusyboxRw/ -TestInitSystemBusyboxRw-build.log -TestInitSystemBusyboxRw-run.log ---------------------- - -+TestInitSystemBusyboxRw/+ is the Buildroot output directory, and it -is preserved only if the +-k+ option is passed. - -+TestInitSystemBusyboxRw-build.log+ is the log of the Buildroot build. - -+TestInitSystemBusyboxRw-run.log+ is the log of the Qemu boot and -test. This file will only exist if the build was successful and the -test case involves booting under Qemu. - -If you want to manually run Qemu to do manual tests of the build -result, the first few lines of +TestInitSystemBusyboxRw-run.log+ -contain the Qemu command line to use. - -You can also make modifications to the current sources inside the -+output_folder+ (e.g. for debug purposes) and rerun the standard -Buildroot make targets (in order to regenerate the complete image with -the new modifications) and then rerun the test. - -==== Runtime tests and Gitlab CI - -All runtime tests are regularly executed by Buildroot Gitlab CI -infrastructure, see .gitlab.yml and -https://gitlab.com/buildroot.org/buildroot/-/jobs. - -You can also use Gitlab CI to test your new test cases, or verify that -existing tests continue to work after making changes in Buildroot. - -In order to achieve this, you need to create a fork of the Buildroot -project on Gitlab, and be able to push branches to your Buildroot fork -on Gitlab. - -The name of the branch that you push will determine if a Gitlab CI -pipeline will be triggered or not, and for which test cases. - -In the examples below, the component of the branch name is an -arbitrary string you choose. - -* To trigger all run-test test case jobs, push a branch that ends with - +-runtime-tests+: - ---------------------- - $ git push gitlab HEAD:-runtime-tests ---------------------- - -* To trigger one or several test case jobs, push a branch that ends - with the complete test case name - (+tests.init.test_busybox.TestInitSystemBusyboxRo+) or with the name - of a category of tests (+tests.init.test_busybox+): - ---------------------- - $ git push gitlab HEAD:- ---------------------- - -Example to run one test: - ---------------------- - $ git push gitlab HEAD:foo-tests.init.test_busybox.TestInitSystemBusyboxRo ---------------------- - -Examples to run several tests part of the same group: - ---------------------- - $ git push gitlab HEAD:foo-tests.init.test_busybox - $ git push gitlab HEAD:foo-tests.init ---------------------- diff --git a/docs/manual/customize-configuration.txt b/docs/manual/customize-configuration.adoc similarity index 100% rename from docs/manual/customize-configuration.txt rename to docs/manual/customize-configuration.adoc diff --git a/docs/manual/customize-device-permission-tables.txt b/docs/manual/customize-device-permission-tables.adoc similarity index 100% rename from docs/manual/customize-device-permission-tables.txt rename to docs/manual/customize-device-permission-tables.adoc diff --git a/docs/manual/customize-directory-structure.txt b/docs/manual/customize-directory-structure.adoc similarity index 100% rename from docs/manual/customize-directory-structure.txt rename to docs/manual/customize-directory-structure.adoc diff --git a/docs/manual/customize-outside-br.txt b/docs/manual/customize-outside-br.adoc similarity index 100% rename from docs/manual/customize-outside-br.txt rename to docs/manual/customize-outside-br.adoc diff --git a/docs/manual/customize-packages.txt b/docs/manual/customize-packages.adoc similarity index 100% rename from docs/manual/customize-packages.txt rename to docs/manual/customize-packages.adoc diff --git a/docs/manual/customize-patches.adoc b/docs/manual/customize-patches.adoc new file mode 100644 index 000000000000..f33bbcdde7b4 --- /dev/null +++ b/docs/manual/customize-patches.adoc @@ -0,0 +1,83 @@ +// -*- mode:doc -*- ; +// vim: set syntax=asciidoc: + +=== Adding project-specific patches and hashes + +[[customize-patches]] +==== Providing extra patches + +It is sometimes useful to apply 'extra' patches to packages - on top of +those provided in Buildroot. This might be used to support custom +features in a project, for example, or when working on a new +architecture. + +The +BR2_GLOBAL_PATCH_DIR+ configuration option can be used to specify +a space separated list of one or more directories containing package +patches. + +For a specific version ++ of a specific package +++, patches are applied from +BR2_GLOBAL_PATCH_DIR+ as +follows: + +. For every directory - ++ - that exists in + +BR2_GLOBAL_PATCH_DIR+, a ++ will be determined as + follows: ++ +* +///+ if the + directory exists. ++ +* Otherwise, +/+ if the directory + exists. + +. Patches will then be applied from a ++ as + follows: ++ +* If a +series+ file exists in the package directory, then patches are + applied according to the +series+ file; ++ +* Otherwise, patch files matching +*.patch+ are applied in + alphabetical order. So, to ensure they are applied in the right + order, it is highly recommended to name the patch files like this: + +-.patch+, where ++ refers to the + 'apply order'. + +For information about how patches are applied for a package, see +xref:patch-apply-order[] + +The +BR2_GLOBAL_PATCH_DIR+ option is the preferred method for +specifying a custom patch directory for packages. It can be used to +specify a patch directory for any package in buildroot. It should also +be used in place of the custom patch directory options that are +available for packages such as U-Boot and Barebox. By doing this, it +will allow a user to manage their patches from one top-level +directory. + +The exception to +BR2_GLOBAL_PATCH_DIR+ being the preferred method for +specifying custom patches is +BR2_LINUX_KERNEL_PATCH+. ++BR2_LINUX_KERNEL_PATCH+ should be used to specify kernel patches that +are available at a URL. *Note:* +BR2_LINUX_KERNEL_PATCH+ specifies kernel +patches that are applied after patches available in +BR2_GLOBAL_PATCH_DIR+, +as it is done from a post-patch hook of the Linux package. + + +[[customize-hashes]] +==== Providing extra hashes + +Buildroot bundles a xref:adding-packages-hash[list of hashes] against +which it checks the integrity of the downloaded archives, or of those +it generates locally from VCS checkouts. However, it can only do so +for the known versions; for packages where it is possible to specify +a custom version (e.g. a custom version string, a remote tarball URL, +or a VCS repository location and changeset), Buildroot can't carry +hashes for those. + +For users concerned with the integrity of such downloads, it is possible +to provide a list of hashes that Buildroot can use to check arbitrary +downloaded files. Those extra hashes are looked up similarly to the +extra patches (above); for each directory in +BR2_GLOBAL_PATCH_DIR+, +the first file to exist is used to check a package download: + +* +///.hash+ +* +//.hash+ + +The +utils/add-custom-hashes+ script can be used to generate these files. diff --git a/docs/manual/customize-patches.txt b/docs/manual/customize-patches.txt deleted file mode 100644 index eb98d1bea2c8..000000000000 --- a/docs/manual/customize-patches.txt +++ /dev/null @@ -1,59 +0,0 @@ -// -*- mode:doc -*- ; -// vim: set syntax=asciidoc: - -[[customize-patches]] -=== Adding project-specific patches - -It is sometimes useful to apply 'extra' patches to packages - on top of -those provided in Buildroot. This might be used to support custom -features in a project, for example, or when working on a new -architecture. - -The +BR2_GLOBAL_PATCH_DIR+ configuration option can be used to specify -a space separated list of one or more directories containing package -patches. - -For a specific version ++ of a specific package -++, patches are applied from +BR2_GLOBAL_PATCH_DIR+ as -follows: - -. For every directory - ++ - that exists in - +BR2_GLOBAL_PATCH_DIR+, a ++ will be determined as - follows: -+ -* +///+ if the - directory exists. -+ -* Otherwise, +/+ if the directory - exists. - -. Patches will then be applied from a ++ as - follows: -+ -* If a +series+ file exists in the package directory, then patches are - applied according to the +series+ file; -+ -* Otherwise, patch files matching +*.patch+ are applied in - alphabetical order. So, to ensure they are applied in the right - order, it is highly recommended to name the patch files like this: - +-.patch+, where ++ refers to the - 'apply order'. - -For information about how patches are applied for a package, see -xref:patch-apply-order[] - -The +BR2_GLOBAL_PATCH_DIR+ option is the preferred method for -specifying a custom patch directory for packages. It can be used to -specify a patch directory for any package in buildroot. It should also -be used in place of the custom patch directory options that are -available for packages such as U-Boot and Barebox. By doing this, it -will allow a user to manage their patches from one top-level -directory. - -The exception to +BR2_GLOBAL_PATCH_DIR+ being the preferred method for -specifying custom patches is +BR2_LINUX_KERNEL_PATCH+. -+BR2_LINUX_KERNEL_PATCH+ should be used to specify kernel patches that -are available at a URL. *Note:* +BR2_LINUX_KERNEL_PATCH+ specifies kernel -patches that are applied after patches available in +BR2_GLOBAL_PATCH_DIR+, -as it is done from a post-patch hook of the Linux package. - diff --git a/docs/manual/customize-post-image.txt b/docs/manual/customize-post-image.adoc similarity index 100% rename from docs/manual/customize-post-image.txt rename to docs/manual/customize-post-image.adoc diff --git a/docs/manual/customize-quick-guide.txt b/docs/manual/customize-quick-guide.adoc similarity index 100% rename from docs/manual/customize-quick-guide.txt rename to docs/manual/customize-quick-guide.adoc diff --git a/docs/manual/customize-rootfs.adoc b/docs/manual/customize-rootfs.adoc new file mode 100644 index 000000000000..d5d8b9288fea --- /dev/null +++ b/docs/manual/customize-rootfs.adoc @@ -0,0 +1,156 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[rootfs-custom]] +=== Customizing the generated target filesystem + +Besides changing the configuration through +make *config+, +there are a few other ways to customize the resulting target filesystem. + +The two recommended methods, which can co-exist, are root filesystem +overlay(s) and post build script(s). + +Root filesystem overlays (+BR2_ROOTFS_OVERLAY+):: ++ +A filesystem overlay is a tree of files that is copied directly + over the target filesystem after it has been built. To enable this + feature, set config option +BR2_ROOTFS_OVERLAY+ (in the +System + configuration+ menu) to the root of the overlay. You can even specify + multiple overlays, space-separated. If you specify a relative path, + it will be relative to the root of the Buildroot tree. Hidden + directories of version control systems, like +.git+, +.svn+, +.hg+, + etc., files called +.empty+ and files ending in +~+ are excluded from + the copy. ++ +When +BR2_ROOTFS_MERGED_USR+ is enabled, then the overlay must not + contain the '/bin', '/lib' or '/sbin' directories, as Buildroot will + create them as symbolic links to the relevant folders in '/usr'. In + such a situation, should the overlay have any programs or libraries, + they should be placed in '/usr/bin', '/usr/sbin' and '/usr/lib'. ++ +As shown in xref:customize-dir-structure[], the recommended path for + this overlay is +board///rootfs-overlay+. + +Post-build scripts (+BR2_ROOTFS_POST_BUILD_SCRIPT+):: ++ +Post-build scripts are shell scripts called 'after' Buildroot builds + all the selected software, but 'before' the rootfs images are + assembled. To enable this feature, specify a space-separated list of + post-build scripts in config option +BR2_ROOTFS_POST_BUILD_SCRIPT+ (in + the +System configuration+ menu). If you specify a relative path, it + will be relative to the root of the Buildroot tree. ++ +Using post-build scripts, you can remove or modify any file in your + target filesystem. You should, however, use this feature with care. + Whenever you find that a certain package generates wrong or unneeded + files, you should fix that package rather than work around it with some + post-build cleanup scripts. ++ +As shown in xref:customize-dir-structure[], the recommended path for + this script is +board///post_build.sh+. ++ +The post-build scripts are run with the main Buildroot tree as current + working directory. The path to the target filesystem is passed as the + first argument to each script. If the config option + +BR2_ROOTFS_POST_SCRIPT_ARGS+ is not empty, these arguments will be + passed to the script too. All the scripts will be passed the exact + same set of arguments, it is not possible to pass different sets of + arguments to each script. ++ +In addition, you may also use these environment variables: + + - +BR2_CONFIG+: the path to the Buildroot .config file + - +CONFIG_DIR+: the directory containing the .config file, and + therefore the top-level Buildroot Makefile to use (which is + correct for both in-tree and out-of-tree builds) + - +HOST_DIR+, +STAGING_DIR+, +TARGET_DIR+: see + xref:generic-package-reference[] + - +BUILD_DIR+: the directory where packages are extracted and built + - +BINARIES_DIR+: the place where all binary files (aka images) are + stored + - +BASE_DIR+: the base output directory + +Below three more methods of customizing the target filesystem are +described, but they are not recommended. + +Direct modification of the target filesystem:: ++ +For temporary modifications, you can modify the target filesystem + directly and rebuild the image. The target filesystem is available + under +output/target/+. After making your changes, run +make+ to + rebuild the target filesystem image. ++ +This method allows you to do anything to the target filesystem, but if + you need to clean your Buildroot tree using +make clean+, these + changes will be lost. Such cleaning is necessary in several cases, + refer to xref:full-rebuild[] for details. This solution is therefore + only useful for quick tests: _changes do not survive the +make clean+ + command_. Once you have validated your changes, you should make sure + that they will persist after a +make clean+, using a root filesystem + overlay or a post-build script. + +Custom target skeleton (+BR2_ROOTFS_SKELETON_CUSTOM+):: ++ +The root filesystem image is created from a target skeleton, on top of + which all packages install their files. The skeleton is copied to the + target directory +output/target+ before any package is built and + installed. The default target skeleton provides the standard Unix + filesystem layout and some basic init scripts and configuration files. ++ +If the default skeleton (available under +system/skeleton+) does not + match your needs, you would typically use a root filesystem overlay or + post-build script to adapt it. However, if the default skeleton is + entirely different than what you need, using a custom skeleton may be + more suitable. ++ +To enable this feature, enable config option + +BR2_ROOTFS_SKELETON_CUSTOM+ and set +BR2_ROOTFS_SKELETON_CUSTOM_PATH+ + to the path of your custom skeleton. Both options are available in the + +System configuration+ menu. If you specify a relative path, it will + be relative to the root of the Buildroot tree. ++ +Custom skeletons don't need to contain the '/bin', '/lib' or '/sbin' + directories, since they are created automatically during the build. + When +BR2_ROOTFS_MERGED_USR+ is enabled, then the custom skeleton must + not contain the '/bin', '/lib' or '/sbin' directories, as Buildroot + will create them as symbolic links to the relevant folders in '/usr'. + In such a situation, should the skeleton have any programs or + libraries, they should be placed in '/usr/bin', '/usr/sbin' and + '/usr/lib'. ++ +This method is not recommended because it duplicates the entire + skeleton, which prevents taking advantage of the fixes or improvements + brought to the default skeleton in later Buildroot releases. + +Post-fakeroot scripts (+BR2_ROOTFS_POST_FAKEROOT_SCRIPT+):: ++ +When aggregating the final images, some parts of the process requires + root rights: creating device nodes in `/dev`, setting permissions or + ownership to files and directories... To avoid requiring actual root + rights, Buildroot uses +fakeroot+ to simulate root rights. This is not + a complete substitute for actually being root, but is enough for what + Buildroot needs. ++ +Post-fakeroot scripts are shell scripts that are called at the 'end' of + the fakeroot phase, 'right before' the filesystem image generator is + called. As such, they are called in the fakeroot context. ++ +Post-fakeroot scripts can be useful in case you need to tweak the + filesystem to do modifications that are usually only available to the + root user. ++ +.Note: +It is recommended to use the existing mechanisms to set file permissions + or create entries in `/dev` (see xref:customize-device-permission[]) or + to create users (see xref:customize-users[]) ++ +.Note: +The difference between post-build scripts (above) and fakeroot scripts, + is that post-build scripts are not called in the fakeroot context. ++ +.Note: +Using `fakeroot` is not an absolute substitute for actually being root. + `fakeroot` only ever fakes the file access rights and types (regular, + block-or-char device...) and uid/gid; these are emulated in-memory. + +include::customize-device-permission-tables.adoc[] diff --git a/docs/manual/customize-rootfs.txt b/docs/manual/customize-rootfs.txt deleted file mode 100644 index e46306fd2ac3..000000000000 --- a/docs/manual/customize-rootfs.txt +++ /dev/null @@ -1,156 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -[[rootfs-custom]] -=== Customizing the generated target filesystem - -Besides changing the configuration through +make *config+, -there are a few other ways to customize the resulting target filesystem. - -The two recommended methods, which can co-exist, are root filesystem -overlay(s) and post build script(s). - -Root filesystem overlays (+BR2_ROOTFS_OVERLAY+):: -+ -A filesystem overlay is a tree of files that is copied directly - over the target filesystem after it has been built. To enable this - feature, set config option +BR2_ROOTFS_OVERLAY+ (in the +System - configuration+ menu) to the root of the overlay. You can even specify - multiple overlays, space-separated. If you specify a relative path, - it will be relative to the root of the Buildroot tree. Hidden - directories of version control systems, like +.git+, +.svn+, +.hg+, - etc., files called +.empty+ and files ending in +~+ are excluded from - the copy. -+ -When +BR2_ROOTFS_MERGED_USR+ is enabled, then the overlay must not - contain the '/bin', '/lib' or '/sbin' directories, as Buildroot will - create them as symbolic links to the relevant folders in '/usr'. In - such a situation, should the overlay have any programs or libraries, - they should be placed in '/usr/bin', '/usr/sbin' and '/usr/lib'. -+ -As shown in xref:customize-dir-structure[], the recommended path for - this overlay is +board///rootfs-overlay+. - -Post-build scripts (+BR2_ROOTFS_POST_BUILD_SCRIPT+):: -+ -Post-build scripts are shell scripts called 'after' Buildroot builds - all the selected software, but 'before' the rootfs images are - assembled. To enable this feature, specify a space-separated list of - post-build scripts in config option +BR2_ROOTFS_POST_BUILD_SCRIPT+ (in - the +System configuration+ menu). If you specify a relative path, it - will be relative to the root of the Buildroot tree. -+ -Using post-build scripts, you can remove or modify any file in your - target filesystem. You should, however, use this feature with care. - Whenever you find that a certain package generates wrong or unneeded - files, you should fix that package rather than work around it with some - post-build cleanup scripts. -+ -As shown in xref:customize-dir-structure[], the recommended path for - this script is +board///post_build.sh+. -+ -The post-build scripts are run with the main Buildroot tree as current - working directory. The path to the target filesystem is passed as the - first argument to each script. If the config option - +BR2_ROOTFS_POST_SCRIPT_ARGS+ is not empty, these arguments will be - passed to the script too. All the scripts will be passed the exact - same set of arguments, it is not possible to pass different sets of - arguments to each script. -+ -In addition, you may also use these environment variables: - - - +BR2_CONFIG+: the path to the Buildroot .config file - - +CONFIG_DIR+: the directory containing the .config file, and - therefore the top-level Buildroot Makefile to use (which is - correct for both in-tree and out-of-tree builds) - - +HOST_DIR+, +STAGING_DIR+, +TARGET_DIR+: see - xref:generic-package-reference[] - - +BUILD_DIR+: the directory where packages are extracted and built - - +BINARIES_DIR+: the place where all binary files (aka images) are - stored - - +BASE_DIR+: the base output directory - -Below three more methods of customizing the target filesystem are -described, but they are not recommended. - -Direct modification of the target filesystem:: -+ -For temporary modifications, you can modify the target filesystem - directly and rebuild the image. The target filesystem is available - under +output/target/+. After making your changes, run +make+ to - rebuild the target filesystem image. -+ -This method allows you to do anything to the target filesystem, but if - you need to clean your Buildroot tree using +make clean+, these - changes will be lost. Such cleaning is necessary in several cases, - refer to xref:full-rebuild[] for details. This solution is therefore - only useful for quick tests: _changes do not survive the +make clean+ - command_. Once you have validated your changes, you should make sure - that they will persist after a +make clean+, using a root filesystem - overlay or a post-build script. - -Custom target skeleton (+BR2_ROOTFS_SKELETON_CUSTOM+):: -+ -The root filesystem image is created from a target skeleton, on top of - which all packages install their files. The skeleton is copied to the - target directory +output/target+ before any package is built and - installed. The default target skeleton provides the standard Unix - filesystem layout and some basic init scripts and configuration files. -+ -If the default skeleton (available under +system/skeleton+) does not - match your needs, you would typically use a root filesystem overlay or - post-build script to adapt it. However, if the default skeleton is - entirely different than what you need, using a custom skeleton may be - more suitable. -+ -To enable this feature, enable config option - +BR2_ROOTFS_SKELETON_CUSTOM+ and set +BR2_ROOTFS_SKELETON_CUSTOM_PATH+ - to the path of your custom skeleton. Both options are available in the - +System configuration+ menu. If you specify a relative path, it will - be relative to the root of the Buildroot tree. -+ -Custom skeletons don't need to contain the '/bin', '/lib' or '/sbin' - directories, since they are created automatically during the build. - When +BR2_ROOTFS_MERGED_USR+ is enabled, then the custom skeleton must - not contain the '/bin', '/lib' or '/sbin' directories, as Buildroot - will create them as symbolic links to the relevant folders in '/usr'. - In such a situation, should the skeleton have any programs or - libraries, they should be placed in '/usr/bin', '/usr/sbin' and - '/usr/lib'. -+ -This method is not recommended because it duplicates the entire - skeleton, which prevents taking advantage of the fixes or improvements - brought to the default skeleton in later Buildroot releases. - -Post-fakeroot scripts (+BR2_ROOTFS_POST_FAKEROOT_SCRIPT+):: -+ -When aggregating the final images, some parts of the process requires - root rights: creating device nodes in `/dev`, setting permissions or - ownership to files and directories... To avoid requiring actual root - rights, Buildroot uses +fakeroot+ to simulate root rights. This is not - a complete substitute for actually being root, but is enough for what - Buildroot needs. -+ -Post-fakeroot scripts are shell scripts that are called at the 'end' of - the fakeroot phase, 'right before' the filesystem image generator is - called. As such, they are called in the fakeroot context. -+ -Post-fakeroot scripts can be useful in case you need to tweak the - filesystem to do modifications that are usually only available to the - root user. -+ -.Note: -It is recommended to use the existing mechanisms to set file permissions - or create entries in `/dev` (see xref:customize-device-permission[]) or - to create users (see xref:customize-users[]) -+ -.Note: -The difference between post-build scripts (above) and fakeroot scripts, - is that post-build scripts are not called in the fakeroot context. -+ -.Note: -Using `fakeroot` is not an absolute substitute for actually being root. - `fakeroot` only ever fakes the file access rights and types (regular, - block-or-char device...) and uid/gid; these are emulated in-memory. - -include::customize-device-permission-tables.txt[] diff --git a/docs/manual/customize-users-tables.txt b/docs/manual/customize-users-tables.adoc similarity index 100% rename from docs/manual/customize-users-tables.txt rename to docs/manual/customize-users-tables.adoc diff --git a/docs/manual/customize.adoc b/docs/manual/customize.adoc new file mode 100644 index 000000000000..23fad7ba1149 --- /dev/null +++ b/docs/manual/customize.adoc @@ -0,0 +1,60 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[customize]] +== Project-specific customization + +Typical actions you may need to perform for a given project are: + +* configuring Buildroot (including build options and toolchain, + bootloader, kernel, package and filesystem image type selection) +* configuring other components, like the Linux kernel and BusyBox +* customizing the generated target filesystem + ** adding or overwriting files on the target filesystem (using + +BR2_ROOTFS_OVERLAY+) + ** modifying or deleting files on the target filesystem (using + +BR2_ROOTFS_POST_BUILD_SCRIPT+) + ** running arbitrary commands prior to generating the filesystem image + (using +BR2_ROOTFS_POST_BUILD_SCRIPT+) + ** setting file permissions and ownership (using + +BR2_ROOTFS_DEVICE_TABLE+) + ** adding custom devices nodes (using + +BR2_ROOTFS_STATIC_DEVICE_TABLE+) +* adding custom user accounts (using +BR2_ROOTFS_USERS_TABLES+) +* running arbitrary commands after generating the filesystem image + (using +BR2_ROOTFS_POST_IMAGE_SCRIPT+) +* adding project-specific patches to some packages (using + +BR2_GLOBAL_PATCH_DIR+) +* adding project-specific packages + +An important note regarding such 'project-specific' customizations: +please carefully consider which changes are indeed project-specific and +which changes are also useful to developers outside your project. The +Buildroot community highly recommends and encourages the upstreaming of +improvements, packages and board support to the official Buildroot +project. Of course, it is sometimes not possible or desirable to +upstream because the changes are highly specific or proprietary. + +This chapter describes how to make such project-specific customizations +in Buildroot and how to store them in a way that you can build the same +image in a reproducible way, even after running 'make clean'. By +following the recommended strategy, you can even use the same Buildroot +tree to build multiple distinct projects! + +include::customize-directory-structure.adoc[] + +include::customize-outside-br.adoc[] + +include::customize-configuration.adoc[] + +include::customize-rootfs.adoc[] + +include::customize-users-tables.adoc[] + +include::customize-post-image.adoc[] + +include::customize-patches.adoc[] + +include::customize-packages.adoc[] + +include::customize-quick-guide.adoc[] diff --git a/docs/manual/customize.txt b/docs/manual/customize.txt deleted file mode 100644 index 484413e4d8b9..000000000000 --- a/docs/manual/customize.txt +++ /dev/null @@ -1,60 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -[[customize]] -== Project-specific customization - -Typical actions you may need to perform for a given project are: - -* configuring Buildroot (including build options and toolchain, - bootloader, kernel, package and filesystem image type selection) -* configuring other components, like the Linux kernel and BusyBox -* customizing the generated target filesystem - ** adding or overwriting files on the target filesystem (using - +BR2_ROOTFS_OVERLAY+) - ** modifying or deleting files on the target filesystem (using - +BR2_ROOTFS_POST_BUILD_SCRIPT+) - ** running arbitrary commands prior to generating the filesystem image - (using +BR2_ROOTFS_POST_BUILD_SCRIPT+) - ** setting file permissions and ownership (using - +BR2_ROOTFS_DEVICE_TABLE+) - ** adding custom devices nodes (using - +BR2_ROOTFS_STATIC_DEVICE_TABLE+) -* adding custom user accounts (using +BR2_ROOTFS_USERS_TABLES+) -* running arbitrary commands after generating the filesystem image - (using +BR2_ROOTFS_POST_IMAGE_SCRIPT+) -* adding project-specific patches to some packages (using - +BR2_GLOBAL_PATCH_DIR+) -* adding project-specific packages - -An important note regarding such 'project-specific' customizations: -please carefully consider which changes are indeed project-specific and -which changes are also useful to developers outside your project. The -Buildroot community highly recommends and encourages the upstreaming of -improvements, packages and board support to the official Buildroot -project. Of course, it is sometimes not possible or desirable to -upstream because the changes are highly specific or proprietary. - -This chapter describes how to make such project-specific customizations -in Buildroot and how to store them in a way that you can build the same -image in a reproducible way, even after running 'make clean'. By -following the recommended strategy, you can even use the same Buildroot -tree to build multiple distinct projects! - -include::customize-directory-structure.txt[] - -include::customize-outside-br.txt[] - -include::customize-configuration.txt[] - -include::customize-rootfs.txt[] - -include::customize-users-tables.txt[] - -include::customize-post-image.txt[] - -include::customize-patches.txt[] - -include::customize-packages.txt[] - -include::customize-quick-guide.txt[] diff --git a/docs/manual/debugging-buildroot.txt b/docs/manual/debugging-buildroot.adoc similarity index 100% rename from docs/manual/debugging-buildroot.txt rename to docs/manual/debugging-buildroot.adoc diff --git a/docs/manual/developers.txt b/docs/manual/developers.adoc similarity index 100% rename from docs/manual/developers.txt rename to docs/manual/developers.adoc diff --git a/docs/manual/download-infra.txt b/docs/manual/download-infra.adoc similarity index 100% rename from docs/manual/download-infra.txt rename to docs/manual/download-infra.adoc diff --git a/docs/manual/download-location.txt b/docs/manual/download-location.adoc similarity index 100% rename from docs/manual/download-location.txt rename to docs/manual/download-location.adoc diff --git a/docs/manual/faq-troubleshooting.adoc b/docs/manual/faq-troubleshooting.adoc new file mode 100644 index 000000000000..a61276d4c563 --- /dev/null +++ b/docs/manual/faq-troubleshooting.adoc @@ -0,0 +1,272 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +== Frequently Asked Questions & Troubleshooting + +[[faq-boot-hang-after-starting]] +=== The boot hangs after 'Starting network...' + +If the boot process seems to hang after the following messages +(messages not necessarily exactly similar, depending on the list of +packages selected): + +------------------------ +Freeing init memory: 3972K +Initializing random number generator... done. +Starting network... +Starting dropbear sshd: generating rsa key... generating dsa key... OK +------------------------ + +then it means that your system is running, but didn't start a shell on +the serial console. In order to have the system start a shell on your +serial console, you have to go into the Buildroot configuration, in ++System configuration+, modify +Run a getty (login prompt) after boot+ +and set the appropriate port and baud rate in the +getty options+ +submenu. This will automatically tune the +/etc/inittab+ file of the +generated system so that a shell starts on the correct serial port. + +[[faq-no-compiler-on-target]] +=== Why is there no compiler on the target? + +It has been decided that support for the _native compiler on the +target_ would be stopped from the Buildroot-2012.11 release because: + +* this feature was neither maintained nor tested, and often broken; +* this feature was only available for Buildroot toolchains; +* Buildroot mostly targets _small_ or _very small_ target hardware + with limited resource onboard (CPU, ram, mass-storage), for which + compiling on the target does not make much sense; +* Buildroot aims at easing the cross-compilation, making native + compilation on the target unnecessary. + +If you need a compiler on your target anyway, then Buildroot is not +suitable for your purpose. In such case, you need a _real +distribution_ and you should opt for something like: + +* http://www.openembedded.org[openembedded] +* https://www.yoctoproject.org[yocto] +* https://www.debian.org/ports/[Debian] +* https://fedoraproject.org/wiki/Architectures[Fedora] +* http://en.opensuse.org/Portal:ARM[openSUSE ARM] +* http://archlinuxarm.org[Arch Linux ARM] +* ... + +[[faq-no-dev-files-on-target]] +=== Why are there no development files on the target? + +Since there is no compiler available on the target (see +xref:faq-no-compiler-on-target[]), it does not make sense to waste +space with headers or static libraries. + +Therefore, those files are always removed from the target since the +Buildroot-2012.11 release. + +[[faq-no-doc-on-target]] +=== Why is there no documentation on the target? + +Because Buildroot mostly targets _small_ or _very small_ target +hardware with limited resource onboard (CPU, ram, mass-storage), it +does not make sense to waste space with the documentation data. + +If you need documentation data on your target anyway, then Buildroot +is not suitable for your purpose, and you should look for a _real +distribution_ (see: xref:faq-no-compiler-on-target[]). + +[[faq-why-not-visible-package]] +=== Why are some packages not visible in the Buildroot config menu? + +If a package exists in the Buildroot tree and does not appear in the +config menu, this most likely means that some of the package's +dependencies are not met. + +To know more about the dependencies of a package, search for the +package symbol in the config menu (see xref:make-tips[]). + +Then, you may have to recursively enable several options (which +correspond to the unmet dependencies) to finally be able to select +the package. + +If the package is not visible due to some unmet toolchain options, +then you should certainly run a full rebuild (see xref:make-tips[] for +more explanations). + +[[faq-why-not-use-target-as-chroot]] +=== Why not use the target directory as a chroot directory? + +There are plenty of reasons to *not* use the target directory a chroot +one, among these: + +* file ownerships, modes and permissions are not correctly set in the + target directory; +* device nodes are not created in the target directory. + +For these reasons, commands run through chroot, using the target +directory as the new root, will most likely fail. + +If you want to run the target filesystem inside a chroot, or as an NFS +root, then use the tarball image generated in +images/+ and extract it +as root. + +[[faq-no-binary-packages]] +=== Why doesn't Buildroot generate binary packages (.deb, .ipkg...)? + +One feature that is often discussed on the Buildroot list is the +general topic of "package management". To summarize, the idea +would be to add some tracking of which Buildroot package installs +what files, with the goals of: + + * being able to remove files installed by a package when this package + gets unselected from the menuconfig; + + * being able to generate binary packages (ipk or other format) that + can be installed on the target without re-generating a new root + filesystem image. + +In general, most people think it is easy to do: just track which package +installed what and remove it when the package is unselected. However, it +is much more complicated than that: + + * It is not only about the +target/+ directory, but also the sysroot in + +host//sysroot+ and the +host/+ directory itself. All files + installed in those directories by various packages must be tracked. + + * When a package is unselected from the configuration, it is not + sufficient to remove just the files it installed. One must also + remove all its reverse dependencies (i.e. packages relying on it) + and rebuild all those packages. For example, package A depends + optionally on the OpenSSL library. Both are selected, and Buildroot + is built. Package A is built with crypto support using OpenSSL. + Later on, OpenSSL gets unselected from the configuration, but + package A remains (since OpenSSL is an optional dependency, this + is possible.) If only OpenSSL files are removed, then the files + installed by package A are broken: they use a library that is no + longer present on the target. Although this is technically doable, + it adds a lot of complexity to Buildroot, which goes against the + simplicity we try to stick to. + + * In addition to the previous problem, there is the case where the + optional dependency is not even known to Buildroot. For example, + package A in version 1.0 never used OpenSSL, but in version 2.0 it + automatically uses OpenSSL if available. If the Buildroot .mk file + hasn't been updated to take this into account, then package A will + not be part of the reverse dependencies of OpenSSL and will not be + removed and rebuilt when OpenSSL is removed. For sure, the .mk file + of package A should be fixed to mention this optional dependency, + but in the mean time, you can have non-reproducible behaviors. + + * The request is to also allow changes in the menuconfig to be + applied on the output directory without having to rebuild + everything from scratch. However, this is very difficult to achieve + in a reliable way: what happens when the suboptions of a package + are changed (we would have to detect this, and rebuild the package + from scratch and potentially all its reverse dependencies), what + happens if toolchain options are changed, etc. At the moment, what + Buildroot does is clear and simple so its behaviour is very + reliable and it is easy to support users. If configuration changes + done in menuconfig are applied after the next make, then it has to + work correctly and properly in all situations, and not have some + bizarre corner cases. The risk is to get bug reports like "I have + enabled package A, B and C, then ran make, then disabled package + C and enabled package D and ran make, then re-enabled package C + and enabled package E and then there is a build failure". Or worse + "I did some configuration, then built, then did some changes, + built, some more changes, built, some more changes, built, and now + it fails, but I don't remember all the changes I did and in which + order". This will be impossible to support. + +For all these reasons, the conclusion is that adding tracking of +installed files to remove them when the package is unselected, or to +generate a repository of binary packages, is something that is very +hard to achieve reliably and will add a lot of complexity. + +On this matter, the Buildroot developers make this position statement: + + * Buildroot strives to make it easy to generate a root filesystem (hence + the name, by the way.) That is what we want to make Buildroot good at: + building root filesystems. + + * Buildroot is not meant to be a distribution (or rather, a distribution + generator.) It is the opinion of most Buildroot developers that this + is not a goal we should pursue. We believe that there are other tools + better suited to generate a distro than Buildroot is. For example, + http://openembedded.org/[Open Embedded], or https://openwrt.org/[openWRT], + are such tools. + + * We prefer to push Buildroot in a direction that makes it easy (or even + easier) to generate complete root filesystems. This is what makes + Buildroot stands out in the crowd (among other things, of course!) + + * We believe that for most embedded Linux systems, binary packages are + not necessary, and potentially harmful. When binary packages are + used, it means that the system can be partially upgraded, which + creates an enormous number of possible combinations of package + versions that should be tested before doing the upgrade on the + embedded device. On the other hand, by doing complete system + upgrades by upgrading the entire root filesystem image at once, + the image deployed to the embedded system is guaranteed to really + be the one that has been tested and validated. + +[[faq-speeding-up-build]] +=== How to speed-up the build process? + +Since Buildroot often involves doing full rebuilds of the entire +system that can be quite long, we provide below a number of tips to +help reduce the build time: + + * Use a pre-built external toolchain instead of the default Buildroot + internal toolchain. By using a pre-built Linaro toolchain (on ARM) + or a Sourcery CodeBench toolchain (for ARM, x86, x86-64, MIPS, + etc.), you will save the build time of the toolchain at each + complete rebuild, approximately 15 to 20 minutes. Note that + temporarily using an external toolchain does not prevent you to + switch back to an internal toolchain (that may provide a higher + level of customization) once the rest of your system is working; + + * Use the +ccache+ compiler cache (see: xref:ccache[]); + + * Learn about rebuilding only the few packages you actually care + about (see xref:rebuild-pkg[]), but beware that sometimes full + rebuilds are anyway necessary (see xref:full-rebuild[]); + + * Make sure you are not using a virtual machine for the Linux system + used to run Buildroot. Most of the virtual machine technologies are + known to cause a significant performance impact on I/O, which is + really important for building source code; + + * Make sure that you're using only local files: do not attempt to do + a build over NFS, which significantly slows down the build. Having + the Buildroot download folder available locally also helps a bit. + + * Buy new hardware. SSDs and lots of RAM are key to speeding up the + builds. + + * Experiment with top-level parallel build, see + xref:top-level-parallel-build[]. + +[[faq-2038]] +=== How does Buildroot support Y2038? + +There are multiple situations to consider: + + * On 64-bit architectures, there is no problem, as +time_t+ has + always been 64-bit. + + * On 32-bit architectures, the situation depends on the C library: + + ** With _uclibc-ng_, there is no support for 64-bit +time_t+ on + 32-bit architectures, so systems using _uclibc-ng_ on 32-bit + platforms will not be Y2038 compatible. + + ** With _musl_, 64-bit +time_t+ has always been used on 32-bit + architectures, so systems using _musl_ on 32-bit platforms are + Y2038 compatible. + + ** With _glibc_, 64-bit +time_t+ on 32-bit architectures is enabled + by the Buildroot option +BR2_TIME_BITS_64+. With this option + enabled, systems using _glibc_ on 32-bit platforms are Y2038 + compatible. + +Note that the above only comments about the capabilities of the C +library. Individual user-space libraries or applications, even when +built in a Y2038-compatible setup, can exhibit incorrect behavior if +they do not make correct use of the time APIs and types. diff --git a/docs/manual/faq-troubleshooting.txt b/docs/manual/faq-troubleshooting.txt deleted file mode 100644 index b08bf9bc4aea..000000000000 --- a/docs/manual/faq-troubleshooting.txt +++ /dev/null @@ -1,244 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -== Frequently Asked Questions & Troubleshooting - -[[faq-boot-hang-after-starting]] -=== The boot hangs after 'Starting network...' - -If the boot process seems to hang after the following messages -(messages not necessarily exactly similar, depending on the list of -packages selected): - ------------------------- -Freeing init memory: 3972K -Initializing random number generator... done. -Starting network... -Starting dropbear sshd: generating rsa key... generating dsa key... OK ------------------------- - -then it means that your system is running, but didn't start a shell on -the serial console. In order to have the system start a shell on your -serial console, you have to go into the Buildroot configuration, in -+System configuration+, modify +Run a getty (login prompt) after boot+ -and set the appropriate port and baud rate in the +getty options+ -submenu. This will automatically tune the +/etc/inittab+ file of the -generated system so that a shell starts on the correct serial port. - -[[faq-no-compiler-on-target]] -=== Why is there no compiler on the target? - -It has been decided that support for the _native compiler on the -target_ would be stopped from the Buildroot-2012.11 release because: - -* this feature was neither maintained nor tested, and often broken; -* this feature was only available for Buildroot toolchains; -* Buildroot mostly targets _small_ or _very small_ target hardware - with limited resource onboard (CPU, ram, mass-storage), for which - compiling on the target does not make much sense; -* Buildroot aims at easing the cross-compilation, making native - compilation on the target unnecessary. - -If you need a compiler on your target anyway, then Buildroot is not -suitable for your purpose. In such case, you need a _real -distribution_ and you should opt for something like: - -* http://www.openembedded.org[openembedded] -* https://www.yoctoproject.org[yocto] -* https://www.debian.org/ports/[Debian] -* https://fedoraproject.org/wiki/Architectures[Fedora] -* http://en.opensuse.org/Portal:ARM[openSUSE ARM] -* http://archlinuxarm.org[Arch Linux ARM] -* ... - -[[faq-no-dev-files-on-target]] -=== Why are there no development files on the target? - -Since there is no compiler available on the target (see -xref:faq-no-compiler-on-target[]), it does not make sense to waste -space with headers or static libraries. - -Therefore, those files are always removed from the target since the -Buildroot-2012.11 release. - -[[faq-no-doc-on-target]] -=== Why is there no documentation on the target? - -Because Buildroot mostly targets _small_ or _very small_ target -hardware with limited resource onboard (CPU, ram, mass-storage), it -does not make sense to waste space with the documentation data. - -If you need documentation data on your target anyway, then Buildroot -is not suitable for your purpose, and you should look for a _real -distribution_ (see: xref:faq-no-compiler-on-target[]). - -[[faq-why-not-visible-package]] -=== Why are some packages not visible in the Buildroot config menu? - -If a package exists in the Buildroot tree and does not appear in the -config menu, this most likely means that some of the package's -dependencies are not met. - -To know more about the dependencies of a package, search for the -package symbol in the config menu (see xref:make-tips[]). - -Then, you may have to recursively enable several options (which -correspond to the unmet dependencies) to finally be able to select -the package. - -If the package is not visible due to some unmet toolchain options, -then you should certainly run a full rebuild (see xref:make-tips[] for -more explanations). - -[[faq-why-not-use-target-as-chroot]] -=== Why not use the target directory as a chroot directory? - -There are plenty of reasons to *not* use the target directory a chroot -one, among these: - -* file ownerships, modes and permissions are not correctly set in the - target directory; -* device nodes are not created in the target directory. - -For these reasons, commands run through chroot, using the target -directory as the new root, will most likely fail. - -If you want to run the target filesystem inside a chroot, or as an NFS -root, then use the tarball image generated in +images/+ and extract it -as root. - -[[faq-no-binary-packages]] -=== Why doesn't Buildroot generate binary packages (.deb, .ipkg...)? - -One feature that is often discussed on the Buildroot list is the -general topic of "package management". To summarize, the idea -would be to add some tracking of which Buildroot package installs -what files, with the goals of: - - * being able to remove files installed by a package when this package - gets unselected from the menuconfig; - - * being able to generate binary packages (ipk or other format) that - can be installed on the target without re-generating a new root - filesystem image. - -In general, most people think it is easy to do: just track which package -installed what and remove it when the package is unselected. However, it -is much more complicated than that: - - * It is not only about the +target/+ directory, but also the sysroot in - +host//sysroot+ and the +host/+ directory itself. All files - installed in those directories by various packages must be tracked. - - * When a package is unselected from the configuration, it is not - sufficient to remove just the files it installed. One must also - remove all its reverse dependencies (i.e. packages relying on it) - and rebuild all those packages. For example, package A depends - optionally on the OpenSSL library. Both are selected, and Buildroot - is built. Package A is built with crypto support using OpenSSL. - Later on, OpenSSL gets unselected from the configuration, but - package A remains (since OpenSSL is an optional dependency, this - is possible.) If only OpenSSL files are removed, then the files - installed by package A are broken: they use a library that is no - longer present on the target. Although this is technically doable, - it adds a lot of complexity to Buildroot, which goes against the - simplicity we try to stick to. - - * In addition to the previous problem, there is the case where the - optional dependency is not even known to Buildroot. For example, - package A in version 1.0 never used OpenSSL, but in version 2.0 it - automatically uses OpenSSL if available. If the Buildroot .mk file - hasn't been updated to take this into account, then package A will - not be part of the reverse dependencies of OpenSSL and will not be - removed and rebuilt when OpenSSL is removed. For sure, the .mk file - of package A should be fixed to mention this optional dependency, - but in the mean time, you can have non-reproducible behaviors. - - * The request is to also allow changes in the menuconfig to be - applied on the output directory without having to rebuild - everything from scratch. However, this is very difficult to achieve - in a reliable way: what happens when the suboptions of a package - are changed (we would have to detect this, and rebuild the package - from scratch and potentially all its reverse dependencies), what - happens if toolchain options are changed, etc. At the moment, what - Buildroot does is clear and simple so its behaviour is very - reliable and it is easy to support users. If configuration changes - done in menuconfig are applied after the next make, then it has to - work correctly and properly in all situations, and not have some - bizarre corner cases. The risk is to get bug reports like "I have - enabled package A, B and C, then ran make, then disabled package - C and enabled package D and ran make, then re-enabled package C - and enabled package E and then there is a build failure". Or worse - "I did some configuration, then built, then did some changes, - built, some more changes, built, some more changes, built, and now - it fails, but I don't remember all the changes I did and in which - order". This will be impossible to support. - -For all these reasons, the conclusion is that adding tracking of -installed files to remove them when the package is unselected, or to -generate a repository of binary packages, is something that is very -hard to achieve reliably and will add a lot of complexity. - -On this matter, the Buildroot developers make this position statement: - - * Buildroot strives to make it easy to generate a root filesystem (hence - the name, by the way.) That is what we want to make Buildroot good at: - building root filesystems. - - * Buildroot is not meant to be a distribution (or rather, a distribution - generator.) It is the opinion of most Buildroot developers that this - is not a goal we should pursue. We believe that there are other tools - better suited to generate a distro than Buildroot is. For example, - http://openembedded.org/[Open Embedded], or https://openwrt.org/[openWRT], - are such tools. - - * We prefer to push Buildroot in a direction that makes it easy (or even - easier) to generate complete root filesystems. This is what makes - Buildroot stands out in the crowd (among other things, of course!) - - * We believe that for most embedded Linux systems, binary packages are - not necessary, and potentially harmful. When binary packages are - used, it means that the system can be partially upgraded, which - creates an enormous number of possible combinations of package - versions that should be tested before doing the upgrade on the - embedded device. On the other hand, by doing complete system - upgrades by upgrading the entire root filesystem image at once, - the image deployed to the embedded system is guaranteed to really - be the one that has been tested and validated. - -[[faq-speeding-up-build]] -=== How to speed-up the build process? - -Since Buildroot often involves doing full rebuilds of the entire -system that can be quite long, we provide below a number of tips to -help reduce the build time: - - * Use a pre-built external toolchain instead of the default Buildroot - internal toolchain. By using a pre-built Linaro toolchain (on ARM) - or a Sourcery CodeBench toolchain (for ARM, x86, x86-64, MIPS, - etc.), you will save the build time of the toolchain at each - complete rebuild, approximately 15 to 20 minutes. Note that - temporarily using an external toolchain does not prevent you to - switch back to an internal toolchain (that may provide a higher - level of customization) once the rest of your system is working; - - * Use the +ccache+ compiler cache (see: xref:ccache[]); - - * Learn about rebuilding only the few packages you actually care - about (see xref:rebuild-pkg[]), but beware that sometimes full - rebuilds are anyway necessary (see xref:full-rebuild[]); - - * Make sure you are not using a virtual machine for the Linux system - used to run Buildroot. Most of the virtual machine technologies are - known to cause a significant performance impact on I/O, which is - really important for building source code; - - * Make sure that you're using only local files: do not attempt to do - a build over NFS, which significantly slows down the build. Having - the Buildroot download folder available locally also helps a bit. - - * Buy new hardware. SSDs and lots of RAM are key to speeding up the - builds. - - * Experiment with top-level parallel build, see - xref:top-level-parallel-build[]. diff --git a/docs/manual/getting.txt b/docs/manual/getting.adoc similarity index 100% rename from docs/manual/getting.txt rename to docs/manual/getting.adoc diff --git a/docs/manual/how-buildroot-works.txt b/docs/manual/how-buildroot-works.adoc similarity index 100% rename from docs/manual/how-buildroot-works.txt rename to docs/manual/how-buildroot-works.adoc diff --git a/docs/manual/integration-selinux-support.txt b/docs/manual/integration-selinux-support.adoc similarity index 100% rename from docs/manual/integration-selinux-support.txt rename to docs/manual/integration-selinux-support.adoc diff --git a/docs/manual/integration-systemd.txt b/docs/manual/integration-systemd.adoc similarity index 100% rename from docs/manual/integration-systemd.txt rename to docs/manual/integration-systemd.adoc diff --git a/docs/manual/integration.adoc b/docs/manual/integration.adoc new file mode 100644 index 000000000000..1626dd75ddc0 --- /dev/null +++ b/docs/manual/integration.adoc @@ -0,0 +1,14 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[integration]] +== Integration topics + +This chapter discusses how various things are integrated at system +level. Buildroot is highly configurable, almost everything discussed +here can be changed or overridden by xref:rootfs-custom[rootfs overlay +or custom skeleton] configuration. + +include::integration-systemd.adoc[] + +include::integration-selinux-support.adoc[] diff --git a/docs/manual/integration.txt b/docs/manual/integration.txt deleted file mode 100644 index be56bf65671e..000000000000 --- a/docs/manual/integration.txt +++ /dev/null @@ -1,14 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -[[integration]] -== Integration topics - -This chapter discusses how various things are integrated at system -level. Buildroot is highly configurable, almost everything discussed -here can be changed or overridden by xref:rootfs-custom[rootfs overlay -or custom skeleton] configuration. - -include::integration-systemd.txt[] - -include::integration-selinux-support.txt[] diff --git a/docs/manual/introduction.txt b/docs/manual/introduction.adoc similarity index 100% rename from docs/manual/introduction.txt rename to docs/manual/introduction.adoc diff --git a/docs/manual/known-issues.txt b/docs/manual/known-issues.adoc similarity index 100% rename from docs/manual/known-issues.txt rename to docs/manual/known-issues.adoc diff --git a/docs/manual/legal-notice.txt b/docs/manual/legal-notice.adoc similarity index 100% rename from docs/manual/legal-notice.txt rename to docs/manual/legal-notice.adoc diff --git a/docs/manual/make-tips.txt b/docs/manual/make-tips.adoc similarity index 100% rename from docs/manual/make-tips.txt rename to docs/manual/make-tips.adoc diff --git a/docs/manual/makedev-syntax.txt b/docs/manual/makedev-syntax.adoc similarity index 100% rename from docs/manual/makedev-syntax.txt rename to docs/manual/makedev-syntax.adoc diff --git a/docs/manual/makeusers-syntax.txt b/docs/manual/makeusers-syntax.adoc similarity index 100% rename from docs/manual/makeusers-syntax.txt rename to docs/manual/makeusers-syntax.adoc diff --git a/docs/manual/manual.adoc b/docs/manual/manual.adoc new file mode 100644 index 000000000000..31d5f80bae79 --- /dev/null +++ b/docs/manual/manual.adoc @@ -0,0 +1,75 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + += The Buildroot user manual +:toc: + +Buildroot {sys:echo $\{BR2_VERSION%%-git*\}} manual generated on {localdate} +{localtime} from git revision {sys:git rev-parse --short HEAD} + +The Buildroot manual is written by the Buildroot developers. +It is licensed under the GNU General Public License, version 2. Refer to the +http://git.buildroot.org/buildroot/tree/COPYING?id={sys:git rev-parse HEAD}[COPYING] +file in the Buildroot sources for the full text of this license. + +Copyright (C) The Buildroot developers + +image::logo.png[] + += Getting started + +include::introduction.adoc[] + +include::prerequisite.adoc[] + +include::getting.adoc[] + +include::quickstart.adoc[] + +include::resources.adoc[] + += User guide + +include::configure.adoc[] + +include::configure-other-components.adoc[] + +include::common-usage.adoc[] + +include::customize.adoc[] + +include::integration.adoc[] + +include::faq-troubleshooting.adoc[] + +include::known-issues.adoc[] + +include::legal-notice.adoc[] + +include::beyond-buildroot.adoc[] + += Developer guide + +include::how-buildroot-works.adoc[] + +include::writing-rules.adoc[] + +include::adding-board-support.adoc[] + +include::adding-packages.adoc[] + +include::patch-policy.adoc[] + +include::download-infra.adoc[] + +include::debugging-buildroot.adoc[] + +include::contribute.adoc[] + +include::developers.adoc[] + +include::release-engineering.adoc[] + += Appendix + +include::appendix.adoc[] diff --git a/docs/manual/manual.mk b/docs/manual/manual.mk index 1d03b213dbb0..e851a084aec7 100644 --- a/docs/manual/manual.mk +++ b/docs/manual/manual.mk @@ -4,7 +4,7 @@ # ################################################################################ -MANUAL_SOURCES = $(sort $(wildcard docs/manual/*.txt) $(wildcard docs/images/*)) +MANUAL_SOURCES = $(sort $(wildcard docs/manual/*.adoc) $(wildcard docs/images/*)) MANUAL_RESOURCES = $(TOPDIR)/docs/images $(eval $(call asciidoc-document)) diff --git a/docs/manual/manual.txt b/docs/manual/manual.txt deleted file mode 100644 index d6534ca29572..000000000000 --- a/docs/manual/manual.txt +++ /dev/null @@ -1,75 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -= The Buildroot user manual -:toc: - -Buildroot {sys:echo $\{BR2_VERSION%%-git*\}} manual generated on {localdate} -{localtime} from git revision {sys:git rev-parse --short HEAD} - -The Buildroot manual is written by the Buildroot developers. -It is licensed under the GNU General Public License, version 2. Refer to the -http://git.buildroot.org/buildroot/tree/COPYING?id={sys:git rev-parse HEAD}[COPYING] -file in the Buildroot sources for the full text of this license. - -Copyright (C) The Buildroot developers - -image::logo.png[] - -= Getting started - -include::introduction.txt[] - -include::prerequisite.txt[] - -include::getting.txt[] - -include::quickstart.txt[] - -include::resources.txt[] - -= User guide - -include::configure.txt[] - -include::configure-other-components.txt[] - -include::common-usage.txt[] - -include::customize.txt[] - -include::integration.txt[] - -include::faq-troubleshooting.txt[] - -include::known-issues.txt[] - -include::legal-notice.txt[] - -include::beyond-buildroot.txt[] - -= Developer guide - -include::how-buildroot-works.txt[] - -include::writing-rules.txt[] - -include::adding-board-support.txt[] - -include::adding-packages.txt[] - -include::patch-policy.txt[] - -include::download-infra.txt[] - -include::debugging-buildroot.txt[] - -include::contribute.txt[] - -include::developers.txt[] - -include::release-engineering.txt[] - -= Appendix - -include::appendix.txt[] diff --git a/docs/manual/migrating.adoc b/docs/manual/migrating.adoc new file mode 100644 index 000000000000..c0f89cbf07b6 --- /dev/null +++ b/docs/manual/migrating.adoc @@ -0,0 +1,125 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[migrating-from-ol-versions]] +== Migrating from older Buildroot versions + +Some versions have introduced backward incompatibilities. This section +explains those incompatibilities, and for each explains what to do to +complete the migration. + +[[migrating-approach]] +=== General approach + +To migrate from an older Buildroot version, take the following steps. + +. For all your configurations, do a build in the old Buildroot + environment. Run +make graph-size+. Save + +graphs/file-size-stats.csv+ in a different location. Run +make + clean+ to remove the rest. +. Review the specific migration notes below and make the required + adaptations to external packages and custom build scripts. +. Update Buildroot. +. Run +make menuconfig+ starting from the existing +.config+. +. If anything is enabled in the Legacy menu, check its help text, + unselect it, and save the configuration. +. For more details, review the git commit messages for the packages that + you need. Change into the +packages+ directory and run + +git log .. -- +. +. Build in the new Buildroot environment. +. Fix build issues in external packages (usually due to updated + dependencies). +. Run +make graph-size+. +. Compare the new +file-size-stats.csv+ with the original one, to + check if no required files have disappeared and if no new big unneeded + files have appeared. +. For configuration (and other) files in a custom overlay that overwrite + files created by Buildroot, check if there are changes in the + Buildroot-generated file that need to be propagated to your custom + file. + +[[br2-external-converting]] +=== Migrating to 2016.11 + +Before Buildroot 2016.11, it was possible to use only one br2-external +tree at once. With Buildroot 2016.11 came the possibility to use more +than one simultaneously (for details, see xref:outside-br-custom[]). + +This however means that older br2-external trees are not usable as-is. +A minor change has to be made: adding a name to your br2-external tree. + +This can be done very easily in just a few steps: + + * First, create a new file named +external.desc+, at the root of your + br2-external tree, with a single line defining the name of your + br2-external tree: ++ +---- +$ echo 'name: NAME_OF_YOUR_TREE' >external.desc +---- ++ +.Note +Be careful when choosing a name: It has to be unique and be made +with only ASCII characters from the set +[A-Za-z0-9_]+. + + * Then, change every occurence of +BR2_EXTERNAL+ in your br2-external + tree with the new variable: ++ +---- +$ find . -type f | xargs sed -i 's/BR2_EXTERNAL/BR2_EXTERNAL_NAME_OF_YOUR_TREE_PATH/g' +---- + +Now, your br2-external tree can be used with Buildroot 2016.11 onward. + +.Note: +This change makes your br2-external tree incompatible with Buildroot +before 2016.11. + +[[migrating-host-usr]] +=== Migrating to 2017.08 + +Before Buildroot 2017.08, host packages were installed in +$(HOST_DIR)/usr+ +(with e.g. the autotools' +--prefix=$(HOST_DIR)/usr+). With Buildroot +2017.08, they are now installed directly in +$(HOST_DIR)+. + +Whenever a package installs an executable that is linked with a library +in +$(HOST_DIR)/lib+, it must have an RPATH pointing to that directory. + +An RPATH pointing to +$(HOST_DIR)/usr/lib+ is no longer accepted. + +[[migrating-svn-externals]] +=== Migrating to 2023.11 + +Before Buildroot 2023.11, the subversion download backend unconditionally +retrieved the external references (objects with an `svn:externals` +property). Starting with 2023.11, externals are no longer retrieved by +default; if you need them, set +LIBFOO_SVN_EXTERNALS+ to +YES+. This +change implies that: + +* the generated archive content may change, and thus the hashes may need + to be updated appropriately; +* the archive version suffix has been updated to +-br3+, so the hash + files must be updated appropriately. + +Before Buildroot 2023.11, it was possible (but undocumented and unused) +to apply architecture-specific patches, by prefixing the patch filename +with the architecture, e.g. `0001-some-changes.patch.arm` and such a +patch would only be applied for that architecture. With Buildroot 2023.11, +this is no longer supported, and such patches are no longer applied at +all. + +If you still need per-architecture patches, then you may provide a +xref:hooks[pre-patch hook] that copies the patches applicable to the +configured architecture, e.g.: + +---- +define LIBFOO_ARCH_PATCHES + $(foreach p,$(wildcard $(LIBFOO_PKGDIR)/*.patch.$(ARCH)), \ + cp -f $(p) $(patsubst %.$(ARCH),%,$(p)) + ) +endef +LIBFOO_PRE_PATCH_HOOKS += LIBFOO_ARCH_PATCHES +---- + +Note that no package in Buildroot has architecture-specific patches, and +that such patches will most probably not be accepted. diff --git a/docs/manual/migrating.txt b/docs/manual/migrating.txt deleted file mode 100644 index cb1f5eacc917..000000000000 --- a/docs/manual/migrating.txt +++ /dev/null @@ -1,88 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -[[migrating-from-ol-versions]] -== Migrating from older Buildroot versions - -Some versions have introduced backward incompatibilities. This section -explains those incompatibilities, and for each explains what to do to -complete the migration. - -[[migrating-approach]] -=== General approach - -To migrate from an older Buildroot version, take the following steps. - -. For all your configurations, do a build in the old Buildroot - environment. Run +make graph-size+. Save - +graphs/file-size-stats.csv+ in a different location. Run +make - clean+ to remove the rest. -. Review the specific migration notes below and make the required - adaptations to external packages and custom build scripts. -. Update Buildroot. -. Run +make menuconfig+ starting from the existing +.config+. -. If anything is enabled in the Legacy menu, check its help text, - unselect it, and save the configuration. -. For more details, review the git commit messages for the packages that - you need. Change into the +packages+ directory and run - +git log .. -- +. -. Build in the new Buildroot environment. -. Fix build issues in external packages (usually due to updated - dependencies). -. Run +make graph-size+. -. Compare the new +file-size-stats.csv+ with the original one, to - check if no required files have disappeared and if no new big unneeded - files have appeared. -. For configuration (and other) files in a custom overlay that overwrite - files created by Buildroot, check if there are changes in the - Buildroot-generated file that need to be propagated to your custom - file. - -[[br2-external-converting]] -=== Migrating to 2016.11 - -Before Buildroot 2016.11, it was possible to use only one br2-external -tree at once. With Buildroot 2016.11 came the possibility to use more -than one simultaneously (for details, see xref:outside-br-custom[]). - -This however means that older br2-external trees are not usable as-is. -A minor change has to be made: adding a name to your br2-external tree. - -This can be done very easily in just a few steps: - - * First, create a new file named +external.desc+, at the root of your - br2-external tree, with a single line defining the name of your - br2-external tree: -+ ----- -$ echo 'name: NAME_OF_YOUR_TREE' >external.desc ----- -+ -.Note -Be careful when choosing a name: It has to be unique and be made -with only ASCII characters from the set +[A-Za-z0-9_]+. - - * Then, change every occurence of +BR2_EXTERNAL+ in your br2-external - tree with the new variable: -+ ----- -$ find . -type f | xargs sed -i 's/BR2_EXTERNAL/BR2_EXTERNAL_NAME_OF_YOUR_TREE_PATH/g' ----- - -Now, your br2-external tree can be used with Buildroot 2016.11 onward. - -.Note: -This change makes your br2-external tree incompatible with Buildroot -before 2016.11. - -[[migrating-host-usr]] -=== Migrating to 2017.08 - -Before Buildroot 2017.08, host packages were installed in +$(HOST_DIR)/usr+ -(with e.g. the autotools' +--prefix=$(HOST_DIR)/usr+). With Buildroot -2017.08, they are now installed directly in +$(HOST_DIR)+. - -Whenever a package installs an executable that is linked with a library -in +$(HOST_DIR)/lib+, it must have an RPATH pointing to that directory. - -An RPATH pointing to +$(HOST_DIR)/usr/lib+ is no longer accepted. diff --git a/docs/manual/package-make-target.txt b/docs/manual/package-make-target.adoc similarity index 100% rename from docs/manual/package-make-target.txt rename to docs/manual/package-make-target.adoc diff --git a/docs/manual/patch-policy.adoc b/docs/manual/patch-policy.adoc new file mode 100644 index 000000000000..dc35132ecfd2 --- /dev/null +++ b/docs/manual/patch-policy.adoc @@ -0,0 +1,180 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[patch-policy]] + +== Patching a package + +While integrating a new package or updating an existing one, it may be +necessary to patch the source of the software to get it cross-built within +Buildroot. + +Buildroot offers an infrastructure to automatically handle this during +the builds. It supports three ways of applying patch sets: downloaded patches, +patches supplied within buildroot and patches located in a user-defined +global patch directory. + +=== Providing patches + +==== Downloaded + +If it is necessary to apply a patch that is available for download, then add it +to the +_PATCH+ variable. If an entry contains +://+, +then Buildroot will assume it is a full URL and download the patch +from this location. Otherwise, Buildroot will assume that the patch should be +downloaded from +_SITE+. It can be a single patch, +or a tarball containing a patch series. + +Like for all downloads, a hash should be added to the +.hash+ +file. + +This method is typically used for packages from Debian. + +==== Within Buildroot + +Most patches are provided within Buildroot, in the package +directory; these typically aim to fix cross-compilation, libc support, +or other such issues. + +These patch files should be named +-.patch+. + +.Notes +- The patch files coming with Buildroot should not contain any package version + reference in their filename. +- The field ++ in the patch file name refers to the 'apply order', + and shall start at 1; It is preferred to pad the number with zeros up to 4 + digits, like 'git-format-patch' does. E.g.: +0001-foobar-the-buz.patch+ +- The patch email subject prefix shall not be numbered. Patches shall + be generated with the +git format-patch -N+ command, since this + numbering is automatically added for series. For example, the patch + subject line should look like +Subject: [PATCH] foobar the buz+ rather + than +Subject: [PATCH n/m] foobar the buz+. +- Previously, it was mandatory for patches to be prefixed with the name of + the package, like +--.patch+, but that is + no longer the case. Existing packages will be fixed as time passes. 'Do + not prefix patches with the package name.' +- Previously, a +series+ file, as used by +quilt+, could also be added in + the package directory. In that case, the +series+ file defines the patch + application order. This is deprecated, and will be removed in the future. + 'Do not use a series file.' + + +==== Global patch directory + +The +BR2_GLOBAL_PATCH_DIR+ configuration file option can be +used to specify a space separated list of one or more directories +containing global package patches. See xref:customize-patches[] for +details. + +[[patch-apply-order]] +=== How patches are applied + +. Run the +_PRE_PATCH_HOOKS+ commands if defined; + +. Cleanup the build directory, removing any existing +*.rej+ files; + +. If +_PATCH+ is defined, then patches from these + tarballs are applied; + +. If there are some +*.patch+ files in the package's Buildroot + directory or in a package subdirectory named ++, + then: ++ +* If a +series+ file exists in the package directory, then patches are + applied according to the +series+ file; ++ +* Otherwise, patch files matching +*.patch+ are applied in alphabetical + order. + So, to ensure they are applied in the right order, it is highly + recommended to name the patch files like this: + +-.patch+, where ++ refers to the + 'apply order'. + +. If +BR2_GLOBAL_PATCH_DIR+ is defined, the directories will be + enumerated in the order they are specified. The patches are applied + as described in the previous step. + +. Run the +_POST_PATCH_HOOKS+ commands if defined. + +If something goes wrong in the steps _3_ or _4_, then the build fails. + +=== Format and licensing of the package patches + +Patches are released under the same license as the software they apply +to (see xref:legal-info-buildroot[]). + +A message explaining what the patch does, and why it is needed, should +be added in the header commentary of the patch. + +You should add a +Signed-off-by+ statement in the header of the each +patch to help with keeping track of the changes and to certify that the +patch is released under the same license as the software that is modified. + +If the software is under version control, it is recommended to use the +upstream SCM software to generate the patch set. + +Otherwise, concatenate the header with the output of the ++diff -purN package-version.orig/ package-version/+ command. + +If you update an existing patch (e.g. when bumping the package version), +make sure the existing From header and Signed-off-by tags are not +removed, but do update the rest of the patch comment when appropriate. + +At the end, the patch should look like: + +--------------- +configure.ac: add C++ support test + +Signed-off-by: John Doe + +--- configure.ac.orig ++++ configure.ac +@@ -40,2 +40,12 @@ + +AC_PROG_MAKE_SET ++ ++AC_CACHE_CHECK([whether the C++ compiler works], ++ [rw_cv_prog_cxx_works], ++ [AC_LANG_PUSH([C++]) ++ AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], ++ [rw_cv_prog_cxx_works=yes], ++ [rw_cv_prog_cxx_works=no]) ++ AC_LANG_POP([C++])]) ++ ++AM_CONDITIONAL([CXX_WORKS], [test "x$rw_cv_prog_cxx_works" = "xyes"]) +--------------- + +=== Additional patch documentation + +Ideally, all patches should document an upstream patch or patch submission, when +applicable, via the +Upstream+ trailer. + +When backporting an upstream patch that has been accepted into mainline, it is +preferred that the URL to the commit is referenced: + +--------------- +Upstream: +--------------- + +If a new issue is identified in Buildroot and upstream is generally affected by +the issue (it's not a Buildroot specific issue), users should submit the patch +upstream and provide a link to that submission when possible: + +--------------- +Upstream: +--------------- + +Patches that have been submitted but were denied upstream should note that and +include comments about why the patch is being used despite the upstream status. + +Note: in any of the above scenarios, it is also sensible to add a few words +about any changes to the patch that may have been necessary. + +If a patch does not apply upstream then this should be noted with a comment: + +--------------- +Upstream: N/A +--------------- + +Adding this documentation helps streamline the patch review process during +package version updates. \ No newline at end of file diff --git a/docs/manual/patch-policy.txt b/docs/manual/patch-policy.txt deleted file mode 100644 index 063ef984d824..000000000000 --- a/docs/manual/patch-policy.txt +++ /dev/null @@ -1,167 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -[[patch-policy]] - -== Patching a package - -While integrating a new package or updating an existing one, it may be -necessary to patch the source of the software to get it cross-built within -Buildroot. - -Buildroot offers an infrastructure to automatically handle this during -the builds. It supports three ways of applying patch sets: downloaded patches, -patches supplied within buildroot and patches located in a user-defined -global patch directory. - -=== Providing patches - -==== Downloaded - -If it is necessary to apply a patch that is available for download, then add it -to the +_PATCH+ variable. If an entry contains +://+, -then Buildroot will assume it is a full URL and download the patch -from this location. Otherwise, Buildroot will assume that the patch should be -downloaded from +_SITE+. It can be a single patch, -or a tarball containing a patch series. - -Like for all downloads, a hash should be added to the +.hash+ -file. - -This method is typically used for packages from Debian. - -==== Within Buildroot - -Most patches are provided within Buildroot, in the package -directory; these typically aim to fix cross-compilation, libc support, -or other such issues. - -These patch files should be named +-.patch+. - -.Notes -- The patch files coming with Buildroot should not contain any package version - reference in their filename. -- The field ++ in the patch file name refers to the 'apply order', - and shall start at 1; It is preferred to pad the number with zeros up to 4 - digits, like 'git-format-patch' does. E.g.: +0001-foobar-the-buz.patch+ -- The patch email subject prefix shall not be numbered. Patches shall - be generated with the +git format-patch -N+ command, since this - numbering is automatically added for series. For example, the patch - subject line should look like +Subject: [PATCH] foobar the buz+ rather - than +Subject: [PATCH n/m] foobar the buz+. -- Previously, it was mandatory for patches to be prefixed with the name of - the package, like +--.patch+, but that is - no longer the case. Existing packages will be fixed as time passes. 'Do - not prefix patches with the package name.' -- Previously, a +series+ file, as used by +quilt+, could also be added in - the package directory. In that case, the +series+ file defines the patch - application order. This is deprecated, and will be removed in the future. - 'Do not use a series file.' - - -==== Global patch directory - -The +BR2_GLOBAL_PATCH_DIR+ configuration file option can be -used to specify a space separated list of one or more directories -containing global package patches. See xref:customize-patches[] for -details. - -[[patch-apply-order]] -=== How patches are applied - -. Run the +_PRE_PATCH_HOOKS+ commands if defined; - -. Cleanup the build directory, removing any existing +*.rej+ files; - -. If +_PATCH+ is defined, then patches from these - tarballs are applied; - -. If there are some +*.patch+ files in the package's Buildroot - directory or in a package subdirectory named ++, - then: -+ -* If a +series+ file exists in the package directory, then patches are - applied according to the +series+ file; -+ -* Otherwise, patch files matching +*.patch+ are applied in alphabetical - order. - So, to ensure they are applied in the right order, it is highly - recommended to name the patch files like this: - +-.patch+, where ++ refers to the - 'apply order'. - -. If +BR2_GLOBAL_PATCH_DIR+ is defined, the directories will be - enumerated in the order they are specified. The patches are applied - as described in the previous step. - -. Run the +_POST_PATCH_HOOKS+ commands if defined. - -If something goes wrong in the steps _3_ or _4_, then the build fails. - -=== Format and licensing of the package patches - -Patches are released under the same license as the software they apply -to (see xref:legal-info-buildroot[]). - -A message explaining what the patch does, and why it is needed, should -be added in the header commentary of the patch. - -You should add a +Signed-off-by+ statement in the header of the each -patch to help with keeping track of the changes and to certify that the -patch is released under the same license as the software that is modified. - -If the software is under version control, it is recommended to use the -upstream SCM software to generate the patch set. - -Otherwise, concatenate the header with the output of the -+diff -purN package-version.orig/ package-version/+ command. - -If you update an existing patch (e.g. when bumping the package version), -make sure the existing From header and Signed-off-by tags are not -removed, but do update the rest of the patch comment when appropriate. - -At the end, the patch should look like: - ---------------- -configure.ac: add C++ support test - -Signed-off-by: John Doe - ---- configure.ac.orig -+++ configure.ac -@@ -40,2 +40,12 @@ - -AC_PROG_MAKE_SET -+ -+AC_CACHE_CHECK([whether the C++ compiler works], -+ [rw_cv_prog_cxx_works], -+ [AC_LANG_PUSH([C++]) -+ AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], -+ [rw_cv_prog_cxx_works=yes], -+ [rw_cv_prog_cxx_works=no]) -+ AC_LANG_POP([C++])]) -+ -+AM_CONDITIONAL([CXX_WORKS], [test "x$rw_cv_prog_cxx_works" = "xyes"]) ---------------- - -=== Integrating patches found on the Web - -When integrating a patch of which you are not the author, you have to -add a few things in the header of the patch itself. - -Depending on whether the patch has been obtained from the project -repository itself, or from somewhere on the web, add one of the -following tags: - ---------------- -Backported from: ---------------- - -or - ---------------- -Fetch from: ---------------- - -It is also sensible to add a few words about any changes to the patch -that may have been necessary. diff --git a/docs/manual/prerequisite.txt b/docs/manual/prerequisite.adoc similarity index 100% rename from docs/manual/prerequisite.txt rename to docs/manual/prerequisite.adoc diff --git a/docs/manual/quickstart.txt b/docs/manual/quickstart.adoc similarity index 100% rename from docs/manual/quickstart.txt rename to docs/manual/quickstart.adoc diff --git a/docs/manual/rebuilding-packages.txt b/docs/manual/rebuilding-packages.adoc similarity index 100% rename from docs/manual/rebuilding-packages.txt rename to docs/manual/rebuilding-packages.adoc diff --git a/docs/manual/release-engineering.txt b/docs/manual/release-engineering.adoc similarity index 100% rename from docs/manual/release-engineering.txt rename to docs/manual/release-engineering.adoc diff --git a/docs/manual/resources.txt b/docs/manual/resources.adoc similarity index 100% rename from docs/manual/resources.txt rename to docs/manual/resources.adoc diff --git a/docs/manual/using-buildroot-debugger.txt b/docs/manual/using-buildroot-debugger.adoc similarity index 100% rename from docs/manual/using-buildroot-debugger.txt rename to docs/manual/using-buildroot-debugger.adoc diff --git a/docs/manual/using-buildroot-development.txt b/docs/manual/using-buildroot-development.adoc similarity index 100% rename from docs/manual/using-buildroot-development.txt rename to docs/manual/using-buildroot-development.adoc diff --git a/docs/manual/using-buildroot-toolchain.txt b/docs/manual/using-buildroot-toolchain.adoc similarity index 100% rename from docs/manual/using-buildroot-toolchain.txt rename to docs/manual/using-buildroot-toolchain.adoc diff --git a/docs/manual/writing-rules.adoc b/docs/manual/writing-rules.adoc new file mode 100644 index 000000000000..13b7fd5bea6a --- /dev/null +++ b/docs/manual/writing-rules.adoc @@ -0,0 +1,231 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +== Coding style + +Overall, these coding style rules are here to help you to add new files in +Buildroot or refactor existing ones. + +If you slightly modify some existing file, the important thing is +to keep the consistency of the whole file, so you can: + +* either follow the potentially deprecated coding style used in this +file, + +* or entirely rework it in order to make it comply with these rules. + +[[writing-rules-config-in]] + +=== +Config.in+ file + ++Config.in+ files contain entries for almost anything configurable in +Buildroot. + +An entry has the following pattern: + +--------------------- +config BR2_PACKAGE_LIBFOO + bool "libfoo" + depends on BR2_PACKAGE_LIBBAZ + select BR2_PACKAGE_LIBBAR + help + This is a comment that explains what libfoo is. The help text + should be wrapped. + + http://foosoftware.org/libfoo/ +--------------------- + +* The +bool+, +depends on+, +select+ and +help+ lines are indented + with one tab. + +* The help text itself should be indented with one tab and two + spaces. + +* The help text should be wrapped to fit 72 columns, where tab counts + for 8, so 62 characters in the text itself. + +The +Config.in+ files are the input for the configuration tool +used in Buildroot, which is the regular _Kconfig_. For further +details about the _Kconfig_ language, refer to +http://kernel.org/doc/Documentation/kbuild/kconfig-language.txt[]. + +[[writing-rules-mk]] + +=== The +.mk+ file + +* Header: The file starts with a header. It contains the module name, +preferably in lowercase, enclosed between separators made of 80 hashes. A +blank line is mandatory after the header: ++ +--------------------- +################################################################################ +# +# libfoo +# +################################################################################ +--------------------- ++ +* Assignment: use +=+ preceded and followed by one space: ++ +--------------------- +LIBFOO_VERSION = 1.0 +LIBFOO_CONF_OPTS += --without-python-support +--------------------- ++ +Do not align the +=+ signs. + +* Indentation: use tab only: ++ +--------------------- +define LIBFOO_REMOVE_DOC + $(RM) -r $(TARGET_DIR)/usr/share/libfoo/doc \ + $(TARGET_DIR)/usr/share/man/man3/libfoo* +endef +--------------------- ++ +Note that commands inside a +define+ block should always start with a tab, +so _make_ recognizes them as commands. + +* Optional dependency: + +** Prefer multi-line syntax. ++ +YES: ++ +--------------------- +ifeq ($(BR2_PACKAGE_PYTHON3),y) +LIBFOO_CONF_OPTS += --with-python-support +LIBFOO_DEPENDENCIES += python3 +else +LIBFOO_CONF_OPTS += --without-python-support +endif +--------------------- ++ +NO: ++ +--------------------- +LIBFOO_CONF_OPTS += --with$(if $(BR2_PACKAGE_PYTHON3),,out)-python-support +LIBFOO_DEPENDENCIES += $(if $(BR2_PACKAGE_PYTHON3),python3,) +--------------------- + +** Keep configure options and dependencies close together. + +* Optional hooks: keep hook definition and assignment together in one + if block. ++ +YES: ++ +--------------------- +ifneq ($(BR2_LIBFOO_INSTALL_DATA),y) +define LIBFOO_REMOVE_DATA + $(RM) -r $(TARGET_DIR)/usr/share/libfoo/data +endef +LIBFOO_POST_INSTALL_TARGET_HOOKS += LIBFOO_REMOVE_DATA +endif +--------------------- ++ +NO: ++ +--------------------- +define LIBFOO_REMOVE_DATA + $(RM) -r $(TARGET_DIR)/usr/share/libfoo/data +endef + +ifneq ($(BR2_LIBFOO_INSTALL_DATA),y) +LIBFOO_POST_INSTALL_TARGET_HOOKS += LIBFOO_REMOVE_DATA +endif +--------------------- + +[[writing-genimage-cfg]] + +=== The +genimage.cfg+ file + ++genimage.cfg+ files contain the output image layout that genimage utility +uses to create final .img file. + +An example follows: + +--------------------- +image efi-part.vfat { + vfat { + file EFI { + image = "efi-part/EFI" + } + + file Image { + image = "Image" + } + } + + size = 32M +} + +image sdimage.img { + hdimage { + } + + partition u-boot { + image = "efi-part.vfat" + offset = 8K + } + + partition root { + image = "rootfs.ext2" + size = 512M + } +} +--------------------- + +* Every +section+(i.e. hdimage, vfat etc.), +partition+ must be indented + with one tab. + +* Every +file+ or other +subnode+ must be indented with two tabs. + +* Every node(+section+, +partition+, +file+, +subnode+) must have an open + curly bracket on the same line of the node's name, while the closing one + must be on a newline and after it a newline must be added except for the + last one node. Same goes for its option, for example option +size+ +=+. + +* Every +option+(i.e. +image+, +offset+, +size+) must have the +=+ + assignment one space from it and one space from the value specified. + +* Filename must at least begin with genimage prefix and have the .cfg + extension to be easy to recognize. + +* Allowed notations for +offset+ and +size+ options are: +G+, +M+, +K+ + (not +k+). If it's not possible to express a precise byte count + with notations above then use hexadecimal +0x+ prefix or, as last + chance, the byte count. In comments instead use +GB+, +MB+, +KB+ + (not +kb+) in place of +G+, +M+, +K+. + +* For GPT partitions, the +partition-type-uuid+ value must be +U+ for + the EFI System Partition (expanded to + +c12a7328-f81f-11d2-ba4b-00a0c93ec93b+ by _genimage_), +F+ for a FAT + partition (expanded to +ebd0a0a2-b9e5-4433-87c0-68b6b72699c7+ by + _genimage_) or +L+ for the root filesystem or other filesystems + (expanded to +0fc63daf-8483-4772-8e79-3d69d8477de4+ by + _genimage_). Even though +L+ is the default value of _genimage_, we + prefer to have it explicitly specified in our +genimage.cfg+ + files. Finally, these shortcuts should be used without double + quotes, e.g +partition-type-uuid = U+. If an explicit GUID is + specified, lower-case letters should be used. + +The +genimage.cfg+ files are the input for the genimage tool used in +Buildroot to generate the final image file(i.e. sdcard.img). For further +details about the _genimage_ language, refer to +https://github.com/pengutronix/genimage/blob/master/README.rst[]. + + +=== The documentation + +The documentation uses the +https://asciidoc-py.github.io/[asciidoc] format. + +For further details about the asciidoc syntax, refer to +https://asciidoc-py.github.io/userguide.html[]. + +=== Support scripts + +Some scripts in the +support/+ and +utils/+ directories are written in +Python and should follow the +https://www.python.org/dev/peps/pep-0008/[PEP8 Style Guide for Python Code]. diff --git a/docs/manual/writing-rules.txt b/docs/manual/writing-rules.txt deleted file mode 100644 index 758965d80a0a..000000000000 --- a/docs/manual/writing-rules.txt +++ /dev/null @@ -1,231 +0,0 @@ -// -*- mode:doc; -*- -// vim: set syntax=asciidoc: - -== Coding style - -Overall, these coding style rules are here to help you to add new files in -Buildroot or refactor existing ones. - -If you slightly modify some existing file, the important thing is -to keep the consistency of the whole file, so you can: - -* either follow the potentially deprecated coding style used in this -file, - -* or entirely rework it in order to make it comply with these rules. - -[[writing-rules-config-in]] - -=== +Config.in+ file - -+Config.in+ files contain entries for almost anything configurable in -Buildroot. - -An entry has the following pattern: - ---------------------- -config BR2_PACKAGE_LIBFOO - bool "libfoo" - depends on BR2_PACKAGE_LIBBAZ - select BR2_PACKAGE_LIBBAR - help - This is a comment that explains what libfoo is. The help text - should be wrapped. - - http://foosoftware.org/libfoo/ ---------------------- - -* The +bool+, +depends on+, +select+ and +help+ lines are indented - with one tab. - -* The help text itself should be indented with one tab and two - spaces. - -* The help text should be wrapped to fit 72 columns, where tab counts - for 8, so 62 characters in the text itself. - -The +Config.in+ files are the input for the configuration tool -used in Buildroot, which is the regular _Kconfig_. For further -details about the _Kconfig_ language, refer to -http://kernel.org/doc/Documentation/kbuild/kconfig-language.txt[]. - -[[writing-rules-mk]] - -=== The +.mk+ file - -* Header: The file starts with a header. It contains the module name, -preferably in lowercase, enclosed between separators made of 80 hashes. A -blank line is mandatory after the header: -+ ---------------------- -################################################################################ -# -# libfoo -# -################################################################################ ---------------------- -+ -* Assignment: use +=+ preceded and followed by one space: -+ ---------------------- -LIBFOO_VERSION = 1.0 -LIBFOO_CONF_OPTS += --without-python-support ---------------------- -+ -Do not align the +=+ signs. - -* Indentation: use tab only: -+ ---------------------- -define LIBFOO_REMOVE_DOC - $(RM) -fr $(TARGET_DIR)/usr/share/libfoo/doc \ - $(TARGET_DIR)/usr/share/man/man3/libfoo* -endef ---------------------- -+ -Note that commands inside a +define+ block should always start with a tab, -so _make_ recognizes them as commands. - -* Optional dependency: - -** Prefer multi-line syntax. -+ -YES: -+ ---------------------- -ifeq ($(BR2_PACKAGE_PYTHON3),y) -LIBFOO_CONF_OPTS += --with-python-support -LIBFOO_DEPENDENCIES += python3 -else -LIBFOO_CONF_OPTS += --without-python-support -endif ---------------------- -+ -NO: -+ ---------------------- -LIBFOO_CONF_OPTS += --with$(if $(BR2_PACKAGE_PYTHON3),,out)-python-support -LIBFOO_DEPENDENCIES += $(if $(BR2_PACKAGE_PYTHON3),python3,) ---------------------- - -** Keep configure options and dependencies close together. - -* Optional hooks: keep hook definition and assignment together in one - if block. -+ -YES: -+ ---------------------- -ifneq ($(BR2_LIBFOO_INSTALL_DATA),y) -define LIBFOO_REMOVE_DATA - $(RM) -fr $(TARGET_DIR)/usr/share/libfoo/data -endef -LIBFOO_POST_INSTALL_TARGET_HOOKS += LIBFOO_REMOVE_DATA -endif ---------------------- -+ -NO: -+ ---------------------- -define LIBFOO_REMOVE_DATA - $(RM) -fr $(TARGET_DIR)/usr/share/libfoo/data -endef - -ifneq ($(BR2_LIBFOO_INSTALL_DATA),y) -LIBFOO_POST_INSTALL_TARGET_HOOKS += LIBFOO_REMOVE_DATA -endif ---------------------- - -[[writing-genimage-cfg]] - -=== The +genimage.cfg+ file - -+genimage.cfg+ files contain the output image layout that genimage utility -uses to create final .img file. - -An example follows: - ---------------------- -image efi-part.vfat { - vfat { - file EFI { - image = "efi-part/EFI" - } - - file Image { - image = "Image" - } - } - - size = 32M -} - -image sdimage.img { - hdimage { - } - - partition u-boot { - image = "efi-part.vfat" - offset = 8K - } - - partition root { - image = "rootfs.ext2" - size = 512M - } -} ---------------------- - -* Every +section+(i.e. hdimage, vfat etc.), +partition+ must be indented - with one tab. - -* Every +file+ or other +subnode+ must be indented with two tabs. - -* Every node(+section+, +partition+, +file+, +subnode+) must have an open - curly bracket on the same line of the node's name, while the closing one - must be on a newline and after it a newline must be added except for the - last one node. Same goes for its option, for example option +size+ +=+. - -* Every +option+(i.e. +image+, +offset+, +size+) must have the +=+ - assignment one space from it and one space from the value specified. - -* Filename must at least begin with genimage prefix and have the .cfg - extension to be easy to recognize. - -* Allowed notations for +offset+ and +size+ options are: +G+, +M+, +K+ - (not +k+). If it's not possible to express a precise byte count - with notations above then use hexadecimal +0x+ prefix or, as last - chance, the byte count. In comments instead use +GB+, +MB+, +KB+ - (not +kb+) in place of +G+, +M+, +K+. - -* For GPT partitions, the +partition-type-uuid+ value must be +U+ for - the EFI System Partition (expanded to - +c12a7328-f81f-11d2-ba4b-00a0c93ec93b+ by _genimage_), +F+ for a FAT - partition (expanded to +ebd0a0a2-b9e5-4433-87c0-68b6b72699c7+ by - _genimage_) or +L+ for the root filesystem or other filesystems - (expanded to +0fc63daf-8483-4772-8e79-3d69d8477de4+ by - _genimage_). Even though +L+ is the default value of _genimage_, we - prefer to have it explicitly specified in our +genimage.cfg+ - files. Finally, these shortcuts should be used without double - quotes, e.g +partition-type-uuid = U+. If an explicit GUID is - specified, lower-case letters should be used. - -The +genimage.cfg+ files are the input for the genimage tool used in -Buildroot to generate the final image file(i.e. sdcard.img). For further -details about the _genimage_ language, refer to -https://github.com/pengutronix/genimage/blob/master/README.rst[]. - - -=== The documentation - -The documentation uses the -https://asciidoc-py.github.io/[asciidoc] format. - -For further details about the asciidoc syntax, refer to -https://asciidoc-py.github.io/userguide.html[]. - -=== Support scripts - -Some scripts in the +support/+ and +utils/+ directories are written in -Python and should follow the -https://www.python.org/dev/peps/pep-0008/[PEP8 Style Guide for Python Code]. diff --git a/docs/website/association.html b/docs/website/association.html index 0215f85874c4..0c2306f3480c 100644 --- a/docs/website/association.html +++ b/docs/website/association.html @@ -32,21 +32,21 @@

The bylaws of the association are available - in French + in French (official) and - in English + in English (unofficial translation). The association was declared on March 14, 2016 to the Préfecture de Haute-Garonne (France) and is registered under the n°W313024278. See this - official receipt + official receipt from the French authorities.

Our accounting is fully public, including the bank account summaries, - see accounting. Numerous + see accounting. Numerous other administrative documents related to the association are available on - its Github + its Gitlab repository

@@ -68,7 +68,7 @@

Once the membership fee is received, it will be listed in the - association accounting + association accounting files, which serve as the official list of members. Therefore, members accept that their name and the amount of their membership fee is made public.

diff --git a/docs/website/download.html b/docs/website/download.html index 5afc507c5249..e673fa655bbc 100644 --- a/docs/website/download.html +++ b/docs/website/download.html @@ -8,105 +8,105 @@
Download
-

Latest stable / long term support release: 2023.02

+

Latest long term support release: 2023.02.7

- @@ -116,97 +116,41 @@

buildroot-2023.02-rc3.tar.

-
Source code
+
Git repository
-
-
-
-
Repository
-
-

The buildroot repository can be browsed online through cgit at - http://git.buildroot.net/buildroot. - To grab a copy of the repository use

- - -
- - - - -

- -

- Or if you're behind a firewall blocking git: -

- -
- - - - -

- -

- - Please use the native git protocol if at all possible, as it's a lot - more efficient than HTTP. - -

- - If you are not already familiar with using Git, we recommend you visit the Git website. - -

- - Once you've checked out a copy of the source tree, you can update your source - tree at any time so it is in sync with the latest and greatest by entering your - buildroot directory and running the command: - -

-git pull
-
- - Because you've only been granted anonymous access to the tree, you won't be - able to push your changes to the repo. Changes can instead be submitted for - inclusion by posting them to the buildroot mailing list. -
-
-
+

The buildroot repository can be browsed online at + https://gitlab.com/buildroot.org/buildroot/.

+ +

To grab a copy of the repository use

+ +
+ + + + +

+ +

If you are not already familiar with using Git, we recommend + you visit the Git + website.

+ +

Once you've checked out a copy of the source tree, you can + update your source tree at any time so it is in sync with the + latest and greatest by entering your buildroot directory and + running the command:

+ +
git pull
+ +

Because you've only been granted anonymous access to the + tree, you won't be able to push your changes to the + repo. Changes can instead be submitted for inclusion by + posting them to the buildroot mailing list.

-
-
-
Tarballs
-
- You can also obtain daily snapshots of the latest Buildroot source tree if you - want to follow development, but cannot or do not wish to use Git. - - - -

- Older versions can be downloaded from the release archive. -

-
-
-
-
diff --git a/docs/website/header.html b/docs/website/header.html index e1909291f68f..548ed7ad5329 100644 --- a/docs/website/header.html +++ b/docs/website/header.html @@ -6,7 +6,7 @@ - + Buildroot - Making Embedded Linux Easy diff --git a/docs/website/news.html b/docs/website/news.html index 9fbbe5b0b7f8..6db4712d19c8 100644 --- a/docs/website/news.html +++ b/docs/website/news.html @@ -9,6 +9,543 @@

News

    +
  • +
    +
    +
    +

    2023.11 released

    +

    4 December 2023

    +
    +
    +

    The stable 2023.11 release is out - Thanks to everyone + contributing and testing the release candidates. See the + CHANGES + file for more details + and go to the downloads page to pick up the + 2023.11 release.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.11-rc2 released

    +

    29 November 2023

    +
    +
    +

    2023.11-rc2 has been released with more cleanups and build fixes. See the + CHANGES + file for details.

    + +

    Head to the downloads page to pick up the + 2023.11-rc2 + release candidate, and report any problems found to the + mailing list or + bug tracker.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.02.7 released

    +

    14 November 2023

    +
    +
    +

    The 2023.02.7 bugfix release is out, fixing a number of important / + security related issues discovered since the 2023.02.6 release. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2023.02.7 release.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.08.3 released

    +

    14 November 2023

    +
    +
    +

    The 2023.08.3 bugfix release is out, fixing a number of important / + security related issues discovered since the 2023.08.2 release. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2023.08.3 release.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.11-rc1 released

    +

    14 November 2023

    +
    +
    +

    We have a new release candidate! Lots of changes all over the tree, see the + CHANGES + file for more details.

    + +

    Go to the downloads page to pick up the + 2023.11-rc1 + release, and report any problems found to the + mailing list or + bug tracker.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.02.6 released

    +

    16 October 2023

    +
    +
    +

    The 2023.02.6 bugfix release is out, fixing a number of important / + security related issues discovered since the 2023.02.5 release. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2023.02.6 release.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.08.2 released

    +

    15 October 2023

    +
    +
    +

    The 2023.08.2 bugfix release is out, fixing a number of important / + security related issues discovered since the 2023.08.1 release. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2023.08.2 release.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.08.1 released

    +

    27 September 2023

    +
    +
    +

    The 2023.08.1 bugfix release is out, fixing a number of important / + security related issues discovered since the 2023.08 release. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2023.08.1 release.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.02.5 released

    +

    27 September 2023

    +
    +
    +

    The 2023.02.5 bugfix release is out, fixing a number of important / + security related issues discovered since the 2023.02.4 release. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2023.02.5 release.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.05.3 released, 2023.05.x series EOL

    +

    26 September 2023

    +
    +
    +

    The 2023.05.3 bugfix release is out, fixing a number of important / + security related issues discovered since the 2023.05.2 release. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2023.05.3 release.

    + +

    Notice that the 2023.05.x series is now end of life. Please migrate to + the 2023.08 series instead.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.08 released

    +

    6 September 2023

    +
    +
    +

    The stable 2023.08 release is out - Thanks to everyone + contributing and testing the release candidates. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2023.08 release.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.02.4 released

    +

    31 August 2023

    +
    +
    +

    The 2023.02.4 bugfix release is out, fixing a number of important / + security related issues discovered since the 2023.02.3 release. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2023.02.4 release.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.05.2 released

    +

    31 August 2023

    +
    +
    +

    The 2023.05.2 bugfix release is out, fixing a number of important / + security related issues discovered since the 2023.05.1 release. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2023.05.2 release.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.08-rc3 released

    +

    29 August 2023

    +
    +
    +

    2023.08-rc3 has been released with more cleanups and build fixes. See the + CHANGES + file for details.

    + +

    Head to the downloads page to pick up the + 2023.08-rc3 + release candidate, and report any problems found to the + mailing list or + bug tracker.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.08-rc2 released

    +

    20 August 2023

    +
    +
    +

    2023.08-rc2 has been released with more cleanups and build fixes. See the + CHANGES + file for details.

    + +

    Head to the downloads page to pick up the + 2023.08-rc2 + release candidate, and report any problems found to the + mailing list or + bug tracker.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.08-rc1 released

    +

    5 August 2023

    +
    +
    +

    We have a new release candidate! Lots of changes all over + the tree, see + the CHANGES + file for more details.

    +

    Go to the downloads page to pick up the + 2023.08-rc1 + release, and report any problems found to the + mailing list or + bug tracker.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.02.3 released

    +

    17 July 2023

    +
    +
    +

    The 2023.02.3 bugfix release is out, fixing a number of important / + security related issues discovered since the 2023.02.2 release. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2023.02.3 release.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.05.1 released

    +

    17 July 2023

    +
    +
    +

    The 2023.05.1 bugfix release is out, fixing a number of important / + security related issues discovered since the 2023.05 release. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2023.05.1 release.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.02.2 released

    +

    16 June 2023

    +
    +
    +

    The 2023.02.2 bugfix release is out, fixing a number of important / + security related issues discovered since the 2023.02.1 release. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2023.02.2 release.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.05 released

    +

    7 June 2023

    +
    +
    +

    The stable 2023.05 release is out - Thanks to everyone + contributing and testing the release candidates. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2023.05 release.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.05-rc3 released

    +

    4 June 2023

    +
    +
    +

    2023.05-rc3 has been released with more cleanups and build fixes. See the + CHANGES + file for details.

    + +

    Head to the downloads page to pick up the + 2023.05-rc3 + release candidate, and report any problems found to the + mailing list or + bug tracker.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.05-rc2 released

    +

    28 May 2023

    +
    +
    +

    2023.05-rc2 has been released with more cleanups and build fixes. See the + CHANGES + file for details.

    + +

    Head to the downloads page to pick up the + 2023.05-rc2 + release candidate, and report any problems found to the + mailing list or + bug tracker.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.05-rc1 released

    +

    15 May 2023

    +
    +
    +

    We have a new release candidate! Lots of changes all over the tree, see the + CHANGES + file for more details.

    + +

    Go to the downloads page to pick up the + 2023.05-rc1 + release, and report any problems found to the + mailing list or + bug tracker.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2023.02.1 released

    +

    10 May 2023

    +
    +
    +

    The 2023.02.1 bugfix release is out, fixing a number of important / + security related issues discovered since the 2023.02 release. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2023.02.1 release.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2022.02.12 released, 2022.02.x series EOL

    +

    4 May 2023

    +
    +
    +

    The 2022.02.12 bugfix release is out, fixing a number of important / + security related issues discovered since the 2022.02.11 release. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2022.02.12 release.

    + +

    Notice that the 2022.02.x series is now end of life. Please migrate to + the 2023.02 series instead which will be supported until April 2024.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2022.02.11 released

    +

    19 March 2023

    +
    +
    +

    The 2022.02.11 bugfix release is out, fixing a number of important / + security related issues discovered since the 2022.02.10 release. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2022.02.11 release.

    +
    +
    +
  • + +
  • +
    +
    +
    +

    2022.11.3 released, 2022.11.x series EOL

    +

    18 March 2023

    +
    +
    +

    The 2022.11.3 bugfix release is out, fixing a number of important / + security related issues discovered since the 2022.11.2 release. See the + CHANGES + file for more details, read the + announcement + and go to the downloads page to pick up the + 2022.11.3 release.

    + +

    Notice that the 2022.11.x series is now end of life. Please migrate to + the 2023.02 series instead which will be supported until April 2024.

    +
    +
    +
  • +
  • @@ -20,7 +557,8 @@

    2023.02 released

    The stable 2023.02 release is out - Thanks to everyone contributing and testing the release candidates. See the CHANGES - file for more details + file for more details, read the + announcement and go to the downloads page to pick up the 2023.02 release.

    diff --git a/docs/website/sponsors.html b/docs/website/sponsors.html index 9c17bed0c714..a90ca6c8df03 100644 --- a/docs/website/sponsors.html +++ b/docs/website/sponsors.html @@ -9,6 +9,21 @@
    +
    +
    +
    +
    + + + +
    +
    + Tap2Open + financially sponsored the Buildroot Association + in 2020 and 2023.
    +
    +
    +
    @@ -46,7 +61,9 @@
    +
    +
    @@ -348,24 +365,6 @@
    -
    -
    -
    -
    -
    - - - -
    -
    - Tap2Open - financially sponsored the Buildroot Association - in 2020.
    -
    -
    -
    -
    -
    diff --git a/docs/website/support.html b/docs/website/support.html index 90231f601c31..9be816f8368f 100644 --- a/docs/website/support.html +++ b/docs/website/support.html @@ -111,6 +111,9 @@

    Search the List Archives

    + + + diff --git a/linux/Config.in b/linux/Config.in index 5cbef197abbb..ae734c49a048 100644 --- a/linux/Config.in +++ b/linux/Config.in @@ -28,8 +28,8 @@ choice prompt "Kernel version" config BR2_LINUX_KERNEL_LATEST_VERSION - bool "Latest version (6.1)" - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_1 if BR2_KERNEL_HEADERS_AS_KERNEL + bool "Latest version (6.6)" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_6 if BR2_KERNEL_HEADERS_AS_KERNEL config BR2_LINUX_KERNEL_LATEST_CIP_VERSION bool "Latest CIP SLTS version (5.10.162-cip24)" @@ -128,7 +128,7 @@ endif config BR2_LINUX_KERNEL_VERSION string - default "6.1.14" if BR2_LINUX_KERNEL_LATEST_VERSION + default "6.6.3" if BR2_LINUX_KERNEL_LATEST_VERSION default "5.10.162-cip24" if BR2_LINUX_KERNEL_LATEST_CIP_VERSION default "5.10.162-cip24-rt10" if BR2_LINUX_KERNEL_LATEST_CIP_RT_VERSION default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \ diff --git a/linux/linux.hash b/linux/linux.hash index f45b244e6bc4..ed9c6143dbf1 100644 --- a/linux/linux.hash +++ b/linux/linux.hash @@ -1,12 +1,14 @@ # From https://www.kernel.org/pub/linux/kernel/v6.x/sha256sums.asc -sha256 a27076011efec7ad11e9ed0644f512c34cab4c5ed5ba42cfe71c83fabebe810d linux-6.1.14.tar.xz +sha256 28edfc3d4f90cd738f2a20f5a2d68510268176d6111f6278d8f495edfd9495a7 linux-6.6.3.tar.xz +sha256 78fbd43822f4c56bc16e89e8874767f592532e1a0ffcd1af4dd279559b5fcbb5 linux-6.5.13.tar.xz +sha256 629daa38f3ea67f29610bfbd53f9f38f46834d3654451e9474100490c66dc7e7 linux-6.1.64.tar.xz # From https://www.kernel.org/pub/linux/kernel/v5.x/sha256sums.asc -sha256 348d974c143fdef8517ec703fdaa24bade12a49047848be92cb9e3253b19ef98 linux-5.15.96.tar.xz -sha256 a2b51876befb8cc35724ed62820845f2b387d471a6cf46e8eedd0b6cb595825f linux-5.10.170.tar.xz -sha256 5a1e5754b4f2a4fe73b119d810ecda2ce07ecfb6f6cbbd16547c9ecd30b97627 linux-5.4.233.tar.xz +sha256 be2bee8b346f3ccb35879f16c80a323edda571e36190403805c14a9ea24e4a47 linux-5.15.140.tar.xz +sha256 3212e0299d699dd6089505b1428bcb00643fbf19af69806e37fad22bfe12fa8b linux-5.10.202.tar.xz +sha256 7d3eaa0744456ab4b062e6da8764f776b6939b89a1dfccbe11fbeef9c6e864dc linux-5.4.262.tar.xz # From https://www.kernel.org/pub/linux/kernel/v4.x/sha256sums.asc -sha256 4e1c1555c306874e0477d1af282d04a4efb285121456ab3f79519c92e406b701 linux-4.14.307.tar.xz -sha256 64a265a193c9e3e14d1397278e2348386ef6d6043af76d693c0fbbafed345ca8 linux-4.19.274.tar.xz +sha256 a8419582886120407f57d39280ef8a9b22aab9725c83c4fe25ecca4712d59346 linux-4.19.300.tar.xz +sha256 39dcdceecad2ca7347e2b2e7e30a189558c0a1700f793822389bb1fd9a40530f linux-4.14.331.tar.xz # Locally computed sha256 fb0edc3c18e47d2b6974cb0880a0afb5c3fa08f50ee87dfdf24349405ea5f8ae linux-cip-5.10.162-cip24.tar.gz sha256 b5539243f187e3d478d76d44ae13aab83952c94b885ad889df6fa9997e16a441 linux-cip-5.10.162-cip24-rt10.tar.gz diff --git a/linux/linux.mk b/linux/linux.mk index 6e01467497ae..31dcadbf7dc0 100644 --- a/linux/linux.mk +++ b/linux/linux.mk @@ -70,7 +70,10 @@ LINUX_MAKE_ENV = \ BR_BINARIES_DIR=$(BINARIES_DIR) LINUX_INSTALL_IMAGES = YES -LINUX_DEPENDENCIES = host-kmod +LINUX_DEPENDENCIES = \ + host-kmod \ + $(BR2_MAKE_HOST_DEPENDENCY) +LINUX_MAKE = $(BR2_MAKE) # The kernel CONFIG_EXTRA_FIRMWARE feature requires firmware files at build # time. Make sure they are available before the kernel builds. @@ -85,7 +88,8 @@ LINUX_DEPENDENCIES += \ # only if the host does not have them. LINUX_KCONFIG_DEPENDENCIES = \ $(BR2_BISON_HOST_DEPENDENCY) \ - $(BR2_FLEX_HOST_DEPENDENCY) + $(BR2_FLEX_HOST_DEPENDENCY) \ + $(BR2_MAKE_HOST_DEPENDENCY) # Starting with 4.18, the kconfig in the kernel calls the # cross-compiler to check its capabilities. So we need the @@ -124,7 +128,7 @@ ifeq ($(BR2_LINUX_KERNEL_NEEDS_HOST_PAHOLE),y) LINUX_DEPENDENCIES += host-pahole else define LINUX_FIXUP_CONFIG_PAHOLE_CHECK - if grep -q "^CONFIG_DEBUG_INFO_BTF=y" $(KCONFIG_DOT_CONFIG); then \ + $(Q)if grep -q "^CONFIG_DEBUG_INFO_BTF=y" $(KCONFIG_DOT_CONFIG); then \ echo "To use CONFIG_DEBUG_INFO_BTF, enable host-pahole (BR2_LINUX_KERNEL_NEEDS_HOST_PAHOLE)" 1>&2; \ exit 1; \ fi @@ -183,7 +187,7 @@ endif # Get the real Linux version, which tells us where kernel modules are # going to be installed in the target filesystem. # Filter out 'w' from MAKEFLAGS, to workaround a bug in make 4.1 (#13141) -LINUX_VERSION_PROBED = `MAKEFLAGS='$(filter-out w,$(MAKEFLAGS))' $(MAKE) $(LINUX_MAKE_FLAGS) -C $(LINUX_DIR) --no-print-directory -s kernelrelease 2>/dev/null` +LINUX_VERSION_PROBED = `MAKEFLAGS='$(filter-out w,$(MAKEFLAGS))' $(BR2_MAKE) $(LINUX_MAKE_FLAGS) -C $(LINUX_DIR) --no-print-directory -s kernelrelease 2>/dev/null` LINUX_DTS_NAME += $(call qstrip,$(BR2_LINUX_KERNEL_INTREE_DTS_NAME)) @@ -363,7 +367,22 @@ define LINUX_FIXUP_CONFIG_ENDIANNESS endef endif +# As the kernel gets compiled before root filesystems are +# built, we create a fake cpio file. It'll be +# replaced later by the real cpio archive, and the kernel will be +# rebuilt using the linux-rebuild-with-initramfs target. +ifeq ($(BR2_TARGET_ROOTFS_INITRAMFS),y) +define LINUX_KCONFIG_FIXUP_CMDS_ROOTFS_CPIO + @mkdir -p $(BINARIES_DIR) + $(Q)touch $(BINARIES_DIR)/rootfs.cpio + $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_SOURCE,"$${BR_BINARIES_DIR}/rootfs.cpio") + $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_ROOT_UID,0) + $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_ROOT_GID,0) +endef +endif + define LINUX_KCONFIG_FIXUP_CMDS + @$(call MESSAGE,"Updating kernel config with fixups") $(if $(LINUX_NEEDS_MODULES), $(call KCONFIG_ENABLE_OPT,CONFIG_MODULES)) $(call KCONFIG_ENABLE_OPT,$(strip $(LINUX_COMPRESSION_OPT_y))) @@ -398,16 +417,7 @@ define LINUX_KCONFIG_FIXUP_CMDS $(call KCONFIG_ENABLE_OPT,CONFIG_ARM64_64K_PAGES)) $(if $(BR2_TARGET_ROOTFS_CPIO), $(call KCONFIG_ENABLE_OPT,CONFIG_BLK_DEV_INITRD)) - # As the kernel gets compiled before root filesystems are - # built, we create a fake cpio file. It'll be - # replaced later by the real cpio archive, and the kernel will be - # rebuilt using the linux-rebuild-with-initramfs target. - $(if $(BR2_TARGET_ROOTFS_INITRAMFS), - mkdir -p $(BINARIES_DIR) - touch $(BINARIES_DIR)/rootfs.cpio - $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_SOURCE,"$${BR_BINARIES_DIR}/rootfs.cpio") - $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_ROOT_UID,0) - $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_ROOT_GID,0)) + $(LINUX_KCONFIG_FIXUP_CMDS_ROOTFS_CPIO) $(if $(BR2_ROOTFS_DEVICE_CREATION_STATIC),, $(call KCONFIG_ENABLE_OPT,CONFIG_DEVTMPFS) $(call KCONFIG_ENABLE_OPT,CONFIG_DEVTMPFS_MOUNT)) @@ -436,7 +446,7 @@ LINUX_DEPENDENCIES += host-libyaml ifeq ($(BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT),) define LINUX_BUILD_DTB - $(LINUX_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(LINUX_DTBS) + $(LINUX_MAKE_ENV) $(BR2_MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(LINUX_DTBS) endef ifeq ($(BR2_LINUX_KERNEL_APPENDED_DTB),) define LINUX_INSTALL_DTB @@ -461,7 +471,7 @@ define LINUX_APPEND_DTB else \ dtbpath=dts/$${dtb}.dtb ; \ fi ; \ - cat zImage $${dtbpath} > zImage.$${dtb} || exit 1; \ + cat zImage $${dtbpath} > zImage.$$(basename $${dtb}) || exit 1; \ done) endef ifeq ($(BR2_LINUX_KERNEL_APPENDED_UIMAGE),y) @@ -484,7 +494,7 @@ endif # Compilation. We make sure the kernel gets rebuilt when the # configuration has changed. We call the 'all' and # '$(LINUX_TARGET_NAME)' targets separately because calling them in -# the same $(MAKE) invocation has shown to cause parallel build +# the same $(BR2_MAKE) invocation has shown to cause parallel build # issues. # The call to disable gcc-plugins is a stop-gap measure: # http://lists.busybox.net/pipermail/buildroot/2020-May/282727.html @@ -493,8 +503,8 @@ define LINUX_BUILD_CMDS $(foreach dts,$(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_DTS_PATH)), \ cp -f $(dts) $(LINUX_ARCH_PATH)/boot/dts/ ) - $(LINUX_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) all - $(LINUX_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(LINUX_TARGET_NAME) + $(LINUX_MAKE_ENV) $(BR2_MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) all + $(LINUX_MAKE_ENV) $(BR2_MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(LINUX_TARGET_NAME) $(LINUX_BUILD_DTB) $(LINUX_APPEND_DTB) endef @@ -543,7 +553,7 @@ define LINUX_INSTALL_TARGET_CMDS # Install modules and remove symbolic links pointing to build # directories, not relevant on the target @if grep -q "CONFIG_MODULES=y" $(@D)/.config; then \ - $(LINUX_MAKE_ENV) $(MAKE1) $(LINUX_MAKE_FLAGS) -C $(@D) modules_install; \ + $(LINUX_MAKE_ENV) $(BR2_MAKE1) $(LINUX_MAKE_FLAGS) -C $(@D) modules_install; \ rm -f $(TARGET_DIR)/lib/modules/$(LINUX_VERSION_PROBED)/build ; \ rm -f $(TARGET_DIR)/lib/modules/$(LINUX_VERSION_PROBED)/source ; \ fi @@ -642,7 +652,7 @@ linux-rebuild-with-initramfs: rootfs-cpio linux-rebuild-with-initramfs: @$(call MESSAGE,"Rebuilding kernel with initramfs") # Build the kernel. - $(LINUX_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(LINUX_DIR) $(LINUX_TARGET_NAME) + $(LINUX_MAKE_ENV) $(BR2_MAKE) $(LINUX_MAKE_FLAGS) -C $(LINUX_DIR) $(LINUX_TARGET_NAME) $(LINUX_APPEND_DTB) # Copy the kernel image(s) to its(their) final destination $(call LINUX_INSTALL_IMAGE,$(BINARIES_DIR)) diff --git a/package/Config.in b/package/Config.in index c7bb52d2788c..5a3410d75883 100644 --- a/package/Config.in +++ b/package/Config.in @@ -54,7 +54,6 @@ menu "Audio and video applications" source "package/speechd/Config.in" source "package/squeezelite/Config.in" source "package/tinycompress/Config.in" - source "package/tovid/Config.in" source "package/tstools/Config.in" source "package/twolame/Config.in" source "package/udpxy/Config.in" @@ -125,6 +124,7 @@ menu "Debugging, profiling and benchmark" source "package/lttng-babeltrace/Config.in" source "package/lttng-modules/Config.in" source "package/lttng-tools/Config.in" + source "package/mbpoll/Config.in" source "package/mbw/Config.in" source "package/mcelog/Config.in" source "package/memstat/Config.in" @@ -201,6 +201,7 @@ menu "Development tools" source "package/sed/Config.in" source "package/subversion/Config.in" source "package/tree/Config.in" + source "package/unifdef/Config.in" source "package/yasm/Config.in" endmenu @@ -271,7 +272,6 @@ comment "Fonts" comment "Icons" source "package/adwaita-icon-theme/Config.in" - source "package/google-material-design-icons/Config.in" source "package/hicolor-icon-theme/Config.in" comment "Sounds" @@ -327,8 +327,10 @@ comment "Graphic applications" source "package/pngquant/Config.in" source "package/qt5cinex/Config.in" source "package/rrdtool/Config.in" + source "package/spirv-tools/Config.in" source "package/stellarium/Config.in" source "package/sway/Config.in" + source "package/swaybg/Config.in" source "package/tesseract-ocr/Config.in" source "package/tinifier/Config.in" @@ -343,6 +345,8 @@ comment "Graphic libraries" source "package/fbset/Config.in" source "package/fbterm/Config.in" source "package/fbv/Config.in" + source "package/flutter-gallery/Config.in" + source "package/flutter-pi/Config.in" source "package/freerdp/Config.in" source "package/graphicsmagick/Config.in" source "package/imagemagick/Config.in" @@ -367,12 +371,16 @@ comment "Graphic libraries" source "package/sdl2_mixer/Config.in" source "package/sdl2_net/Config.in" source "package/sdl2_ttf/Config.in" + source "package/spirv-headers/Config.in" source "package/tk/Config.in" source "package/vulkan-headers/Config.in" + source "package/vulkan-loader/Config.in" + source "package/vulkan-tools/Config.in" comment "Other GUIs" source "package/qt5/Config.in" -if BR2_PACKAGE_QT5 + source "package/qt6/Config.in" +if BR2_PACKAGE_QT5 || BR2_PACKAGE_QT6 comment "QT libraries and helper libraries" source "package/cutelyst/Config.in" source "package/grantlee/Config.in" @@ -383,7 +391,6 @@ comment "QT libraries and helper libraries" source "package/qwt/Config.in" source "package/simple-mail/Config.in" endif - source "package/qt6/Config.in" source "package/tekui/Config.in" source "package/weston/Config.in" source "package/x11r7/Config.in" @@ -441,6 +448,7 @@ menu "Firmware" source "package/murata-cyw-fw/Config.in" source "package/odroidc2-firmware/Config.in" source "package/qcom-db410c-firmware/Config.in" + source "package/qoriq-fm-ucode/Config.in" source "package/rcw-smarc-sal28/Config.in" source "package/rpi-firmware/Config.in" source "package/sunxi-boards/Config.in" @@ -482,6 +490,7 @@ endmenu source "package/dbus-glib/Config.in" source "package/dbus-python/Config.in" source "package/dbus-triggerd/Config.in" + source "package/dfu-programmer/Config.in" source "package/dfu-util/Config.in" source "package/dmidecode/Config.in" source "package/dmraid/Config.in" @@ -494,6 +503,7 @@ endmenu source "package/edid-decode/Config.in" source "package/edk2-non-osi/Config.in" source "package/edk2-platforms/Config.in" + source "package/esp-hosted/Config.in" source "package/eudev/Config.in" source "package/ev3dev-linux-drivers/Config.in" source "package/evemu/Config.in" @@ -525,6 +535,7 @@ endmenu source "package/iucode-tool/Config.in" source "package/kbd/Config.in" source "package/lcdproc/Config.in" + source "package/ledmon/Config.in" source "package/libiec61850/Config.in" source "package/libmanette/Config.in" source "package/libubootenv/Config.in" @@ -548,12 +559,14 @@ endmenu source "package/memtest86/Config.in" source "package/memtester/Config.in" source "package/memtool/Config.in" + source "package/mhz/Config.in" source "package/minicom/Config.in" source "package/msr-tools/Config.in" source "package/nanocom/Config.in" source "package/neard/Config.in" source "package/nvidia-driver/Config.in" source "package/nvidia-modprobe/Config.in" + source "package/nvidia-persistenced/Config.in" source "package/nvme/Config.in" source "package/ofono/Config.in" source "package/ola/Config.in" @@ -580,6 +593,7 @@ endmenu source "package/read-edid/Config.in" source "package/rng-tools/Config.in" source "package/rockchip-mali/Config.in" + source "package/rockchip-rkbin/Config.in" source "package/rpi-userland/Config.in" source "package/rs485conf/Config.in" source "package/rtc-tools/Config.in" @@ -593,6 +607,7 @@ endmenu source "package/rtl8812au-aircrack-ng/Config.in" source "package/rtl8821au/Config.in" source "package/rtl8821cu/Config.in" + source "package/rtl8822cs/Config.in" source "package/sane-backends/Config.in" source "package/sdparm/Config.in" source "package/sedutil/Config.in" @@ -715,6 +730,7 @@ menu "Lua libraries/modules" source "package/lua-csnappy/Config.in" source "package/lua-curl/Config.in" source "package/lua-datafile/Config.in" + source "package/lua-dkjson/Config.in" source "package/lua-ev/Config.in" source "package/lua-fifo/Config.in" source "package/lua-flu/Config.in" @@ -796,6 +812,7 @@ menu "Perl libraries/modules" source "package/perl-class-method-modifiers/Config.in" source "package/perl-class-std/Config.in" source "package/perl-class-std-fast/Config.in" + source "package/perl-clone/Config.in" source "package/perl-convert-asn1/Config.in" source "package/perl-cookie-baker/Config.in" source "package/perl-crypt-blowfish/Config.in" @@ -966,6 +983,7 @@ menu "External python modules" source "package/python-arrow/Config.in" source "package/python-asgiref/Config.in" source "package/python-asn1crypto/Config.in" + source "package/python-asttokens/Config.in" source "package/python-async-generator/Config.in" source "package/python-async-lru/Config.in" source "package/python-async-timeout/Config.in" @@ -981,6 +999,7 @@ menu "External python modules" source "package/python-bidict/Config.in" source "package/python-bitstring/Config.in" source "package/python-bleak/Config.in" + source "package/python-blinker/Config.in" source "package/python-bluezero/Config.in" source "package/python-boto3/Config.in" source "package/python-botocore/Config.in" @@ -1049,6 +1068,8 @@ menu "External python modules" source "package/python-engineio/Config.in" source "package/python-entrypoints/Config.in" source "package/python-esptool/Config.in" + source "package/python-evdev/Config.in" + source "package/python-executing/Config.in" source "package/python-falcon/Config.in" source "package/python-filelock/Config.in" source "package/python-fire/Config.in" @@ -1082,6 +1103,7 @@ menu "External python modules" source "package/python-httplib2/Config.in" source "package/python-huepy/Config.in" source "package/python-humanize/Config.in" + source "package/python-hwdata/Config.in" source "package/python-hyperframe/Config.in" source "package/python-hyperlink/Config.in" source "package/python-ibmiotf/Config.in" @@ -1106,13 +1128,16 @@ menu "External python modules" source "package/python-jaraco-classes/Config.in" source "package/python-jaraco-functools/Config.in" source "package/python-jedi/Config.in" + source "package/python-jeepney/Config.in" source "package/python-jinja2/Config.in" source "package/python-jmespath/Config.in" source "package/python-json-schema-validator/Config.in" source "package/python-jsonmodels/Config.in" source "package/python-jsonschema/Config.in" + source "package/python-jsonschema-specifications/Config.in" source "package/python-keyring/Config.in" source "package/python-kiwisolver/Config.in" + source "package/python-kmod/Config.in" source "package/python-lark/Config.in" source "package/python-libconfig/Config.in" source "package/python-libevdev/Config.in" @@ -1135,6 +1160,7 @@ menu "External python modules" source "package/python-matplotlib/Config.in" source "package/python-mbstrdecoder/Config.in" source "package/python-memory-profiler/Config.in" + source "package/python-midiutil/Config.in" source "package/python-mimeparse/Config.in" source "package/python-minimalmodbus/Config.in" source "package/python-mistune/Config.in" @@ -1186,6 +1212,7 @@ menu "External python modules" source "package/python-psycopg2/Config.in" source "package/python-ptyprocess/Config.in" source "package/python-pudb/Config.in" + source "package/python-pure-eval/Config.in" source "package/python-py/Config.in" source "package/python-pyaes/Config.in" source "package/python-pyalsa/Config.in" @@ -1228,6 +1255,7 @@ menu "External python modules" source "package/python-pyroute2/Config.in" source "package/python-pyrsistent/Config.in" source "package/python-pysendfile/Config.in" + source "package/python-pysensors/Config.in" source "package/python-pysftp/Config.in" source "package/python-pysmb/Config.in" source "package/python-pysmi/Config.in" @@ -1243,7 +1271,6 @@ menu "External python modules" source "package/python-pytz/Config.in" source "package/python-pyudev/Config.in" source "package/python-pyusb/Config.in" - source "package/python-pyxb/Config.in" source "package/python-pyyaml/Config.in" source "package/python-pyzmq/Config.in" source "package/python-qrcode/Config.in" @@ -1251,6 +1278,7 @@ menu "External python modules" source "package/python-redis/Config.in" source "package/python-reedsolo/Config.in" source "package/python-reentry/Config.in" + source "package/python-referencing/Config.in" source "package/python-regex/Config.in" source "package/python-remi/Config.in" source "package/python-request-id/Config.in" @@ -1258,6 +1286,7 @@ menu "External python modules" source "package/python-requests-oauthlib/Config.in" source "package/python-requests-toolbelt/Config.in" source "package/python-rfc3987/Config.in" + source "package/python-rpds-py/Config.in" source "package/python-rpi-gpio/Config.in" source "package/python-rpi-ws281x/Config.in" source "package/python-rsa/Config.in" @@ -1272,6 +1301,7 @@ menu "External python modules" source "package/python-sdnotify/Config.in" source "package/python-secretstorage/Config.in" source "package/python-see/Config.in" + source "package/python-segno/Config.in" source "package/python-selenium/Config.in" source "package/python-semver/Config.in" source "package/python-sentry-sdk/Config.in" @@ -1304,12 +1334,14 @@ menu "External python modules" source "package/python-sqlalchemy/Config.in" source "package/python-sqliteschema/Config.in" source "package/python-sqlparse/Config.in" + source "package/python-stack-data/Config.in" source "package/python-systemd/Config.in" source "package/python-tabledata/Config.in" source "package/python-tempora/Config.in" source "package/python-termcolor/Config.in" source "package/python-terminaltables/Config.in" source "package/python-texttable/Config.in" + source "package/python-tftpy/Config.in" source "package/python-thrift/Config.in" source "package/python-tinycss2/Config.in" source "package/python-tinyrpc/Config.in" @@ -1328,6 +1360,7 @@ menu "External python modules" source "package/python-txtorcon/Config.in" source "package/python-typeguard/Config.in" source "package/python-typepy/Config.in" + source "package/python-types-python-dateutil/Config.in" source "package/python-typing-extensions/Config.in" source "package/python-typing-inspect/Config.in" source "package/python-u-msgpack/Config.in" @@ -1397,8 +1430,8 @@ menu "Audio/Sound" source "package/caps/Config.in" source "package/fdk-aac/Config.in" source "package/libao/Config.in" - source "package/libasplib/Config.in" source "package/libbroadvoice/Config.in" + source "package/libcanberra/Config.in" source "package/libcdaudio/Config.in" source "package/libcddb/Config.in" source "package/libcdio/Config.in" @@ -1466,7 +1499,7 @@ menu "Crypto" source "package/beecrypt/Config.in" source "package/botan/Config.in" source "package/ca-certificates/Config.in" - source "package/cryptodev/Config.in" + source "package/cryptodev-linux/Config.in" source "package/cryptopp/Config.in" source "package/gcr/Config.in" source "package/gnutls/Config.in" @@ -1487,6 +1520,7 @@ menu "Crypto" source "package/libsecret/Config.in" source "package/libsha1/Config.in" source "package/libsodium/Config.in" + source "package/libspdm/Config.in" source "package/libssh/Config.in" source "package/libssh2/Config.in" source "package/libtomcrypt/Config.in" @@ -1530,6 +1564,7 @@ if BR2_PACKAGE_POSTGRESQL source "package/postgis/Config.in" endif source "package/redis/Config.in" + source "package/redis-plus-plus/Config.in" source "package/rocksdb/Config.in" source "package/sqlcipher/Config.in" source "package/sqlite/Config.in" @@ -1552,9 +1587,7 @@ endmenu menu "Graphics" source "package/assimp/Config.in" - source "package/at-spi2-atk/Config.in" source "package/at-spi2-core/Config.in" - source "package/atk/Config.in" source "package/atkmm/Config.in" source "package/atkmm2_28/Config.in" source "package/bayer2rgb-neon/Config.in" @@ -1563,9 +1596,11 @@ menu "Graphics" source "package/cairomm/Config.in" source "package/cairomm1_14/Config.in" source "package/chipmunk/Config.in" + source "package/cutekeyboard/Config.in" source "package/exempi/Config.in" source "package/exiv2/Config.in" source "package/fltk/Config.in" + source "package/flutter-engine/Config.in" source "package/fontconfig/Config.in" source "package/freetype/Config.in" source "package/gd/Config.in" @@ -1593,6 +1628,7 @@ menu "Graphics" source "package/leptonica/Config.in" source "package/lesstif/Config.in" source "package/libart/Config.in" + source "package/libdecor/Config.in" source "package/libdmtx/Config.in" source "package/libdri2/Config.in" source "package/libdrm/Config.in" @@ -1627,6 +1663,8 @@ menu "Graphics" source "package/libvips/Config.in" source "package/libwpe/Config.in" source "package/menu-cache/Config.in" + source "package/onevpl/Config.in" + source "package/onevpl-intel-gpu/Config.in" source "package/opencl-clhpp/Config.in" source "package/opencv3/Config.in" source "package/opencv4/Config.in" @@ -1674,6 +1712,7 @@ menu "Hardware handling" source "package/libatasmart/Config.in" source "package/libblockdev/Config.in" source "package/libcec/Config.in" + source "package/libdisplay-info/Config.in" source "package/libfreefare/Config.in" source "package/libftdi/Config.in" source "package/libftdi1/Config.in" @@ -1687,6 +1726,7 @@ menu "Hardware handling" source "package/libllcp/Config.in" source "package/libmbim/Config.in" source "package/libnfc/Config.in" + source "package/libnvme/Config.in" source "package/libpciaccess/Config.in" source "package/libphidget/Config.in" source "package/libpri/Config.in" @@ -1710,6 +1750,7 @@ menu "Hardware handling" source "package/mtdev/Config.in" source "package/ne10/Config.in" source "package/neardal/Config.in" + source "package/opencsd/Config.in" source "package/opensc/Config.in" source "package/owfs/Config.in" source "package/pcsc-lite/Config.in" @@ -1825,6 +1866,7 @@ menu "Multimedia" source "package/libbluray/Config.in" source "package/libcamera/Config.in" source "package/libcamera-apps/Config.in" + source "package/libde265/Config.in" source "package/libdvbcsa/Config.in" source "package/libdvbpsi/Config.in" source "package/libdvbsi/Config.in" @@ -1833,6 +1875,7 @@ menu "Multimedia" source "package/libdvdread/Config.in" source "package/libebml/Config.in" source "package/libhdhomerun/Config.in" + source "package/libheif/Config.in" source "package/libimxvpuapi/Config.in" source "package/libmatroska/Config.in" source "package/libmms/Config.in" @@ -1938,6 +1981,7 @@ menu "Networking" source "package/libshout/Config.in" source "package/libsocketcan/Config.in" source "package/libsoup/Config.in" + source "package/libsoup3/Config.in" source "package/libsrtp/Config.in" source "package/libstrophe/Config.in" source "package/libteam/Config.in" @@ -1956,8 +2000,10 @@ menu "Networking" source "package/libwebsock/Config.in" source "package/libwebsockets/Config.in" source "package/libyang/Config.in" + source "package/libzenoh-pico/Config.in" source "package/lksctp-tools/Config.in" source "package/mbuffer/Config.in" + source "package/mdnsd/Config.in" source "package/mongoose/Config.in" source "package/nanomsg/Config.in" source "package/neon/Config.in" @@ -1967,6 +2013,7 @@ menu "Networking" source "package/nss-mdns/Config.in" source "package/nss-myhostname/Config.in" source "package/nss-pam-ldapd/Config.in" + source "package/oatpp/Config.in" source "package/omniorb/Config.in" source "package/open-isns/Config.in" source "package/open62541/Config.in" @@ -2017,9 +2064,9 @@ menu "Other" source "package/catch2/Config.in" source "package/cctz/Config.in" source "package/cereal/Config.in" - source "package/clang/Config.in" + source "package/llvm-project/clang/Config.in" source "package/cmocka/Config.in" - source "package/compiler-rt/Config.in" + source "package/llvm-project/compiler-rt/Config.in" source "package/cppcms/Config.in" source "package/cracklib/Config.in" source "package/dawgdic/Config.in" @@ -2061,7 +2108,7 @@ menu "Other" source "package/libcap/Config.in" source "package/libcap-ng/Config.in" source "package/libcgroup/Config.in" - source "package/libclc/Config.in" + source "package/llvm-project/libclc/Config.in" source "package/libcofi/Config.in" source "package/libcorrect/Config.in" source "package/libcrossguid/Config.in" @@ -2109,6 +2156,7 @@ menu "Other" source "package/libtpl/Config.in" source "package/libubox/Config.in" source "package/libuci/Config.in" + source "package/libucontext/Config.in" source "package/libunwind/Config.in" source "package/liburcu/Config.in" source "package/liburing/Config.in" @@ -2122,7 +2170,7 @@ comment "linux-pam plugins" source "package/libpam-tacplus/Config.in" endif source "package/liquid-dsp/Config.in" - source "package/llvm/Config.in" + source "package/llvm-project/llvm/Config.in" source "package/lttng-libust/Config.in" source "package/matio/Config.in" source "package/mpc/Config.in" @@ -2221,6 +2269,7 @@ menu "Miscellaneous" source "package/collectl/Config.in" source "package/domoticz/Config.in" source "package/empty/Config.in" + source "package/fft-eval/Config.in" source "package/gitlab-runner/Config.in" source "package/gnuradio/Config.in" source "package/googlefontdirectory/Config.in" @@ -2310,6 +2359,7 @@ endif source "package/fail2ban/Config.in" source "package/fastd/Config.in" source "package/fcgiwrap/Config.in" + source "package/firewalld/Config.in" source "package/flannel/Config.in" source "package/fmc/Config.in" source "package/fping/Config.in" @@ -2563,7 +2613,6 @@ menu "Security" source "package/apparmor/Config.in" source "package/checkpolicy/Config.in" source "package/ima-evm-utils/Config.in" - source "package/optee-benchmark/Config.in" source "package/optee-client/Config.in" source "package/optee-examples/Config.in" source "package/optee-test/Config.in" @@ -2582,6 +2631,7 @@ comment "Shells" source "package/bash/Config.in" source "package/dash/Config.in" source "package/mksh/Config.in" + source "package/nushell/Config.in" source "package/zsh/Config.in" comment "Utilities" source "package/apg/Config.in" @@ -2593,6 +2643,7 @@ comment "Utilities" source "package/dialog/Config.in" source "package/dtach/Config.in" source "package/easy-rsa/Config.in" + source "package/eza/Config.in" source "package/file/Config.in" source "package/gnupg/Config.in" source "package/gnupg2/Config.in" @@ -2632,10 +2683,12 @@ menu "System tools" source "package/bubblewrap/Config.in" source "package/cgroupfs-mount/Config.in" source "package/circus/Config.in" + source "package/conmon/Config.in" source "package/containerd/Config.in" source "package/coreutils/Config.in" source "package/cpulimit/Config.in" source "package/cpuload/Config.in" + source "package/criu/Config.in" source "package/crun/Config.in" source "package/daemon/Config.in" source "package/dc3dd/Config.in" @@ -2683,15 +2736,18 @@ menu "System tools" source "package/openrc/Config.in" source "package/openvmtools/Config.in" source "package/pamtester/Config.in" + source "package/petitboot/Config.in" source "package/polkit/Config.in" source "package/powerpc-utils/Config.in" source "package/procps-ng/Config.in" source "package/procrank_linux/Config.in" + source "package/procs/Config.in" source "package/psmisc/Config.in" source "package/pwgen/Config.in" source "package/quota/Config.in" source "package/quotatool/Config.in" source "package/rauc/Config.in" + source "package/rauc-hawkbit-updater/Config.in" source "package/rsyslog/Config.in" source "package/runc/Config.in" source "package/s390-tools/Config.in" @@ -2705,6 +2761,7 @@ menu "System tools" source "package/sdbus-cpp/Config.in" source "package/sdbusplus/Config.in" source "package/seatd/Config.in" + source "package/shadow/Config.in" source "package/smack/Config.in" source "package/start-stop-daemon/Config.in" source "package/supervisor/Config.in" diff --git a/package/Config.in.host b/package/Config.in.host index dcadbfdfc1b0..c80842c33a2f 100644 --- a/package/Config.in.host +++ b/package/Config.in.host @@ -3,6 +3,7 @@ menu "Host utilities" source "package/abootimg/Config.in.host" source "package/aespipe/Config.in.host" source "package/agent-proxy/Config.in.host" + source "package/amlogic-boot-fip/Config.in.host" source "package/android-tools/Config.in.host" source "package/asn1c/Config.in.host" source "package/babeltrace2/Config.in.host" @@ -13,11 +14,13 @@ menu "Host utilities" source "package/checkpolicy/Config.in.host" source "package/checksec/Config.in.host" source "package/cmake/Config.in.host" + source "package/composer/Config.in.host" source "package/cramfs/Config.in.host" source "package/crudini/Config.in.host" source "package/cryptsetup/Config.in.host" source "package/dbus-python/Config.in.host" source "package/delve/Config.in.host" + source "package/depot-tools/Config.in.host" source "package/dfu-util/Config.in.host" source "package/dos2unix/Config.in.host" source "package/dosfstools/Config.in.host" @@ -34,13 +37,15 @@ menu "Host utilities" source "package/faketime/Config.in.host" source "package/fatcat/Config.in.host" source "package/firmware-utils/Config.in.host" + source "package/flutter-sdk-bin/Config.in.host" source "package/fwup/Config.in.host" source "package/genext2fs/Config.in.host" source "package/genimage/Config.in.host" source "package/genpart/Config.in.host" source "package/gnupg/Config.in.host" source "package/go/Config.in.host" - source "package/go-bootstrap/Config.in.host" + source "package/go-bootstrap-stage1/Config.in.host" + source "package/go-bootstrap-stage2/Config.in.host" source "package/google-breakpad/Config.in.host" source "package/gptfdisk/Config.in.host" source "package/imagemagick/Config.in.host" @@ -51,13 +56,14 @@ menu "Host utilities" source "package/jsmin/Config.in.host" source "package/kmod/Config.in.host" source "package/libp11/Config.in.host" - source "package/lld/Config.in.host" + source "package/llvm-project/lld/Config.in.host" source "package/lpc3250loader/Config.in.host" source "package/lttng-babeltrace/Config.in.host" source "package/lzma-alone/Config.in.host" source "package/mender-artifact/Config.in.host" source "package/meson-tools/Config.in.host" source "package/mfgtools/Config.in.host" + source "package/microchip-hss-payload-generator/Config.in.host" source "package/mkpasswd/Config.in.host" source "package/moby-buildkit/Config.in.host" source "package/mosquitto/Config.in.host" @@ -94,12 +100,14 @@ menu "Host utilities" source "package/rustc/Config.in.host" source "package/s6-rc/Config.in.host" source "package/sam-ba/Config.in.host" + source "package/sdbus-cpp/Config.in.host" source "package/sdbusplus/Config.in.host" source "package/sentry-cli/Config.in.host" source "package/sloci-image/Config.in.host" source "package/squashfs/Config.in.host" source "package/sunxi-tools/Config.in.host" source "package/swig/Config.in.host" + source "package/swugenerator/Config.in.host" source "package/systemd/Config.in.host" source "package/tegrarcm/Config.in.host" source "package/ti-cgt-pru/Config.in.host" diff --git a/package/Makefile.in b/package/Makefile.in index d70aded82ba5..9fbe9607598d 100644 --- a/package/Makefile.in +++ b/package/Makefile.in @@ -17,7 +17,9 @@ else PARALLEL_JOBS := $(BR2_JLEVEL) endif -MAKE1 := $(HOSTMAKE) -j1 +# Only build one job at a time, *and* to not randomise goals and +# prerequisites ordering in make 4.4+ +MAKE1 := $(HOSTMAKE) -j1 $(if $(findstring --shuffle,$(MAKEFLAGS)),--shuffle=none) override MAKE = $(HOSTMAKE) \ $(if $(findstring j,$(filter-out --%,$(MAKEFLAGS))),,-j$(PARALLEL_JOBS)) @@ -76,7 +78,7 @@ endif endif # For FSL PowerPC there's SPE -ifeq ($(BR2_powerpc_SPE),y) +ifeq ($(BR2_POWERPC_CPU_HAS_SPE),y) ABI = spe # MPC8540s are e500v1 with single precision FP ifeq ($(BR2_powerpc_8540),y) @@ -165,6 +167,9 @@ TARGET_HARDENED += -D_FORTIFY_SOURCE=3 endif TARGET_CPPFLAGS += -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 +ifeq ($(BR2_TIME_BITS_64),y) +TARGET_CPPFLAGS += -D_TIME_BITS=64 +endif TARGET_CFLAGS = $(TARGET_CPPFLAGS) $(TARGET_ABI) $(TARGET_OPTIMIZATION) $(TARGET_DEBUGGING) $(TARGET_HARDENED) TARGET_CXXFLAGS = $(TARGET_CFLAGS) TARGET_FCFLAGS = $(TARGET_ABI) $(TARGET_OPTIMIZATION) $(TARGET_DEBUGGING) diff --git a/package/ace/0001-ACE-ace-SSL-SSL_Asynch_BIO.cpp-fix-build-with-libres.patch b/package/ace/0001-ACE-ace-SSL-SSL_Asynch_BIO.cpp-fix-build-with-libres.patch deleted file mode 100644 index ad82c1017235..000000000000 --- a/package/ace/0001-ACE-ace-SSL-SSL_Asynch_BIO.cpp-fix-build-with-libres.patch +++ /dev/null @@ -1,52 +0,0 @@ -From e06cadc3b95a577e6a8bbc94f93dd063710c73a1 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Sun, 3 Apr 2022 15:25:49 +0200 -Subject: [PATCH] ACE/ace/SSL/SSL_Asynch_BIO.cpp: fix build with libressl - -Fix the following build failure with libressl: - -/home/autobuild/autobuild/instance-10/output-1/build/ace-7.0.6/ace/SSL/SSL_Asynch_BIO.cpp:174:7: error: 'BIO_get_init' was not declared in this scope; did you mean 'BIO_set_init'? - 174 | if (BIO_get_init(pBIO) == 0 || p_stream == 0 || buf == 0 || len <= 0) - | ^~~~~~~~~~~~ - | BIO_set_init - -Fixes: - - http://autobuild.buildroot.org/results/386afa88ac9e5e3bb65dddeabf610bb1e9bc4285 - -Signed-off-by: Fabrice Fontaine -[Retrieved from: -https://github.com/DOCGroup/ACE_TAO/commit/e06cadc3b95a577e6a8bbc94f93dd063710c73a1] ---- - ACE/ace/SSL/SSL_Asynch_BIO.cpp | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/ace/SSL/SSL_Asynch_BIO.cpp b/ace/SSL/SSL_Asynch_BIO.cpp -index a657d8a14e6f7..64aa14c6ab9a7 100644 ---- a/ace/SSL/SSL_Asynch_BIO.cpp -+++ b/ace/SSL/SSL_Asynch_BIO.cpp -@@ -41,7 +41,7 @@ extern "C" - - #define BIO_TYPE_ACE ( 21 | BIO_TYPE_SOURCE_SINK ) - --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - static BIO_METHOD methods_ACE = - { - BIO_TYPE_ACE, // BIO_TYPE_PROXY_SERVER, -@@ -68,14 +68,14 @@ static BIO_METHOD methods_ACE = - #else - static BIO_METHOD* methods_ACE; - # define BIO_set_num(b, val) --#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */ -+#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) */ - - ACE_BEGIN_VERSIONED_NAMESPACE_DECL - - BIO * - ACE_SSL_make_BIO (void * ssl_asynch_stream) - { --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - BIO * const pBIO = BIO_new (&methods_ACE); - #else - if (!methods_ACE) diff --git a/package/ace/0002-ACE-ace-SSL-SSL_Asynch_BIO.cpp-fix-build-with-libres.patch b/package/ace/0002-ACE-ace-SSL-SSL_Asynch_BIO.cpp-fix-build-with-libres.patch deleted file mode 100644 index 4f9fde557903..000000000000 --- a/package/ace/0002-ACE-ace-SSL-SSL_Asynch_BIO.cpp-fix-build-with-libres.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 82b139f921ddb549c1bd236030bbc86e314852b3 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Tue, 21 Feb 2023 14:20:11 +0100 -Subject: [PATCH] ACE/ace/SSL/SSL_Asynch_BIO.cpp: fix build with libressl >= - 3.5.0 - -Fix the following build failure with libressl >= 3.5.0: - -/tmp/instance-17/output-1/build/ace-7.0.6/ace/SSL/SSL_Asynch_BIO.cpp:45:19: error: variable 'BIO_METHOD methods_ACE' has initializer but incomplete type - 45 | static BIO_METHOD methods_ACE = - | ^~~~~~~~~~~ - -Fixes: - - http://autobuild.buildroot.org/results/7f40d6dde03134238151c248fbbd66e4713546cb - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/DOCGroup/ACE_TAO/pull/2053] ---- - ACE/ace/SSL/SSL_Asynch_BIO.cpp | 8 +++++--- - 1 file changed, 5 insertions(+), 3 deletions(-) - -diff --git a/ace/SSL/SSL_Asynch_BIO.cpp b/ace/SSL/SSL_Asynch_BIO.cpp -index 0faa775fc0..5543598873 100644 ---- a/ace/SSL/SSL_Asynch_BIO.cpp -+++ b/ace/SSL/SSL_Asynch_BIO.cpp -@@ -41,7 +41,8 @@ extern "C" - - #define BIO_TYPE_ACE ( 21 | BIO_TYPE_SOURCE_SINK ) - --#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || \ -+ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x30500000L) - static BIO_METHOD methods_ACE = - { - BIO_TYPE_ACE, // BIO_TYPE_PROXY_SERVER, -@@ -68,14 +69,15 @@ static BIO_METHOD methods_ACE = - #else - static BIO_METHOD* methods_ACE; - # define BIO_set_num(b, val) --#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) */ -+#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L || (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x30500000L) */ - - ACE_BEGIN_VERSIONED_NAMESPACE_DECL - - BIO * - ACE_SSL_make_BIO (void * ssl_asynch_stream) - { --#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || \ -+ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x30500000L) - BIO * const pBIO = BIO_new (&methods_ACE); - #else - if (!methods_ACE) --- -2.39.0 - diff --git a/package/ace/Config.in b/package/ace/Config.in index 5000f2352f7c..cf3819284bcc 100644 --- a/package/ace/Config.in +++ b/package/ace/Config.in @@ -3,14 +3,14 @@ config BR2_PACKAGE_ACE depends on BR2_TOOLCHAIN_USES_GLIBC depends on !BR2_STATIC_LIBS depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++14 help The ADAPTIVE Communication Environment (ACE(TM)) An OO Network Programming Toolkit in C++. http://www.dre.vanderbilt.edu/~schmidt/ACE.html -comment "ACE needs a glibc toolchain, dynamic library, C++, gcc >= 4.8" +comment "ACE needs a glibc toolchain, dynamic library, C++, gcc >= 4.9" depends on !BR2_TOOLCHAIN_USES_GLIBC || BR2_STATIC_LIBS || \ !BR2_INSTALL_LIBSTDCPP || \ - !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 diff --git a/package/ace/ace.hash b/package/ace/ace.hash index 23879278797b..0c5ed12c97ef 100644 --- a/package/ace/ace.hash +++ b/package/ace/ace.hash @@ -1,6 +1,6 @@ -# From https://download.dre.vanderbilt.edu/previous_versions/ACE-7.0.6.tar.bz2.md5: -md5 d1656851619aff15365270ccf2d56c6e ACE-7.0.6.tar.bz2 +# From https://download.dre.vanderbilt.edu/previous_versions/ACE-7.1.1.tar.bz2.md5: +md5 6c86ec6c7879703783b9749d5409a67f ACE-7.1.1.tar.bz2 # Locally Computed: -sha256 4a0cd7da4851f769fddfcf33f663eba4afad824efeff9f59f134c4640ee80216 ACE-7.0.6.tar.bz2 +sha256 fe5fdeab1dddf4fdd99f73c59420886cf61ca2ce92adf2cc6b612b752986df62 ACE-7.1.1.tar.bz2 sha256 687bf9d16119e0caf6fb5c18214928fd6ea0da10df91e906255b7613af8061d8 COPYING diff --git a/package/ace/ace.mk b/package/ace/ace.mk index 29555eea7439..1f795086292b 100644 --- a/package/ace/ace.mk +++ b/package/ace/ace.mk @@ -4,7 +4,7 @@ # ################################################################################ -ACE_VERSION = 7.0.6 +ACE_VERSION = 7.1.1 ACE_SOURCE = ACE-$(ACE_VERSION).tar.bz2 ACE_SITE = http://download.dre.vanderbilt.edu/previous_versions ACE_LICENSE = DOC @@ -17,7 +17,7 @@ ACE_CPE_ID_PRODUCT = adaptive_communication_environment # Only compiling ACE libraries (no TAO) ACE_LIBRARIES = ace ACEXML Kokyu netsvcs protocols/ace -ACE_CPPFLAGS = $(TARGET_CPPFLAGS) -std=c++11 +ACE_CPPFLAGS = $(TARGET_CPPFLAGS) -std=c++14 ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_101915),y) ACE_CPPFLAGS += -O0 diff --git a/package/acpica/0001-build-do-not-use-Werror.patch b/package/acpica/0001-build-do-not-use-Werror.patch deleted file mode 100644 index f905e552bd2a..000000000000 --- a/package/acpica/0001-build-do-not-use-Werror.patch +++ /dev/null @@ -1,82 +0,0 @@ -From 9382ae2431d2962c430e7149302c8690f5bc159c Mon Sep 17 00:00:00 2001 -From: "Yann E. MORIN" -Date: Sun, 10 Jul 2016 15:06:15 +0200 -Subject: [PATCH] build: do not use -Werror - -Warnings come and go with various compiler versions, so using -Werror is -prone to cause build failures with various compiler versions, especially -newer versions that introduce new warnings. - -Remove use of -Werror. - -[Vincent: tweak patch for 20170531 release] -[Bernd: tweak patch for 20191018 release] - -Signed-off-by: "Yann E. MORIN" -Signed-off-by: "Vicente Olivert Riera" -Signed-off-by: Bernd Kuhls ---- - generate/unix/Makefile.config | 1 - - generate/unix/iasl/Makefile | 16 ++++++++-------- - 2 files changed, 8 insertions(+), 9 deletions(-) - -diff --git a/generate/unix/Makefile.config b/generate/unix/Makefile.config -index c28e8a9b1..7064bed97 100644 ---- a/generate/unix/Makefile.config -+++ b/generate/unix/Makefile.config -@@ -204,7 +204,6 @@ CWARNINGFLAGS = \ - -Wall\ - -Wbad-function-cast\ - -Wdeclaration-after-statement\ -- -Werror\ - -Wformat=2\ - -Wmissing-declarations\ - -Wmissing-prototypes\ -diff --git a/generate/unix/iasl/Makefile b/generate/unix/iasl/Makefile -index 47ea73cab..2c756af79 100644 ---- a/generate/unix/iasl/Makefile -+++ b/generate/unix/iasl/Makefile -@@ -360,32 +360,32 @@ $(OBJDIR)/prparserparse.c $(OBJDIR)/prparser.y.h : $(ASL_COMPILER)/prparse - # - $(OBJDIR)/aslcompilerlex.o : $(OBJDIR)/aslcompilerlex.c - @echo "- " "Intermediate" $< -- @$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< -+ @$(CC) -c $(CFLAGS) -Wall -o$@ $< - - $(OBJDIR)/aslcompilerparse.o : $(OBJDIR)/aslcompilerparse.c - @echo "- " "Intermediate" $< -- @$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< -+ @$(CC) -c $(CFLAGS) -Wall -o$@ $< - - $(OBJDIR)/dtcompilerparserlex.o : $(OBJDIR)/dtcompilerparserlex.c - @echo "- " "Intermediate" $< -- @$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< -+ @$(CC) -c $(CFLAGS) -Wall -o$@ $< - - $(OBJDIR)/dtcompilerparserparse.o : $(OBJDIR)/dtcompilerparserparse.c - @echo "- " "Intermediate" $< -- @$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< -+ @$(CC) -c $(CFLAGS) -Wall -o$@ $< - - $(OBJDIR)/dtparserlex.o : $(OBJDIR)/dtparserlex.c - @echo "- " "Intermediate" $< -- @$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< -+ @$(CC) -c $(CFLAGS) -Wall -o$@ $< - - $(OBJDIR)/dtparserparse.o : $(OBJDIR)/dtparserparse.c - @echo "- " "Intermediate" $< -- @$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< -+ @$(CC) -c $(CFLAGS) -Wall -o$@ $< - - $(OBJDIR)/prparserlex.o : $(OBJDIR)/prparserlex.c - @echo "- " "Intermediate" $< -- @$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< -+ @$(CC) -c $(CFLAGS) -Wall -o$@ $< - - $(OBJDIR)/prparserparse.o : $(OBJDIR)/prparserparse.c - @echo "- " "Intermediate" $< -- @$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $< -+ @$(CC) -c $(CFLAGS) -Wall -o$@ $< --- -2.20.1 - diff --git a/package/acpica/Config.in b/package/acpica/Config.in index c5ffb005f55d..ec5865c35737 100644 --- a/package/acpica/Config.in +++ b/package/acpica/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_ACPICA bool "acpica" + depends on BR2_USE_WCHAR depends on BR2_TOOLCHAIN_HAS_THREADS help The ACPI Component Architecture (ACPICA) project provides an @@ -9,5 +10,5 @@ config BR2_PACKAGE_ACPICA https://www.acpica.org -comment "acpica needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS +comment "acpica needs a toolchain w/ threads, wchar" + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/acpica/acpica.hash b/package/acpica/acpica.hash index 564e393cb4b1..dd9f8a1d22b7 100644 --- a/package/acpica/acpica.hash +++ b/package/acpica/acpica.hash @@ -1,3 +1,5 @@ +# From: https://www.intel.com/content/www/us/en/download/776303/acpi-component-architecture-downloads-unix-format-source-code-and-build-environment-with-an-intel-license.html +sha1 3b893fb771cf3fbd3531de3036e1a5bfc624c9d2 acpica-unix-20230628.tar.gz # locally computed hash -sha256 1ccda5c6a08a90b145777df635eb09f995b3472b3128f375009c5a6b01a04c7a acpica-unix2-20220331.tar.gz -sha256 40d8e351f8dfdf5340ec76ac28f0c201b825077d7060bb3686ca1112cb26985d source/include/acpi.h +sha256 86876a745e3d224dcfd222ed3de465b47559e85811df2db9820ef09a9dff5cce acpica-unix-20230628.tar.gz +sha256 905d6f191f3c29aa673602d9c66eb8df00f7e1b35064a081e0de81284ff17ee6 source/include/acpi.h diff --git a/package/acpica/acpica.mk b/package/acpica/acpica.mk index 9901c1ed4894..bbabd9de69a5 100644 --- a/package/acpica/acpica.mk +++ b/package/acpica/acpica.mk @@ -4,9 +4,9 @@ # ################################################################################ -ACPICA_VERSION = 20220331 -ACPICA_SOURCE = acpica-unix2-$(ACPICA_VERSION).tar.gz -ACPICA_SITE = https://acpica.org/sites/acpica/files +ACPICA_VERSION = 20230628 +ACPICA_SOURCE = acpica-unix-$(ACPICA_VERSION).tar.gz +ACPICA_SITE = https://downloadmirror.intel.com/783534 ACPICA_LICENSE = BSD-3-Clause or GPL-2.0 ACPICA_LICENSE_FILES = source/include/acpi.h ACPICA_DEPENDENCIES = host-bison host-flex @@ -14,18 +14,20 @@ HOST_ACPICA_DEPENDENCIES = host-bison host-flex define ACPICA_BUILD_CMDS $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ - HARDWARE_NAME=$(BR2_ARCH) HOST=_LINUX CC="$(TARGET_CC)" \ + ACPI_HOST=_LINUX CC="$(TARGET_CC)" \ + NOWERROR=TRUE \ all endef define HOST_ACPICA_BUILD_CMDS $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + NOWERROR=TRUE \ all endef define ACPICA_INSTALL_TARGET_CMDS $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ - HARDWARE_NAME=$(BR2_ARCH) DESTDIR="$(TARGET_DIR)" \ + DESTDIR="$(TARGET_DIR)" \ INSTALLFLAGS=-m755 install endef diff --git a/package/acsccid/acsccid.hash b/package/acsccid/acsccid.hash index f43a7930a4a0..5310d78144a9 100644 --- a/package/acsccid/acsccid.hash +++ b/package/acsccid/acsccid.hash @@ -1,6 +1,6 @@ -# From https://sourceforge.net/projects/acsccid/files/acsccid/1.1.7/ -sha1 c0062401e5fedf3ec12c8c2d375d6e1561a8a8ed acsccid-1.1.8.tar.bz2 -md5 3eba7b2527aa0b14c73b1a620a1d72d2 acsccid-1.1.8.tar.bz2 +# From https://sourceforge.net/projects/acsccid/files/acsccid/1.1.10/ +sha1 6284a693b8edb511f2f80d9069af9b4a41fd55ae acsccid-1.1.10.tar.bz2 +md5 4d2b7f34414aed029084c96dd05a0e7d acsccid-1.1.10.tar.bz2 # Locally computed -sha256 f86fd846bc88594a569ea27040cb441d933b7eca8d51d2a90bacf161e7740051 acsccid-1.1.8.tar.bz2 +sha256 5ee112febdcac6656629025f3a85923f155f6ca150b2d24fd716f9043265528e acsccid-1.1.10.tar.bz2 sha256 a9bdde5616ecdd1e980b44f360600ee8783b1f99b8cc83a2beb163a0a390e861 COPYING diff --git a/package/acsccid/acsccid.mk b/package/acsccid/acsccid.mk index db74e9cb76d8..463f0f24d6c1 100644 --- a/package/acsccid/acsccid.mk +++ b/package/acsccid/acsccid.mk @@ -4,7 +4,7 @@ # ################################################################################ -ACSCCID_VERSION = 1.1.8 +ACSCCID_VERSION = 1.1.10 ACSCCID_SOURCE = acsccid-$(ACSCCID_VERSION).tar.bz2 ACSCCID_SITE = http://downloads.sourceforge.net/acsccid ACSCCID_LICENSE = LGPL-2.1+ diff --git a/package/aespipe/aespipe.hash b/package/aespipe/aespipe.hash index f7491278e0ee..4fe7d0753baf 100644 --- a/package/aespipe/aespipe.hash +++ b/package/aespipe/aespipe.hash @@ -1,5 +1,5 @@ -# From https://sourceforge.net/projects/loop-aes/files/aespipe/v2.4f/ -sha1 2c23e1a6be298cf4f173f06b1123e4ecd5e9a202 aespipe-v2.4f.tar.bz2 -md5 ed05c62c1954110f009bedda4bc1562f aespipe-v2.4f.tar.bz2 +# From https://sourceforge.net/projects/loop-aes/files/aespipe/v2.4g/ +sha1 fb6b0108176d653f0e5b3be2385b132be791d800 aespipe-v2.4g.tar.bz2 +md5 c216c6c9e939fac69f859af0ad2fd8ef aespipe-v2.4g.tar.bz2 # Locally computed: -sha256 b135e1659f58dc9be5e3c88923cd03d2a936096ab8cd7f2b3af4cb7a844cef96 aespipe-v2.4f.tar.bz2 +sha256 bfb97e7de161e8d7ce113b163bda1d1a8ec77d2c1afab56dcc8153d7a90187fc aespipe-v2.4g.tar.bz2 diff --git a/package/aespipe/aespipe.mk b/package/aespipe/aespipe.mk index fd4f776dda94..4769536d2f9e 100644 --- a/package/aespipe/aespipe.mk +++ b/package/aespipe/aespipe.mk @@ -4,7 +4,7 @@ # ################################################################################ -AESPIPE_VERSION = 2.4f +AESPIPE_VERSION = 2.4g AESPIPE_SOURCE = aespipe-v$(AESPIPE_VERSION).tar.bz2 AESPIPE_SITE = http://loop-aes.sourceforge.net/aespipe AESPIPE_LICENSE = GPL diff --git a/package/agentpp/0001-Snmpx-fix-const-nonconst-type-mismatch.patch b/package/agentpp/0001-Snmpx-fix-const-nonconst-type-mismatch.patch new file mode 100644 index 000000000000..07981eff3e84 --- /dev/null +++ b/package/agentpp/0001-Snmpx-fix-const-nonconst-type-mismatch.patch @@ -0,0 +1,51 @@ +From 7e541e6dba8d4976bbb490838a09b569f38b047d Mon Sep 17 00:00:00 2001 +From: Luca Ceresoli +Date: Mon, 26 Jun 2023 17:45:00 +0200 +Subject: [PATCH] Snmpx: fix const/nonconst type mismatch + +Fixes build failure: + + snmp_pp_ext.cpp:1176:28: error: binding reference of type 'Snmp_pp::Pdu&' to 'const Snmp_pp::Pdu' discards qualifiers + 1176 | status = snmpmsg.load( pdu, community, version); + | ^~~ + +Fixes: + http://autobuild.buildroot.net/results/e8abd6bdc62a028955915706b03d72239786c703/ + http://autobuild.buildroot.net/results/24441fb679fbf5f913c9b6431c98aec596ead587/ + +Signed-off-by: Luca Ceresoli +Upstream: sent to katz.agentpp.com@magenta.de and support@agentpp.com +--- + include/agent_pp/snmp_pp_ext.h | 2 +- + src/snmp_pp_ext.cpp | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/include/agent_pp/snmp_pp_ext.h b/include/agent_pp/snmp_pp_ext.h +index 7c5a6783ee70..d8a46060db98 100644 +--- a/include/agent_pp/snmp_pp_ext.h ++++ b/include/agent_pp/snmp_pp_ext.h +@@ -807,7 +807,7 @@ public: + * SNMP_CLASS_SUCCESS on success and SNMP_CLASS_ERROR, + * SNMP_CLASS_TL_FAILED on failure. + */ +- int send (Pdux const &, NS_SNMP UdpAddress const &, NS_SNMP snmp_version, NS_SNMP OctetStr const &); ++ int send (Pdux &, NS_SNMP UdpAddress const &, NS_SNMP snmp_version, NS_SNMP OctetStr const &); + #endif + + /** +diff --git a/src/snmp_pp_ext.cpp b/src/snmp_pp_ext.cpp +index 54a29ec8ea28..b61cbf056246 100644 +--- a/src/snmp_pp_ext.cpp ++++ b/src/snmp_pp_ext.cpp +@@ -1203,7 +1203,7 @@ int Snmpx::send (Pdux &pdu, SnmpTarget* target) + + #else // _SNMPv3 is not defined + +-int Snmpx::send (Pdux const &pdu, ++int Snmpx::send (Pdux &pdu, + UdpAddress const &udp_address, + snmp_version version, + OctetStr const &community) +-- +2.34.1 + diff --git a/package/agentpp/agentpp.hash b/package/agentpp/agentpp.hash index 99aae7026363..527414eed546 100644 --- a/package/agentpp/agentpp.hash +++ b/package/agentpp/agentpp.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 5f2cfe98fd1d50683e02c65fccd9423351254df427e5825e4f321c488a9234eb agent++-4.5.4.tar.gz +sha256 e09dc2d40277d468c18f1539ad18f43e0c3a95b10fad8a02184e9ace8bac0d67 agent++-4.6.0.tar.gz sha256 1eb85fc97224598dad1852b5d6483bbcf0aa8608790dcc657a5a2a761ae9c8c6 LICENSE-2_0.txt diff --git a/package/agentpp/agentpp.mk b/package/agentpp/agentpp.mk index d020228e44bf..7616d3eb0c45 100644 --- a/package/agentpp/agentpp.mk +++ b/package/agentpp/agentpp.mk @@ -4,13 +4,14 @@ # ################################################################################ -AGENTPP_VERSION = 4.5.4 +AGENTPP_VERSION = 4.6.0 AGENTPP_SOURCE = agent++-$(AGENTPP_VERSION).tar.gz AGENTPP_SITE = http://www.agentpp.com/download AGENTPP_LICENSE = Apache-2.0 AGENTPP_LICENSE_FILES = LICENSE-2_0.txt AGENTPP_INSTALL_STAGING = YES AGENTPP_DEPENDENCIES = host-pkgconf snmppp +AGENTPP_CONF_ENV = CXXFLAGS="$(TARGET_CXXFLAGS) -std=c++11" AGENTPP_CONF_OPTS += \ --disable-proxy \ --disable-forwarder \ diff --git a/package/alsa-lib/0002-global-h-move-__STRING-macro-outside-PIC-ifdef-block.patch b/package/alsa-lib/0002-global-h-move-__STRING-macro-outside-PIC-ifdef-block.patch new file mode 100644 index 000000000000..7bd67507fd6b --- /dev/null +++ b/package/alsa-lib/0002-global-h-move-__STRING-macro-outside-PIC-ifdef-block.patch @@ -0,0 +1,50 @@ +From 10bd599970acc71c92f85eb08943eb8d3d702a9c Mon Sep 17 00:00:00 2001 +From: Jaroslav Kysela +Date: Wed, 6 Sep 2023 15:16:44 +0200 +Subject: [PATCH] global.h: move __STRING() macro outside !PIC ifdef block + +It solves the musl libc compilation issue. + +control.c: In function 'snd_ctl_open_conf': +../../include/global.h:98:36: warning: implicit declaration of function '__STRING' [-Wimplicit-function-declaratio] + 98 | #define SND_DLSYM_VERSION(version) __STRING(version) + | ^~~~~~~~ + +Fixes: https://github.com/alsa-project/alsa-lib/issues/350 +Signed-off-by: Jaroslav Kysela + +Upstream: https://github.com/alsa-project/alsa-lib/commit/10bd599970acc71c92f85eb08943eb8d3d702a9c + +Signed-off-by: Bernd Kuhls +--- + include/global.h | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/include/global.h b/include/global.h +index dfe9bc2b..3ecaeee8 100644 +--- a/include/global.h ++++ b/include/global.h +@@ -51,6 +51,11 @@ const char *snd_asoundlib_version(void); + #define ATTRIBUTE_UNUSED __attribute__ ((__unused__)) + #endif + ++#ifndef __STRING ++/** \brief Return 'x' argument as string */ ++#define __STRING(x) #x ++#endif ++ + #ifdef PIC /* dynamic build */ + + /** \hideinitializer \brief Helper macro for #SND_DLSYM_BUILD_VERSION. */ +@@ -71,11 +76,6 @@ struct snd_dlsym_link { + + extern struct snd_dlsym_link *snd_dlsym_start; + +-#ifndef __STRING +-/** \brief Return 'x' argument as string */ +-#define __STRING(x) #x +-#endif +- + /** \hideinitializer \brief Helper macro for #SND_DLSYM_BUILD_VERSION. */ + #define __SND_DLSYM_VERSION(prefix, name, version) _ ## prefix ## name ## version + /** diff --git a/package/alsa-lib/alsa-lib.hash b/package/alsa-lib/alsa-lib.hash index 898cbcd60df0..a6d9c7dbdcd5 100644 --- a/package/alsa-lib/alsa-lib.hash +++ b/package/alsa-lib/alsa-lib.hash @@ -1,4 +1,4 @@ # Locally calculated -sha256 1ab01b74e33425ca99c2e36c0844fd6888273193bd898240fe8f93accbcbf347 alsa-lib-1.2.8.tar.bz2 +sha256 c86a45a846331b1b0aa6e6be100be2a7aef92efd405cf6bac7eef8174baa920e alsa-lib-1.2.10.tar.bz2 sha256 32434afcc8666ba060e111d715bfdb6c2d5dd8a35fa4d3ab8ad67d8f850d2f2b COPYING sha256 bfe16cf823bcff261fc6a062c07ee96660e3c39678f42f39a788a68dbc234ced aserver/COPYING diff --git a/package/alsa-lib/alsa-lib.mk b/package/alsa-lib/alsa-lib.mk index a0a9617514c8..5dfcd1e861bc 100644 --- a/package/alsa-lib/alsa-lib.mk +++ b/package/alsa-lib/alsa-lib.mk @@ -4,7 +4,7 @@ # ################################################################################ -ALSA_LIB_VERSION = 1.2.8 +ALSA_LIB_VERSION = 1.2.10 ALSA_LIB_SOURCE = alsa-lib-$(ALSA_LIB_VERSION).tar.bz2 ALSA_LIB_SITE = https://www.alsa-project.org/files/pub/lib ALSA_LIB_LICENSE = LGPL-2.1+ (library), GPL-2.0+ (aserver) diff --git a/package/alsa-plugins/alsa-plugins.mk b/package/alsa-plugins/alsa-plugins.mk index 5728ebfe37b2..d23a81c5eed7 100644 --- a/package/alsa-plugins/alsa-plugins.mk +++ b/package/alsa-plugins/alsa-plugins.mk @@ -20,6 +20,10 @@ ALSA_PLUGINS_CONF_OPTS = \ --disable-maemo-resource-manager \ --with-speex=no +ifeq ($(BR2_PACKAGE_ALSA_UTILS),y) +ALSA_PLUGINS_DEPENDENCIES += alsa-utils +endif + ifeq ($(BR2_PACKAGE_LIBSAMPLERATE),y) ALSA_PLUGINS_CONF_OPTS += --enable-samplerate ALSA_PLUGINS_DEPENDENCIES += libsamplerate diff --git a/package/alsa-utils/0001-alsactl-info.c-fix-conditionals-on-__ALSA_PCM_H-and-.patch b/package/alsa-utils/0001-alsactl-info.c-fix-conditionals-on-__ALSA_PCM_H-and-.patch index 97c4729bf9b7..145c9da01718 100644 --- a/package/alsa-utils/0001-alsactl-info.c-fix-conditionals-on-__ALSA_PCM_H-and-.patch +++ b/package/alsa-utils/0001-alsactl-info.c-fix-conditionals-on-__ALSA_PCM_H-and-.patch @@ -28,6 +28,8 @@ functions when support is not available. Signed-off-by: Thomas Petazzoni Upstream: https://mailman.alsa-project.org/pipermail/alsa-devel/2022-July/203846.html +[Bernd: update patch for 1.2.10] +Signed-off-by: Bernd Kuhls --- alsactl/info.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) @@ -96,9 +98,9 @@ index 253539d..9bd72af 100644 +#ifdef __ALSA_RAWMIDI_H first = true; if (err >= 0) - err = rawmidi_device_list(ctl, SND_PCM_STREAM_PLAYBACK, &first); + err = rawmidi_device_list(ctl, SND_RAWMIDI_STREAM_INPUT, &first); if (err >= 0) - err = rawmidi_device_list(ctl, SND_PCM_STREAM_CAPTURE, &first); + err = rawmidi_device_list(ctl, SND_RAWMIDI_STREAM_OUTPUT, &first); +#endif if (err >= 0) diff --git a/package/alsa-utils/0002-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch b/package/alsa-utils/0002-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch new file mode 100644 index 000000000000..92622292c0f9 --- /dev/null +++ b/package/alsa-utils/0002-axfer-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch @@ -0,0 +1,233 @@ +From a90faa2dd644af585d6a00f0aaf297c15ea0aa7b Mon Sep 17 00:00:00 2001 +From: Jaroslav Kysela +Date: Mon, 4 Sep 2023 16:33:47 +0200 +Subject: [PATCH] axfer: use ATTRIBUTE_UNUSED instead remove argument name + +We need to support older compilers than GCC 11. + +Link: https://github.com/alsa-project/alsa-utils/issues/233 +Fixes: ad5a1c0 ("axfer: fix the verbose compilation warnings for latest gcc") +Signed-off-by: Jaroslav Kysela + +Upstream: https://github.com/alsa-project/alsa-utils/commit/a90faa2dd644af585d6a00f0aaf297c15ea0aa7b + +Signed-off-by: Bernd Kuhls +--- + axfer/container-raw.c | 14 +++++++------- + axfer/mapper-single.c | 6 +++--- + axfer/subcmd-list.c | 2 +- + axfer/subcmd-transfer.c | 4 ++-- + axfer/waiter-poll.c | 4 ++-- + axfer/waiter-select.c | 4 ++-- + axfer/waiter.h | 1 + + axfer/xfer-libasound-irq-rw.c | 2 +- + axfer/xfer-libasound.c | 4 ++-- + axfer/xfer-options.c | 3 ++- + 10 files changed, 23 insertions(+), 21 deletions(-) + +diff --git a/axfer/container-raw.c b/axfer/container-raw.c +index 071f94c..1886045 100644 +--- a/axfer/container-raw.c ++++ b/axfer/container-raw.c +@@ -13,10 +13,10 @@ + #include + #include + +-static int raw_builder_pre_process(struct container_context *, +- snd_pcm_format_t *, +- unsigned int *, +- unsigned int *, ++static int raw_builder_pre_process(struct container_context *cntr ATTRIBUTE_UNUSED, ++ snd_pcm_format_t *format ATTRIBUTE_UNUSED, ++ unsigned int *samples_per_frame ATTRIBUTE_UNUSED, ++ unsigned int *frames_per_second ATTRIBUTE_UNUSED, + uint64_t *byte_count) + { + *byte_count = UINT64_MAX; +@@ -25,9 +25,9 @@ static int raw_builder_pre_process(struct container_context *, + } + + static int raw_parser_pre_process(struct container_context *cntr, +- snd_pcm_format_t *, +- unsigned int *, +- unsigned int *, ++ snd_pcm_format_t *format ATTRIBUTE_UNUSED, ++ unsigned int *samples_per_frame ATTRIBUTE_UNUSED, ++ unsigned int *frames_per_second ATTRIBUTE_UNUSED, + uint64_t *byte_count) + { + struct stat buf = {0}; +diff --git a/axfer/mapper-single.c b/axfer/mapper-single.c +index 13e7fc5..f669f7f 100644 +--- a/axfer/mapper-single.c ++++ b/axfer/mapper-single.c +@@ -62,7 +62,7 @@ static void align_from_vector(void *frame_buf, unsigned int frame_count, + + static int single_pre_process(struct mapper_context *mapper, + struct container_context *cntrs, +- unsigned int) ++ unsigned int cntr_count ATTRIBUTE_UNUSED) + { + struct single_state *state = mapper->private_data; + unsigned int bytes_per_buffer; +@@ -110,7 +110,7 @@ static int single_muxer_process_frames(struct mapper_context *mapper, + void *frame_buf, + unsigned int *frame_count, + struct container_context *cntrs, +- unsigned int) ++ unsigned int cntr_count ATTRIBUTE_UNUSED) + { + struct single_state *state = mapper->private_data; + void *src; +@@ -141,7 +141,7 @@ static int single_demuxer_process_frames(struct mapper_context *mapper, + void *frame_buf, + unsigned int *frame_count, + struct container_context *cntrs, +- unsigned int) ++ unsigned int cntr_count ATTRIBUTE_UNUSED) + { + struct single_state *state = mapper->private_data; + void *dst; +diff --git a/axfer/subcmd-list.c b/axfer/subcmd-list.c +index f9c8e0f..187e1d7 100644 +--- a/axfer/subcmd-list.c ++++ b/axfer/subcmd-list.c +@@ -19,7 +19,7 @@ enum list_op { + }; + + static int dump_device(snd_ctl_t *handle, const char *id, const char *name, +- snd_pcm_stream_t, snd_pcm_info_t *info) ++ snd_pcm_stream_t stream ATTRIBUTE_UNUSED, snd_pcm_info_t *info) + { + unsigned int i, count; + int err; +diff --git a/axfer/subcmd-transfer.c b/axfer/subcmd-transfer.c +index b39fde8..8d63043 100644 +--- a/axfer/subcmd-transfer.c ++++ b/axfer/subcmd-transfer.c +@@ -40,7 +40,7 @@ static void handle_unix_signal_for_finish(int sig) + ctx_ptr->interrupted = true; + } + +-static void handle_unix_signal_for_suspend(int) ++static void handle_unix_signal_for_suspend(int sig ATTRIBUTE_UNUSED) + { + sigset_t curr, prev; + struct sigaction sa = {0}; +@@ -439,7 +439,7 @@ static int context_process_frames(struct context *ctx, + } + + static void context_post_process(struct context *ctx, +- uint64_t) ++ uint64_t accumulated_frame_count ATTRIBUTE_UNUSED) + { + uint64_t total_frame_count; + unsigned int i; +diff --git a/axfer/waiter-poll.c b/axfer/waiter-poll.c +index 31fab88..b81300c 100644 +--- a/axfer/waiter-poll.c ++++ b/axfer/waiter-poll.c +@@ -13,7 +13,7 @@ + #include + #include + +-static int poll_prepare(struct waiter_context *) ++static int poll_prepare(struct waiter_context *waiter ATTRIBUTE_UNUSED) + { + // Nothing to do because an instance of waiter has required data. + return 0; +@@ -30,7 +30,7 @@ static int poll_wait_event(struct waiter_context *waiter, int timeout_msec) + return err; + } + +-static void poll_release(struct waiter_context *) ++static void poll_release(struct waiter_context *waiter ATTRIBUTE_UNUSED) + { + // Nothing to do because an instance of waiter has required data. + return; +diff --git a/axfer/waiter-select.c b/axfer/waiter-select.c +index 164c9c8..fe19776 100644 +--- a/axfer/waiter-select.c ++++ b/axfer/waiter-select.c +@@ -34,7 +34,7 @@ struct select_state { + fd_set rfds_ex; + }; + +-static int select_prepare(struct waiter_context *) ++static int select_prepare(struct waiter_context *waiter ATTRIBUTE_UNUSED) + { + return 0; + } +@@ -94,7 +94,7 @@ static int select_wait_event(struct waiter_context *waiter, int timeout_msec) + return err; + } + +-static void select_release(struct waiter_context *) ++static void select_release(struct waiter_context *waiter ATTRIBUTE_UNUSED) + { + return; + } +diff --git a/axfer/waiter.h b/axfer/waiter.h +index db18e33..0f4e9b9 100644 +--- a/axfer/waiter.h ++++ b/axfer/waiter.h +@@ -9,6 +9,7 @@ + #ifndef __ALSA_UTILS_AXFER_WAITER__H_ + #define __ALSA_UTILS_AXFER_WAITER__H_ + ++#include + #include + + enum waiter_type { +diff --git a/axfer/xfer-libasound-irq-rw.c b/axfer/xfer-libasound-irq-rw.c +index b7f0645..45fb6d5 100644 +--- a/axfer/xfer-libasound-irq-rw.c ++++ b/axfer/xfer-libasound-irq-rw.c +@@ -313,7 +313,7 @@ error: + } + + static int w_process_frames_nonblocking(struct libasound_state *state, +- snd_pcm_state_t, ++ snd_pcm_state_t pcm_state ATTRIBUTE_UNUSED, + unsigned int *frame_count, + struct mapper_context *mapper, + struct container_context *cntrs) +diff --git a/axfer/xfer-libasound.c b/axfer/xfer-libasound.c +index 9713533..36ee08d 100644 +--- a/axfer/xfer-libasound.c ++++ b/axfer/xfer-libasound.c +@@ -60,7 +60,7 @@ static const struct option l_opts[] = { + }; + + static int xfer_libasound_init(struct xfer_context *xfer, +- snd_pcm_stream_t) ++ snd_pcm_stream_t stream ATTRIBUTE_UNUSED) + { + struct libasound_state *state = xfer->private_data; + int err; +@@ -887,7 +887,7 @@ static void xfer_libasound_destroy(struct xfer_context *xfer) + state->log = NULL; + } + +-static void xfer_libasound_help(struct xfer_context *) ++static void xfer_libasound_help(struct xfer_context *xfer ATTRIBUTE_UNUSED) + { + printf( + " [BASICS]\n" +diff --git a/axfer/xfer-options.c b/axfer/xfer-options.c +index 974570c..e716ded 100644 +--- a/axfer/xfer-options.c ++++ b/axfer/xfer-options.c +@@ -447,7 +447,8 @@ static int generate_path_with_suffix(struct xfer_context *xfer, + + static int generate_path_without_suffix(struct xfer_context *xfer, + const char *template, +- unsigned int index, const char *) ++ unsigned int index, ++ const char *suffix ATTRIBUTE_UNUSED) + { + static const char *const single_format = "%s"; + static const char *const multiple_format = "%s-%i"; +-- +2.39.2 + diff --git a/package/alsa-utils/0003-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch b/package/alsa-utils/0003-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch new file mode 100644 index 000000000000..12a098b6fb19 --- /dev/null +++ b/package/alsa-utils/0003-amidi-use-ATTRIBUTE_UNUSED-instead-remove-argument-n.patch @@ -0,0 +1,34 @@ +From 2db896afd475b0b3ad07e97ba74ec9680b4f7f6d Mon Sep 17 00:00:00 2001 +From: Jaroslav Kysela +Date: Mon, 4 Sep 2023 16:37:24 +0200 +Subject: [PATCH] amidi: use ATTRIBUTE_UNUSED instead remove argument name + +We need to support older compilers than GCC 11. + +Link: https://github.com/alsa-project/alsa-utils/issues/233 +Fixes: 1843540 ("amidi: fix the verbose compilation warnings for latest gcc") +Signed-off-by: Jaroslav Kysela + +Upstream: https://github.com/alsa-project/alsa-utils/commit/2db896afd475b0b3ad07e97ba74ec9680b4f7f6d + +Signed-off-by: Bernd Kuhls +--- + amidi/amidi.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/amidi/amidi.c b/amidi/amidi.c +index f930ca8..75fb8c0 100644 +--- a/amidi/amidi.c ++++ b/amidi/amidi.c +@@ -446,7 +446,7 @@ static void print_byte(unsigned char byte, struct timespec *ts) + printf("%02X", byte); + } + +-static void sig_handler(int) ++static void sig_handler(int sig ATTRIBUTE_UNUSED) + { + stop = 1; + } +-- +2.39.2 + diff --git a/package/alsa-utils/0004-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch b/package/alsa-utils/0004-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch new file mode 100644 index 000000000000..472053141533 --- /dev/null +++ b/package/alsa-utils/0004-alsaloop-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch @@ -0,0 +1,57 @@ +From 7552aef6e08b5b1fd8c1704e21cb9f6f15017bfa Mon Sep 17 00:00:00 2001 +From: Jaroslav Kysela +Date: Mon, 4 Sep 2023 16:45:09 +0200 +Subject: [PATCH] alsaloop: use ATTRIBUTE_UNUSED instead remove argument name + +We need to support older compilers than GCC 11. + +Link: https://github.com/alsa-project/alsa-utils/issues/233 +Fixes: d609a58 ("alsaloop: fix the verbose compilation warnings for latest gcc") +Signed-off-by: Jaroslav Kysela + +Upstream: https://github.com/alsa-project/alsa-utils/commit/7552aef6e08b5b1fd8c1704e21cb9f6f15017bfa + +Signed-off-by: Bernd Kuhls +--- + alsaloop/alsaloop.c | 2 +- + alsaloop/pcmjob.c | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/alsaloop/alsaloop.c b/alsaloop/alsaloop.c +index b10733e..51fb646 100644 +--- a/alsaloop/alsaloop.c ++++ b/alsaloop/alsaloop.c +@@ -821,7 +821,7 @@ static void send_to_all(int sig) + } + } + +-static void signal_handler(int) ++static void signal_handler(int sig ATTRIBUTE_UNUSED) + { + quit = 1; + send_to_all(SIGUSR2); +diff --git a/alsaloop/pcmjob.c b/alsaloop/pcmjob.c +index be71971..ffb439b 100644 +--- a/alsaloop/pcmjob.c ++++ b/alsaloop/pcmjob.c +@@ -625,7 +625,7 @@ static void buf_add_src(struct loopback *loop) + } + } + #else +-static void buf_add_src(struct loopback *) ++static void buf_add_src(struct loopback *loop ATTRIBUTE_UNUSED) + { + } + #endif +@@ -1794,7 +1794,7 @@ static int ctl_event_check(snd_ctl_elem_value_t *val, snd_ctl_event_t *ev) + } + + static int handle_ctl_events(struct loopback_handle *lhandle, +- unsigned short) ++ unsigned short events ATTRIBUTE_UNUSED) + { + struct loopback *loop = lhandle->loopback; + snd_ctl_event_t *ev; +-- +2.39.2 + diff --git a/package/alsa-utils/0005-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch b/package/alsa-utils/0005-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch new file mode 100644 index 000000000000..1a42f24d3c26 --- /dev/null +++ b/package/alsa-utils/0005-bat-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch @@ -0,0 +1,67 @@ +From 94eeb5a40f77e92624eb32d2e9c50b1cd9e4f837 Mon Sep 17 00:00:00 2001 +From: Jaroslav Kysela +Date: Mon, 4 Sep 2023 16:49:03 +0200 +Subject: [PATCH] bat: use ATTRIBUTE_UNUSED instead remove argument name + +We need to support older compilers than GCC 11. + +Link: https://github.com/alsa-project/alsa-utils/issues/233 +Fixes: b366875 ("bat: fix the verbose compilation warnings for latest gcc") +Signed-off-by: Jaroslav Kysela + +Upstream: https://github.com/alsa-project/alsa-utils/commit/94eeb5a40f77e92624eb32d2e9c50b1cd9e4f837 + +Signed-off-by: Bernd Kuhls +--- + bat/bat.c | 3 ++- + bat/common.c | 3 ++- + bat/common.h | 5 +++++ + 3 files changed, 9 insertions(+), 2 deletions(-) + +diff --git a/bat/bat.c b/bat/bat.c +index e88c65f..ea04ed9 100644 +--- a/bat/bat.c ++++ b/bat/bat.c +@@ -158,7 +158,8 @@ static void get_format(struct bat *bat, char *optarg) + } + } + +-static inline int thread_wait_completion(struct bat *, pthread_t id, int **val) ++static inline int thread_wait_completion(struct bat *bat ATTRIBUTE_UNUSED, ++ pthread_t id, int **val) + { + int err; + +diff --git a/bat/common.c b/bat/common.c +index 9ff9405..470a7e6 100644 +--- a/bat/common.c ++++ b/bat/common.c +@@ -47,7 +47,8 @@ static int update_fmt_to_bat(struct bat *bat, struct chunk_fmt *fmt) + } + + /* calculate frames and update to bat */ +-static int update_frames_to_bat(struct bat *bat, struct wav_chunk_header *header, FILE *) ++static int update_frames_to_bat(struct bat *bat, struct wav_chunk_header *header, ++ FILE *file ATTRIBUTE_UNUSED) + { + /* The number of analyzed captured frames is arbitrarily set to half of + the number of frames of the wav file or the number of frames of the +diff --git a/bat/common.h b/bat/common.h +index a9bae5d..bb51b0d 100644 +--- a/bat/common.h ++++ b/bat/common.h +@@ -13,6 +13,11 @@ + * + */ + ++#ifndef ATTRIBUTE_UNUSED ++/** do not print warning (gcc) when function parameter is not used */ ++#define ATTRIBUTE_UNUSED __attribute__ ((__unused__)) ++#endif ++ + #define TEMP_RECORD_FILE_NAME "/tmp/bat.wav.XXXXXX" + #define DEFAULT_DEV_NAME "default" + +-- +2.39.2 + diff --git a/package/alsa-utils/0006-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch b/package/alsa-utils/0006-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch new file mode 100644 index 000000000000..9e7e7da5ceaa --- /dev/null +++ b/package/alsa-utils/0006-seq-use-ATTRIBUTE_UNUSED-instead-remove-argument-nam.patch @@ -0,0 +1,93 @@ +From 66112d60e4ce68720022eaf26080c0f1a2caf81f Mon Sep 17 00:00:00 2001 +From: Jaroslav Kysela +Date: Mon, 4 Sep 2023 16:52:46 +0200 +Subject: [PATCH] seq: use ATTRIBUTE_UNUSED instead remove argument name + +We need to support older compilers than GCC 11. + +Link: https://github.com/alsa-project/alsa-utils/issues/233 +Fixes: 181e190 ("aplaymidi: fix the verbose compilation warnings for latest gcc") +Fixes: a03377a ("aseqnet: fix the verbose compilation warnings for latest gcc") +Fixes: 429c32a ("aseqdump: fix the verbose compilation warnings for latest gcc") +Fixes: 0b48dd6 ("aconnect: fix the verbose compilation warnings for latest gcc") +Signed-off-by: Jaroslav Kysela + +Upstream: https://github.com/alsa-project/alsa-utils/commit/66112d60e4ce68720022eaf26080c0f1a2caf81f + +Signed-off-by: Bernd Kuhls +--- + seq/aconnect/aconnect.c | 9 ++++++--- + seq/aplaymidi/arecordmidi.c | 2 +- + seq/aseqdump/aseqdump.c | 2 +- + seq/aseqnet/aseqnet.c | 2 +- + 4 files changed, 9 insertions(+), 6 deletions(-) + +diff --git a/seq/aconnect/aconnect.c b/seq/aconnect/aconnect.c +index 3a10de9..7096feb 100644 +--- a/seq/aconnect/aconnect.c ++++ b/seq/aconnect/aconnect.c +@@ -193,7 +193,8 @@ static void do_search_port(snd_seq_t *seq, int perm, action_func_t do_action) + } + + +-static void print_port(snd_seq_t *, snd_seq_client_info_t *cinfo, ++static void print_port(snd_seq_t *seq ATTRIBUTE_UNUSED, ++ snd_seq_client_info_t *cinfo, + snd_seq_port_info_t *pinfo, int count) + { + if (! count) { +@@ -247,8 +248,10 @@ static void print_port_and_subs(snd_seq_t *seq, snd_seq_client_info_t *cinfo, + /* + * remove all (exported) connections + */ +-static void remove_connection(snd_seq_t *seq, snd_seq_client_info_t *, +- snd_seq_port_info_t *pinfo, int) ++static void remove_connection(snd_seq_t *seq, ++ snd_seq_client_info_t *info ATTRIBUTE_UNUSED, ++ snd_seq_port_info_t *pinfo, ++ int count ATTRIBUTE_UNUSED) + { + snd_seq_query_subscribe_t *query; + snd_seq_port_info_t *port; +diff --git a/seq/aplaymidi/arecordmidi.c b/seq/aplaymidi/arecordmidi.c +index ce71472..a4c1181 100644 +--- a/seq/aplaymidi/arecordmidi.c ++++ b/seq/aplaymidi/arecordmidi.c +@@ -719,7 +719,7 @@ static void version(void) + fputs("arecordmidi version " SND_UTIL_VERSION_STR "\n", stderr); + } + +-static void sighandler(int) ++static void sighandler(int sig ATTRIBUTE_UNUSED) + { + stop = 1; + } +diff --git a/seq/aseqdump/aseqdump.c b/seq/aseqdump/aseqdump.c +index 8455ecb..af4ca21 100644 +--- a/seq/aseqdump/aseqdump.c ++++ b/seq/aseqdump/aseqdump.c +@@ -676,7 +676,7 @@ static void version(void) + puts("aseqdump version " SND_UTIL_VERSION_STR); + } + +-static void sighandler(int) ++static void sighandler(int sig ATTRIBUTE_UNUSED) + { + stop = 1; + } +diff --git a/seq/aseqnet/aseqnet.c b/seq/aseqnet/aseqnet.c +index f40de7d..aa70b50 100644 +--- a/seq/aseqnet/aseqnet.c ++++ b/seq/aseqnet/aseqnet.c +@@ -334,7 +334,7 @@ static void get_net_addr(struct addrinfo *rp, char *buf, size_t buflen) + /* + * signal handler + */ +-static void sigterm_exit(int) ++static void sigterm_exit(int sig ATTRIBUTE_UNUSED) + { + close_files(); + exit(1); +-- +2.39.2 + diff --git a/package/alsa-utils/0007-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch b/package/alsa-utils/0007-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch new file mode 100644 index 000000000000..66826c451512 --- /dev/null +++ b/package/alsa-utils/0007-alsaucm-use-ATTRIBUTE_UNUSED-instead-remove-argument.patch @@ -0,0 +1,109 @@ +From 9e5e9a6d70de63bea01f0669b01319952f2cfdea Mon Sep 17 00:00:00 2001 +From: Jaroslav Kysela +Date: Mon, 4 Sep 2023 16:57:47 +0200 +Subject: [PATCH] alsaucm: use ATTRIBUTE_UNUSED instead remove argument name + +We need to support older compilers than GCC 11. + +Link: https://github.com/alsa-project/alsa-utils/issues/233 +Fixes: d7bbc26 ("alsaucm: fix the verbose compilation warnings for latest gcc") +Signed-off-by: Jaroslav Kysela + +Upstream: https://github.com/alsa-project/alsa-utils/commit/9e5e9a6d70de63bea01f0669b01319952f2cfdea + +Signed-off-by: Bernd Kuhls +--- + alsaucm/dump.c | 22 ++++++++++++---------- + 1 file changed, 12 insertions(+), 10 deletions(-) + +diff --git a/alsaucm/dump.c b/alsaucm/dump.c +index 102ac4d..a5c57f2 100644 +--- a/alsaucm/dump.c ++++ b/alsaucm/dump.c +@@ -93,7 +93,8 @@ static char *tesc(const char *s, char *buf, size_t buf_len) + + #define ESC(s, esc) tesc((s), (esc), sizeof(esc)) + +-static int text_verb_start(struct renderer *, const char *verb, const char *comment) ++static int text_verb_start(struct renderer *r ATTRIBUTE_UNUSED, ++ const char *verb, const char *comment) + { + char buf1[128], buf2[128]; + printf("Verb.%s {\n", ESC(verb, buf1)); +@@ -102,13 +103,13 @@ static int text_verb_start(struct renderer *, const char *verb, const char *comm + return 0; + } + +-static int text_verb_end(struct renderer *) ++static int text_verb_end(struct renderer *r ATTRIBUTE_UNUSED) + { + printf("}\n"); + return 0; + } + +-static int text_2nd_level_begin(struct renderer *, ++static int text_2nd_level_begin(struct renderer *r ATTRIBUTE_UNUSED, + const char *key, + const char *val, + const char *comment) +@@ -120,19 +121,19 @@ static int text_2nd_level_begin(struct renderer *, + return 0; + } + +-static int text_2nd_level_end(struct renderer *) ++static int text_2nd_level_end(struct renderer *r ATTRIBUTE_UNUSED) + { + printf("\t}\n"); + return 0; + } + +-static int text_2nd_level(struct renderer *, const char *txt) ++static int text_2nd_level(struct renderer *r ATTRIBUTE_UNUSED, const char *txt) + { + printf("\t\t%s", txt); + return 0; + } + +-static int text_3rd_level(struct renderer *, const char *txt) ++static int text_3rd_level(struct renderer *r ATTRIBUTE_UNUSED, const char *txt) + { + printf("\t\t\t%s", txt); + return 0; +@@ -266,7 +267,7 @@ static void json_block(struct renderer *r, int level, int last) + j->block[level] = last ? 0 : 1; + } + +-static int json_init(struct renderer *) ++static int json_init(struct renderer *r ATTRIBUTE_UNUSED) + { + printf("{\n \"Verbs\": {"); + return 0; +@@ -325,13 +326,13 @@ static int json_2nd_level_end(struct renderer *r) + return 0; + } + +-static int json_2nd_level(struct renderer *, const char *txt) ++static int json_2nd_level(struct renderer *r ATTRIBUTE_UNUSED, const char *txt) + { + printf(" %s", txt); + return 0; + } + +-static int json_3rd_level(struct renderer *, const char *txt) ++static int json_3rd_level(struct renderer *r ATTRIBUTE_UNUSED, const char *txt) + { + printf(" %s", txt); + return 0; +@@ -360,7 +361,8 @@ static int json_supcon_start(struct renderer *r, const char *key) + return 0; + } + +-static int json_supcon_value(struct renderer *r, const char *value, int) ++static int json_supcon_value(struct renderer *r, const char *value, ++ int last ATTRIBUTE_UNUSED) + { + char buf[256]; + JESC(value, buf); +-- +2.39.2 + diff --git a/package/alsa-utils/0008-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch b/package/alsa-utils/0008-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch new file mode 100644 index 000000000000..07b10b3ab896 --- /dev/null +++ b/package/alsa-utils/0008-topology-use-ATTRIBUTE_UNUSED-instead-remove-argumen.patch @@ -0,0 +1,312 @@ +From dfe1c7143ab6ea01789e276b1ba361a00e545997 Mon Sep 17 00:00:00 2001 +From: Jaroslav Kysela +Date: Mon, 4 Sep 2023 17:11:05 +0200 +Subject: [PATCH] topology: use ATTRIBUTE_UNUSED instead remove argument name + +We need to support older compilers than GCC 11. + +Link: https://github.com/alsa-project/alsa-utils/issues/233 +Fixes: 153d185 ("topology: fix the verbose compilation warnings for latest gcc") +Signed-off-by: Jaroslav Kysela + +Upstream: https://github.com/alsa-project/alsa-utils/commit/dfe1c7143ab6ea01789e276b1ba361a00e545997 + +Signed-off-by: Bernd Kuhls +--- + topology/nhlt/intel/dmic-nhlt.c | 3 ++- + topology/nhlt/intel/dmic/dmic-debug.c | 7 ++++--- + topology/nhlt/intel/ssp/ssp-debug.c | 5 +++-- + topology/nhlt/intel/ssp/ssp-process.c | 4 +++- + topology/nhlt/nhlt-processor.c | 7 +++++-- + topology/pre-process-class.c | 10 +++++----- + topology/pre-process-object.c | 21 +++++++++++---------- + topology/pre-processor.c | 10 ++++++---- + 8 files changed, 39 insertions(+), 28 deletions(-) + +diff --git a/topology/nhlt/intel/dmic-nhlt.c b/topology/nhlt/intel/dmic-nhlt.c +index 70a22e3..de659cf 100644 +--- a/topology/nhlt/intel/dmic-nhlt.c ++++ b/topology/nhlt/intel/dmic-nhlt.c +@@ -10,6 +10,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -155,7 +156,7 @@ static int set_vendor_mic_data(struct intel_nhlt_params *nhlt, snd_config_t *cfg + horizontal_angle_end); + } + +-static int set_bytes_data(struct intel_nhlt_params *, snd_config_t *cfg) ++static int set_bytes_data(struct intel_nhlt_params *nhlt ATTRIBUTE_UNUSED, snd_config_t *cfg) + { + snd_config_iterator_t i, next; + snd_config_t *n; +diff --git a/topology/nhlt/intel/dmic/dmic-debug.c b/topology/nhlt/intel/dmic/dmic-debug.c +index f99d308..a977c93 100644 +--- a/topology/nhlt/intel/dmic/dmic-debug.c ++++ b/topology/nhlt/intel/dmic/dmic-debug.c +@@ -8,6 +8,7 @@ + #include "aconfig.h" + #include + #include ++#include + #include "dmic-debug.h" + + #ifdef NHLT_DEBUG +@@ -181,7 +182,7 @@ void dmic_print_internal(struct intel_dmic_params *dmic) + } + + #else /* NHLT_DEBUG */ +-void dmic_print_bytes_as_hex(uint8_t *, size_t) {} +-void dmic_print_integers_as_hex(uint32_t *, size_t) {} +-void dmic_print_internal(struct intel_dmic_params *) {} ++void dmic_print_bytes_as_hex(uint8_t *src ATTRIBUTE_UNUSED, size_t size ATTRIBUTE_UNUSED) {} ++void dmic_print_integers_as_hex(uint32_t *src ATTRIBUTE_UNUSED, size_t size ATTRIBUTE_UNUSED) {} ++void dmic_print_internal(struct intel_dmic_params *dmic ATTRIBUTE_UNUSED) {} + #endif +diff --git a/topology/nhlt/intel/ssp/ssp-debug.c b/topology/nhlt/intel/ssp/ssp-debug.c +index 8c64675..2d2f6b0 100644 +--- a/topology/nhlt/intel/ssp/ssp-debug.c ++++ b/topology/nhlt/intel/ssp/ssp-debug.c +@@ -7,6 +7,7 @@ + #include "aconfig.h" + #include + #include ++#include + #include "ssp-debug.h" + #include "../intel-nhlt.h" + +@@ -252,6 +253,6 @@ void ssp_print_internal(struct intel_ssp_params *ssp) + } + + #else /* NHLT_DEBUG */ +-void ssp_print_internal(struct intel_ssp_params *) {} +-void ssp_print_calculated(struct intel_ssp_params *) {} ++void ssp_print_internal(struct intel_ssp_params *ssp ATTRIBUTE_UNUSED) {} ++void ssp_print_calculated(struct intel_ssp_params *ssp ATTRIBUTE_UNUSED) {} + #endif +diff --git a/topology/nhlt/intel/ssp/ssp-process.c b/topology/nhlt/intel/ssp/ssp-process.c +index 9cda5c3..17b88d2 100644 +--- a/topology/nhlt/intel/ssp/ssp-process.c ++++ b/topology/nhlt/intel/ssp/ssp-process.c +@@ -14,6 +14,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -952,7 +953,8 @@ int ssp_set_params(struct intel_nhlt_params *nhlt, const char *dir, int dai_inde + return 0; + } + +-int ssp_hw_set_params(struct intel_nhlt_params *nhlt, const char *format, const char *, ++int ssp_hw_set_params(struct intel_nhlt_params *nhlt, const char *format, ++ const char *mclk ATTRIBUTE_UNUSED, + const char *bclk, const char *bclk_invert, const char *fsync, + const char *fsync_invert, int mclk_freq, int bclk_freq, int fsync_freq, + int tdm_slots, int tdm_slot_width, int tx_slots, int rx_slots) +diff --git a/topology/nhlt/nhlt-processor.c b/topology/nhlt/nhlt-processor.c +index 567fa5c..ca539c3 100644 +--- a/topology/nhlt/nhlt-processor.c ++++ b/topology/nhlt/nhlt-processor.c +@@ -11,6 +11,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -87,7 +88,8 @@ static void debug_print_nhlt(struct nhlt *blob, struct endpoint_descriptor **eps + fprintf(stdout, "\n"); + } + #else +-static void debug_print_nhlt(struct nhlt *, struct endpoint_descriptor **) {} ++static void debug_print_nhlt(struct nhlt *blob ATTRIBUTE_UNUSED, ++ struct endpoint_descriptor **eps ATTRIBUTE_UNUSED) {} + #endif + + static int print_as_hex_bytes(uint8_t *manifest_buffer, uint32_t manifest_size, +@@ -313,7 +315,8 @@ static int nhlt_get_flat_buffer(struct nhlt *blob, struct endpoint_descriptor ** + } + + /* called at the end of topology pre-processing, create flat buffer from variable size nhlt */ +-static int nhlt_create(struct intel_nhlt_params *nhlt, snd_config_t *input, snd_config_t *, ++static int nhlt_create(struct intel_nhlt_params *nhlt, snd_config_t *input, ++ snd_config_t *output ATTRIBUTE_UNUSED, + uint8_t **nhlt_buffer, uint32_t *nhlt_size) + { + struct endpoint_descriptor *eps[MAX_ENDPOINT_COUNT]; +diff --git a/topology/pre-process-class.c b/topology/pre-process-class.c +index d883d05..bedcebe 100644 +--- a/topology/pre-process-class.c ++++ b/topology/pre-process-class.c +@@ -127,7 +127,7 @@ snd_config_t *tplg_class_lookup(struct tplg_pre_processor *tplg_pp, snd_config_t + } + + /* find the attribute config by name in the class definition */ +-snd_config_t *tplg_class_find_attribute_by_name(struct tplg_pre_processor *, ++snd_config_t *tplg_class_find_attribute_by_name(struct tplg_pre_processor *tplg_p ATTRIBUTE_UNUSED, + snd_config_t *class, const char *name) + { + snd_config_t *attr = NULL; +@@ -152,7 +152,7 @@ snd_config_t *tplg_class_find_attribute_by_name(struct tplg_pre_processor *, + } + + /* get the name of the attribute that must have a unique value in the object instance */ +-const char *tplg_class_get_unique_attribute_name(struct tplg_pre_processor *, ++const char *tplg_class_get_unique_attribute_name(struct tplg_pre_processor *tplg_pp ATTRIBUTE_UNUSED, + snd_config_t *class) + { + snd_config_t *unique; +@@ -177,7 +177,7 @@ const char *tplg_class_get_unique_attribute_name(struct tplg_pre_processor *, + } + + /* get attribute type from the definition */ +-snd_config_type_t tplg_class_get_attribute_type(struct tplg_pre_processor *, ++snd_config_type_t tplg_class_get_attribute_type(struct tplg_pre_processor *tplg_pp ATTRIBUTE_UNUSED, + snd_config_t *attr) + { + snd_config_t *type; +@@ -208,7 +208,7 @@ snd_config_type_t tplg_class_get_attribute_type(struct tplg_pre_processor *, + } + + /* get token_ref for attribute with name attr_name in the class */ +-const char *tplg_class_get_attribute_token_ref(struct tplg_pre_processor *, ++const char *tplg_class_get_attribute_token_ref(struct tplg_pre_processor *tplg_pp ATTRIBUTE_UNUSED, + snd_config_t *class, const char *attr_name) + { + snd_config_t *attributes, *attr, *token_ref; +@@ -235,7 +235,7 @@ const char *tplg_class_get_attribute_token_ref(struct tplg_pre_processor *, + } + + /* convert a valid attribute string value to the corresponding tuple value */ +-long tplg_class_attribute_valid_tuple_value(struct tplg_pre_processor *, ++long tplg_class_attribute_valid_tuple_value(struct tplg_pre_processor *tplg_pp ATTRIBUTE_UNUSED, + snd_config_t *class, snd_config_t *attr) + { + +diff --git a/topology/pre-process-object.c b/topology/pre-process-object.c +index 48555e7..61cc85f 100644 +--- a/topology/pre-process-object.c ++++ b/topology/pre-process-object.c +@@ -31,7 +31,8 @@ + + /* Parse VendorToken object, create the "SectionVendorToken" and save it */ + int tplg_build_vendor_token_object(struct tplg_pre_processor *tplg_pp, +- snd_config_t *obj_cfg, snd_config_t *) ++ snd_config_t *obj_cfg, ++ snd_config_t *parent ATTRIBUTE_UNUSED) + { + snd_config_iterator_t i, next; + snd_config_t *vtop, *n, *obj; +@@ -196,7 +197,7 @@ int tplg_build_data_object(struct tplg_pre_processor *tplg_pp, snd_config_t *obj + return tplg_parent_update(tplg_pp, parent, "data", name); + } + +-static int tplg_create_config_template(struct tplg_pre_processor *, ++static int tplg_create_config_template(struct tplg_pre_processor *tplg_pp ATTRIBUTE_UNUSED, + snd_config_t **template, + const struct config_template_items *items) + { +@@ -499,7 +500,7 @@ min_max_check: + } + + /* get object's name attribute value */ +-const char *tplg_object_get_name(struct tplg_pre_processor *, ++const char *tplg_object_get_name(struct tplg_pre_processor *tplg_pp ATTRIBUTE_UNUSED, + snd_config_t *object) + { + snd_config_t *cfg; +@@ -518,7 +519,7 @@ const char *tplg_object_get_name(struct tplg_pre_processor *, + } + + /* look up the instance of object in a config */ +-static snd_config_t *tplg_object_lookup_in_config(struct tplg_pre_processor *, ++static snd_config_t *tplg_object_lookup_in_config(struct tplg_pre_processor *tplg_pp ATTRIBUTE_UNUSED, + snd_config_t *class, const char *type, + const char *class_name, const char *id) + { +@@ -977,7 +978,7 @@ template: + } + + static int tplg_build_generic_object(struct tplg_pre_processor *tplg_pp, snd_config_t *obj_cfg, +- snd_config_t *) ++ snd_config_t *parent ATTRIBUTE_UNUSED) + { + snd_config_t *wtop; + const char *name; +@@ -1090,7 +1091,7 @@ const struct build_function_map object_build_map[] = { + NULL, &pcm_caps_config}, + }; + +-static const struct build_function_map *tplg_object_get_map(struct tplg_pre_processor *, ++static const struct build_function_map *tplg_object_get_map(struct tplg_pre_processor *tplg_pp ATTRIBUTE_UNUSED, + snd_config_t *obj) + { + snd_config_iterator_t first; +@@ -1145,7 +1146,7 @@ snd_config_t *tplg_object_get_section(struct tplg_pre_processor *tplg_pp, snd_co + } + + /* return 1 if attribute not found in search_config, 0 on success and negative value on error */ +-static int tplg_object_copy_and_add_param(struct tplg_pre_processor *, ++static int tplg_object_copy_and_add_param(struct tplg_pre_processor *tplg_pp ATTRIBUTE_UNUSED, + snd_config_t *obj, + snd_config_t *attr_cfg, + snd_config_t *search_config) +@@ -1351,8 +1352,8 @@ static int tplg_object_pre_process_children(struct tplg_pre_processor *tplg_pp, + return 0; + } + +-static int tplg_construct_object_name(struct tplg_pre_processor *, snd_config_t *obj, +- snd_config_t *class_cfg) ++static int tplg_construct_object_name(struct tplg_pre_processor *tplg_pp ATTRIBUTE_UNUSED, ++ snd_config_t *obj, snd_config_t *class_cfg) + { + snd_config_iterator_t i, next; + snd_config_t *args, *n; +@@ -1547,7 +1548,7 @@ static int tplg_object_set_unique_attribute(struct tplg_pre_processor *tplg_pp, + * Helper function to get object instance config which is 2 nodes down from class_type config. + * ex: Get the pointer to the config node with ID "0" from the input config Widget.pga.0 {} + */ +-snd_config_t *tplg_object_get_instance_config(struct tplg_pre_processor *, ++snd_config_t *tplg_object_get_instance_config(struct tplg_pre_processor *tplg_pp ATTRIBUTE_UNUSED, + snd_config_t *class_type) + { + snd_config_iterator_t first; +diff --git a/topology/pre-processor.c b/topology/pre-processor.c +index 3903dee..01f8a5d 100644 +--- a/topology/pre-processor.c ++++ b/topology/pre-processor.c +@@ -231,8 +231,9 @@ void tplg_pp_config_debug(struct tplg_pre_processor *tplg_pp, snd_config_t *cfg) + snd_config_save(cfg, tplg_pp->dbg_output); + } + #else +-void tplg_pp_debug(char *, ...) {} +-void tplg_pp_config_debug(struct tplg_pre_processor *, snd_config_t *){} ++void tplg_pp_debug(char *fmt ATTRIBUTE_UNUSED, ...) {} ++void tplg_pp_config_debug(struct tplg_pre_processor *tplg_pp ATTRIBUTE_UNUSED, ++ snd_config_t *cfg ATTRIBUTE_UNUSED) {} + #endif + + static int pre_process_config(struct tplg_pre_processor *tplg_pp, snd_config_t *cfg) +@@ -640,8 +641,9 @@ static int pre_process_includes_all(struct tplg_pre_processor *tplg_pp, snd_conf + } + + /* duplicate the existing objects in src into dest and update with new attribute */ +-static int pre_process_add_objects(struct tplg_pre_processor *, int *object_count, +- snd_config_t *src, snd_config_t *dest, snd_config_t *attr_cfg) ++static int pre_process_add_objects(struct tplg_pre_processor *tplg_pp ATTRIBUTE_UNUSED, ++ int *object_count, snd_config_t *src, ++ snd_config_t *dest, snd_config_t *attr_cfg) + { + snd_config_iterator_t i, next; + int ret; +-- +2.39.2 + diff --git a/package/alsa-utils/0009-topology-include-locale.h.patch b/package/alsa-utils/0009-topology-include-locale.h.patch new file mode 100644 index 000000000000..14a059cbf690 --- /dev/null +++ b/package/alsa-utils/0009-topology-include-locale.h.patch @@ -0,0 +1,33 @@ +From 8c229270f6bae83b705a03714c46067a7aa57b02 Mon Sep 17 00:00:00 2001 +From: Michael Opdenacker +Date: Tue, 19 Sep 2023 13:14:29 +0200 +Subject: [PATCH] topology: include locale.h + +This solves an issue compiling with the musl libc. + +Fixes: https://github.com/alsa-project/alsa-utils/issues/239 +Signed-off-by: Michael Opdenacker +Signed-off-by: Jaroslav Kysela + +Upstream: https://github.com/alsa-project/alsa-utils/commit/8c229270f6bae83b705a03714c46067a7aa57b02 + +Signed-off-by: Bernd Kuhls +--- + topology/topology.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/topology/topology.c b/topology/topology.c +index 1840ffe..5d03a8b 100644 +--- a/topology/topology.c ++++ b/topology/topology.c +@@ -32,6 +32,7 @@ + #include + #include + #include ++#include + + #include + #include +-- +2.39.2 + diff --git a/package/alsa-utils/0010-nhlt-dmic-info.c-include-sys-types.h.patch b/package/alsa-utils/0010-nhlt-dmic-info.c-include-sys-types.h.patch new file mode 100644 index 000000000000..b5f8489703aa --- /dev/null +++ b/package/alsa-utils/0010-nhlt-dmic-info.c-include-sys-types.h.patch @@ -0,0 +1,33 @@ +From 0925ad7f09b2dc77015784f9ac2f5e34dd0dd5c3 Mon Sep 17 00:00:00 2001 +From: Michael Opdenacker +Date: Tue, 19 Sep 2023 13:14:30 +0200 +Subject: [PATCH] nhlt-dmic-info.c: include sys/types.h + +This fixes an issue compiling with the musl libc. + +Fixes: https://github.com/alsa-project/alsa-utils/issues/238 +Signed-off-by: Michael Opdenacker +Signed-off-by: Jaroslav Kysela + +Upstream: https://github.com/alsa-project/alsa-utils/commit/0925ad7f09b2dc77015784f9ac2f5e34dd0dd5c3 + +Signed-off-by: Bernd Kuhls +--- + nhlt/nhlt-dmic-info.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/nhlt/nhlt-dmic-info.c b/nhlt/nhlt-dmic-info.c +index 3f6c64d..331555a 100644 +--- a/nhlt/nhlt-dmic-info.c ++++ b/nhlt/nhlt-dmic-info.c +@@ -33,6 +33,7 @@ + #include + #include + #include ++#include + #include + + int debug = 0; +-- +2.39.2 + diff --git a/package/alsa-utils/0011-configure.ac-fix-UMP-support-detection.patch b/package/alsa-utils/0011-configure.ac-fix-UMP-support-detection.patch new file mode 100644 index 000000000000..66cf0517336e --- /dev/null +++ b/package/alsa-utils/0011-configure.ac-fix-UMP-support-detection.patch @@ -0,0 +1,38 @@ +From 8a0da6d4484cd2ca4f1939a6c44941e070db2147 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Fri, 13 Oct 2023 20:32:32 +0200 +Subject: [PATCH] configure.ac: fix UMP support detection + +https://github.com/alsa-project/alsa-utils/commit/b399fb85a919636b7da34e8bcf17f484dd9046f7 +added usage of alsa/ump_msg.h without checking whether alsa-lib was +compiled with rawmidi support: +https://github.com/alsa-project/alsa-lib/blob/master/include/Makefile.am#L37 + +Fixes a build error when alsa-lib was compiled with --disable-rawmidi + +aplaymidi.c:34:10: fatal error: alsa/ump_msg.h: No such file or directory + 34 | #include + +Upstream: https://github.com/alsa-project/alsa-utils/pull/240 + +Signed-off-by: Bernd Kuhls +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index beb4963..4217741 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -55,7 +55,7 @@ if test "$HAVE_SEQ_CLIENT_INFO_GET_PID" = "yes" ; then + AC_DEFINE([HAVE_SEQ_CLIENT_INFO_GET_PID], 1, [alsa-lib supports snd_seq_client_info_get_pid]) + fi + AC_CHECK_LIB([asound], [snd_seq_client_info_get_midi_version], [HAVE_SEQ_CLIENT_INFO_GET_MIDI_VERSION="yes"]) +-if test "$HAVE_SEQ_CLIENT_INFO_GET_MIDI_VERSION" = "yes" ; then ++if test "$HAVE_SEQ_CLIENT_INFO_GET_MIDI_VERSION" = "yes" -a "$have_rawmidi" = "yes"; then + AC_DEFINE([HAVE_SEQ_CLIENT_INFO_GET_MIDI_VERSION], 1, [alsa-lib supports snd_seq_client_info_get_midi_version]) + fi + AC_CHECK_LIB([atopology], [snd_tplg_save], [have_topology="yes"], [have_topology="no"]) +-- +2.39.2 + diff --git a/package/alsa-utils/alsa-utils.hash b/package/alsa-utils/alsa-utils.hash index 66c04d261f57..0ace406286c0 100644 --- a/package/alsa-utils/alsa-utils.hash +++ b/package/alsa-utils/alsa-utils.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 e140fa604c351f36bd72167c8860c69d81b964ae6ab53992d6434dde38e9333c alsa-utils-1.2.8.tar.bz2 +sha256 104b62ec7f02a7ce16ca779f4815616df1cc21933503783a9107b5944f83063a alsa-utils-1.2.10.tar.bz2 sha256 231f7edcc7352d7734a96eef0b8030f77982678c516876fcb81e25b32d68564c COPYING diff --git a/package/alsa-utils/alsa-utils.mk b/package/alsa-utils/alsa-utils.mk index 8c43f58b76f7..6f6021400e09 100644 --- a/package/alsa-utils/alsa-utils.mk +++ b/package/alsa-utils/alsa-utils.mk @@ -4,11 +4,13 @@ # ################################################################################ -ALSA_UTILS_VERSION = 1.2.8 +ALSA_UTILS_VERSION = 1.2.10 ALSA_UTILS_SOURCE = alsa-utils-$(ALSA_UTILS_VERSION).tar.bz2 ALSA_UTILS_SITE = https://www.alsa-project.org/files/pub/utils ALSA_UTILS_LICENSE = GPL-2.0 ALSA_UTILS_LICENSE_FILES = COPYING +# 0011-configure.ac-fix-UMP-support-detection.patch +ALSA_UTILS_AUTORECONF = YES ALSA_UTILS_INSTALL_STAGING = YES ALSA_UTILS_DEPENDENCIES = host-pkgconf alsa-lib \ $(if $(BR2_PACKAGE_NCURSES),ncurses) \ diff --git a/package/amlogic-boot-fip/Config.in.host b/package/amlogic-boot-fip/Config.in.host new file mode 100644 index 000000000000..bccc6296d118 --- /dev/null +++ b/package/amlogic-boot-fip/Config.in.host @@ -0,0 +1,17 @@ +config BR2_PACKAGE_HOST_AMLOGIC_BOOT_FIP + bool "host amlogic-boot-fip" + depends on BR2_HOSTARCH = "x86_64" + help + Firmware Image Package (FIP) sources used to sign Amlogic + u-boot binaries in LibreELEC images + + https://github.com/LibreELEC/amlogic-boot-fip + +config BR2_PACKAGE_HOST_AMLOGIC_BOOT_FIP_DEVICE + string "fip device" + default "khadas-vim3" + depends on BR2_PACKAGE_HOST_AMLOGIC_BOOT_FIP + help + Device for which you want to use this package. + See the list of supported SoCs: + https://github.com/LibreELEC/amlogic-boot-fip diff --git a/package/amlogic-boot-fip/amlogic-boot-fip.hash b/package/amlogic-boot-fip/amlogic-boot-fip.hash new file mode 100644 index 000000000000..1a08341532e8 --- /dev/null +++ b/package/amlogic-boot-fip/amlogic-boot-fip.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 2cc06bc7d5647fd8c0025181fa42c4a8ef0ed16b918a1fa2060ea83c22e47b20 amlogic-boot-fip-e96b6a694380ff07d5a9e4be644ffe254bd18512.tar.gz +sha256 4255537f71b1cd0d487de0fa2b8eddf1eb96ed96d119507336dde8b3782b86e6 LICENSE diff --git a/package/amlogic-boot-fip/amlogic-boot-fip.mk b/package/amlogic-boot-fip/amlogic-boot-fip.mk new file mode 100644 index 000000000000..f98887cfcdd5 --- /dev/null +++ b/package/amlogic-boot-fip/amlogic-boot-fip.mk @@ -0,0 +1,34 @@ +################################################################################ +# +# amlogic-boot-fip +# +################################################################################ + +AMLOGIC_BOOT_FIP_VERSION = e96b6a694380ff07d5a9e4be644ffe254bd18512 +AMLOGIC_BOOT_FIP_SITE = $(call github,LibreELEC,amlogic-boot-fip,$(AMLOGIC_BOOT_FIP_VERSION)) +AMLOGIC_BOOT_FIP_LICENSE = PROPRIETARY +AMLOGIC_BOOT_FIP_LICENSE_FILES = LICENSE +AMLOGIC_BOOT_FIP_REDISTRIBUTE = NO + +AMLOGIC_BOOT_FIP_INSTALL_DIR = $(BINARIES_DIR)/amlogic-boot-fip + +AMLOGIC_BOOT_FIP_DEVICE = $(call qstrip,$(BR2_PACKAGE_HOST_AMLOGIC_BOOT_FIP_DEVICE)) + +AMLOGIC_BOOT_FIP_FILES_TO_INSTALL = build-fip.sh axg.inc g12a.inc gxbb.inc gxl.inc + +define HOST_AMLOGIC_BOOT_FIP_INSTALL_CMDS + mkdir -p $(AMLOGIC_BOOT_FIP_INSTALL_DIR)/$(AMLOGIC_BOOT_FIP_DEVICE) + $(foreach f,$(AMLOGIC_BOOT_FIP_FILES_TO_INSTALL),\ + $(INSTALL) -D -m 0755 $(@D)/$(f) $(AMLOGIC_BOOT_FIP_INSTALL_DIR)/$(f) + ) + cp -rf $(@D)/$(AMLOGIC_BOOT_FIP_DEVICE) $(AMLOGIC_BOOT_FIP_INSTALL_DIR) +endef + +# check for empty device string when we're building +ifeq ($(BR2_PACKAGE_HOST_AMLOGIC_BOOT_FIP)$(BR_BUILDING),yy) +ifeq ($(call qstrip,$(BR2_PACKAGE_HOST_AMLOGIC_BOOT_FIP_DEVICE)),) +$(error No device specified for amlogic-boot-fip, please check your BR2_PACKAGE_HOST_AMLOGIC_BOOT_FIP_DEVICE setting) +endif +endif + +$(eval $(host-generic-package)) diff --git a/package/apache/apache.hash b/package/apache/apache.hash index 36144917fba1..854bc85dcc54 100644 --- a/package/apache/apache.hash +++ b/package/apache/apache.hash @@ -1,5 +1,5 @@ -# From https://downloads.apache.org/httpd/httpd-2.4.56.tar.bz2.{sha256,sha512} -sha256 d8d45f1398ba84edd05bb33ca7593ac2989b17cb9c7a0cafe5442d41afdb2d7c httpd-2.4.56.tar.bz2 -sha512 5f12cd9878d822384b1bb163fea4d8edee5e7a0dd8b2389264387971268145cccc6a5a27ddf0436c5f1f631acc5fdc4874da2a47911483e421ca40bf783e0e12 httpd-2.4.56.tar.bz2 +# From https://archive.apache.org/dist/httpd/httpd-2.4.58.tar.bz2.{sha256,sha512} +sha256 fa16d72a078210a54c47dd5bef2f8b9b8a01d94909a51453956b3ec6442ea4c5 httpd-2.4.58.tar.bz2 +sha512 d6e73bf413a507ec16b621ff635e178206207a9e9810ce3944b3dc98d39cde8f225307110167fc9da5822175796c8cb66f98be5b9f0d8b76dcd83a401d39b2c1 httpd-2.4.58.tar.bz2 # Locally computed sha256 47b8c2b6c3309282a99d4a3001575c790fead690cc14734628c4667d2bbffc43 LICENSE diff --git a/package/apache/apache.mk b/package/apache/apache.mk index 80205a63620c..3efa6b0ac19c 100644 --- a/package/apache/apache.mk +++ b/package/apache/apache.mk @@ -4,7 +4,7 @@ # ################################################################################ -APACHE_VERSION = 2.4.56 +APACHE_VERSION = 2.4.58 APACHE_SOURCE = httpd-$(APACHE_VERSION).tar.bz2 APACHE_SITE = https://downloads.apache.org/httpd APACHE_LICENSE = Apache-2.0 @@ -17,7 +17,7 @@ APACHE_INSTALL_STAGING = YES # We have a patch touching configure.in and Makefile.in, # so we need to autoreconf: APACHE_AUTORECONF = YES -APACHE_DEPENDENCIES = apr apr-util pcre2 +APACHE_DEPENDENCIES = host-pkgconf apr apr-util pcre2 APACHE_CONF_ENV= \ ap_cv_void_ptr_lt_long=no \ diff --git a/package/arp-scan/Config.in b/package/arp-scan/Config.in index ed70b3958610..cf7377d2f9b6 100644 --- a/package/arp-scan/Config.in +++ b/package/arp-scan/Config.in @@ -8,3 +8,14 @@ config BR2_PACKAGE_ARP_SCAN discover and fingerprint IP hosts on the local network. https://github.com/royhills/arp-scan + +if BR2_PACKAGE_ARP_SCAN + +config BR2_PACKAGE_ARP_SCAN_DATA + bool "install data (OUI)" + default y # legacy + help + Say 'y' here (the default) to install the data along the + binaries. + +endif # BR2_PACKAGE_ARP_SCAN diff --git a/package/arp-scan/arp-scan.mk b/package/arp-scan/arp-scan.mk index 89644be9d3ef..67eb1881dba2 100644 --- a/package/arp-scan/arp-scan.mk +++ b/package/arp-scan/arp-scan.mk @@ -23,4 +23,8 @@ else ARP_SCAN_CONF_OPTS += --without-libcap endif +ifeq ($(BR2_PACKAGE_ARP_SCAN_DATA),) +ARP_SCAN_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) install-exec +endif + $(eval $(autotools-package)) diff --git a/package/assimp/Config.in b/package/assimp/Config.in index 5ffb50cd79c2..4bddb3598d8c 100644 --- a/package/assimp/Config.in +++ b/package/assimp/Config.in @@ -2,7 +2,7 @@ config BR2_PACKAGE_ASSIMP bool "assimp" depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR - depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # exception_ptr + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 select BR2_PACKAGE_ZLIB select BR2_PACKAGE_ZLIB_FORCE_LIBZLIB help @@ -14,8 +14,6 @@ config BR2_PACKAGE_ASSIMP http://www.assimp.org -comment "assimp needs a toolchain w/ C++, wchar" - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR - -comment "assimp needs exception_ptr" - depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735 +comment "assimp needs a toolchain w/ C++, wchar, gcc >= 7" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_7 diff --git a/package/asterisk/asterisk.hash b/package/asterisk/asterisk.hash index 98ee3bdc71c9..41e1da29628d 100644 --- a/package/asterisk/asterisk.hash +++ b/package/asterisk/asterisk.hash @@ -1,5 +1,5 @@ # Locally computed -sha256 9b93006a87be9c29492299118200e4f66c8369851c66a50fdef5b15dfc4eb2c2 asterisk-16.29.1.tar.gz +sha256 ef1ddc07dc02bb0c5f5ba58a5e42e42bcb63e55ac94199be8e3b5d3910f43736 asterisk-16.30.1.tar.gz # sha1 from: http://downloads.asterisk.org/pub/telephony/sounds/releases # sha256 locally computed diff --git a/package/asterisk/asterisk.mk b/package/asterisk/asterisk.mk index 22ac0334fd0b..4f1a80ba8bee 100644 --- a/package/asterisk/asterisk.mk +++ b/package/asterisk/asterisk.mk @@ -4,7 +4,7 @@ # ################################################################################ -ASTERISK_VERSION = 16.29.1 +ASTERISK_VERSION = 16.30.1 # Use the github mirror: it's an official mirror maintained by Digium, and # provides tarballs, which the main Asterisk git tree (behind Gerrit) does not. ASTERISK_SITE = $(call github,asterisk,asterisk,$(ASTERISK_VERSION)) diff --git a/package/at-spi2-atk/0001-meson-add-tests-option.patch b/package/at-spi2-atk/0001-meson-add-tests-option.patch deleted file mode 100644 index 3a2aefa0908a..000000000000 --- a/package/at-spi2-atk/0001-meson-add-tests-option.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 466d04a57b32417dbf2d5e818af1b7593af5f802 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Sun, 3 May 2020 10:29:36 +0200 -Subject: [PATCH] meson: add tests option - -Add tests option to allow the user to build at-spi2-atk without tests, -it is especially useful as one of the test requires libxml-2.0 - -Signed-off-by: Fabrice Fontaine -[Upstream status: -https://gitlab.gnome.org/GNOME/at-spi2-atk/-/merge_requests/22] ---- - meson.build | 4 +++- - meson_options.txt | 4 ++++ - 2 files changed, 7 insertions(+), 1 deletion(-) - -diff --git a/meson.build b/meson.build -index 9fce5d6..61bc93d 100644 ---- a/meson.build -+++ b/meson.build -@@ -61,4 +61,6 @@ install_data('at-spi2-atk.desktop', - - subdir('droute') - subdir('atk-adaptor') --subdir('tests') -+if get_option('tests') -+ subdir('tests') -+endif -diff --git a/meson_options.txt b/meson_options.txt -index 24c9228..a4abdc2 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -2,3 +2,7 @@ option('disable_p2p', - description: 'Disable peer-to-peer DBus connections', - type: 'boolean', - value: false) -+option('tests', -+ description: 'Whether to build tests', -+ type: 'boolean', -+ value: true) --- -2.26.2 - diff --git a/package/at-spi2-atk/Config.in b/package/at-spi2-atk/Config.in deleted file mode 100644 index 9a7cfde0af70..000000000000 --- a/package/at-spi2-atk/Config.in +++ /dev/null @@ -1,22 +0,0 @@ -config BR2_PACKAGE_AT_SPI2_ATK - bool "at-spi2-atk" - depends on BR2_PACKAGE_XORG7 # at-spi2-core - depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 - depends on BR2_USE_MMU # glib2 - depends on BR2_USE_WCHAR # glib2 - select BR2_PACKAGE_ATK - select BR2_PACKAGE_AT_SPI2_CORE - select BR2_PACKAGE_LIBGLIB2 - help - The At-Spi2 Atk package contains a library that bridges - ATK to At-Spi2 D-Bus service. - - https://www.freedesktop.org/wiki/Accessibility/AT-SPI2/ - -comment "at-spi2-atk needs a toolchain w/ wchar, threads" - depends on BR2_USE_MMU - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS - -comment "at-spi2-atk depends on X.org" - depends on BR2_USE_MMU - depends on !BR2_PACKAGE_XORG7 diff --git a/package/at-spi2-atk/at-spi2-atk.hash b/package/at-spi2-atk/at-spi2-atk.hash deleted file mode 100644 index 9c564c32af75..000000000000 --- a/package/at-spi2-atk/at-spi2-atk.hash +++ /dev/null @@ -1,5 +0,0 @@ -# From http://ftp.acc.umu.se/pub/gnome/sources/at-spi2-atk/2.34/at-spi2-atk-2.34.2.sha256sum -sha256 901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0 at-spi2-atk-2.34.2.tar.xz - -# locally calculated -sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING diff --git a/package/at-spi2-atk/at-spi2-atk.mk b/package/at-spi2-atk/at-spi2-atk.mk deleted file mode 100644 index 232b57723023..000000000000 --- a/package/at-spi2-atk/at-spi2-atk.mk +++ /dev/null @@ -1,19 +0,0 @@ -################################################################################ -# -# at-spi2-atk -# -################################################################################ - -AT_SPI2_ATK_VERSION_MAJOR = 2.34 -AT_SPI2_ATK_VERSION = $(AT_SPI2_ATK_VERSION_MAJOR).2 -AT_SPI2_ATK_SOURCE = at-spi2-atk-$(AT_SPI2_ATK_VERSION).tar.xz -AT_SPI2_ATK_SITE = \ - http://ftp.gnome.org/pub/gnome/sources/at-spi2-atk/$(AT_SPI2_ATK_VERSION_MAJOR) -AT_SPI2_ATK_LICENSE = LGPL-2.1+ -AT_SPI2_ATK_LICENSE_FILES = COPYING -AT_SPI2_ATK_CPE_ID_VENDOR = gnome -AT_SPI2_ATK_INSTALL_STAGING = YES -AT_SPI2_ATK_DEPENDENCIES = atk at-spi2-core libglib2 host-pkgconf -AT_SPI2_ATK_CONF_OPTS = -Dtests=false - -$(eval $(meson-package)) diff --git a/package/at-spi2-core/Config.in b/package/at-spi2-core/Config.in index f56c5b93c49c..2a1b21d375ed 100644 --- a/package/at-spi2-core/Config.in +++ b/package/at-spi2-core/Config.in @@ -1,12 +1,13 @@ config BR2_PACKAGE_AT_SPI2_CORE bool "at-spi2-core" - depends on BR2_PACKAGE_XORG7 # xlib-libxtst depends on BR2_TOOLCHAIN_HAS_THREADS # dbus, glib2 depends on BR2_USE_MMU # glib2 depends on BR2_USE_WCHAR # glib2 + depends on !BR2_STATIC_LIBS # dlopen() select BR2_PACKAGE_DBUS select BR2_PACKAGE_LIBGLIB2 - select BR2_PACKAGE_XLIB_LIBXTST + select BR2_PACKAGE_LIBXML2 + select BR2_PACKAGE_XLIB_LIBXTST if BR2_PACKAGE_XORG7 # optionally for X11 help The At-Spi2 Core package is a part of the GNOME Accessibility Project. It provides a Service Provider @@ -16,10 +17,6 @@ config BR2_PACKAGE_AT_SPI2_CORE https://wiki.gnome.org/Accessibility -comment "at-spi2-core needs a toolchain w/ wchar, threads" +comment "at-spi2-core needs a toolchain w/ dynamic library, wchar, threads" depends on BR2_USE_MMU - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS - -comment "at-spi2-core depends on X.org" - depends on BR2_USE_MMU - depends on !BR2_PACKAGE_XORG7 + depends on BR2_STATIC_LIBS || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/at-spi2-core/at-spi2-core.hash b/package/at-spi2-core/at-spi2-core.hash index 764e4c3661c5..4257ba03a7fc 100644 --- a/package/at-spi2-core/at-spi2-core.hash +++ b/package/at-spi2-core/at-spi2-core.hash @@ -1,5 +1,5 @@ -# From https://download.gnome.org/sources/at-spi2-core/2.36/at-spi2-core-2.36.0.sha256sum -sha256 88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a at-spi2-core-2.36.0.tar.xz +# From https://download.gnome.org/sources/at-spi2-core/2.50/at-spi2-core-2.50.0.sha256sum +sha256 e9f5a8c8235c9dd963b2171de9120301129c677dde933955e1df618b949c4adc at-spi2-core-2.50.0.tar.xz # locally calculated sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING diff --git a/package/at-spi2-core/at-spi2-core.mk b/package/at-spi2-core/at-spi2-core.mk index f0b019c0edab..828280de1ad1 100644 --- a/package/at-spi2-core/at-spi2-core.mk +++ b/package/at-spi2-core/at-spi2-core.mk @@ -4,17 +4,38 @@ # ################################################################################ -AT_SPI2_CORE_VERSION_MAJOR = 2.36 +AT_SPI2_CORE_VERSION_MAJOR = 2.50 AT_SPI2_CORE_VERSION = $(AT_SPI2_CORE_VERSION_MAJOR).0 AT_SPI2_CORE_SOURCE = at-spi2-core-$(AT_SPI2_CORE_VERSION).tar.xz AT_SPI2_CORE_SITE = https://download.gnome.org/sources/at-spi2-core/$(AT_SPI2_CORE_VERSION_MAJOR) AT_SPI2_CORE_LICENSE = LGPL-2.1+ AT_SPI2_CORE_LICENSE_FILES = COPYING AT_SPI2_CORE_INSTALL_STAGING = YES -AT_SPI2_CORE_DEPENDENCIES = host-pkgconf dbus libglib2 xlib_libXtst \ +AT_SPI2_CORE_DEPENDENCIES = host-pkgconf dbus libglib2 libxml2 \ $(TARGET_NLS_DEPENDENCIES) AT_SPI2_CORE_CONF_OPTS = -Ddbus_daemon=/usr/bin/dbus-daemon +ifeq ($(BR2_PACKAGE_XORG7),y) +AT_SPI2_CORE_CONF_OPTS += -Dx11=enabled +AT_SPI2_CORE_DEPENDENCIES += xlib_libXtst +else +AT_SPI2_CORE_CONF_OPTS += -Dx11=disabled +endif + +ifeq ($(BR2_PACKAGE_GOBJECT_INTROSPECTION),y) +AT_SPI2_CORE_CONF_OPTS += -Dintrospection=enabled +AT_SPI2_CORE_DEPENDENCIES += gobject-introspection +else +AT_SPI2_CORE_CONF_OPTS += -Dintrospection=disabled +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +AT_SPI2_CORE_CONF_OPTS += -Duse_systemd=true +AT_SPI2_CORE_DEPENDENCIES += systemd +else +AT_SPI2_CORE_CONF_OPTS += -Duse_systemd=false +endif + AT_SPI2_CORE_LDFLAGS = $(TARGET_LDFLAGS) $(TARGET_NLS_LIBS) $(eval $(meson-package)) diff --git a/package/atk/Config.in b/package/atk/Config.in deleted file mode 100644 index d9371b879bee..000000000000 --- a/package/atk/Config.in +++ /dev/null @@ -1,14 +0,0 @@ -config BR2_PACKAGE_ATK - bool "atk" - depends on BR2_USE_WCHAR # glib2 - depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 - depends on BR2_USE_MMU # glib2 - select BR2_PACKAGE_LIBGLIB2 - help - The ATK accessibility toolkit, needed to build GTK+-2.x. - - https://gitlab.gnome.org/GNOME/atk - -comment "atk needs a toolchain w/ wchar, threads" - depends on BR2_USE_MMU - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/atk/atk.hash b/package/atk/atk.hash deleted file mode 100644 index d8cd69ff1fcd..000000000000 --- a/package/atk/atk.hash +++ /dev/null @@ -1,5 +0,0 @@ -# From http://ftp.gnome.org/pub/gnome/sources/atk/2.38/atk-2.38.0.sha256sum -sha256 ac4de2a4ef4bd5665052952fe169657e65e895c5057dffb3c2a810f6191a0c36 atk-2.38.0.tar.xz - -# Hash for license file -sha256 d245807f90032872d1438d741ed21e2490e1175dc8aa3afa5ddb6c8e529b58e5 COPYING diff --git a/package/atk/atk.mk b/package/atk/atk.mk deleted file mode 100644 index 2820fb486dfe..000000000000 --- a/package/atk/atk.mk +++ /dev/null @@ -1,25 +0,0 @@ -################################################################################ -# -# atk -# -################################################################################ - -ATK_VERSION_MAJOR = 2.38 -ATK_VERSION = $(ATK_VERSION_MAJOR).0 -ATK_SOURCE = atk-$(ATK_VERSION).tar.xz -ATK_SITE = http://ftp.gnome.org/pub/gnome/sources/atk/$(ATK_VERSION_MAJOR) -ATK_LICENSE = LGPL-2.0+ -ATK_LICENSE_FILES = COPYING -ATK_INSTALL_STAGING = YES -ATK_DEPENDENCIES = libglib2 $(TARGET_NLS_DEPENDENCIES) - -ifeq ($(BR2_PACKAGE_GOBJECT_INTROSPECTION),y) -ATK_CONF_OPTS += -Dintrospection=true -ATK_DEPENDENCIES += gobject-introspection -else -ATK_CONF_OPTS += -Dintrospection=false -endif - -ATK_LDFLAGS = $(TARGET_LDFLAGS) $(TARGET_NLS_LIBS) - -$(eval $(meson-package)) diff --git a/package/atkmm/Config.in b/package/atkmm/Config.in index 1f370356ea7b..571d7e69adf8 100644 --- a/package/atkmm/Config.in +++ b/package/atkmm/Config.in @@ -2,10 +2,10 @@ config BR2_PACKAGE_ATKMM bool "atkmm (latest)" depends on BR2_INSTALL_LIBSTDCPP # glibmm depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 # libsigc - depends on BR2_TOOLCHAIN_HAS_THREADS # atk/glibmm -> libglib2 - depends on BR2_USE_MMU # atk/glibmm -> libglib2 - depends on BR2_USE_WCHAR # atk/glibmm -> libglib2 - select BR2_PACKAGE_ATK + depends on BR2_TOOLCHAIN_HAS_THREADS # at-spi2-core/glibmm -> libglib2 + depends on BR2_USE_MMU # at-spi2-core/glibmm -> libglib2 + depends on BR2_USE_WCHAR # at-spi2-core/glibmm -> libglib2 + select BR2_PACKAGE_AT_SPI2_CORE select BR2_PACKAGE_GLIBMM select BR2_PACKAGE_LIBSIGC diff --git a/package/atkmm/atkmm.hash b/package/atkmm/atkmm.hash index 9e2bb2830ca9..08cf86b3df9d 100644 --- a/package/atkmm/atkmm.hash +++ b/package/atkmm/atkmm.hash @@ -1,5 +1,5 @@ -# From https://download.gnome.org/sources/atkmm/2.36/atkmm-2.36.1.sha256sum -sha256 e11324bfed1b6e330a02db25cecc145dca03fb0dff47f0710c85e317687da458 atkmm-2.36.1.tar.xz +# From https://download.gnome.org/sources/atkmm/2.36/atkmm-2.36.2.sha256sum +sha256 6f62dd99f746985e573605937577ccfc944368f606a71ca46342d70e1cdae079 atkmm-2.36.2.tar.xz # locally computed sha256 a9bdde5616ecdd1e980b44f360600ee8783b1f99b8cc83a2beb163a0a390e861 COPYING sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING.tools diff --git a/package/atkmm/atkmm.mk b/package/atkmm/atkmm.mk index 7ceb87b04706..ec63d8ecbcf3 100644 --- a/package/atkmm/atkmm.mk +++ b/package/atkmm/atkmm.mk @@ -5,12 +5,12 @@ ################################################################################ ATKMM_VERSION_MAJOR = 2.36 -ATKMM_VERSION = $(ATKMM_VERSION_MAJOR).1 +ATKMM_VERSION = $(ATKMM_VERSION_MAJOR).2 ATKMM_SOURCE = atkmm-$(ATKMM_VERSION).tar.xz ATKMM_SITE = https://download.gnome.org/sources/atkmm/$(ATKMM_VERSION_MAJOR) ATKMM_LICENSE = LGPL-2.1+ (library), GPL-2.0+ (tools) ATKMM_LICENSE_FILES = COPYING COPYING.tools ATKMM_INSTALL_STAGING = YES -ATKMM_DEPENDENCIES = atk glibmm libsigc host-pkgconf +ATKMM_DEPENDENCIES = at-spi2-core glibmm libsigc host-pkgconf $(eval $(meson-package)) diff --git a/package/atkmm2_28/Config.in b/package/atkmm2_28/Config.in index 2340465b2034..e88073b87a36 100644 --- a/package/atkmm2_28/Config.in +++ b/package/atkmm2_28/Config.in @@ -2,10 +2,10 @@ config BR2_PACKAGE_ATKMM2_28 bool "atkmm (2.28.x)" depends on BR2_INSTALL_LIBSTDCPP # glibmm depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++11 - depends on BR2_TOOLCHAIN_HAS_THREADS # atk/glibmm -> libglib2 - depends on BR2_USE_MMU # atk/glibmm -> libglib2 - depends on BR2_USE_WCHAR # atk/glibmm -> libglib2 - select BR2_PACKAGE_ATK + depends on BR2_TOOLCHAIN_HAS_THREADS # at-spi2-core/glibmm -> libglib2 + depends on BR2_USE_MMU # at-spi2-core/glibmm -> libglib2 + depends on BR2_USE_WCHAR # at-spi2-core/glibmm -> libglib2 + select BR2_PACKAGE_AT_SPI2_CORE select BR2_PACKAGE_GLIBMM2_66 select BR2_PACKAGE_LIBSIGC2 diff --git a/package/atkmm2_28/atkmm2_28.mk b/package/atkmm2_28/atkmm2_28.mk index dc57363cf53b..b56da61ec089 100644 --- a/package/atkmm2_28/atkmm2_28.mk +++ b/package/atkmm2_28/atkmm2_28.mk @@ -11,6 +11,6 @@ ATKMM2_28_SITE = https://download.gnome.org/sources/atkmm/$(ATKMM2_28_VERSION_MA ATKMM2_28_LICENSE = LGPL-2.1+ (library), GPL-2.0+ (tools) ATKMM2_28_LICENSE_FILES = COPYING COPYING.tools ATKMM2_28_INSTALL_STAGING = YES -ATKMM2_28_DEPENDENCIES = atk glibmm2_66 libsigc2 host-pkgconf +ATKMM2_28_DEPENDENCIES = at-spi2-core glibmm2_66 libsigc2 host-pkgconf $(eval $(meson-package)) diff --git a/package/atop/0001-atop.h-include-time.h.patch b/package/atop/0001-atop.h-include-time.h.patch new file mode 100644 index 000000000000..2b8a390e71c7 --- /dev/null +++ b/package/atop/0001-atop.h-include-time.h.patch @@ -0,0 +1,41 @@ +From 03c5c4dd29bc7590baccb55a36d61e7f4b39c1fe Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sun, 29 Oct 2023 18:56:35 +0100 +Subject: [PATCH] atop.h: include time.h + +Include time.h to avoid the following build failure with musl: + +atop.h:157:1: error: unknown type name 'time_t' + 157 | time_t normalize_epoch(time_t, long); + | ^~~~~~ +atop.h:157:1: note: 'time_t' is defined in header ''; did you forget to '#include '? +atop.h:157:40: error: expected ')' before 'long' + 157 | time_t normalize_epoch(time_t, long); + | ^~~~~ + | ) + +Fixes: + - http://autobuild.buildroot.org/results/e7ec8d16f2299320f374a0198c8e9b18a102b037 + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/Atoptool/atop/pull/280 +--- + atop.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/atop.h b/atop.h +index 9274fc5..3d5fea4 100644 +--- a/atop.h ++++ b/atop.h +@@ -24,6 +24,8 @@ + #ifndef __ATOP__ + #define __ATOP__ + ++#include ++ + #define EQ 0 + #define SECONDSINDAY 86400 + #define RAWNAMESZ 256 +-- +2.42.0 + diff --git a/package/atop/atop.hash b/package/atop/atop.hash index e42354739abc..0b7ee061dd9f 100644 --- a/package/atop/atop.hash +++ b/package/atop/atop.hash @@ -1,5 +1,5 @@ # Locally computed: -sha256 3b002cb9774a7d6b3e820451773ae5e909b5e725738c6f375f14d1c1976d9fba atop-2.8.0.tar.gz +sha256 8d82f211b712a227000ef254c0a2b53bcb71235bf40d93316acce80b04bff926 atop-2.9.0.tar.gz # Hash for license file: sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 COPYING diff --git a/package/atop/atop.mk b/package/atop/atop.mk index 04a554b474a6..6a0ff3a0d14b 100644 --- a/package/atop/atop.mk +++ b/package/atop/atop.mk @@ -4,7 +4,7 @@ # ################################################################################ -ATOP_VERSION = 2.8.0 +ATOP_VERSION = 2.9.0 ATOP_SITE = http://www.atoptool.nl/download ATOP_LICENSE = GPL-2.0+ ATOP_LICENSE_FILES = COPYING diff --git a/package/aubio/aubio.mk b/package/aubio/aubio.mk index 64174a113ddc..bfc627fa919a 100644 --- a/package/aubio/aubio.mk +++ b/package/aubio/aubio.mk @@ -9,6 +9,7 @@ AUBIO_SITE = https://aubio.org/pub AUBIO_SOURCE = aubio-$(AUBIO_VERSION).tar.bz2 AUBIO_LICENSE = GPL-3.0+ AUBIO_LICENSE_FILES = COPYING +AUBIO_CPE_ID_VENDOR = aubio AUBIO_INSTALL_STAGING = YES AUBIO_DEPENDENCIES = host-pkgconf diff --git a/package/audit/0001-Define-__attribute_malloc__-when-needed.patch b/package/audit/0001-Define-__attribute_malloc__-when-needed.patch new file mode 100644 index 000000000000..3dd5359bfc3e --- /dev/null +++ b/package/audit/0001-Define-__attribute_malloc__-when-needed.patch @@ -0,0 +1,35 @@ +From cf93d8579d5cec0b1ba585bd661776f03c2743ba Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Tue, 27 Jun 2023 20:19:13 +0200 +Subject: [PATCH] Define __attribute_malloc__ when needed + +attribute_malloc is not available on musl + +auparse.h: In function 'auparse_init': +auparse.h:54:2: error: expected declaration specifiers before '__attribute_malloc__' + 54 | __attribute_malloc__ __attr_dealloc (auparse_destroy, 1); + +Upstream: https://github.com/linux-audit/audit-userspace/pull/311 + +Signed-off-by: Bernd Kuhls +--- + auparse/auparse.h | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/auparse/auparse.h b/auparse/auparse.h +index 95cf256d..5cb7402e 100644 +--- a/auparse/auparse.h ++++ b/auparse/auparse.h +@@ -32,6 +32,9 @@ + # define __attr_dealloc(dealloc, argno) + # define __attr_dealloc_free + #endif ++#ifndef __attribute_malloc__ ++# define __attribute_malloc__ ++#endif + + #ifdef __cplusplus + extern "C" { +-- +2.39.2 + diff --git a/package/audit/audit.hash b/package/audit/audit.hash index 6260f158d892..310b0a0f6af7 100644 --- a/package/audit/audit.hash +++ b/package/audit/audit.hash @@ -1,4 +1,4 @@ #Locally computed -sha256 8b4c78632a9301a1c7f859b0e38fc0b9c260b8214d6b7c771bf28b3d73a62597 audit-3.0.7.tar.gz +sha256 46e46b37623cce09e6ee134e78d668afc34f4e1c870c853ef12e4193078cfe87 audit-3.1.1.tar.gz sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING sha256 f18a0811fa0e220ccbc42f661545e77f0388631e209585ed582a1c693029c6aa COPYING.LIB diff --git a/package/audit/audit.mk b/package/audit/audit.mk index 77e7c240001a..e77e06bd6ba6 100644 --- a/package/audit/audit.mk +++ b/package/audit/audit.mk @@ -4,7 +4,7 @@ # ################################################################################ -AUDIT_VERSION = 3.0.7 +AUDIT_VERSION = 3.1.1 AUDIT_SITE = http://people.redhat.com/sgrubb/audit AUDIT_LICENSE = GPL-2.0+ (programs), LGPL-2.1+ (libraries) AUDIT_LICENSE_FILES = COPYING COPYING.LIB diff --git a/package/aufs-util/aufs-util.mk b/package/aufs-util/aufs-util.mk index d954f0295878..32f3bca1514d 100644 --- a/package/aufs-util/aufs-util.mk +++ b/package/aufs-util/aufs-util.mk @@ -6,7 +6,7 @@ # linux-headers AUFS_UTIL_VERSION = $(call qstrip,$(BR2_PACKAGE_AUFS_UTIL_VERSION)) -AUFS_UTIL_SITE = http://git.code.sf.net/p/aufs/aufs-util +AUFS_UTIL_SITE = https://git.code.sf.net/p/aufs/aufs-util AUFS_UTIL_SITE_METHOD = git AUFS_UTIL_LICENSE = GPL-2.0 AUFS_UTIL_LICENSE_FILES = COPYING diff --git a/package/aufs/aufs.mk b/package/aufs/aufs.mk index 4e95a350a028..d00e7a1a2118 100644 --- a/package/aufs/aufs.mk +++ b/package/aufs/aufs.mk @@ -9,7 +9,7 @@ AUFS_LICENSE = GPL-2.0 AUFS_LICENSE_FILES = COPYING ifeq ($(BR2_PACKAGE_AUFS_SERIES),3) -AUFS_SITE = http://git.code.sf.net/p/aufs/aufs3-standalone +AUFS_SITE = https://git.code.sf.net/p/aufs/aufs3-standalone AUFS_SITE_METHOD = git else ifeq ($(BR2_PACKAGE_AUFS_SERIES),4) AUFS_SITE = $(call github,sfjro,aufs4-standalone,$(AUFS_VERSION)) diff --git a/package/aumix/aumix.mk b/package/aumix/aumix.mk index a4001f5bbb7d..03072d5d359f 100644 --- a/package/aumix/aumix.mk +++ b/package/aumix/aumix.mk @@ -8,7 +8,7 @@ AUMIX_VERSION = 2.9.1 AUMIX_SOURCE = aumix-$(AUMIX_VERSION).tar.bz2 AUMIX_SITE = http://jpj.net/~trevor/aumix/releases AUMIX_AUTORECONF = YES -AUMIX_GETTEXTIZE = YES +AUMIX_AUTOPOINT = YES AUMIX_LICENSE = GPL-2.0+ AUMIX_LICENSE_FILES = COPYING diff --git a/package/autoconf-archive/autoconf-archive.hash b/package/autoconf-archive/autoconf-archive.hash index ff7710dc2b63..c4658e6f917e 100644 --- a/package/autoconf-archive/autoconf-archive.hash +++ b/package/autoconf-archive/autoconf-archive.hash @@ -1,4 +1,6 @@ +# From https://lists.gnu.org/archive/html/autoconf-archive-announce/2023-02/msg00000.html +sha1 e26d15db0f1ec60e9ea8ff024cf3ee895fa2eabd autoconf-archive-2023.02.20.tar.xz # Computed locally -sha256 e07454f00d8cae7907bed42d0747798927809947684d94c37207a4d63a32f423 autoconf-archive-2022.09.03.tar.xz +sha256 71d4048479ae28f1f5794619c3d72df9c01df49b1c628ef85fde37596dc31a33 autoconf-archive-2023.02.20.tar.xz sha256 e6037104443f9a7829b2aa7c5370d0789a7bda3ca65a0b904cdc0c2e285d9195 COPYING sha256 23ed0b84fa023bfa33433b498192cd08a3bfb1f4864a8ed791a84f3eb48b2dd2 COPYING.EXCEPTION diff --git a/package/autoconf-archive/autoconf-archive.mk b/package/autoconf-archive/autoconf-archive.mk index 0ffdf61ddfff..07ac7e974333 100644 --- a/package/autoconf-archive/autoconf-archive.mk +++ b/package/autoconf-archive/autoconf-archive.mk @@ -4,7 +4,7 @@ # ################################################################################ -AUTOCONF_ARCHIVE_VERSION = 2022.09.03 +AUTOCONF_ARCHIVE_VERSION = 2023.02.20 AUTOCONF_ARCHIVE_SOURCE = autoconf-archive-$(AUTOCONF_ARCHIVE_VERSION).tar.xz AUTOCONF_ARCHIVE_SITE = $(BR2_GNU_MIRROR)/autoconf-archive AUTOCONF_ARCHIVE_LICENSE = GPL-3.0+ with exception diff --git a/package/autoconf/autoconf.mk b/package/autoconf/autoconf.mk index 7e0850422b01..15ce9d5927e2 100644 --- a/package/autoconf/autoconf.mk +++ b/package/autoconf/autoconf.mk @@ -23,4 +23,7 @@ $(eval $(host-autotools-package)) # variables used by other packages AUTOCONF = $(HOST_DIR)/bin/autoconf -I "$(ACLOCAL_DIR)" -I "$(ACLOCAL_HOST_DIR)" AUTOHEADER = $(HOST_DIR)/bin/autoheader -I "$(ACLOCAL_DIR)" -I "$(ACLOCAL_HOST_DIR)" -AUTORECONF = $(HOST_CONFIGURE_OPTS) ACLOCAL="$(ACLOCAL)" AUTOCONF="$(AUTOCONF)" AUTOHEADER="$(AUTOHEADER)" AUTOMAKE="$(AUTOMAKE)" AUTOPOINT=/bin/true GTKDOCIZE=/bin/true $(HOST_DIR)/bin/autoreconf -f -i +AUTORECONF = $(HOST_CONFIGURE_OPTS) ACLOCAL="$(ACLOCAL)" \ + AUTOCONF="$(AUTOCONF)" AUTOHEADER="$(AUTOHEADER)" \ + AUTOMAKE="$(AUTOMAKE)" GTKDOCIZE=/bin/true \ + $(HOST_DIR)/bin/autoreconf -f -i diff --git a/package/avrdude/Config.in b/package/avrdude/Config.in index cbbd07666754..06fee0ca7fec 100644 --- a/package/avrdude/Config.in +++ b/package/avrdude/Config.in @@ -3,7 +3,6 @@ config BR2_PACKAGE_AVRDUDE depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_WCHAR # elfutils depends on !BR2_STATIC_LIBS # elfutils - depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb select BR2_PACKAGE_ELFUTILS select BR2_PACKAGE_LIBUSB @@ -27,7 +26,6 @@ comment "SPI support needs a toolchain w/ linux headers >= 4.8" endif -comment "avrdude needs a uClibc or glibc toolchain w/ threads, wchar, dynamic library, gcc >= 4.9" +comment "avrdude needs a toolchain w/ threads, wchar, dynamic library, gcc >= 4.9" depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR \ - || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 \ - || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) + || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 diff --git a/package/avrdude/avrdude.hash b/package/avrdude/avrdude.hash index d53d4dd60ded..cb34e6b6f9c3 100644 --- a/package/avrdude/avrdude.hash +++ b/package/avrdude/avrdude.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 bbe2cf09163b3561ea28e9d48c2a588838f7adcd7858e34ced9c886feacb5be6 avrdude-6.4.tar.gz +sha256 beb4e0b0a07f8d47e550329ab93c345d5252350de6f833afde51b4d8bd934674 avrdude-7.2.tar.gz sha256 201babc7da198873304a77a30dbfc7ca449c9bba52df2dffa4cca0009dbdfcb2 COPYING diff --git a/package/avrdude/avrdude.mk b/package/avrdude/avrdude.mk index accd92c1d5db..89637d4ca63c 100644 --- a/package/avrdude/avrdude.mk +++ b/package/avrdude/avrdude.mk @@ -4,22 +4,19 @@ # ################################################################################ -AVRDUDE_VERSION = 6.4 +AVRDUDE_VERSION = 7.2 AVRDUDE_SITE = $(call github,avrdudes,avrdude,v$(AVRDUDE_VERSION)) AVRDUDE_LICENSE = GPL-2.0+ AVRDUDE_LICENSE_FILES = COPYING -# Sources coming from git, without generated configure and Makefile.in -# files. -AVRDUDE_AUTORECONF = YES -AVRDUDE_CONF_OPTS = --enable-linuxgpio +AVRDUDE_CONF_OPTS = -DHAVE_LINUXGPIO=ON AVRDUDE_DEPENDENCIES = elfutils libusb libusb-compat ncurses \ host-flex host-bison ifeq ($(BR2_PACKAGE_AVRDUDE_SPI),y) -AVRDUDE_CONF_OPTS += --enable-linuxspi +AVRDUDE_CONF_OPTS += -DHAVE_LINUXSPI=ON else -AVRDUDE_CONF_OPTS += --disable-linuxspi +AVRDUDE_CONF_OPTS += -DHAVE_LINUXSPI=OFF endif ifeq ($(BR2_PACKAGE_LIBFTDI1),y) @@ -40,4 +37,4 @@ endef AVRDUDE_POST_INSTALL_TARGET_HOOKS += AVRDUDE_REMOVE_BACKUP_FILE -$(eval $(autotools-package)) +$(eval $(cmake-package)) diff --git a/package/avro-c/avro-c.hash b/package/avro-c/avro-c.hash index b52a787ed552..83b5759a16ea 100644 --- a/package/avro-c/avro-c.hash +++ b/package/avro-c/avro-c.hash @@ -1,5 +1,5 @@ -# From https://downloads.apache.org/avro/avro-1.11.1/c/avro-c-1.11.1.tar.gz.sha512 -sha512 e72e8c245a8b86326bc18a5d5127e9beeaceaf805e8a62760fd88d627e29954c750346485bb43822df408c8a172d910c27ddf7e3815bddbdb04d16c54d859323 avro-c-1.11.1.tar.gz +# From https://downloads.apache.org/avro/avro-1.11.3/c/avro-c-1.11.3.tar.gz.sha512 +sha512 56ce8c6f0b06b779679a6e7a2b738ec94277920e9b3d7c6f1062a0b47db80b90dccf89df9d977ec1f120211f7c2f33845e18df4961818e5c5cc93aaec18e1302 avro-c-1.11.3.tar.gz # License files sha256 d62488d6ba17132e92c23c03c80bfedc848267f96ab36489fec860f76cf6819a LICENSE diff --git a/package/avro-c/avro-c.mk b/package/avro-c/avro-c.mk index f217c1d7ed79..d7efdc2003ff 100644 --- a/package/avro-c/avro-c.mk +++ b/package/avro-c/avro-c.mk @@ -5,7 +5,7 @@ ################################################################################ # When updating the version, please also update python-avro -AVRO_C_VERSION = 1.11.1 +AVRO_C_VERSION = 1.11.3 AVRO_C_SITE = https://www-eu.apache.org/dist/avro/avro-$(AVRO_C_VERSION)/c AVRO_C_LICENSE = Apache-2.0 AVRO_C_LICENSE_FILES = LICENSE diff --git a/package/azure-iot-sdk-c/azure-iot-sdk-c.hash b/package/azure-iot-sdk-c/azure-iot-sdk-c.hash index 187b90a35ac7..b960c0e571d0 100644 --- a/package/azure-iot-sdk-c/azure-iot-sdk-c.hash +++ b/package/azure-iot-sdk-c/azure-iot-sdk-c.hash @@ -1,5 +1,5 @@ # Locally computed: -sha256 7c23506e5acd6f400982f6f7a053d494c83b8a709c449bb9ded07aff9cfada78 azure-iot-sdk-c-LTS_07_2022_Ref01-br1.tar.gz +sha256 7b52b9886a3aff20a55a0d5bc5e140c212f85fd06af18c31291c15d363743a77 azure-iot-sdk-c-LTS_01_2023_Ref02-br1.tar.gz # Hash for license files: sha256 be2e9913fad9ff33607287c728f392579e2a6cc83e51b203ef6274c41db02ee7 LICENSE diff --git a/package/azure-iot-sdk-c/azure-iot-sdk-c.mk b/package/azure-iot-sdk-c/azure-iot-sdk-c.mk index 42fdd56b4887..e07cdf986e4f 100644 --- a/package/azure-iot-sdk-c/azure-iot-sdk-c.mk +++ b/package/azure-iot-sdk-c/azure-iot-sdk-c.mk @@ -4,7 +4,7 @@ # ################################################################################ -AZURE_IOT_SDK_C_VERSION = LTS_07_2022_Ref01 +AZURE_IOT_SDK_C_VERSION = LTS_01_2023_Ref02 AZURE_IOT_SDK_C_SITE = https://github.com/Azure/azure-iot-sdk-c AZURE_IOT_SDK_C_SITE_METHOD = git AZURE_IOT_SDK_C_GIT_SUBMODULES = YES @@ -14,4 +14,10 @@ AZURE_IOT_SDK_C_INSTALL_STAGING = YES AZURE_IOT_SDK_C_DEPENDENCIES = libxml2 openssl libcurl util-linux AZURE_IOT_SDK_C_CONF_OPTS = -Dskip_samples=ON +ifeq ($(BR2_STATIC_LIBS),y) +AZURE_IOT_SDK_C_CONF_OPTS += -Duse_prov_client=OFF +else +AZURE_IOT_SDK_C_CONF_OPTS += -Duse_prov_client=ON +endif + $(eval $(cmake-package)) diff --git a/package/bat/bat.hash b/package/bat/bat.hash index f4d3e32c3478..a79cb8f9a3c6 100644 --- a/package/bat/bat.hash +++ b/package/bat/bat.hash @@ -1,4 +1,4 @@ # Locally generated -sha256 7940641baaa61cd3bcd1c3db4804d179609d6ccd955868928a129bf3f853e0b2 bat-0.19.0.tar.gz +sha256 b29af37f274019cf1a36d9483c6f30ff780d3be9d0a9e6a96a43737388b7e409 bat-0.23.0.tar.gz sha256 c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 LICENSE-APACHE -sha256 64de710b6309a7db5e44ad0af382300c7fb6f6d116d8ae32f0164e05db033068 LICENSE-MIT +sha256 dccda9eb9533f5c65624a1106536c6cfde46008d58e60b3faf154e8b9fd5b46e LICENSE-MIT diff --git a/package/bat/bat.mk b/package/bat/bat.mk index dc29a85429cb..395134df17da 100644 --- a/package/bat/bat.mk +++ b/package/bat/bat.mk @@ -4,7 +4,7 @@ # ################################################################################ -BAT_VERSION = 0.19.0 +BAT_VERSION = 0.23.0 BAT_SITE = $(call github,sharkdp,bat,v$(BAT_VERSION)) BAT_LICENSE = Apache-2.0 or MIT BAT_LICENSE_FILES = LICENSE-APACHE LICENSE-MIT diff --git a/package/batman-adv/batman-adv.hash b/package/batman-adv/batman-adv.hash index 14a92c231ae1..b95dfa34dda8 100644 --- a/package/batman-adv/batman-adv.hash +++ b/package/batman-adv/batman-adv.hash @@ -1,7 +1,8 @@ -# From https://downloads.open-mesh.org/batman/releases/batman-adv-2022.2/batman-adv-2022.2.tar.gz.sha1 -sha1 e1829e10fc37ea674a20cb9ba1d6c1483042fbfa batman-adv-2022.2.tar.gz +# From https://downloads.open-mesh.org/batman/stable/sources/batman-adv/batman-adv-2023.1.tar.gz.sha1 +sha1 e3d6e8d4db772156d7ad021b9a166832633a2ea5 batman-adv-2023.1.tar.gz +# locally computed +sha256 f46a7286660a5ec3506a1be7ef60b471c51ac70550597d598040479ab7b936b8 batman-adv-2022.3.tar.gz # Hash for license files -sha256 218ffb534fead1c9b5b0d90ec1b2fba688209cdf00e861bece1cbf469fe69953 batman-adv-2022.3.tar.gz sha256 cecbf53d1148e13256ac29f8b900655b7fc8dc12d59939a95bc2323ea1747025 LICENSES/preferred/GPL-2.0 sha256 323c587d0ccf10e376f8bf9a7f31fb4ca6078105194b42e0b1e0ee2bc9bde71f LICENSES/preferred/MIT diff --git a/package/batman-adv/batman-adv.mk b/package/batman-adv/batman-adv.mk index 75b8292ee1b6..5b50572d1157 100644 --- a/package/batman-adv/batman-adv.mk +++ b/package/batman-adv/batman-adv.mk @@ -4,7 +4,7 @@ # ################################################################################ -BATMAN_ADV_VERSION = 2022.3 +BATMAN_ADV_VERSION = 2023.1 BATMAN_ADV_SITE = https://downloads.open-mesh.org/batman/stable/sources/batman-adv BATMAN_ADV_LICENSE = GPL-2.0, MIT (batman_adv.h) BATMAN_ADV_LICENSE_FILES = LICENSES/preferred/GPL-2.0 LICENSES/preferred/MIT diff --git a/package/bcm2835/bcm2835.hash b/package/bcm2835/bcm2835.hash index 2cdc35fcee4b..802f34335bbc 100644 --- a/package/bcm2835/bcm2835.hash +++ b/package/bcm2835/bcm2835.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 564920d205977d7e2846e434947708455d468d3a952feca9faef643abd03a227 bcm2835-1.71.tar.gz +sha256 e67a986462618988a5a86752e36e3ebdd7c5cae66940ff7330aea243b2762525 bcm2835-1.73.tar.gz sha256 8b1ba204bb69a0ade2bfcf65ef294a920f6bb361b317dba43c7ef29d96332b9b COPYING diff --git a/package/bcm2835/bcm2835.mk b/package/bcm2835/bcm2835.mk index 4870aa10ba42..dcf21cb5f031 100644 --- a/package/bcm2835/bcm2835.mk +++ b/package/bcm2835/bcm2835.mk @@ -4,7 +4,7 @@ # ################################################################################ -BCM2835_VERSION = 1.71 +BCM2835_VERSION = 1.73 BCM2835_SITE = https://www.airspayce.com/mikem/bcm2835 BCM2835_LICENSE = GPL-3.0 BCM2835_LICENSE_FILES = COPYING diff --git a/package/bdwgc/bdwgc.hash b/package/bdwgc/bdwgc.hash index 917089da0889..8fa49b4585eb 100644 --- a/package/bdwgc/bdwgc.hash +++ b/package/bdwgc/bdwgc.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 f30107bcb062e0920a790ffffa56d9512348546859364c23a14be264b38836a0 gc-8.2.2.tar.gz +sha256 3d0d3cdbe077403d3106bb40f0cbb563413d6efdbb2a7e1cd6886595dec48fc2 gc-8.2.4.tar.gz sha256 a9b077aeb4e9e1aaf9742119d8023ef26f52f445cdc3f60d390bf59e1647f54a README.QUICK diff --git a/package/bdwgc/bdwgc.mk b/package/bdwgc/bdwgc.mk index e776fb745835..bff703ee9849 100644 --- a/package/bdwgc/bdwgc.mk +++ b/package/bdwgc/bdwgc.mk @@ -4,7 +4,7 @@ # ################################################################################ -BDWGC_VERSION = 8.2.2 +BDWGC_VERSION = 8.2.4 BDWGC_SOURCE = gc-$(BDWGC_VERSION).tar.gz BDWGC_SITE = https://github.com/ivmai/bdwgc/releases/download/v$(BDWGC_VERSION) BDWGC_INSTALL_STAGING = YES diff --git a/package/bento4/0001-Add-support-for-cmake-install.patch b/package/bento4/0001-Add-support-for-cmake-install.patch deleted file mode 100644 index cec0cb18b9b2..000000000000 --- a/package/bento4/0001-Add-support-for-cmake-install.patch +++ /dev/null @@ -1,130 +0,0 @@ -From ba95f55c495c4c34c75a95de843acfa00f6afe24 Mon Sep 17 00:00:00 2001 -From: Harry Mallon -Date: Fri, 9 Jul 2021 15:50:26 +0100 -Subject: [PATCH] Add support for cmake install - -Downloaded from upstream commit -https://github.com/axiomatic-systems/Bento4/commit/ba95f55c495c4c34c75a95de843acfa00f6afe24 - -Signed-off-by: Bernd Kuhls ---- - Build/cmake/Config.cmake.in | 4 ++ - CMakeLists.txt | 73 ++++++++++++++++++++++++++++++++++--- - 2 files changed, 71 insertions(+), 6 deletions(-) - create mode 100644 Build/cmake/Config.cmake.in - -diff --git a/Build/cmake/Config.cmake.in b/Build/cmake/Config.cmake.in -new file mode 100644 -index 00000000..38bbde7b ---- /dev/null -+++ b/Build/cmake/Config.cmake.in -@@ -0,0 +1,4 @@ -+@PACKAGE_INIT@ -+ -+include("${CMAKE_CURRENT_LIST_DIR}/@TARGETS_EXPORT_NAME@.cmake") -+check_required_components("@PROJECT_NAME@") -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 6de3bfe1..6ebf127f 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -7,7 +7,14 @@ else() - cmake_minimum_required(VERSION 3.10) - endif() - --project(bento4) -+function(get_bento4_version) -+ file(STRINGS "Source/C++/Core/Ap4Version.h" _temp REGEX "AP4_VERSION_STRING") -+ string(REGEX MATCH "\"([^\"]+)\"" _temp "${_temp}") -+ set(BENTO4_VERSION "${CMAKE_MATCH_1}" PARENT_SCOPE) -+endfunction() -+ -+get_bento4_version() -+project(bento4 VERSION "${BENTO4_VERSION}") - - # Variables - set(SOURCE_ROOT ${CMAKE_CURRENT_SOURCE_DIR}/Source/C++) -@@ -51,14 +58,22 @@ endif() - - # Includes - set(AP4_INCLUDE_DIRS -- ${SOURCE_CORE} -- ${SOURCE_CODECS} -- ${SOURCE_CRYPTO} -- ${SOURCE_METADATA} -+ $ -+ $ -+ $ -+ $ -+) -+file(GLOB AP4_HEADERS -+ ${SOURCE_CORE}/*.h -+ ${SOURCE_CODECS}/*.h -+ ${SOURCE_CRYPTO}/*.h -+ ${SOURCE_METADATA}/*.h - ) - - add_library(ap4 STATIC ${AP4_SOURCES}) --target_include_directories(ap4 PUBLIC ${AP4_INCLUDE_DIRS}) -+target_include_directories(ap4 PUBLIC -+ ${AP4_INCLUDE_DIRS} -+) - - # Use the statically linked C runtime library - if(MSVC) -@@ -72,6 +87,7 @@ if(BUILD_APPS) - file(GLOB BENTO4_APPS RELATIVE ${SOURCE_ROOT}/Apps ${SOURCE_ROOT}/Apps/*) - foreach(app ${BENTO4_APPS}) - string(TOLOWER ${app} binary_name) -+ list(APPEND BENTO4_APPS_LOWERCASE ${binary_name}) - add_executable(${binary_name} ${SOURCE_ROOT}/Apps/${app}/${app}.cpp) - target_link_libraries(${binary_name} ap4) - -@@ -81,3 +97,48 @@ foreach(app ${BENTO4_APPS}) - endif() - endforeach() - endif(BUILD_APPS) -+ -+# Install -+include(GNUInstallDirs) -+set(config_install_dir "${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}") -+set(generated_dir "${CMAKE_CURRENT_BINARY_DIR}/generated") -+set(version_config "${generated_dir}/${PROJECT_NAME}ConfigVersion.cmake") -+set(project_config "${generated_dir}/${PROJECT_NAME}Config.cmake") -+set(TARGETS_EXPORT_NAME "${PROJECT_NAME}Targets") -+set(namespace "${PROJECT_NAME}::") -+ -+include(CMakePackageConfigHelpers) -+write_basic_package_version_file( -+ "${version_config}" COMPATIBILITY SameMajorVersion -+) -+ -+configure_package_config_file( -+ "Build/cmake/Config.cmake.in" -+ "${project_config}" -+ INSTALL_DESTINATION "${config_install_dir}" -+) -+ -+install( -+ TARGETS ap4 ${BENTO4_APPS_LOWERCASE} -+ EXPORT "${TARGETS_EXPORT_NAME}" -+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" -+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" -+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" -+ INCLUDES DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}" -+) -+ -+install( -+ FILES ${AP4_HEADERS} -+ DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/bento4" -+) -+ -+install( -+ FILES "${project_config}" "${version_config}" -+ DESTINATION "${config_install_dir}" -+) -+ -+install( -+ EXPORT "${TARGETS_EXPORT_NAME}" -+ NAMESPACE "${namespace}" -+ DESTINATION "${config_install_dir}" -+) diff --git a/package/bento4/0002-Add-additional-methods-funtions-and-passing-poolid.patch b/package/bento4/0002-Add-additional-methods-funtions-and-passing-poolid.patch deleted file mode 100644 index 22ac657a3f30..000000000000 --- a/package/bento4/0002-Add-additional-methods-funtions-and-passing-poolid.patch +++ /dev/null @@ -1,634 +0,0 @@ -From b2027d354ef5d52efd525730fa5e6beccb88d33f Mon Sep 17 00:00:00 2001 -From: Glenn Guy -Date: Thu, 22 Jul 2021 10:00:44 +0200 -Subject: [PATCH] Add additional methods/funtions and passing poolid - -Added back: -* SSD - > ParentIsOwner functionality -* LinearReader: GetSample, SeekSample, Reset -* Ap4Movie -> GetPsshAtoms -* Uuid/VppC -> GetData -* Ap4Protection -> WVTT atom type - -Signed-off-by: Bernd Kuhls ---- - Source/C++/Core/Ap4ByteStream.h | 1 - - Source/C++/Core/Ap4CommonEncryption.cpp | 15 ++-- - Source/C++/Core/Ap4CommonEncryption.h | 24 +++++-- - Source/C++/Core/Ap4IsmaCryp.cpp | 5 +- - Source/C++/Core/Ap4IsmaCryp.h | 3 +- - Source/C++/Core/Ap4LinearReader.cpp | 94 ++++++++++++++++++++++++- - Source/C++/Core/Ap4LinearReader.h | 4 ++ - Source/C++/Core/Ap4Marlin.cpp | 5 +- - Source/C++/Core/Ap4Marlin.h | 3 +- - Source/C++/Core/Ap4MoovAtom.cpp | 28 +++++++- - Source/C++/Core/Ap4MoovAtom.h | 5 ++ - Source/C++/Core/Ap4Movie.cpp | 10 +++ - Source/C++/Core/Ap4Movie.h | 4 ++ - Source/C++/Core/Ap4OmaDcf.cpp | 8 ++- - Source/C++/Core/Ap4OmaDcf.h | 6 +- - Source/C++/Core/Ap4Protection.h | 3 +- - Source/C++/Core/Ap4SampleDescription.h | 1 + - Source/C++/Core/Ap4UuidAtom.h | 1 + - Source/C++/Core/Ap4VpccAtom.h | 3 + - 19 files changed, 197 insertions(+), 26 deletions(-) - -diff --git a/Source/C++/Core/Ap4ByteStream.h b/Source/C++/Core/Ap4ByteStream.h -index 0a59e63..93ac80f 100644 ---- a/Source/C++/Core/Ap4ByteStream.h -+++ b/Source/C++/Core/Ap4ByteStream.h -@@ -195,7 +195,6 @@ public: - AP4_UI08* UseData() { return m_Buffer->UseData(); } - AP4_Size GetDataSize() { return m_Buffer->GetDataSize(); } - --protected: - virtual ~AP4_MemoryByteStream(); - - private: -diff --git a/Source/C++/Core/Ap4CommonEncryption.cpp b/Source/C++/Core/Ap4CommonEncryption.cpp -index acd6361..5308200 100644 ---- a/Source/C++/Core/Ap4CommonEncryption.cpp -+++ b/Source/C++/Core/Ap4CommonEncryption.cpp -@@ -1859,7 +1859,8 @@ AP4_CencSingleSampleDecrypter::~AP4_CencSingleSampleDecrypter() { - | AP4_CencSingleSampleDecrypter::DecryptSampleData - +---------------------------------------------------------------------*/ - AP4_Result --AP4_CencSingleSampleDecrypter::DecryptSampleData(AP4_DataBuffer& data_in, -+AP4_CencSingleSampleDecrypter::DecryptSampleData(AP4_UI32 poolid, -+ AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out, - const AP4_UI08* iv, - unsigned int subsample_count, -@@ -2094,8 +2095,9 @@ AP4_CencSampleDecrypter::Create(AP4_CencSampleInfoTable* sample_info_table, - +---------------------------------------------------------------------*/ - AP4_CencSampleDecrypter::~AP4_CencSampleDecrypter() - { -- delete m_SampleInfoTable; -- delete m_SingleSampleDecrypter; -+ delete m_SampleInfoTable; -+ if (m_SingleSampleDecrypter->GetParentIsOwner()) -+ delete m_SingleSampleDecrypter; - } - - /*---------------------------------------------------------------------- -@@ -2112,7 +2114,8 @@ AP4_CencSampleDecrypter::SetSampleIndex(AP4_Ordinal sample_index) - | AP4_CencSampleDecrypter::DecryptSampleData - +---------------------------------------------------------------------*/ - AP4_Result --AP4_CencSampleDecrypter::DecryptSampleData(AP4_DataBuffer& data_in, -+AP4_CencSampleDecrypter::DecryptSampleData(AP4_UI32 poolid, -+ AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out, - const AP4_UI08* iv) - { -@@ -2139,7 +2142,7 @@ AP4_CencSampleDecrypter::DecryptSampleData(AP4_DataBuffer& data_in, - } - - // decrypt the sample -- return m_SingleSampleDecrypter->DecryptSampleData(data_in, data_out, iv_block, subsample_count, bytes_of_cleartext_data, bytes_of_encrypted_data); -+ return m_SingleSampleDecrypter->DecryptSampleData(poolid, data_in, data_out, iv_block, subsample_count, bytes_of_cleartext_data, bytes_of_encrypted_data); - } - - /*---------------------------------------------------------------------- -@@ -2323,7 +2326,7 @@ AP4_CencFragmentDecrypter::ProcessSample(AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out) - { - // decrypt the sample -- return m_SampleDecrypter->DecryptSampleData(data_in, data_out, NULL); -+ return m_SampleDecrypter->DecryptSampleData(0, data_in, data_out, NULL); - } - - /*---------------------------------------------------------------------- -diff --git a/Source/C++/Core/Ap4CommonEncryption.h b/Source/C++/Core/Ap4CommonEncryption.h -index 80db456..580de66 100644 ---- a/Source/C++/Core/Ap4CommonEncryption.h -+++ b/Source/C++/Core/Ap4CommonEncryption.h -@@ -691,9 +691,18 @@ public: - // methods - AP4_CencSingleSampleDecrypter(AP4_StreamCipher* cipher) : - m_Cipher(cipher), -- m_FullBlocksOnly(false) {} -+ m_FullBlocksOnly(false), -+ m_ParentIsOwner(true) {} - virtual ~AP4_CencSingleSampleDecrypter(); -- virtual AP4_Result DecryptSampleData(AP4_DataBuffer& data_in, -+ virtual AP4_Result SetFragmentInfo(AP4_UI32 poolid, const AP4_UI08* keyid, const AP4_UI08 nalu_length_size, -+ AP4_DataBuffer &annexb_sps_pps, AP4_UI32 flags) { -+ return AP4_ERROR_NOT_SUPPORTED; -+ }; -+ virtual AP4_UI32 AddPool() { return 0; }; -+ virtual void RemovePool(AP4_UI32 poolid) {}; -+ virtual const char* GetSessionId() { return nullptr; }; -+ virtual AP4_Result DecryptSampleData(AP4_UI32 poolid, -+ AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out, - - // always 16 bytes -@@ -706,7 +715,9 @@ public: - const AP4_UI16* bytes_of_cleartext_data, - - // array of integers. NULL if subsample_count is 0 -- const AP4_UI32* bytes_of_encrypted_data); -+ const AP4_UI32* bytes_of_encrypted_data); -+ bool GetParentIsOwner()const { return m_ParentIsOwner; }; -+ void SetParentIsOwner(bool parent_is_owner) { m_ParentIsOwner = parent_is_owner; }; - - private: - // constructor -@@ -715,12 +726,14 @@ private: - bool reset_iv_at_each_subsample) : - m_Cipher(cipher), - m_FullBlocksOnly(full_blocks_only), -- m_ResetIvAtEachSubsample(reset_iv_at_each_subsample) {} -+ m_ResetIvAtEachSubsample(reset_iv_at_each_subsample), -+ m_ParentIsOwner(true) {} - - // members - AP4_StreamCipher* m_Cipher; - bool m_FullBlocksOnly; - bool m_ResetIvAtEachSubsample; -+ bool m_ParentIsOwner; - }; - - /*---------------------------------------------------------------------- -@@ -766,7 +779,8 @@ public: - m_SampleCursor(0) {} - virtual ~AP4_CencSampleDecrypter(); - virtual AP4_Result SetSampleIndex(AP4_Ordinal sample_index); -- virtual AP4_Result DecryptSampleData(AP4_DataBuffer& data_in, -+ virtual AP4_Result DecryptSampleData(AP4_UI32 poolid, -+ AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out, - const AP4_UI08* iv); - -diff --git a/Source/C++/Core/Ap4IsmaCryp.cpp b/Source/C++/Core/Ap4IsmaCryp.cpp -index dfb59a4..442ad49 100644 ---- a/Source/C++/Core/Ap4IsmaCryp.cpp -+++ b/Source/C++/Core/Ap4IsmaCryp.cpp -@@ -142,7 +142,8 @@ AP4_IsmaCipher::GetDecryptedSampleSize(AP4_Sample& sample) - | AP4_IsmaCipher::DecryptSampleData - +---------------------------------------------------------------------*/ - AP4_Result --AP4_IsmaCipher::DecryptSampleData(AP4_DataBuffer& data_in, -+AP4_IsmaCipher::DecryptSampleData(AP4_UI32 poolid, -+ AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out, - const AP4_UI08* /*iv*/) - { -@@ -333,7 +334,7 @@ AP4_Result - AP4_IsmaTrackDecrypter::ProcessSample(AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out) - { -- return m_Cipher->DecryptSampleData(data_in, data_out); -+ return m_Cipher->DecryptSampleData(0, data_in, data_out); - } - - /*---------------------------------------------------------------------- -diff --git a/Source/C++/Core/Ap4IsmaCryp.h b/Source/C++/Core/Ap4IsmaCryp.h -index 4b9c60e..970dac8 100644 ---- a/Source/C++/Core/Ap4IsmaCryp.h -+++ b/Source/C++/Core/Ap4IsmaCryp.h -@@ -74,7 +74,8 @@ public: - AP4_Result EncryptSampleData(AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out, - AP4_UI32 block_counter); -- AP4_Result DecryptSampleData(AP4_DataBuffer& data_in, -+ AP4_Result DecryptSampleData(AP4_UI32 poolid, -+ AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out, - const AP4_UI08* iv = NULL); - AP4_Size GetDecryptedSampleSize(AP4_Sample& sample); -diff --git a/Source/C++/Core/Ap4LinearReader.cpp b/Source/C++/Core/Ap4LinearReader.cpp -index 08b55ee..7cc3ebd 100644 ---- a/Source/C++/Core/Ap4LinearReader.cpp -+++ b/Source/C++/Core/Ap4LinearReader.cpp -@@ -117,6 +117,29 @@ AP4_LinearReader::FlushQueues() - } - } - -+/*---------------------------------------------------------------------- -+| AP4_LinearReader::Reset -++---------------------------------------------------------------------*/ -+void -+AP4_LinearReader::Reset() -+{ -+ // flush any queued samples -+ FlushQueues(); -+ -+ // reset tracker states -+ for (unsigned int i = 0; i < m_Trackers.ItemCount(); i++) { -+ if (m_Trackers[i]->m_SampleTableIsOwned) { -+ delete m_Trackers[i]->m_SampleTable; -+ } -+ delete m_Trackers[i]->m_NextSample; -+ m_Trackers[i]->m_SampleTable = NULL; -+ m_Trackers[i]->m_NextSample = NULL; -+ m_Trackers[i]->m_NextSampleIndex = 0; -+ m_Trackers[i]->m_Eos = false; -+ } -+ m_NextFragmentPosition = 0; -+} -+ - /*---------------------------------------------------------------------- - | AP4_LinearReader::SetSampleIndex - +---------------------------------------------------------------------*/ -@@ -591,6 +614,75 @@ AP4_LinearReader::ReadNextSample(AP4_Sample& sample, - return ReadNextSample(sample, &sample_data, track_id); - } - -+/*---------------------------------------------------------------------- -+| AP4_LinearReader::GetSample -++---------------------------------------------------------------------*/ -+AP4_Result AP4_LinearReader::GetSample(AP4_UI32 track_id, AP4_Sample &sample, AP4_Ordinal sample_index) -+{ -+ // look for a sample from a specific track -+ Tracker* tracker = FindTracker(track_id); -+ if (tracker == NULL) -+ return AP4_ERROR_INVALID_PARAMETERS; -+ -+ // don't continue if we've reached the end of that tracker -+ if (tracker->m_Eos) -+ return AP4_ERROR_EOS; -+ -+ return tracker->m_SampleTable->GetSample(sample_index, sample); -+} -+ -+/*---------------------------------------------------------------------- -+| AP4_LinearReader::SeekSample -++---------------------------------------------------------------------*/ -+AP4_Result -+AP4_LinearReader::SeekSample(AP4_UI32 track_id, AP4_UI64 ts, AP4_Ordinal &sample_index, bool preceedingSync) -+{ -+ // we only support fragmented sources for now -+ if (!m_HasFragments) -+ return AP4_ERROR_NOT_SUPPORTED; -+ -+ if (m_Trackers.ItemCount() == 0) { -+ return AP4_ERROR_NO_SUCH_ITEM; -+ } -+ -+ // look for a sample from a specific track -+ Tracker* tracker = FindTracker(track_id); -+ if (tracker == NULL) -+ return AP4_ERROR_INVALID_PARAMETERS; -+ -+ // don't continue if we've reached the end of that tracker -+ if (tracker->m_Eos) -+ return AP4_ERROR_EOS; -+ -+ AP4_Result result; -+ -+ if (!tracker->m_SampleTable && AP4_FAILED(result = Advance())) -+ return result; -+ -+ while (AP4_FAILED(result = tracker->m_SampleTable->GetSampleIndexForTimeStamp(ts, sample_index))) -+ { -+ if (result == AP4_ERROR_NOT_ENOUGH_DATA) -+ { -+ tracker->m_NextSampleIndex = tracker->m_SampleTable->GetSampleCount(); -+ if (AP4_FAILED(result = Advance())) -+ return result; -+ continue; -+ } -+ return result; -+ } -+ -+ sample_index = tracker->m_SampleTable->GetNearestSyncSampleIndex(sample_index, preceedingSync); -+ //we have reached the end -> go for the first sample of the next segment -+ if (sample_index == tracker->m_SampleTable->GetSampleCount()) -+ { -+ tracker->m_NextSampleIndex = tracker->m_SampleTable->GetSampleCount(); -+ if (AP4_FAILED(result = Advance())) -+ return result; -+ sample_index = 0; -+ } -+ return SetSampleIndex(tracker->m_Track->GetId(), sample_index); -+} -+ - /*---------------------------------------------------------------------- - | AP4_LinearReader::GetNextSample - +---------------------------------------------------------------------*/ -@@ -633,5 +725,5 @@ AP4_DecryptingSampleReader::ReadSampleData(AP4_Sample& sample, - AP4_Result result = sample.ReadData(m_DataBuffer); - if (AP4_FAILED(result)) return result; - -- return m_Decrypter->DecryptSampleData(m_DataBuffer, sample_data); -+ return m_Decrypter->DecryptSampleData(0, m_DataBuffer, sample_data); - } -diff --git a/Source/C++/Core/Ap4LinearReader.h b/Source/C++/Core/Ap4LinearReader.h -index 549cb5f..21f4871 100644 ---- a/Source/C++/Core/Ap4LinearReader.h -+++ b/Source/C++/Core/Ap4LinearReader.h -@@ -85,6 +85,8 @@ public: - AP4_Result SetSampleIndex(AP4_UI32 track_id, AP4_UI32 sample_index); - - AP4_Result SeekTo(AP4_UI32 time_ms, AP4_UI32* actual_time_ms = 0); -+ -+ AP4_Result SeekSample(AP4_UI32 track_id, AP4_UI64 ts, AP4_Ordinal &sample_index, bool preceedingSync); - - // accessors - AP4_Size GetBufferFullness() { return m_BufferFullness; } -@@ -169,8 +171,10 @@ protected: - AP4_Result ReadNextSample(AP4_Sample& sample, - AP4_DataBuffer* sample_data, - AP4_UI32& track_id); -+ AP4_Result GetSample(AP4_UI32 track_id, AP4_Sample &sample, AP4_Ordinal sample_index); - void FlushQueue(Tracker* tracker); - void FlushQueues(); -+ void Reset(); - - // members - AP4_Movie& m_Movie; -diff --git a/Source/C++/Core/Ap4Marlin.cpp b/Source/C++/Core/Ap4Marlin.cpp -index d0ddd3f..c1aa8b6 100644 ---- a/Source/C++/Core/Ap4Marlin.cpp -+++ b/Source/C++/Core/Ap4Marlin.cpp -@@ -431,7 +431,8 @@ AP4_MarlinIpmpSampleDecrypter::GetDecryptedSampleSize(AP4_Sample& sample) - | AP4_MarlinIpmpSampleDecrypter::DecryptSampleData - +---------------------------------------------------------------------*/ - AP4_Result --AP4_MarlinIpmpSampleDecrypter::DecryptSampleData(AP4_DataBuffer& data_in, -+AP4_MarlinIpmpSampleDecrypter::DecryptSampleData(AP4_UI32 poolid, -+ AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out, - const AP4_UI08* /*iv*/) - { -@@ -630,7 +631,7 @@ AP4_Result - AP4_MarlinIpmpTrackDecrypter::ProcessSample(AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out) - { -- return m_SampleDecrypter->DecryptSampleData(data_in, data_out); -+ return m_SampleDecrypter->DecryptSampleData(0, data_in, data_out); - } - - /*---------------------------------------------------------------------- -diff --git a/Source/C++/Core/Ap4Marlin.h b/Source/C++/Core/Ap4Marlin.h -index 774e04f..9280ad6 100644 ---- a/Source/C++/Core/Ap4Marlin.h -+++ b/Source/C++/Core/Ap4Marlin.h -@@ -118,7 +118,8 @@ public: - - // AP4_SampleDecrypter methods - AP4_Size GetDecryptedSampleSize(AP4_Sample& sample); -- AP4_Result DecryptSampleData(AP4_DataBuffer& data_in, -+ AP4_Result DecryptSampleData(AP4_UI32 poolid, -+ AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out, - const AP4_UI08* iv = NULL); - -diff --git a/Source/C++/Core/Ap4MoovAtom.cpp b/Source/C++/Core/Ap4MoovAtom.cpp -index 1ceab49..fbeee4f 100644 ---- a/Source/C++/Core/Ap4MoovAtom.cpp -+++ b/Source/C++/Core/Ap4MoovAtom.cpp -@@ -31,6 +31,7 @@ - +---------------------------------------------------------------------*/ - #include "Ap4MoovAtom.h" - #include "Ap4TrakAtom.h" -+#include "Ap4PsshAtom.h" - #include "Ap4AtomFactory.h" - - /*---------------------------------------------------------------------- -@@ -61,6 +62,29 @@ private: - AP4_List* m_TrakAtoms; - }; - -+/*---------------------------------------------------------------------- -+| AP4_PsshAtomCollector -++---------------------------------------------------------------------*/ -+class AP4_PsshAtomCollector : public AP4_List::Item::Operator -+{ -+public: -+ AP4_PsshAtomCollector(AP4_List* pssh_atoms) : -+ m_PsshAtoms(pssh_atoms) {} -+ -+ AP4_Result Action(AP4_Atom* atom) const { -+ if (atom->GetType() == AP4_ATOM_TYPE_PSSH) { -+ AP4_PsshAtom* pssh = AP4_DYNAMIC_CAST(AP4_PsshAtom, atom); -+ if (pssh) { -+ m_PsshAtoms->Add(pssh); -+ } -+ } -+ return AP4_SUCCESS; -+ } -+ -+private: -+ AP4_List* m_PsshAtoms; -+}; -+ - /*---------------------------------------------------------------------- - | AP4_MoovAtom::AP4_MoovAtom - +---------------------------------------------------------------------*/ -@@ -80,7 +104,9 @@ AP4_MoovAtom::AP4_MoovAtom(AP4_UI32 size, - m_TimeScale(0) - { - // collect all trak atoms -- m_Children.Apply(AP4_TrakAtomCollector(&m_TrakAtoms)); -+ m_Children.Apply(AP4_TrakAtomCollector(&m_TrakAtoms)); -+ // collect all pssh atoms -+ m_Children.Apply(AP4_PsshAtomCollector(&m_PsshAtoms)); - } - - /*---------------------------------------------------------------------- -diff --git a/Source/C++/Core/Ap4MoovAtom.h b/Source/C++/Core/Ap4MoovAtom.h -index f06b2a1..d1a0147 100644 ---- a/Source/C++/Core/Ap4MoovAtom.h -+++ b/Source/C++/Core/Ap4MoovAtom.h -@@ -40,6 +40,7 @@ - +---------------------------------------------------------------------*/ - class AP4_AtomFactory; - class AP4_TrakAtom; -+class AP4_PsshAtom; - - /*---------------------------------------------------------------------- - | AP4_MoovAtom -@@ -61,6 +62,9 @@ public: - AP4_List& GetTrakAtoms() { - return m_TrakAtoms; - } -+ AP4_List& GetPsshAtoms() { -+ return m_PsshAtoms; -+ } - AP4_UI32 GetTimeScale() { - return m_TimeScale; - } -@@ -77,6 +81,7 @@ private: - AP4_AtomFactory& atom_factory); - - // members -+ AP4_List m_PsshAtoms; - AP4_List m_TrakAtoms; - AP4_UI32 m_TimeScale; - }; -diff --git a/Source/C++/Core/Ap4Movie.cpp b/Source/C++/Core/Ap4Movie.cpp -index b080b53..9617494 100644 ---- a/Source/C++/Core/Ap4Movie.cpp -+++ b/Source/C++/Core/Ap4Movie.cpp -@@ -32,6 +32,7 @@ - #include "Ap4File.h" - #include "Ap4Atom.h" - #include "Ap4TrakAtom.h" -+#include "Ap4PsshAtom.h" - #include "Ap4MoovAtom.h" - #include "Ap4MvhdAtom.h" - #include "Ap4AtomFactory.h" -@@ -110,6 +111,15 @@ AP4_Movie::AP4_Movie(AP4_MoovAtom* moov, AP4_ByteStream& sample_stream, bool tra - time_scale = 0; - } - -+ // get the pssh atoms -+ AP4_List* pssh_atoms; -+ pssh_atoms = &moov->GetPsshAtoms(); -+ AP4_List::Item* pssh_item = pssh_atoms->FirstItem(); -+ while (pssh_item) { -+ m_PsshAtoms.Append(*pssh_item->GetData()); -+ pssh_item = pssh_item->GetNext(); -+ } -+ - // get all tracks - AP4_List* trak_atoms; - trak_atoms = &moov->GetTrakAtoms(); -diff --git a/Source/C++/Core/Ap4Movie.h b/Source/C++/Core/Ap4Movie.h -index 21ef173..04992a4 100644 ---- a/Source/C++/Core/Ap4Movie.h -+++ b/Source/C++/Core/Ap4Movie.h -@@ -37,6 +37,7 @@ - #include "Ap4MvhdAtom.h" - #include "Ap4Track.h" - #include "Ap4List.h" -+#include "Ap4PsshAtom.h" - - /*---------------------------------------------------------------------- - | class references -@@ -60,6 +61,8 @@ public: - AP4_Result Inspect(AP4_AtomInspector& inspector); - - AP4_MoovAtom* GetMoovAtom() { return m_MoovAtom;} -+ void SetMoovAtom(AP4_MoovAtom* atom) { m_MoovAtom = atom; } -+ AP4_Array& GetPsshAtoms() { return m_PsshAtoms; } - AP4_MvhdAtom* GetMvhdAtom() { return m_MvhdAtom;} - AP4_List& GetTracks() { return m_Tracks; } - AP4_Track* GetTrack(AP4_UI32 track_id); -@@ -75,6 +78,7 @@ private: - AP4_MoovAtom* m_MoovAtom; - bool m_MoovAtomIsOwned; - AP4_MvhdAtom* m_MvhdAtom; -+ AP4_Array m_PsshAtoms; - AP4_List m_Tracks; - }; - -diff --git a/Source/C++/Core/Ap4OmaDcf.cpp b/Source/C++/Core/Ap4OmaDcf.cpp -index 17099a1..4eefbaf 100644 ---- a/Source/C++/Core/Ap4OmaDcf.cpp -+++ b/Source/C++/Core/Ap4OmaDcf.cpp -@@ -436,7 +436,8 @@ AP4_OmaDcfCtrSampleDecrypter::~AP4_OmaDcfCtrSampleDecrypter() - | AP4_OmaDcfCtrSampleDecrypter::DecryptSampleData - +---------------------------------------------------------------------*/ - AP4_Result --AP4_OmaDcfCtrSampleDecrypter::DecryptSampleData(AP4_DataBuffer& data_in, -+AP4_OmaDcfCtrSampleDecrypter::DecryptSampleData(AP4_UI32 poolid, -+ AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out, - const AP4_UI08* /*iv*/) - { -@@ -531,7 +532,8 @@ AP4_OmaDcfCbcSampleDecrypter::~AP4_OmaDcfCbcSampleDecrypter() - | AP4_OmaDbcCbcSampleDecrypter::DecryptSampleData - +---------------------------------------------------------------------*/ - AP4_Result --AP4_OmaDcfCbcSampleDecrypter::DecryptSampleData(AP4_DataBuffer& data_in, -+AP4_OmaDcfCbcSampleDecrypter::DecryptSampleData(AP4_UI32 poolid, -+ AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out, - const AP4_UI08* /*iv*/) - { -@@ -853,7 +855,7 @@ AP4_Result - AP4_OmaDcfTrackDecrypter::ProcessSample(AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out) - { -- return m_Cipher->DecryptSampleData(data_in, data_out); -+ return m_Cipher->DecryptSampleData(0, data_in, data_out); - } - - /*---------------------------------------------------------------------- -diff --git a/Source/C++/Core/Ap4OmaDcf.h b/Source/C++/Core/Ap4OmaDcf.h -index 23f10ed..bb7b3d6 100644 ---- a/Source/C++/Core/Ap4OmaDcf.h -+++ b/Source/C++/Core/Ap4OmaDcf.h -@@ -133,7 +133,8 @@ public: - ~AP4_OmaDcfCtrSampleDecrypter(); - - // methods -- virtual AP4_Result DecryptSampleData(AP4_DataBuffer& data_in, -+ virtual AP4_Result DecryptSampleData(AP4_UI32 poolid, -+ AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out, - const AP4_UI08* iv = NULL); - virtual AP4_Size GetDecryptedSampleSize(AP4_Sample& sample); -@@ -155,7 +156,8 @@ public: - ~AP4_OmaDcfCbcSampleDecrypter(); - - // methods -- virtual AP4_Result DecryptSampleData(AP4_DataBuffer& data_in, -+ virtual AP4_Result DecryptSampleData(AP4_UI32 poolid, -+ AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out, - const AP4_UI08* iv = NULL); - virtual AP4_Size GetDecryptedSampleSize(AP4_Sample& sample); -diff --git a/Source/C++/Core/Ap4Protection.h b/Source/C++/Core/Ap4Protection.h -index 856f1f3..4080584 100644 ---- a/Source/C++/Core/Ap4Protection.h -+++ b/Source/C++/Core/Ap4Protection.h -@@ -393,7 +393,8 @@ public: - // methods - virtual AP4_Size GetDecryptedSampleSize(AP4_Sample& sample) { return sample.GetSize(); } - virtual AP4_Result SetSampleIndex(AP4_Ordinal /*index*/) { return AP4_SUCCESS; } -- virtual AP4_Result DecryptSampleData(AP4_DataBuffer& data_in, -+ virtual AP4_Result DecryptSampleData(AP4_UI32 poolid, -+ AP4_DataBuffer& data_in, - AP4_DataBuffer& data_out, - const AP4_UI08* iv = NULL) = 0; - }; -diff --git a/Source/C++/Core/Ap4SampleDescription.h b/Source/C++/Core/Ap4SampleDescription.h -index 27f3136..d493f96 100644 ---- a/Source/C++/Core/Ap4SampleDescription.h -+++ b/Source/C++/Core/Ap4SampleDescription.h -@@ -101,6 +101,7 @@ const AP4_UI32 AP4_SAMPLE_FORMAT_TX3G = AP4_ATOM_TYPE('t','x','3','g'); - const AP4_UI32 AP4_SAMPLE_FORMAT_VC_1 = AP4_ATOM_TYPE('v','c','-','1'); - const AP4_UI32 AP4_SAMPLE_FORMAT_XML_ = AP4_ATOM_TYPE('x','m','l',' '); - const AP4_UI32 AP4_SAMPLE_FORMAT_STPP = AP4_ATOM_TYPE('s','t','p','p'); -+const AP4_UI32 AP4_SAMPLE_FORMAT_WVTT = AP4_ATOM_TYPE('w','v','t','t'); - const AP4_UI32 AP4_SAMPLE_FORMAT_FLAC = AP4_ATOM_TYPE('f','L','a','C'); - const AP4_UI32 AP4_SAMPLE_FORMAT_OPUS = AP4_ATOM_TYPE('O','p','u','s'); - const AP4_UI32 AP4_SAMPLE_FORMAT_VP8 = AP4_ATOM_TYPE('v','p','0','8'); -diff --git a/Source/C++/Core/Ap4UuidAtom.h b/Source/C++/Core/Ap4UuidAtom.h -index b9771bd..0ec3b08 100644 ---- a/Source/C++/Core/Ap4UuidAtom.h -+++ b/Source/C++/Core/Ap4UuidAtom.h -@@ -90,6 +90,7 @@ public: - - // methods - virtual AP4_Result WriteFields(AP4_ByteStream& stream); -+ const AP4_DataBuffer &GetData() { return m_Data; }; - - protected: - // members -diff --git a/Source/C++/Core/Ap4VpccAtom.h b/Source/C++/Core/Ap4VpccAtom.h -index 9fb60bc..929048a 100644 ---- a/Source/C++/Core/Ap4VpccAtom.h -+++ b/Source/C++/Core/Ap4VpccAtom.h -@@ -79,10 +79,13 @@ public: - AP4_UI08 GetTransferCharacteristics() { return m_TransferCharacteristics; } - AP4_UI08 GetMatrixCoefficients() { return m_MatrixCoefficients; } - const AP4_DataBuffer& GetCodecInitializationData() { return m_CodecIntializationData; } -+ const AP4_DataBuffer& GetData() { return m_Data; } - - // helpers - AP4_Result GetCodecString(AP4_UI32 container_type, AP4_String& codec); - -+protected: -+ AP4_DataBuffer m_Data; - private: - // methods - AP4_VpccAtom(AP4_UI32 size, const AP4_UI08* payload); --- -2.30.2 - diff --git a/package/bento4/0003-Backport-Smmothstream-changes.patch b/package/bento4/0003-Backport-Smmothstream-changes.patch deleted file mode 100644 index a9a577a2d918..000000000000 --- a/package/bento4/0003-Backport-Smmothstream-changes.patch +++ /dev/null @@ -1,99 +0,0 @@ -From 97088e7bd7e84a493bea7e5fe4e808c8ac3e00ff Mon Sep 17 00:00:00 2001 -From: CastagnaIT -Date: Thu, 22 Jul 2021 10:09:24 +0200 -Subject: [PATCH] Backport Smmothstream changes - -Signed-off-by: Bernd Kuhls ---- - Source/C++/Core/Ap4File.cpp | 14 ++++++++------ - Source/C++/Core/Ap4File.h | 6 ++++-- - Source/C++/Core/Ap4FragmentSampleTable.cpp | 2 +- - 3 files changed, 13 insertions(+), 9 deletions(-) - -diff --git a/Source/C++/Core/Ap4File.cpp b/Source/C++/Core/Ap4File.cpp -index cb20c3e..f1d2727 100644 ---- a/Source/C++/Core/Ap4File.cpp -+++ b/Source/C++/Core/Ap4File.cpp -@@ -55,13 +55,14 @@ AP4_File::AP4_File(AP4_Movie* movie) : - +---------------------------------------------------------------------*/ - AP4_File::AP4_File(AP4_ByteStream& stream, - AP4_AtomFactory& atom_factory, -- bool moov_only) : -- m_Movie(NULL), -+ bool moov_only, -+ AP4_Movie* movie) : -+ m_Movie(movie), - m_FileType(NULL), - m_MetaData(NULL), - m_MoovIsBeforeMdat(true) - { -- ParseStream(stream, atom_factory, moov_only); -+ ParseStream(stream, atom_factory, moov_only, movie); - } - - /*---------------------------------------------------------------------- -@@ -75,7 +76,7 @@ AP4_File::AP4_File(AP4_ByteStream& stream, - m_MoovIsBeforeMdat(true) - { - AP4_DefaultAtomFactory atom_factory; -- ParseStream(stream, atom_factory, moov_only); -+ ParseStream(stream, atom_factory, moov_only, m_Movie); - } - - /*---------------------------------------------------------------------- -@@ -93,12 +94,13 @@ AP4_File::~AP4_File() - void - AP4_File::ParseStream(AP4_ByteStream& stream, - AP4_AtomFactory& atom_factory, -- bool moov_only) -+ bool moov_only, -+ AP4_Movie* movie) - { - // parse top-level atoms - AP4_Atom* atom; - AP4_Position stream_position; -- bool keep_parsing = true; -+ bool keep_parsing = movie == 0; - while (keep_parsing && - AP4_SUCCEEDED(stream.Tell(stream_position)) && - AP4_SUCCEEDED(atom_factory.CreateAtomFromStream(stream, atom))) { -diff --git a/Source/C++/Core/Ap4File.h b/Source/C++/Core/Ap4File.h -index 9375258..2f00187 100644 ---- a/Source/C++/Core/Ap4File.h -+++ b/Source/C++/Core/Ap4File.h -@@ -101,7 +101,8 @@ public: - */ - AP4_File(AP4_ByteStream& stream, - AP4_AtomFactory& atom_factory, -- bool moov_only); -+ bool moov_only, -+ AP4_Movie* movie = NULL); - - /** - * Constructs an AP4_File from a stream using the default atom factory -@@ -161,7 +162,8 @@ private: - // methods - void ParseStream(AP4_ByteStream& stream, - AP4_AtomFactory& atom_factory, -- bool moov_only); -+ bool moov_only, -+ AP4_Movie* movie); - - // members - AP4_Movie* m_Movie; -diff --git a/Source/C++/Core/Ap4FragmentSampleTable.cpp b/Source/C++/Core/Ap4FragmentSampleTable.cpp -index 84e5ded..3fbb53e 100644 ---- a/Source/C++/Core/Ap4FragmentSampleTable.cpp -+++ b/Source/C++/Core/Ap4FragmentSampleTable.cpp -@@ -130,7 +130,7 @@ AP4_FragmentSampleTable::AddTrun(AP4_TrunAtom* trun, - data_offset += trun->GetDataOffset(); - } - // MS hack -- if (data_offset == moof_offset) { -+ if (data_offset < payload_offset) { - data_offset = payload_offset; - } else { - payload_offset = data_offset; --- -2.30.2 - diff --git a/package/bento4/0004-more-SPS-parameters.patch b/package/bento4/0004-more-SPS-parameters.patch deleted file mode 100644 index 7034739815e8..000000000000 --- a/package/bento4/0004-more-SPS-parameters.patch +++ /dev/null @@ -1,219 +0,0 @@ -From 25df596f009514b213c5eaf5d5eb94072391c1be Mon Sep 17 00:00:00 2001 -From: peak3d -Date: Thu, 22 Jul 2021 10:22:39 +0200 -Subject: [PATCH] more SPS parameters - -Signed-off-by: Bernd Kuhls ---- - Source/C++/Codecs/Ap4AvcParser.cpp | 100 ++++++++++++++++++++++++++++- - Source/C++/Codecs/Ap4AvcParser.h | 22 +++++++ - Source/C++/Core/Ap4Utils.cpp | 8 +++ - Source/C++/Core/Ap4Utils.h | 2 +- - 4 files changed, 129 insertions(+), 3 deletions(-) - -diff --git a/Source/C++/Codecs/Ap4AvcParser.cpp b/Source/C++/Codecs/Ap4AvcParser.cpp -index b95398b..7efb5c9 100644 ---- a/Source/C++/Codecs/Ap4AvcParser.cpp -+++ b/Source/C++/Codecs/Ap4AvcParser.cpp -@@ -30,7 +30,6 @@ - | includes - +---------------------------------------------------------------------*/ - #include "Ap4AvcParser.h" --#include "Ap4Utils.h" - - /*---------------------------------------------------------------------- - | debugging -@@ -123,6 +122,25 @@ AP4_AvcNalParser::SliceTypeName(unsigned int slice_type) - } - } - -+const int SAR[17][2] = { -+ { 0, 1 }, -+ { 1, 1 }, -+ { 12, 11 }, -+ { 10, 11 }, -+ { 16, 11 }, -+ { 40, 33 }, -+ { 24, 11 }, -+ { 20, 11 }, -+ { 32, 11 }, -+ { 80, 33 }, -+ { 18, 11 }, -+ { 15, 11 }, -+ { 64, 33 }, -+ { 160, 99 }, -+ { 4, 3 }, -+ { 3, 2 }, -+ { 2, 1 }, -+}; - /*---------------------------------------------------------------------- - | AP4_AvcNalParser::AP4_AvcNalParser - +---------------------------------------------------------------------*/ -@@ -236,7 +254,28 @@ AP4_AvcSequenceParameterSet::AP4_AvcSequenceParameterSet() : - frame_crop_left_offset(0), - frame_crop_right_offset(0), - frame_crop_top_offset(0), -- frame_crop_bottom_offset(0) -+ frame_crop_bottom_offset(0), -+ vui_parameters_present_flag(0), -+ aspect_ratio_info_present_flag(0), -+ aspect_ratio_idc(0), -+ sar_width(0), -+ sar_height(0), -+ overscan_info_present_flag(0), -+ overscan_appropriate_flag(0), -+ video_signal_type_present_flag(0), -+ video_format(0), -+ video_full_range_flag(0), -+ colour_description_present_flag(0), -+ colour_primaries(0), -+ transfer_characteristics(0), -+ matrix_coefficients(0), -+ chroma_loc_info_present_flag(0), -+ chroma_sample_loc_type_top_field(0), -+ chroma_sample_loc_type_bottom_field(0), -+ timing_info_present_flag(0), -+ num_units_in_tick(0), -+ time_scale(0), -+ fixed_frame_rate_flag(0) - { - AP4_SetMemory(scaling_list_4x4, 0, sizeof(scaling_list_4x4)); - AP4_SetMemory(use_default_scaling_matrix_4x4, 0, sizeof(use_default_scaling_matrix_4x4)); -@@ -372,7 +411,64 @@ AP4_AvcFrameParser::ParseSPS(const unsigned char* data, - sps.frame_crop_top_offset = ReadGolomb(bits); - sps.frame_crop_bottom_offset = ReadGolomb(bits); - } -+ sps.vui_parameters_present_flag = bits.ReadBit(); -+ if (sps.vui_parameters_present_flag) { -+ sps.aspect_ratio_info_present_flag = bits.ReadBit(); -+ if (sps.aspect_ratio_info_present_flag) { -+ sps.aspect_ratio_idc = bits.ReadBits(8); -+ if (sps.aspect_ratio_idc == 0xFF) -+ { -+ sps.sar_width = bits.ReadBits(16); -+ sps.sar_height = bits.ReadBits(16); -+ } -+ else if (sps.aspect_ratio_idc < 17) -+ { -+ sps.sar_width = SAR[sps.aspect_ratio_idc][0]; -+ sps.sar_height = SAR[sps.aspect_ratio_idc][1]; -+ } -+ } -+ sps.overscan_info_present_flag = bits.ReadBit(); -+ if (sps.overscan_info_present_flag) -+ sps.overscan_appropriate_flag = bits.ReadBit(); -+ -+ sps.video_signal_type_present_flag = bits.ReadBit(); -+ if (sps.video_signal_type_present_flag) { -+ sps.video_format = bits.ReadBits(3); -+ sps.video_full_range_flag = bits.ReadBit(); -+ sps.colour_description_present_flag = bits.ReadBit(); -+ if (sps.colour_description_present_flag) { -+ sps.colour_primaries = bits.ReadBits(8); -+ sps.transfer_characteristics = bits.ReadBits(8); -+ sps.matrix_coefficients = bits.ReadBits(8); -+ } -+ } -+ - -+ sps.chroma_loc_info_present_flag = bits.ReadBit(); -+ if (sps.chroma_loc_info_present_flag) { -+ sps.chroma_sample_loc_type_top_field = ReadGolomb(bits); -+ sps.chroma_sample_loc_type_bottom_field = ReadGolomb(bits); -+ } -+ -+ if (bits.PeekBit() && bits.BitsLeft() < 10) -+ return AP4_SUCCESS; -+ -+ sps.timing_info_present_flag = bits.ReadBit(); -+ if (sps.timing_info_present_flag) { -+#if AP4_PLATFORM_BYTE_ORDER == AP4_PLATFORM_BYTE_ORDER_BIG_ENDIAN -+ sps.num_units_in_tick = bits.ReadBits(32); -+ sps.time_scale = bits.ReadBits(32); -+#else -+ sps.num_units_in_tick = bits.ReadBits(16) << 16; -+ sps.num_units_in_tick |= bits.ReadBits(16); -+ sps.time_scale = bits.ReadBits(16) << 16; -+ sps.time_scale |= bits.ReadBits(16); -+#endif -+ if (!sps.num_units_in_tick || !sps.time_scale) -+ sps.timing_info_present_flag = 0; -+ sps.fixed_frame_rate_flag = bits.ReadBit(); -+ } -+ } - return AP4_SUCCESS; - } - -diff --git a/Source/C++/Codecs/Ap4AvcParser.h b/Source/C++/Codecs/Ap4AvcParser.h -index 8f9cd6c..9f97892 100644 ---- a/Source/C++/Codecs/Ap4AvcParser.h -+++ b/Source/C++/Codecs/Ap4AvcParser.h -@@ -37,6 +37,7 @@ - #include "Ap4DataBuffer.h" - #include "Ap4NalParser.h" - #include "Ap4Array.h" -+#include "Ap4Utils.h" - - /*---------------------------------------------------------------------- - | constants -@@ -131,6 +132,27 @@ struct AP4_AvcSequenceParameterSet { - unsigned int frame_crop_right_offset; - unsigned int frame_crop_top_offset; - unsigned int frame_crop_bottom_offset; -+ unsigned int vui_parameters_present_flag; -+ unsigned int aspect_ratio_info_present_flag; -+ unsigned int aspect_ratio_idc; -+ unsigned int sar_width; -+ unsigned int sar_height; -+ unsigned int overscan_info_present_flag; -+ unsigned int overscan_appropriate_flag; -+ unsigned int video_signal_type_present_flag; -+ unsigned int video_format; -+ unsigned int video_full_range_flag; -+ unsigned int colour_description_present_flag; -+ unsigned int colour_primaries; -+ unsigned int transfer_characteristics; -+ unsigned int matrix_coefficients; -+ unsigned int chroma_loc_info_present_flag; -+ unsigned int chroma_sample_loc_type_top_field; -+ unsigned int chroma_sample_loc_type_bottom_field; -+ unsigned int timing_info_present_flag; -+ unsigned int num_units_in_tick; -+ unsigned int time_scale; -+ unsigned int fixed_frame_rate_flag; - }; - - struct AP4_AvcPictureParameterSet { -diff --git a/Source/C++/Core/Ap4Utils.cpp b/Source/C++/Core/Ap4Utils.cpp -index 96def27..6de4dba 100644 ---- a/Source/C++/Core/Ap4Utils.cpp -+++ b/Source/C++/Core/Ap4Utils.cpp -@@ -581,4 +581,12 @@ AP4_BitReader::SkipBit() - } - } - -+/*---------------------------------------------------------------------- -+| AP4_BitReader::BitsLeft -++---------------------------------------------------------------------*/ -+AP4_UI32 -+AP4_BitReader::BitsLeft() -+{ -+ return (m_Buffer.GetDataSize() - m_Position) * 8 + m_BitsCached; -+} - -diff --git a/Source/C++/Core/Ap4Utils.h b/Source/C++/Core/Ap4Utils.h -index 475bff3..e66bafa 100644 ---- a/Source/C++/Core/Ap4Utils.h -+++ b/Source/C++/Core/Ap4Utils.h -@@ -262,7 +262,7 @@ public: - AP4_Result SkipBytes(AP4_Size byte_count); - void SkipBit(); - void SkipBits(unsigned int bit_count); -- -+ AP4_UI32 BitsLeft(); - unsigned int GetBitsRead(); - - private: --- -2.30.2 - diff --git a/package/bento4/0005-AVC-extract-VUI-values-from-SPS.patch b/package/bento4/0005-AVC-extract-VUI-values-from-SPS.patch deleted file mode 100644 index 27b9572269f9..000000000000 --- a/package/bento4/0005-AVC-extract-VUI-values-from-SPS.patch +++ /dev/null @@ -1,96 +0,0 @@ -From 56e0acde44adbc5503da20dd96c31db33f744bd7 Mon Sep 17 00:00:00 2001 -From: peak3d -Date: Thu, 22 Jul 2021 10:27:50 +0200 -Subject: [PATCH] AVC extract VUI values from SPS - -Signed-off-by: Bernd Kuhls ---- - Source/C++/Codecs/Ap4AvcParser.cpp | 54 +++++++++++++++++++++++++----- - Source/C++/Codecs/Ap4AvcParser.h | 3 +- - 2 files changed, 47 insertions(+), 10 deletions(-) - -diff --git a/Source/C++/Codecs/Ap4AvcParser.cpp b/Source/C++/Codecs/Ap4AvcParser.cpp -index 7efb5c9..7f4fc34 100644 ---- a/Source/C++/Codecs/Ap4AvcParser.cpp -+++ b/Source/C++/Codecs/Ap4AvcParser.cpp -@@ -287,18 +287,54 @@ AP4_AvcSequenceParameterSet::AP4_AvcSequenceParameterSet() : - /*---------------------------------------------------------------------- - | AP4_AvcSequenceParameterSet::GetInfo - +---------------------------------------------------------------------*/ --void -+bool - AP4_AvcSequenceParameterSet::GetInfo(unsigned int& width, unsigned int& height) - { -- width = (pic_width_in_mbs_minus1+1) * 16; -- height = (2-frame_mbs_only_flag) * (pic_height_in_map_units_minus1+1) * 16; -+ unsigned int nwidth = (pic_width_in_mbs_minus1+1) * 16; -+ unsigned int nheight = (2-frame_mbs_only_flag) * (pic_height_in_map_units_minus1+1) * 16; - -- if (frame_cropping_flag) { -- unsigned int crop_h = 2*(frame_crop_left_offset+frame_crop_right_offset); -- unsigned int crop_v = 2*(frame_crop_top_offset+frame_crop_bottom_offset)*(2-frame_mbs_only_flag); -- if (crop_h < width) width -= crop_h; -- if (crop_v < height) height -= crop_v; -- } -+ if (frame_cropping_flag) { -+ unsigned int crop_h = 2*(frame_crop_left_offset+frame_crop_right_offset); -+ unsigned int crop_v = 2*(frame_crop_top_offset+frame_crop_bottom_offset)*(2-frame_mbs_only_flag); -+ if (crop_h < nwidth) nwidth -= crop_h; -+ if (crop_v < nheight) nheight -= crop_v; -+ } -+ if (nwidth != width || nheight != height) -+ { -+ width = nwidth; -+ height = nheight; -+ return true; -+ } -+ return false; -+} -+ -+/*---------------------------------------------------------------------- -+| AP4_AvcSequenceParameterSet::GetVUIInfo -++---------------------------------------------------------------------*/ -+bool -+AP4_AvcSequenceParameterSet::GetVUIInfo(unsigned int& fps_ticks, unsigned int& fps_scale, float &aspect) -+{ -+ bool ret(false); -+ if (timing_info_present_flag && fixed_frame_rate_flag) -+ { -+ if (fps_scale != (num_units_in_tick << 1) || fps_ticks != time_scale) -+ { -+ fps_scale = num_units_in_tick << 1; -+ fps_ticks = time_scale; -+ ret = true; -+ } -+ } -+ unsigned int w, h; -+ if (aspect_ratio_info_present_flag && GetInfo(w, h)) -+ { -+ float a((float)(sar_width * w) / (sar_height * h)); -+ if (a != aspect) -+ { -+ aspect = a; -+ ret = true; -+ } -+ } -+ return ret; - } - - /*---------------------------------------------------------------------- -diff --git a/Source/C++/Codecs/Ap4AvcParser.h b/Source/C++/Codecs/Ap4AvcParser.h -index 9f97892..431a294 100644 ---- a/Source/C++/Codecs/Ap4AvcParser.h -+++ b/Source/C++/Codecs/Ap4AvcParser.h -@@ -91,7 +91,8 @@ typedef struct { - struct AP4_AvcSequenceParameterSet { - AP4_AvcSequenceParameterSet(); - -- void GetInfo(unsigned int& width, unsigned int& height); -+ bool GetInfo(unsigned int& width, unsigned int& height); -+ bool GetVUIInfo(unsigned int& fps_ticks, unsigned int& fps_scale, float &aspect); - - AP4_DataBuffer raw_bytes; - --- -2.30.2 - diff --git a/package/bento4/0006-Implement-SPS-Frame-parser.patch b/package/bento4/0006-Implement-SPS-Frame-parser.patch deleted file mode 100644 index d2c224ccf907..000000000000 --- a/package/bento4/0006-Implement-SPS-Frame-parser.patch +++ /dev/null @@ -1,67 +0,0 @@ -From 441247d84e8493a49d234fe062100b049956de90 Mon Sep 17 00:00:00 2001 -From: peak3d -Date: Thu, 22 Jul 2021 10:34:42 +0200 -Subject: [PATCH] Implement SPS Frame parser - -Signed-off-by: Bernd Kuhls ---- - Source/C++/Codecs/Ap4AvcParser.cpp | 26 ++++++++++++++++++++++++++ - Source/C++/Codecs/Ap4AvcParser.h | 5 +++++ - 2 files changed, 31 insertions(+) - -diff --git a/Source/C++/Codecs/Ap4AvcParser.cpp b/Source/C++/Codecs/Ap4AvcParser.cpp -index 7f4fc34..cfa841d 100644 ---- a/Source/C++/Codecs/Ap4AvcParser.cpp -+++ b/Source/C++/Codecs/Ap4AvcParser.cpp -@@ -1112,6 +1112,32 @@ AP4_AvcFrameParser::AppendNalUnitData(const unsigned char* data, unsigned int da - m_AccessUnitData.Append(new AP4_DataBuffer(data, data_size)); - } - -+/*---------------------------------------------------------------------- -+| AP4_AvcFrameParser::Feed -++---------------------------------------------------------------------*/ -+AP4_Result AP4_AvcFrameParser::ParseFrameForSPS(const AP4_Byte* data, AP4_Size data_size, AP4_UI08 naluLengthSize, AP4_AvcSequenceParameterSet &sps) -+{ -+ if (data_size < naluLengthSize) -+ return AP4_ERROR_EOS; -+ -+ while (data_size > naluLengthSize) -+ { -+ AP4_Size nalSize(0); -+ for (unsigned int i(0); i < naluLengthSize; ++i) { nalSize = (nalSize << 8) + *data++; }; -+ data_size -= naluLengthSize; -+ if (nalSize > data_size) -+ return AP4_ERROR_INVALID_PARAMETERS; -+ -+ if ((*data & 0x1F) == AP4_AVC_NAL_UNIT_TYPE_SPS) -+ { -+ AP4_AvcFrameParser fp; -+ return fp.ParseSPS(data, data_size, sps); -+ } -+ data_size -= nalSize; -+ } -+ return AP4_SUCCESS; -+} -+ - /*---------------------------------------------------------------------- - | AP4_AvcFrameParser::Feed - +---------------------------------------------------------------------*/ -diff --git a/Source/C++/Codecs/Ap4AvcParser.h b/Source/C++/Codecs/Ap4AvcParser.h -index 431a294..99c5320 100644 ---- a/Source/C++/Codecs/Ap4AvcParser.h -+++ b/Source/C++/Codecs/Ap4AvcParser.h -@@ -258,6 +258,11 @@ public: - AP4_AvcFrameParser(); - ~AP4_AvcFrameParser(); - -+ static AP4_Result ParseFrameForSPS(const AP4_Byte* data, -+ AP4_Size data_size, -+ AP4_UI08 naluLengthSize, -+ AP4_AvcSequenceParameterSet &sps); -+ - /** - * Feed some data to the parser and look for the next NAL Unit. - * --- -2.30.2 - diff --git a/package/bento4/0007-Fix-segfault-when-AP4_Sample-s-seek.patch b/package/bento4/0007-Fix-segfault-when-AP4_Sample-s-seek.patch deleted file mode 100644 index bd7f43465280..000000000000 --- a/package/bento4/0007-Fix-segfault-when-AP4_Sample-s-seek.patch +++ /dev/null @@ -1,25 +0,0 @@ -From b36f3c02a93029308654f77c01c3c04259449c5c Mon Sep 17 00:00:00 2001 -From: peak3d -Date: Thu, 22 Jul 2021 10:35:48 +0200 -Subject: [PATCH] Fix segfault when AP4_Sample's seek - -Signed-off-by: Bernd Kuhls ---- - Source/C++/Core/Ap4LinearReader.cpp | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/Source/C++/Core/Ap4LinearReader.cpp b/Source/C++/Core/Ap4LinearReader.cpp -index 7cc3ebd..61dd60e 100644 ---- a/Source/C++/Core/Ap4LinearReader.cpp -+++ b/Source/C++/Core/Ap4LinearReader.cpp -@@ -482,6 +482,7 @@ AP4_LinearReader::Advance(bool read_data) - result = buffer->m_Sample->ReadData(buffer->m_Data); - } - if (AP4_FAILED(result)) { -+ buffer->m_Sample = nullptr; - delete buffer; - return result; - } --- -2.30.2 - diff --git a/package/bento4/0008-Hack-HBO.patch b/package/bento4/0008-Hack-HBO.patch deleted file mode 100644 index ed297574a835..000000000000 --- a/package/bento4/0008-Hack-HBO.patch +++ /dev/null @@ -1,214 +0,0 @@ -From 37e54320f2822bdc7eab50eb54b1fc4a452c7f60 Mon Sep 17 00:00:00 2001 -From: peak3d -Date: Thu, 22 Jul 2021 11:18:14 +0200 -Subject: [PATCH] Hack HBO - -Signed-off-by: Bernd Kuhls ---- - Source/C++/Core/Ap4FragmentSampleTable.cpp | 8 +++++++- - Source/C++/Core/Ap4FragmentSampleTable.h | 1 + - Source/C++/Core/Ap4LinearReader.cpp | 20 +++++++++++++------- - Source/C++/Core/Ap4LinearReader.h | 3 ++- - Source/C++/Core/Ap4MovieFragment.cpp | 5 ++++- - Source/C++/Core/Ap4MovieFragment.h | 2 ++ - Source/C++/Core/Ap4Processor.cpp | 3 ++- - 7 files changed, 31 insertions(+), 11 deletions(-) - -diff --git a/Source/C++/Core/Ap4FragmentSampleTable.cpp b/Source/C++/Core/Ap4FragmentSampleTable.cpp -index 3fbb53e..cea5c7d 100644 ---- a/Source/C++/Core/Ap4FragmentSampleTable.cpp -+++ b/Source/C++/Core/Ap4FragmentSampleTable.cpp -@@ -47,6 +47,7 @@ AP4_FragmentSampleTable::AP4_FragmentSampleTable(AP4_ContainerAtom* traf, - AP4_ByteStream* sample_stream, - AP4_Position moof_offset, - AP4_Position mdat_payload_offset, -+ AP4_UI64 mdat_payload_size, - AP4_UI64 dts_origin) : - m_Duration(0) - { -@@ -73,6 +74,7 @@ AP4_FragmentSampleTable::AP4_FragmentSampleTable(AP4_ContainerAtom* traf, - } - - // process all the trun atoms -+ AP4_UI32 trun_flags(0); - for (AP4_List::Item* item = traf->GetChildren().FirstItem(); - item; - item = item->GetNext()) { -@@ -88,9 +90,13 @@ AP4_FragmentSampleTable::AP4_FragmentSampleTable(AP4_ContainerAtom* traf, - mdat_payload_offset, - dts_origin); - if (AP4_FAILED(result)) return; -+ trun_flags |= trun->GetFlags(); - } - } -- } -+ } -+ // Hack if we have a single sample and default sample size is wrong (hbo ttml) -+ if (m_Samples.ItemCount() == 1 && (trun_flags & AP4_TRUN_FLAG_SAMPLE_SIZE_PRESENT) == 0) -+ m_Samples[0].SetSize(mdat_payload_size); - } - - /*---------------------------------------------------------------------- -diff --git a/Source/C++/Core/Ap4FragmentSampleTable.h b/Source/C++/Core/Ap4FragmentSampleTable.h -index 67192de..29fa4a9 100644 ---- a/Source/C++/Core/Ap4FragmentSampleTable.h -+++ b/Source/C++/Core/Ap4FragmentSampleTable.h -@@ -57,6 +57,7 @@ class AP4_FragmentSampleTable : public AP4_SampleTable - AP4_ByteStream* sample_stream, - AP4_Position moof_offset, - AP4_Position mdat_payload_offset, // hack because MS doesn't implement the spec correctly -+ AP4_UI64 mdat_payload_size, - AP4_UI64 dts_origin=0); - virtual ~AP4_FragmentSampleTable(); - -diff --git a/Source/C++/Core/Ap4LinearReader.cpp b/Source/C++/Core/Ap4LinearReader.cpp -index 61dd60e..eabeacf 100644 ---- a/Source/C++/Core/Ap4LinearReader.cpp -+++ b/Source/C++/Core/Ap4LinearReader.cpp -@@ -309,7 +309,8 @@ AP4_LinearReader::ProcessTrack(AP4_Track* track) - AP4_Result - AP4_LinearReader::ProcessMoof(AP4_ContainerAtom* moof, - AP4_Position moof_offset, -- AP4_Position mdat_payload_offset) -+ AP4_Position mdat_payload_offset, -+ AP4_UI64 mdat_payload_size) - { - AP4_Result result; - -@@ -334,7 +335,8 @@ AP4_LinearReader::ProcessMoof(AP4_ContainerAtom* moof, - ids[j], - m_FragmentStream, - moof_offset, -- mdat_payload_offset, -+ mdat_payload_offset, -+ mdat_payload_size, - tracker->m_NextDts, - sample_table); - if (AP4_FAILED(result)) return result; -@@ -382,13 +384,11 @@ AP4_LinearReader::AdvanceFragment() - AP4_Position position = 0; - m_FragmentStream->Tell(position); - -- // process the movie fragment -- result = ProcessMoof(moof, position-atom->GetSize(), position+8); -- if (AP4_FAILED(result)) return result; -- - // compute where the next fragment will be - AP4_UI32 size; - AP4_UI32 type; -+ AP4_UI64 size_64 = 0; -+ - m_FragmentStream->Tell(position); - result = m_FragmentStream->ReadUI32(size); - if (AP4_FAILED(result)) return AP4_SUCCESS; // can't read more -@@ -397,13 +397,19 @@ AP4_LinearReader::AdvanceFragment() - if (size == 0) { - m_NextFragmentPosition = 0; - } else if (size == 1) { -- AP4_UI64 size_64 = 0; - result = m_FragmentStream->ReadUI64(size_64); - if (AP4_FAILED(result)) return AP4_SUCCESS; // can't read more - m_NextFragmentPosition = position+size_64; -+ size_64 -= 8; - } else { - m_NextFragmentPosition = position+size; -+ size_64 = size; - } -+ -+ // process the movie fragment -+ result = ProcessMoof(moof, position - atom->GetSize(), position + 8, size_64 - 8); -+ if (AP4_FAILED(result)) return result; -+ - return AP4_SUCCESS; - } else { - delete atom; -diff --git a/Source/C++/Core/Ap4LinearReader.h b/Source/C++/Core/Ap4LinearReader.h -index 21f4871..929b4e1 100644 ---- a/Source/C++/Core/Ap4LinearReader.h -+++ b/Source/C++/Core/Ap4LinearReader.h -@@ -161,7 +161,8 @@ protected: - virtual AP4_Result ProcessTrack(AP4_Track* track); - virtual AP4_Result ProcessMoof(AP4_ContainerAtom* moof, - AP4_Position moof_offset, -- AP4_Position mdat_payload_offset); -+ AP4_Position mdat_payload_offset, -+ AP4_UI64 mdat_payload_size); - - // methods - Tracker* FindTracker(AP4_UI32 track_id); -diff --git a/Source/C++/Core/Ap4MovieFragment.cpp b/Source/C++/Core/Ap4MovieFragment.cpp -index 028d42d..c2ead25 100644 ---- a/Source/C++/Core/Ap4MovieFragment.cpp -+++ b/Source/C++/Core/Ap4MovieFragment.cpp -@@ -127,6 +127,7 @@ AP4_MovieFragment::CreateSampleTable(AP4_MoovAtom* moov, - AP4_ByteStream* sample_stream, - AP4_Position moof_offset, - AP4_Position mdat_payload_offset, -+ AP4_UI64 mdat_payload_size, - AP4_UI64 dts_origin, - AP4_FragmentSampleTable*& sample_table) - { -@@ -158,6 +159,7 @@ AP4_MovieFragment::CreateSampleTable(AP4_MoovAtom* moov, - sample_stream, - moof_offset, - mdat_payload_offset, -+ mdat_payload_size, - dts_origin); - return AP4_SUCCESS; - } -@@ -174,9 +176,10 @@ AP4_MovieFragment::CreateSampleTable(AP4_Movie* movie, - AP4_ByteStream* sample_stream, - AP4_Position moof_offset, - AP4_Position mdat_payload_offset, -+ AP4_UI64 mdat_payload_size, - AP4_UI64 dts_origin, - AP4_FragmentSampleTable*& sample_table) - { - AP4_MoovAtom* moov = movie?movie->GetMoovAtom():NULL; -- return CreateSampleTable(moov, track_id, sample_stream, moof_offset, mdat_payload_offset, dts_origin, sample_table); -+ return CreateSampleTable(moov, track_id, sample_stream, moof_offset, mdat_payload_offset, mdat_payload_size, dts_origin, sample_table); - } -diff --git a/Source/C++/Core/Ap4MovieFragment.h b/Source/C++/Core/Ap4MovieFragment.h -index f829411..de59c42 100644 ---- a/Source/C++/Core/Ap4MovieFragment.h -+++ b/Source/C++/Core/Ap4MovieFragment.h -@@ -70,6 +70,7 @@ public: - AP4_ByteStream* sample_stream, - AP4_Position moof_offset, - AP4_Position mdat_payload_offset, // hack because MS doesn't implement the spec properly -+ AP4_UI64 mdat_payload_size, - AP4_UI64 dts_origin, - AP4_FragmentSampleTable*& sample_table); - AP4_Result CreateSampleTable(AP4_Movie* movie, -@@ -77,6 +78,7 @@ public: - AP4_ByteStream* sample_stream, - AP4_Position moof_offset, - AP4_Position mdat_payload_offset, // hack because MS doesn't implement the spec properly -+ AP4_UI64 mdat_payload_size, - AP4_UI64 dts_origin, - AP4_FragmentSampleTable*& sample_table); - -diff --git a/Source/C++/Core/Ap4Processor.cpp b/Source/C++/Core/Ap4Processor.cpp -index c4e1d78..365d955 100644 ---- a/Source/C++/Core/Ap4Processor.cpp -+++ b/Source/C++/Core/Ap4Processor.cpp -@@ -156,6 +156,7 @@ AP4_Processor::ProcessFragments(AP4_MoovAtom* moov, - AP4_Atom* atom = locator->m_Atom; - AP4_UI64 atom_offset = locator->m_Offset; - AP4_UI64 mdat_payload_offset = atom_offset+atom->GetSize()+AP4_ATOM_HEADER_SIZE; -+ AP4_UI64 mdat_payload_size = atom->GetSize(); - AP4_Sample sample; - AP4_DataBuffer sample_data_in; - AP4_DataBuffer sample_data_out; -@@ -226,7 +227,7 @@ AP4_Processor::ProcessFragments(AP4_MoovAtom* moov, - - // create a sample table object so we can read the sample data - AP4_FragmentSampleTable* sample_table = NULL; -- result = fragment->CreateSampleTable(moov, tfhd->GetTrackId(), &input, atom_offset, mdat_payload_offset, 0, sample_table); -+ result = fragment->CreateSampleTable(moov, tfhd->GetTrackId(), &input, atom_offset, mdat_payload_offset, mdat_payload_size, 0, sample_table); - if (AP4_FAILED(result)) return result; - sample_tables.Append(sample_table); - --- -2.30.2 - diff --git a/package/bento4/0009-Android-32-ftello-fix.patch b/package/bento4/0009-Android-32-ftello-fix.patch deleted file mode 100644 index 0adca20ed087..000000000000 --- a/package/bento4/0009-Android-32-ftello-fix.patch +++ /dev/null @@ -1,31 +0,0 @@ -From f12fbb6f54b8302db2ab7c926a26f9189cf86532 Mon Sep 17 00:00:00 2001 -From: peak3d -Date: Thu, 22 Jul 2021 10:41:35 +0200 -Subject: [PATCH] Android 32 ftello fix - -ref: https://android.googlesource.com/platform/bionic/+/master/docs/32-bit-abi.md -Signed-off-by: Bernd Kuhls ---- - Source/C++/Core/Ap4Config.h | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/Source/C++/Core/Ap4Config.h b/Source/C++/Core/Ap4Config.h -index 422069e..c859a03 100644 ---- a/Source/C++/Core/Ap4Config.h -+++ b/Source/C++/Core/Ap4Config.h -@@ -141,10 +141,10 @@ - #endif - - #if !defined(AP4_fseek) --#define AP4_fseek fseeko -+#define AP4_fseek fseek - #endif - #if !defined(AP4_ftell) --#define AP4_ftell ftello -+#define AP4_ftell ftell - #endif - - /* some compilers (ex: MSVC 8) deprecate those, so we rename them */ --- -2.30.2 - diff --git a/package/bento4/0010-Dazn-sample-duration-workaround.patch b/package/bento4/0010-Dazn-sample-duration-workaround.patch deleted file mode 100644 index 5c64210324a4..000000000000 --- a/package/bento4/0010-Dazn-sample-duration-workaround.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 10f931c703c68b4fc856e09788dfe64579252bb8 Mon Sep 17 00:00:00 2001 -From: peak3d -Date: Thu, 22 Jul 2021 10:48:36 +0200 -Subject: [PATCH] Dazn sample duration workaround - -Signed-off-by: Bernd Kuhls ---- - Source/C++/Core/Ap4TrunAtom.cpp | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/Source/C++/Core/Ap4TrunAtom.cpp b/Source/C++/Core/Ap4TrunAtom.cpp -index c51f21d..77b7c6d 100644 ---- a/Source/C++/Core/Ap4TrunAtom.cpp -+++ b/Source/C++/Core/Ap4TrunAtom.cpp -@@ -128,6 +128,12 @@ AP4_TrunAtom::AP4_TrunAtom(AP4_UI32 size, - for (unsigned int i=0; i 1 sequences -+ if (i && m_Entries[i].sample_duration == 1 && m_Entries[i - 1].sample_duration > 1) -+ { -+ m_Entries[i].sample_duration = m_Entries[i - 1].sample_duration >> 1; -+ m_Entries[i - 1].sample_duration -= m_Entries[i].sample_duration; -+ } - --record_fields_count; - } - if (flags & AP4_TRUN_FLAG_SAMPLE_SIZE_PRESENT) { --- -2.30.2 - diff --git a/package/bento4/0011-Add-argument-to-reuse-single-sample-decrypter.patch b/package/bento4/0011-Add-argument-to-reuse-single-sample-decrypter.patch deleted file mode 100644 index 15159af892d2..000000000000 --- a/package/bento4/0011-Add-argument-to-reuse-single-sample-decrypter.patch +++ /dev/null @@ -1,179 +0,0 @@ -From 7bb5120b52814e4471a165e295acdc6b6155259e Mon Sep 17 00:00:00 2001 -From: peak3d -Date: Thu, 22 Jul 2021 11:01:12 +0200 -Subject: [PATCH] Add argument to reuse single sample decrypter - -Signed-off-by: Bernd Kuhls ---- - Source/C++/Core/Ap4CommonEncryption.cpp | 36 ++++++++++++++++++------- - Source/C++/Core/Ap4CommonEncryption.h | 8 +++++- - Source/C++/Core/Ap4Protection.cpp | 3 ++- - 3 files changed, 35 insertions(+), 12 deletions(-) - -diff --git a/Source/C++/Core/Ap4CommonEncryption.cpp b/Source/C++/Core/Ap4CommonEncryption.cpp -index 5308200..cb5c328 100644 ---- a/Source/C++/Core/Ap4CommonEncryption.cpp -+++ b/Source/C++/Core/Ap4CommonEncryption.cpp -@@ -1967,6 +1967,7 @@ AP4_CencSampleDecrypter::Create(AP4_ProtectedSampleDescription* sample_descripti - const AP4_UI08* key, - AP4_Size key_size, - AP4_BlockCipherFactory* block_cipher_factory, -+ AP4_CencSingleSampleDecrypter* singlesample_decrypter, - AP4_CencSampleDecrypter*& decrypter) - { - AP4_SaioAtom* saio = NULL; -@@ -1982,6 +1983,7 @@ AP4_CencSampleDecrypter::Create(AP4_ProtectedSampleDescription* sample_descripti - saio, - saiz, - sample_encryption_atom, -+ singlesample_decrypter, - decrypter); - } - -@@ -1999,6 +2001,7 @@ AP4_CencSampleDecrypter::Create(AP4_ProtectedSampleDescription* sample_descripti - AP4_SaioAtom*& saio, - AP4_SaizAtom*& saiz, - AP4_CencSampleEncryption*& sample_encryption_atom, -+ AP4_CencSingleSampleDecrypter* singlesample_decrypter, - AP4_CencSampleDecrypter*& decrypter) - { - // default return values -@@ -2032,6 +2035,7 @@ AP4_CencSampleDecrypter::Create(AP4_ProtectedSampleDescription* sample_descripti - key_size, - block_cipher_factory, - reset_iv_at_each_subsample, -+ singlesample_decrypter, - decrypter); - } - -@@ -2045,6 +2049,7 @@ AP4_CencSampleDecrypter::Create(AP4_CencSampleInfoTable* sample_info_table, - AP4_Size key_size, - AP4_BlockCipherFactory* block_cipher_factory, - bool reset_iv_at_each_subsample, -+ AP4_CencSingleSampleDecrypter* singlesample_decrypter, - AP4_CencSampleDecrypter*& decrypter) - { - // default return value -@@ -2074,15 +2079,23 @@ AP4_CencSampleDecrypter::Create(AP4_CencSampleInfoTable* sample_info_table, - - // create a single-sample decrypter - AP4_CencSingleSampleDecrypter* single_sample_decrypter = NULL; -- AP4_Result result = AP4_CencSingleSampleDecrypter::Create(cipher_type, -- key, -- key_size, -- sample_info_table->GetCryptByteBlock(), -- sample_info_table->GetSkipByteBlock(), -- block_cipher_factory, -- reset_iv_at_each_subsample, -- single_sample_decrypter); -- if (AP4_FAILED(result)) return result; -+ if (!singlesample_decrypter) -+ { -+ AP4_Result result = AP4_CencSingleSampleDecrypter::Create(cipher_type, -+ key, -+ key_size, -+ sample_info_table->GetCryptByteBlock(), -+ sample_info_table->GetSkipByteBlock(), -+ block_cipher_factory, -+ reset_iv_at_each_subsample, -+ single_sample_decrypter); -+ -+ if (AP4_FAILED(result)) return result; -+ } -+ else -+ { -+ single_sample_decrypter = singlesample_decrypter; -+ } - - // create the decrypter - decrypter = new AP4_CencSampleDecrypter(single_sample_decrypter, sample_info_table); -@@ -2333,7 +2346,9 @@ AP4_CencFragmentDecrypter::ProcessSample(AP4_DataBuffer& data_in, - | AP4_CencDecryptingProcessor::AP4_CencDecryptingProcessor - +---------------------------------------------------------------------*/ - AP4_CencDecryptingProcessor::AP4_CencDecryptingProcessor(const AP4_ProtectionKeyMap* key_map, -- AP4_BlockCipherFactory* block_cipher_factory) : -+ AP4_BlockCipherFactory* block_cipher_factory, -+ AP4_CencSingleSampleDecrypter *cenc_singlesample_decrypter) : -+ m_CencSingleSampleDecrypter(cenc_singlesample_decrypter), - m_KeyMap(key_map) - { - if (block_cipher_factory) { -@@ -2483,6 +2498,7 @@ AP4_CencDecryptingProcessor::CreateFragmentHandler(AP4_TrakAtom* trak, - saio, - saiz, - sample_encryption_atom, -+ m_CencSingleSampleDecrypter, - sample_decrypter); - if (AP4_FAILED(result)) return NULL; - -diff --git a/Source/C++/Core/Ap4CommonEncryption.h b/Source/C++/Core/Ap4CommonEncryption.h -index 580de66..a6b20ce 100644 ---- a/Source/C++/Core/Ap4CommonEncryption.h -+++ b/Source/C++/Core/Ap4CommonEncryption.h -@@ -48,6 +48,7 @@ class AP4_SaioAtom; - class AP4_CencSampleInfoTable; - class AP4_AvcFrameParser; - class AP4_HevcFrameParser; -+class AP4_CencSingleSampleDecrypter; - - /*---------------------------------------------------------------------- - | constants -@@ -654,7 +655,8 @@ class AP4_CencDecryptingProcessor : public AP4_Processor - public: - // constructor - AP4_CencDecryptingProcessor(const AP4_ProtectionKeyMap* key_map, -- AP4_BlockCipherFactory* block_cipher_factory = NULL); -+ AP4_BlockCipherFactory* block_cipher_factory = NULL, -+ AP4_CencSingleSampleDecrypter* cenc_singlesample_decrypter = NULL); - - // AP4_Processor methods - virtual AP4_Processor::TrackHandler* CreateTrackHandler(AP4_TrakAtom* trak); -@@ -670,6 +672,7 @@ protected: - - // members - AP4_BlockCipherFactory* m_BlockCipherFactory; -+ AP4_CencSingleSampleDecrypter* m_CencSingleSampleDecrypter; - const AP4_ProtectionKeyMap* m_KeyMap; - }; - -@@ -752,6 +755,7 @@ public: - AP4_SaioAtom*& saio_atom, // [out] - AP4_SaizAtom*& saiz_atom, // [out] - AP4_CencSampleEncryption*& sample_encryption_atom, // [out] -+ AP4_CencSingleSampleDecrypter* singlesample_decrypter, - AP4_CencSampleDecrypter*& decrypter); - - static AP4_Result Create(AP4_ProtectedSampleDescription* sample_description, -@@ -761,6 +765,7 @@ public: - const AP4_UI08* key, - AP4_Size key_size, - AP4_BlockCipherFactory* block_cipher_factory, -+ AP4_CencSingleSampleDecrypter* singlesample_decrypter, - AP4_CencSampleDecrypter*& decrypter); - - static AP4_Result Create(AP4_CencSampleInfoTable* sample_info_table, -@@ -769,6 +774,7 @@ public: - AP4_Size key_size, - AP4_BlockCipherFactory* block_cipher_factory, - bool reset_iv_at_each_subsample, -+ AP4_CencSingleSampleDecrypter* singlesample_decrypter, - AP4_CencSampleDecrypter*& decrypter); - - // methods -diff --git a/Source/C++/Core/Ap4Protection.cpp b/Source/C++/Core/Ap4Protection.cpp -index fd421e9..80bb9f0 100644 ---- a/Source/C++/Core/Ap4Protection.cpp -+++ b/Source/C++/Core/Ap4Protection.cpp -@@ -812,7 +812,8 @@ AP4_SampleDecrypter::Create(AP4_ProtectedSampleDescription* sample_description, - aux_info_data_offset, - key, - key_size, -- block_cipher_factory, -+ block_cipher_factory, -+ NULL, - decrypter); - if (AP4_FAILED(result)) return NULL; - return decrypter; --- -2.30.2 - diff --git a/package/bento4/0012-Static-ReadGolomb-SignedGolomb.patch b/package/bento4/0012-Static-ReadGolomb-SignedGolomb.patch deleted file mode 100644 index d20e1191bf7e..000000000000 --- a/package/bento4/0012-Static-ReadGolomb-SignedGolomb.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 91e148a9c53811447d35c36d9f11f767d49477a0 Mon Sep 17 00:00:00 2001 -From: Glenn Guy -Date: Thu, 22 Jul 2021 11:04:26 +0200 -Subject: [PATCH] Static ReadGolomb/SignedGolomb - -Signed-off-by: Bernd Kuhls ---- - Source/C++/Codecs/Ap4AvcParser.cpp | 8 ++++---- - Source/C++/Codecs/Ap4AvcParser.h | 3 +++ - 2 files changed, 7 insertions(+), 4 deletions(-) - -diff --git a/Source/C++/Codecs/Ap4AvcParser.cpp b/Source/C++/Codecs/Ap4AvcParser.cpp -index cfa841d..a17b698 100644 ---- a/Source/C++/Codecs/Ap4AvcParser.cpp -+++ b/Source/C++/Codecs/Ap4AvcParser.cpp -@@ -191,8 +191,8 @@ AP4_AvcFrameParser::~AP4_AvcFrameParser() - /*---------------------------------------------------------------------- - | ReadGolomb - +---------------------------------------------------------------------*/ --static unsigned int --ReadGolomb(AP4_BitReader& bits) -+unsigned int -+AP4_AvcFrameParser::ReadGolomb(AP4_BitReader& bits) - { - unsigned int leading_zeros = 0; - while (bits.ReadBit() == 0) { -@@ -209,8 +209,8 @@ ReadGolomb(AP4_BitReader& bits) - /*---------------------------------------------------------------------- - | SignedGolomb - +---------------------------------------------------------------------*/ --static int --SignedGolomb(unsigned int code_num) -+int -+AP4_AvcFrameParser::SignedGolomb(unsigned int code_num) - { - if (code_num % 2) { - return (code_num+1)/2; -diff --git a/Source/C++/Codecs/Ap4AvcParser.h b/Source/C++/Codecs/Ap4AvcParser.h -index 99c5320..0c74c0e 100644 ---- a/Source/C++/Codecs/Ap4AvcParser.h -+++ b/Source/C++/Codecs/Ap4AvcParser.h -@@ -321,6 +321,9 @@ public: - unsigned int nal_ref_idc, - AP4_AvcSliceHeader& slice_header); - -+ static unsigned int ReadGolomb(AP4_BitReader& bits); -+ static int SignedGolomb(unsigned int code_num); -+ - private: - // methods - bool SameFrame(unsigned int nal_unit_type_1, unsigned int nal_ref_idc_1, AP4_AvcSliceHeader& sh1, --- -2.30.2 - diff --git a/package/bento4/0013-Add-GetChannels-method.patch b/package/bento4/0013-Add-GetChannels-method.patch deleted file mode 100644 index 7e3f6e69acae..000000000000 --- a/package/bento4/0013-Add-GetChannels-method.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 15e31e3641e4f85475984bf4d9ebf8ae47303a8a Mon Sep 17 00:00:00 2001 -From: peak3d -Date: Thu, 22 Jul 2021 11:07:13 +0200 -Subject: [PATCH] Add GetChannels method - -Signed-off-by: Bernd Kuhls ---- - Source/C++/Core/Ap4Dac3Atom.cpp | 6 ++++++ - Source/C++/Core/Ap4Dac3Atom.h | 1 + - 2 files changed, 7 insertions(+) - -diff --git a/Source/C++/Core/Ap4Dac3Atom.cpp b/Source/C++/Core/Ap4Dac3Atom.cpp -index 80a511e..a9ea78a 100644 ---- a/Source/C++/Core/Ap4Dac3Atom.cpp -+++ b/Source/C++/Core/Ap4Dac3Atom.cpp -@@ -143,3 +143,9 @@ AP4_Dac3Atom::InspectFields(AP4_AtomInspector& inspector) - inspector.AddField("lfeon", m_StreamInfo.lfeon); - return AP4_SUCCESS; - } -+ -+AP4_UI08 AP4_Dac3Atom::GetChannels() const -+{ -+ static const AP4_UI08 CC[] = { 2, 1, 2, 3, 3, 4, 4, 5 }; -+ return CC[m_StreamInfo.acmod] + m_StreamInfo.lfeon; -+} -diff --git a/Source/C++/Core/Ap4Dac3Atom.h b/Source/C++/Core/Ap4Dac3Atom.h -index 2532ef2..78e2875 100644 ---- a/Source/C++/Core/Ap4Dac3Atom.h -+++ b/Source/C++/Core/Ap4Dac3Atom.h -@@ -73,6 +73,7 @@ public: - const AP4_DataBuffer& GetRawBytes() const { return m_RawBytes; } - unsigned int GetDataRate() const { return m_DataRate; } - const StreamInfo& GetStreamInfo() const { return m_StreamInfo; } -+ AP4_UI08 GetChannels() const; - - private: - // methods --- -2.30.2 - diff --git a/package/bento4/0014-Implemented-GetSampleIndexForTimeStamp-GetNearestSyn.patch b/package/bento4/0014-Implemented-GetSampleIndexForTimeStamp-GetNearestSyn.patch deleted file mode 100644 index a2bc7aefebe2..000000000000 --- a/package/bento4/0014-Implemented-GetSampleIndexForTimeStamp-GetNearestSyn.patch +++ /dev/null @@ -1,59 +0,0 @@ -From f673675843144785658a010bab455972d83af004 Mon Sep 17 00:00:00 2001 -From: peak3d -Date: Thu, 22 Jul 2021 11:09:37 +0200 -Subject: [PATCH] Implemented - GetSampleIndexForTimeStamp/GetNearestSyncSampleIndex - -Signed-off-by: Bernd Kuhls ---- - Source/C++/Core/Ap4FragmentSampleTable.cpp | 25 ++++++++++++++++++---- - 1 file changed, 21 insertions(+), 4 deletions(-) - -diff --git a/Source/C++/Core/Ap4FragmentSampleTable.cpp b/Source/C++/Core/Ap4FragmentSampleTable.cpp -index cea5c7d..1c62f24 100644 ---- a/Source/C++/Core/Ap4FragmentSampleTable.cpp -+++ b/Source/C++/Core/Ap4FragmentSampleTable.cpp -@@ -297,10 +297,19 @@ AP4_FragmentSampleTable::GetSampleChunkPosition(AP4_Ordinal sample_index, - | AP4_FragmentSampleTable::GetSampleIndexForTimeStamp - +---------------------------------------------------------------------*/ - AP4_Result --AP4_FragmentSampleTable::GetSampleIndexForTimeStamp(AP4_UI64 /*ts*/, -+AP4_FragmentSampleTable::GetSampleIndexForTimeStamp(AP4_UI64 ts, - AP4_Ordinal& sample_index) - { -- sample_index = 0; // TODO -+ if (!m_Samples.ItemCount()) -+ return AP4_ERROR_NOT_ENOUGH_DATA; -+ -+ sample_index = 0; -+ while (sample_index < m_Samples.ItemCount() && m_Samples[sample_index].GetCts() + m_Samples[sample_index].GetDuration() < ts) -+ ++sample_index; -+ -+ if (sample_index == m_Samples.ItemCount()) -+ return AP4_ERROR_NOT_ENOUGH_DATA; -+ - return AP4_SUCCESS; - } - -@@ -308,8 +317,16 @@ AP4_FragmentSampleTable::GetSampleIndexForTimeStamp(AP4_UI64 /*ts*/, - | AP4_FragmentSampleTable::GetNearestSyncSampleIndex - +---------------------------------------------------------------------*/ - AP4_Ordinal --AP4_FragmentSampleTable::GetNearestSyncSampleIndex(AP4_Ordinal /*sample_index*/, bool /*before*/) -+AP4_FragmentSampleTable::GetNearestSyncSampleIndex(AP4_Ordinal sample_index, bool before) - { -- return 0; // TODO -+ if (sample_index >= m_Samples.ItemCount()) -+ return sample_index; -+ -+ AP4_Ordinal end(before ? 0 : m_Samples.ItemCount()); -+ -+ while (sample_index != end && !m_Samples[sample_index].IsSync()) -+ sample_index = sample_index + (before ? -1 : 1); -+ -+ return sample_index; - } - --- -2.30.2 - diff --git a/package/bento4/0015-Avoid-set-next-fragment-position.patch b/package/bento4/0015-Avoid-set-next-fragment-position.patch deleted file mode 100644 index ded33ffdaf29..000000000000 --- a/package/bento4/0015-Avoid-set-next-fragment-position.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 0658d38be16c88585b248b237895b4dc63f28e79 Mon Sep 17 00:00:00 2001 -From: peak3d -Date: Thu, 22 Jul 2021 11:23:13 +0200 -Subject: [PATCH] Avoid set next fragment position - -Signed-off-by: Bernd Kuhls ---- - Source/C++/Core/Ap4LinearReader.cpp | 12 +++++++----- - 1 file changed, 7 insertions(+), 5 deletions(-) - -diff --git a/Source/C++/Core/Ap4LinearReader.cpp b/Source/C++/Core/Ap4LinearReader.cpp -index eabeacf..61c3a9d 100644 ---- a/Source/C++/Core/Ap4LinearReader.cpp -+++ b/Source/C++/Core/Ap4LinearReader.cpp -@@ -54,8 +54,8 @@ AP4_LinearReader::AP4_LinearReader(AP4_Movie& movie, - m_HasFragments = movie.HasFragments(); - if (fragment_stream) { - fragment_stream->AddReference(); -- fragment_stream->Tell(m_CurrentFragmentPosition); -- m_NextFragmentPosition = m_CurrentFragmentPosition; -+ //fragment_stream->Tell(m_CurrentFragmentPosition); -+ //m_NextFragmentPosition = m_CurrentFragmentPosition; - } - } - -@@ -360,9 +360,11 @@ AP4_LinearReader::AdvanceFragment() - AP4_Result result; - - // go the the start of the next fragment -- result = m_FragmentStream->Seek(m_NextFragmentPosition); -- if (AP4_FAILED(result)) return result; -- m_CurrentFragmentPosition = m_NextFragmentPosition; -+ if (m_NextFragmentPosition) { -+ result = m_FragmentStream->Seek(m_NextFragmentPosition); -+ if (AP4_FAILED(result)) return result; -+ m_CurrentFragmentPosition = m_NextFragmentPosition; -+ } - - // read atoms until we find a moof - assert(m_HasFragments); --- -2.30.2 - diff --git a/package/bento4/0016-Fix-segfault-in-AP4_LinearReader-ProcessMoof.patch b/package/bento4/0016-Fix-segfault-in-AP4_LinearReader-ProcessMoof.patch deleted file mode 100644 index cbcc62f9825b..000000000000 --- a/package/bento4/0016-Fix-segfault-in-AP4_LinearReader-ProcessMoof.patch +++ /dev/null @@ -1,27 +0,0 @@ -From e5b37c1e0a7a84fdc7b403c5e30a5e93706104b8 Mon Sep 17 00:00:00 2001 -From: Dobroslaw Kijowski -Date: Tue, 19 Oct 2021 14:17:11 +0200 -Subject: [PATCH] Fix segfault in Ap4LinearReader ProcessMoof - -Downloaded from https://github.com/xbmc/inputstream.adaptive/pull/856 - -Signed-off-by: Bernd Kuhls ---- - Source/C++/Core/Ap4LinearReader.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Source/C++/Core/Ap4LinearReader.cpp b/Source/C++/Core/Ap4LinearReader.cpp -index 61c3a9d..2464865 100644 ---- a/Source/C++/Core/Ap4LinearReader.cpp -+++ b/Source/C++/Core/Ap4LinearReader.cpp -@@ -329,7 +329,7 @@ AP4_LinearReader::ProcessMoof(AP4_ContainerAtom* moof, - tracker->m_SampleTable = NULL; - tracker->m_NextSampleIndex = 0; - for (unsigned int j=0; jm_Track->GetId()) { -+ if (ids.ItemCount()==1 || ids[j] == tracker->m_Track->GetId()) { - AP4_FragmentSampleTable* sample_table = NULL; - result = m_Fragment->CreateSampleTable(&m_Movie, - ids[j], --- -2.33.1 diff --git a/package/bento4/bento4.hash b/package/bento4/bento4.hash index 8b9ec610f514..b9391aed6aa8 100644 --- a/package/bento4/bento4.hash +++ b/package/bento4/bento4.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 9f3eb912207d7ed9c1e6e05315083404b32a11f8aacd604a9b2bdcb10bf79eb9 bento4-1.6.0-639.tar.gz +sha256 4464cd47b597e6dedbfc231bb6eb097c45cfe5ee0051082460d9ac53e9d74dc3 bento4-1.6.0-639-7-Omega.tar.gz sha256 7daae92c8628ada28def8d096fe2fde298b72ec3e2d64a3c408afce38edb361b Documents/LICENSE.txt diff --git a/package/bento4/bento4.mk b/package/bento4/bento4.mk index 89ff2e4b85a2..8aefc401ef55 100644 --- a/package/bento4/bento4.mk +++ b/package/bento4/bento4.mk @@ -4,8 +4,8 @@ # ################################################################################ -BENTO4_VERSION = 1.6.0-639 -BENTO4_SITE = $(call github,axiomatic-systems,Bento4,v$(BENTO4_VERSION)) +BENTO4_VERSION = 1.6.0-639-7-Omega +BENTO4_SITE = $(call github,xbmc,Bento4,$(BENTO4_VERSION)) BENTO4_INSTALL_STAGING = YES BENTO4_LICENSE = GPL-2.0+ BENTO4_LICENSE_FILES = Documents/LICENSE.txt diff --git a/package/berkeleydb/Config.in b/package/berkeleydb/Config.in index f32d13ab1708..f8fbb5cc0934 100644 --- a/package/berkeleydb/Config.in +++ b/package/berkeleydb/Config.in @@ -13,6 +13,11 @@ config BR2_PACKAGE_BERKELEYDB_COMPAT185 help Build and install DB 1.85 compatibility API. +config BR2_PACKAGE_BERKELEYDB_DBM + bool "historic dbm interface" + help + Enable the historic dbm interface. + config BR2_PACKAGE_BERKELEYDB_TOOLS bool "install tools" help diff --git a/package/berkeleydb/berkeleydb.mk b/package/berkeleydb/berkeleydb.mk index 36b1894f3407..1c121370db2e 100644 --- a/package/berkeleydb/berkeleydb.mk +++ b/package/berkeleydb/berkeleydb.mk @@ -39,6 +39,7 @@ define BERKELEYDB_CONFIGURE_CMDS --disable-java \ --disable-tcl \ $(if $(BR2_PACKAGE_BERKELEYDB_COMPAT185),--enable-compat185,--disable-compat185) \ + $(if $(BR2_PACKAGE_BERKELEYDB_DBM),--enable-dbm,--disable-dbm) \ $(SHARED_STATIC_LIBS_OPTS) \ --with-pic \ --enable-o_direct \ diff --git a/package/bind/Config.in b/package/bind/Config.in index 63ccd57db7c0..512e948ca226 100644 --- a/package/bind/Config.in +++ b/package/bind/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_BIND depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv depends on !BR2_STATIC_LIBS # libuv + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libuv select BR2_PACKAGE_LIBUV select BR2_PACKAGE_OPENSSL help @@ -43,7 +44,8 @@ config BR2_PACKAGE_BIND_TOOLS endif -comment "bind needs a toolchain w/ NPTL, dynamic library" +comment "bind needs a toolchain w/ NPTL, dynamic library, gcc >= 4.9" depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 - depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 diff --git a/package/bind/bind.hash b/package/bind/bind.hash index 32804b5ce038..d500b6112849 100644 --- a/package/bind/bind.hash +++ b/package/bind/bind.hash @@ -1,4 +1,4 @@ -# Verified from https://ftp.isc.org/isc/bind9/9.16.38/bind-9.16.38.tar.xz.asc +# Verified from https://ftp.isc.org/isc/bind9/9.16.44/bind-9.16.44.tar.xz.asc # with key AADBBA5074F1402F7B69D56BC5B4EE931A9F9DFD -sha256 8df44c9d9a84a28ab8b49d55f3c33b624b90ef8f6a8b9ee6a4c33cc17c14c50f bind-9.16.38.tar.xz +sha256 cfaa953c36d5ca42d9584fcf9653d07c85527b59687e7c4d4cb8071272db6754 bind-9.16.44.tar.xz sha256 13491a682dc0f5ee2273cebd3949e2be62f9470fe659419a03a308d4f444773b COPYRIGHT diff --git a/package/bind/bind.mk b/package/bind/bind.mk index 70987a982381..03ffcbec42bb 100644 --- a/package/bind/bind.mk +++ b/package/bind/bind.mk @@ -4,7 +4,7 @@ # ################################################################################ -BIND_VERSION = 9.16.38 +BIND_VERSION = 9.16.44 BIND_SOURCE= bind-$(BIND_VERSION).tar.xz BIND_SITE = https://ftp.isc.org/isc/bind9/$(BIND_VERSION) # bind does not support parallel builds. @@ -14,8 +14,6 @@ BIND_LICENSE = MPL-2.0 BIND_LICENSE_FILES = COPYRIGHT BIND_CPE_ID_VENDOR = isc BIND_SELINUX_MODULES = bind -# Only applies to RHEL6.x with DNSSEC validation on -BIND_IGNORE_CVES = CVE-2017-3139 # Library CVE and not used by bind but used by ISC DHCP BIND_IGNORE_CVES += CVE-2019-6470 BIND_TARGET_SERVER_SBIN = arpaname ddns-confgen dnssec-checkds dnssec-coverage @@ -28,7 +26,6 @@ BIND_TARGET_SERVER_SBIN += dnssec-keyfromlabel dnssec-signzone tsig-keygen BIND_TARGET_TOOLS_BIN = dig host nslookup nsupdate BIND_CONF_ENV = \ BUILD_CC="$(TARGET_CC)" \ - BUILD_CFLAGS="$(TARGET_CFLAGS)" \ LIBS=`$(PKG_CONFIG_HOST_BINARY) --libs openssl` BIND_CONF_OPTS = \ --without-cmocka \ @@ -39,6 +36,14 @@ BIND_CONF_OPTS = \ BIND_DEPENDENCIES = host-pkgconf libuv openssl +BIND_CFLAGS = $(TARGET_CFLAGS) + +ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_101737),y) +BIND_CFLAGS += -O0 +endif + +BIND_CONF_OPTS += CFLAGS="$(BIND_CFLAGS)" + ifeq ($(BR2_PACKAGE_ZLIB),y) BIND_CONF_OPTS += --with-zlib BIND_DEPENDENCIES += zlib diff --git a/package/binutils/2.37/0001-sh-conf.patch b/package/binutils/2.37/0001-sh-conf.patch deleted file mode 100644 index fcc597e4d947..000000000000 --- a/package/binutils/2.37/0001-sh-conf.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 33f3c1f804efc2e4f97849081589efb70cda31e5 Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Fri, 25 Dec 2015 11:38:13 +0100 -Subject: [PATCH] sh-conf - -Likewise, binutils has no idea about any of these new targets either, so we -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). - -[Romain: rebase on top of 2.32] -Signed-off-by: Romain Naour -[Thomas: rebase on top of 2.29, in which sh64 support was removed.] -Signed-off-by: Thomas Petazzoni ---- - configure | 2 +- - configure.ac | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/configure b/configure -index 3dd206525a7..6881ce632f5 100755 ---- a/configure -+++ b/configure -@@ -3892,7 +3892,7 @@ case "${target}" in - nvptx*-*-*) - noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc" - ;; -- sh-*-*) -+ sh*-*-*) - case "${target}" in - sh*-*-elf) - ;; -diff --git a/configure.ac b/configure.ac -index 797a624621e..1f9256bbf18 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1175,7 +1175,7 @@ case "${target}" in - nvptx*-*-*) - noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc" - ;; -- sh-*-*) -+ sh*-*-*) - case "${target}" in - sh*-*-elf) - ;; --- -2.31.1 - diff --git a/package/binutils/2.37/0002-poison-system-directories.patch b/package/binutils/2.37/0002-poison-system-directories.patch deleted file mode 100644 index 1a5fe465752a..000000000000 --- a/package/binutils/2.37/0002-poison-system-directories.patch +++ /dev/null @@ -1,306 +0,0 @@ -From 4d8705ddb55897e8a74b617ab95736d520d9e1ea Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Fri, 25 Dec 2015 11:45:38 +0100 -Subject: [PATCH] poison-system-directories - -Patch adapted to binutils 2.23.2 and extended to use -BR_COMPILER_PARANOID_UNSAFE_PATH by Thomas Petazzoni. - -[Romain: rebase on top of 2.33.1] -Signed-off-by: Romain Naour -[Gustavo: adapt to binutils 2.25] -Signed-off-by: Thomas Petazzoni -Signed-off-by: Gustavo Zacarias - -Upstream-Status: Inappropriate [distribution: codesourcery] - -Patch originally created by Mark Hatle, forward-ported to -binutils 2.21 by Scott Garman. - -purpose: warn for uses of system directories when cross linking - -Code Merged from Sourcery G++ binutils 2.19 - 4.4-277 - -2008-07-02 Joseph Myers - - ld/ - * ld.h (args_type): Add error_poison_system_directories. - * ld.texinfo (--error-poison-system-directories): Document. - * ldfile.c (ldfile_add_library_path): Check - command_line.error_poison_system_directories. - * ldmain.c (main): Initialize - command_line.error_poison_system_directories. - * lexsup.c (enum option_values): Add - OPTION_ERROR_POISON_SYSTEM_DIRECTORIES. - (ld_options): Add --error-poison-system-directories. - (parse_args): Handle new option. - -2007-06-13 Joseph Myers - - ld/ - * config.in: Regenerate. - * ld.h (args_type): Add poison_system_directories. - * ld.texinfo (--no-poison-system-directories): Document. - * ldfile.c (ldfile_add_library_path): Check - command_line.poison_system_directories. - * ldmain.c (main): Initialize - command_line.poison_system_directories. - * lexsup.c (enum option_values): Add - OPTION_NO_POISON_SYSTEM_DIRECTORIES. - (ld_options): Add --no-poison-system-directories. - (parse_args): Handle new option. - -2007-04-20 Joseph Myers - - Merge from Sourcery G++ binutils 2.17: - - 2007-03-20 Joseph Myers - Based on patch by Mark Hatle . - ld/ - * configure.ac (--enable-poison-system-directories): New option. - * configure, config.in: Regenerate. - * ldfile.c (ldfile_add_library_path): If - ENABLE_POISON_SYSTEM_DIRECTORIES defined, warn for use of /lib, - /usr/lib, /usr/local/lib or /usr/X11R6/lib. - -Signed-off-by: Mark Hatle -Signed-off-by: Scott Garman ---- - ld/config.in | 3 +++ - ld/configure | 14 ++++++++++++++ - ld/configure.ac | 10 ++++++++++ - ld/ld.h | 8 ++++++++ - ld/ld.texi | 12 ++++++++++++ - ld/ldfile.c | 17 +++++++++++++++++ - ld/ldlex.h | 2 ++ - ld/ldmain.c | 2 ++ - ld/lexsup.c | 21 +++++++++++++++++++++ - 9 files changed, 89 insertions(+) - -diff --git a/ld/config.in b/ld/config.in -index 26d55a00d47..ffad464783c 100644 ---- a/ld/config.in -+++ b/ld/config.in -@@ -43,6 +43,9 @@ - language is requested. */ - #undef ENABLE_NLS - -+/* Define to warn for use of native system library directories */ -+#undef ENABLE_POISON_SYSTEM_DIRECTORIES -+ - /* Additional extension a shared object might have. */ - #undef EXTRA_SHLIB_EXTENSION - -diff --git a/ld/configure b/ld/configure -index c197aaef3cb..882263aa43f 100755 ---- a/ld/configure -+++ b/ld/configure -@@ -829,6 +829,7 @@ with_lib_path - enable_targets - enable_64_bit_bfd - with_sysroot -+enable_poison_system_directories - enable_gold - enable_got - enable_compressed_debug_sections -@@ -1498,6 +1499,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) -+ --enable-poison-system-directories -+ warn for use of native system library directories - --enable-gold[=ARG] build gold [ARG={default,yes,no}] - --enable-got= GOT handling scheme (target, single, negative, - multigot) -@@ -15236,7 +15239,18 @@ else - fi - - -+# Check whether --enable-poison-system-directories was given. -+if test "${enable_poison_system_directories+set}" = set; then : -+ enableval=$enable_poison_system_directories; -+else -+ enable_poison_system_directories=no -+fi -+ -+if test "x${enable_poison_system_directories}" = "xyes"; then - -+$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h -+ -+fi - - # Check whether --enable-got was given. - if test "${enable_got+set}" = set; then : -diff --git a/ld/configure.ac b/ld/configure.ac -index 8ea97c43cd4..0f246db67d8 100644 ---- a/ld/configure.ac -+++ b/ld/configure.ac -@@ -106,6 +106,16 @@ AC_SUBST(use_sysroot) - AC_SUBST(TARGET_SYSTEM_ROOT) - AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE) - -+AC_ARG_ENABLE([poison-system-directories], -+ AS_HELP_STRING([--enable-poison-system-directories], -+ [warn for use of native system library directories]),, -+ [enable_poison_system_directories=no]) -+if test "x${enable_poison_system_directories}" = "xyes"; then -+ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES], -+ [1], -+ [Define to warn for use of native system library directories]) -+fi -+ - 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 --git a/ld/ld.h b/ld/ld.h -index 35fafebfaed..74e66405de6 100644 ---- a/ld/ld.h -+++ b/ld/ld.h -@@ -162,6 +162,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 dd8f571d4e4..3ab210b41b9 100644 ---- a/ld/ld.texi -+++ b/ld/ld.texi -@@ -2863,6 +2863,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. - @end table - - @c man end -diff --git a/ld/ldfile.c b/ld/ldfile.c -index 9d0af06f1f6..7cdd3b1c1b1 100644 ---- a/ld/ldfile.c -+++ b/ld/ldfile.c -@@ -117,6 +117,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); -+ -+#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES -+ if (command_line.poison_system_directories -+ && ((!strncmp (name, "/lib", 4)) -+ || (!strncmp (name, "/usr/lib", 8)) -+ || (!strncmp (name, "/usr/local/lib", 14)) -+ || (!strncmp (name, "/usr/X11R6/lib", 14)))) -+ { -+ if (command_line.error_poison_system_directories) -+ einfo (_("%X%P: error: library search path \"%s\" is unsafe for " -+ "cross-compilation\n"), name); -+ else -+ einfo (_("%P: warning: library search path \"%s\" is unsafe for " -+ "cross-compilation\n"), name); -+ } -+#endif -+ - } - - /* Try to open a BFD for a lang_input_statement. */ -diff --git a/ld/ldlex.h b/ld/ldlex.h -index 9e8bf5fb835..2f0fadfe0a3 100644 ---- a/ld/ldlex.h -+++ b/ld/ldlex.h -@@ -163,6 +163,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, - }; - - /* The initial parser states. */ -diff --git a/ld/ldmain.c b/ld/ldmain.c -index 42660eb9a3c..1aef9387f93 100644 ---- a/ld/ldmain.c -+++ b/ld/ldmain.c -@@ -321,6 +321,8 @@ main (int argc, char **argv) - command_line.warn_mismatch = true; - command_line.warn_search_mismatch = true; - command_line.check_section_addresses = -1; -+ command_line.poison_system_directories = true; -+ command_line.error_poison_system_directories = false; - - /* We initialize DEMANGLING based on the environment variable - COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the -diff --git a/ld/lexsup.c b/ld/lexsup.c -index 00274c500d0..4f23b3a2da2 100644 ---- a/ld/lexsup.c -+++ b/ld/lexsup.c -@@ -595,6 +595,14 @@ static const struct ld_option ld_options[] = - " is: share-unconflicted (default),\n" - " share-duplicated"), - TWO_DASHES }, -+ { {"no-poison-system-directories", no_argument, NULL, -+ OPTION_NO_POISON_SYSTEM_DIRECTORIES}, -+ '\0', NULL, N_("Do not warn for -L options using system directories"), -+ TWO_DASHES }, -+ { {"error-poison-system-directories", no_argument, NULL, -+ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES}, -+ '\0', NULL, N_("Give an error for -L options using system directories"), -+ TWO_DASHES }, - }; - - #define OPTION_COUNT ARRAY_SIZE (ld_options) -@@ -607,6 +615,7 @@ parse_args (unsigned argc, char **argv) - int ingroup = 0; - char *default_dirlist = NULL; - char *shortopts; -+ char *BR_paranoid_env; - struct option *longopts; - struct option *really_longopts; - int last_optind; -@@ -1643,6 +1652,14 @@ parse_args (unsigned argc, char **argv) - } - break; - -+ case OPTION_NO_POISON_SYSTEM_DIRECTORIES: -+ command_line.poison_system_directories = false; -+ break; -+ -+ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES: -+ command_line.error_poison_system_directories = true; -+ break; -+ - case OPTION_PUSH_STATE: - input_flags.pushed = xmemdup (&input_flags, - sizeof (input_flags), -@@ -1788,6 +1805,10 @@ parse_args (unsigned argc, char **argv) - command_line.soname = NULL; - } - -+ BR_paranoid_env = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH"); -+ if (BR_paranoid_env && strlen(BR_paranoid_env) > 0) -+ command_line.error_poison_system_directories = true; -+ - while (ingroup) - { - einfo (_("%P: missing --end-group; added as last command line option\n")); --- -2.31.1 - diff --git a/package/binutils/2.37/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch b/package/binutils/2.37/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch deleted file mode 100644 index bfd531b81859..000000000000 --- a/package/binutils/2.37/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch +++ /dev/null @@ -1,50 +0,0 @@ -From ef4ba1da823e8366ea4f126f50885a44ebf4dcf0 Mon Sep 17 00:00:00 2001 -From: Giulio Benetti -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 ---- - 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 - diff --git a/package/binutils/2.37/0004-or1k-fix-pc-relative-relocation-against-dynamic-on-P.patch b/package/binutils/2.37/0004-or1k-fix-pc-relative-relocation-against-dynamic-on-P.patch deleted file mode 100644 index 0d18321ee111..000000000000 --- a/package/binutils/2.37/0004-or1k-fix-pc-relative-relocation-against-dynamic-on-P.patch +++ /dev/null @@ -1,59 +0,0 @@ -From 203b80f8dbdd3ddb860114b03351a0dea28c978f Mon Sep 17 00:00:00 2001 -From: Giulio Benetti -Date: Sat, 10 Jul 2021 17:57:34 +0200 -Subject: [PATCH] or1k: fix pc-relative relocation against dynamic on PC - relative 26 bit relocation - -When building openal we were seeing the assert failure: - -/home/buildroot/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/or1k-buildroot-linux-uclibc/9.3.0/../../../../or1k-buildroot-linux-uclibc/bin/ld: CMakeFiles/OpenAL.dir/al/source.cpp.o: -pc-relative relocation against dynamic symbol alSourcePausev -/home/buildroot/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/or1k-buildroot-linux-uclibc/9.3.0/../../../../or1k-buildroot-linux-uclibc/bin/ld: CMakeFiles/OpenAL.dir/al/source.cpp.o: -pc-relative relocation against dynamic symbol alSourceStopv -/home/buildroot/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/or1k-buildroot-linux-uclibc/9.3.0/../../../../or1k-buildroot-linux-uclibc/bin/ld: CMakeFiles/OpenAL.dir/al/source.cpp.o: -pc-relative relocation against dynamic symbol alSourceRewindv -/home/buildroot/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/or1k-buildroot-linux-uclibc/9.3.0/../../../../or1k-buildroot-linux-uclibc/bin/ld: CMakeFiles/OpenAL.dir/al/source.cpp.o: -pc-relative relocation against dynamic symbol alSourcePlayv -collect2: error: ld returned 1 exit status - -This happens because in R_OR1K_INSN_REL_26 case we can't reference local -symbol as previously done but we need to make sure that calls to actual -symbol always call the version of current object. - -bfd/Changelog: - - * elf32-or1k.c (or1k_elf_relocate_section): use a separate entry - in switch case R_OR1K_INSN_REL_26 where we need to check for - !SYMBOL_CALLS_LOCAL() instead of !SYMBOL_REFERENCES_LOCAL(). - -Signed-off-by: Giulio Benetti ---- - bfd/elf32-or1k.c | 12 ++++++++++++ - 1 file changed, 12 insertions(+) - -diff --git a/bfd/elf32-or1k.c b/bfd/elf32-or1k.c -index 32063ab0289..67252394173 100644 ---- a/bfd/elf32-or1k.c -+++ b/bfd/elf32-or1k.c -@@ -1543,6 +1543,18 @@ or1k_elf_relocate_section (bfd *output_bfd, - break; - - case R_OR1K_INSN_REL_26: -+ /* For a non-shared link, these will reference plt or call the -+ version of actual object. */ -+ if (bfd_link_pic (info) && !SYMBOL_CALLS_LOCAL (info, h)) -+ { -+ _bfd_error_handler -+ (_("%pB: pc-relative relocation against dynamic symbol %s"), -+ input_bfd, name); -+ ret_val = false; -+ bfd_set_error (bfd_error_bad_value); -+ } -+ break; -+ - case R_OR1K_PCREL_PG21: - case R_OR1K_LO13: - case R_OR1K_SLO13: --- -2.31.1 - diff --git a/package/binutils/2.37/0005-or1k-Avoid-R_OR1K_GOT16-signed-overflow-by-using-spe.patch b/package/binutils/2.37/0005-or1k-Avoid-R_OR1K_GOT16-signed-overflow-by-using-spe.patch deleted file mode 100644 index 8609db95b7ab..000000000000 --- a/package/binutils/2.37/0005-or1k-Avoid-R_OR1K_GOT16-signed-overflow-by-using-spe.patch +++ /dev/null @@ -1,75 +0,0 @@ -From 362a20108782b87cd780a989c0dbd014fc2def8b Mon Sep 17 00:00:00 2001 -From: Stafford Horne -Date: Sun, 2 Jan 2022 09:03:28 +0900 -Subject: [PATCH] or1k: Avoid R_OR1K_GOT16 signed overflow by using special - howto - -Previously when fixing PR 21464 we masked out upper bits of the -relocation value in order to avoid overflow complaints when acceptable. -It turns out this does not work when the relocation value ends up being -signed. - -To fix this this patch introduces a special howto with -complain_on_overflow set to complain_overflow_dont. This is used in -place of the normal R_OR1K_GOT16 howto when we detect R_OR1K_GOT_AHI16 -relocations. - -bfd/ChangeLog: - - PR 28735 - * elf32-or1k.c (or1k_elf_got16_no_overflow_howto): Define. - (or1k_elf_relocate_section): Use new howto instead of trying to - mask out relocation bits. - -Signed-off-by: Giulio Benetti ---- - bfd/elf32-or1k.c | 24 ++++++++++++++++++++---- - 1 file changed, 20 insertions(+), 4 deletions(-) - -diff --git a/bfd/elf32-or1k.c b/bfd/elf32-or1k.c -index 4ae7f324d33..7fd88d72442 100644 ---- a/bfd/elf32-or1k.c -+++ b/bfd/elf32-or1k.c -@@ -828,6 +828,23 @@ static reloc_howto_type or1k_elf_howto_table[] = - false), /* pcrel_offset */ - }; - -+/* A copy of the R_OR1K_GOT16 used in the presense of R_OR1K_GOT_AHI16 -+ relocations when we know we can ignore overflows. */ -+static reloc_howto_type or1k_elf_got16_no_overflow_howto = -+ HOWTO (R_OR1K_GOT16, /* type */ -+ 0, /* rightshift */ -+ 2, /* size (0 = byte, 1 = short, 2 = long) */ -+ 16, /* bitsize */ -+ false, /* pc_relative */ -+ 0, /* bitpos */ -+ complain_overflow_dont, /* complain_on_overflow */ -+ bfd_elf_generic_reloc, /* special_function */ -+ "R_OR1K_GOT16", /* name */ -+ false, /* partial_inplace */ -+ 0, /* src_mask */ -+ 0xffff, /* dst_mask */ -+ false); /* pcrel_offset */ -+ - /* Map BFD reloc types to Or1k ELF reloc types. */ - - struct or1k_reloc_map -@@ -1506,12 +1523,11 @@ or1k_elf_relocate_section (bfd *output_bfd, - if (r_type == R_OR1K_GOT_AHI16) - saw_gotha = true; - -- /* If we have a R_OR1K_GOT16 followed by a R_OR1K_GOT_AHI16 -+ /* If we have a R_OR1K_GOT16 following a R_OR1K_GOT_AHI16 - relocation we assume the code is doing the right thing to avoid -- overflows. Here we mask the lower 16-bit of the relocation to -- avoid overflow validation failures. */ -+ overflows. */ - if (r_type == R_OR1K_GOT16 && saw_gotha) -- relocation &= 0xffff; -+ howto = &or1k_elf_got16_no_overflow_howto; - - /* Addend should be zero. */ - if (rel->r_addend != 0) --- -2.25.1 - diff --git a/package/binutils/2.37/0006-bfd-Close-the-file-descriptor-if-there-is-no-archive.patch b/package/binutils/2.37/0006-bfd-Close-the-file-descriptor-if-there-is-no-archive.patch deleted file mode 100644 index 46697cc5c8a4..000000000000 --- a/package/binutils/2.37/0006-bfd-Close-the-file-descriptor-if-there-is-no-archive.patch +++ /dev/null @@ -1,236 +0,0 @@ -From 1c611b40e6bfc8029bff7696814330b5bc0ee5c0 Mon Sep 17 00:00:00 2001 -From: "H.J. Lu" -Date: Mon, 26 Jul 2021 05:59:55 -0700 -Subject: [PATCH] bfd: Close the file descriptor if there is no archive fd - -Close the file descriptor if there is no archive plugin file descriptor -to avoid running out of file descriptors on thin archives with many -archive members. - -bfd/ - - PR ld/28138 - * plugin.c (bfd_plugin_close_file_descriptor): Close the file - descriptor there is no archive plugin file descriptor. - -ld/ - - PR ld/28138 - * testsuite/ld-plugin/lto.exp: Run tmpdir/pr28138 only for - native build. - - PR ld/28138 - * testsuite/ld-plugin/lto.exp: Run ld/28138 tests. - * testsuite/ld-plugin/pr28138.c: New file. - * testsuite/ld-plugin/pr28138-1.c: Likewise. - * testsuite/ld-plugin/pr28138-2.c: Likewise. - * testsuite/ld-plugin/pr28138-3.c: Likewise. - * testsuite/ld-plugin/pr28138-4.c: Likewise. - * testsuite/ld-plugin/pr28138-5.c: Likewise. - * testsuite/ld-plugin/pr28138-6.c: Likewise. - * testsuite/ld-plugin/pr28138-7.c: Likewise. - -(cherry picked from commit 5a98fb7513b559e20dfebdbaa2a471afda3b4742) -(cherry picked from commit 7dc37e1e1209c80e0bab784df6b6bac335e836f2) - -[Upstream: - https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=1c611b40e6bfc8029bff7696814330b5bc0ee5c0] -Signed-off-by: Peter Seiderer ---- - bfd/plugin.c | 8 +++++++ - ld/testsuite/ld-plugin/lto.exp | 34 ++++++++++++++++++++++++++++++ - ld/testsuite/ld-plugin/pr28138-1.c | 6 ++++++ - ld/testsuite/ld-plugin/pr28138-2.c | 6 ++++++ - ld/testsuite/ld-plugin/pr28138-3.c | 6 ++++++ - ld/testsuite/ld-plugin/pr28138-4.c | 6 ++++++ - ld/testsuite/ld-plugin/pr28138-5.c | 6 ++++++ - ld/testsuite/ld-plugin/pr28138-6.c | 6 ++++++ - ld/testsuite/ld-plugin/pr28138-7.c | 6 ++++++ - ld/testsuite/ld-plugin/pr28138.c | 20 ++++++++++++++++++ - 10 files changed, 104 insertions(+) - create mode 100644 ld/testsuite/ld-plugin/pr28138-1.c - create mode 100644 ld/testsuite/ld-plugin/pr28138-2.c - create mode 100644 ld/testsuite/ld-plugin/pr28138-3.c - create mode 100644 ld/testsuite/ld-plugin/pr28138-4.c - create mode 100644 ld/testsuite/ld-plugin/pr28138-5.c - create mode 100644 ld/testsuite/ld-plugin/pr28138-6.c - create mode 100644 ld/testsuite/ld-plugin/pr28138-7.c - create mode 100644 ld/testsuite/ld-plugin/pr28138.c - -diff --git a/bfd/plugin.c b/bfd/plugin.c -index 6cfa2b66470..3bab8febe88 100644 ---- a/bfd/plugin.c -+++ b/bfd/plugin.c -@@ -291,6 +291,14 @@ bfd_plugin_close_file_descriptor (bfd *abfd, int fd) - && !bfd_is_thin_archive (abfd->my_archive)) - abfd = abfd->my_archive; - -+ /* Close the file descriptor if there is no archive plugin file -+ descriptor. */ -+ if (abfd->archive_plugin_fd == -1) -+ { -+ close (fd); -+ return; -+ } -+ - abfd->archive_plugin_fd_open_count--; - /* Dup the archive plugin file descriptor for later use, which - will be closed by _bfd_archive_close_and_cleanup. */ -diff --git a/ld/testsuite/ld-plugin/lto.exp b/ld/testsuite/ld-plugin/lto.exp -index def69e43ab3..999d911ce6a 100644 ---- a/ld/testsuite/ld-plugin/lto.exp -+++ b/ld/testsuite/ld-plugin/lto.exp -@@ -687,6 +687,40 @@ if { [is_elf_format] && [check_lto_shared_available] } { - } - } - -+run_cc_link_tests [list \ -+ [list \ -+ "Build pr28138.a" \ -+ "-T" "" \ -+ {pr28138-1.c pr28138-2.c pr28138-3.c pr28138-4.c pr28138-5.c \ -+ pr28138-6.c pr28138-7.c} {} "pr28138.a" \ -+ ] \ -+ [list \ -+ "Build pr28138.o" \ -+ "" "" \ -+ {pr28138.c} {} \ -+ ] \ -+] -+ -+set exec_output [run_host_cmd "sh" \ -+ "-c \"ulimit -n 20; \ -+ $CC -Btmpdir/ld -o tmpdir/pr28138 \ -+ tmpdir/pr28138.o tmpdir/pr28138.a\""] -+set exec_output [prune_warnings $exec_output] -+if [string match "" $exec_output] then { -+ if { [isnative] } { -+ set exec_output [run_host_cmd "tmpdir/pr28138" ""] -+ if [string match "PASS" $exec_output] then { -+ pass "PR ld/28138" -+ } else { -+ fail "PR ld/28138" -+ } -+ } else { -+ pass "PR ld/28138" -+ } -+} else { -+ fail "PR ld/28138" -+} -+ - set testname "Build liblto-11.a" - remote_file host delete "tmpdir/liblto-11.a" - set catch_output [run_host_cmd "$ar" "rc $plug_opt tmpdir/liblto-11.a tmpdir/lto-11a.o tmpdir/lto-11b.o tmpdir/lto-11c.o"] -diff --git a/ld/testsuite/ld-plugin/pr28138-1.c b/ld/testsuite/ld-plugin/pr28138-1.c -new file mode 100644 -index 00000000000..51d119e1642 ---- /dev/null -+++ b/ld/testsuite/ld-plugin/pr28138-1.c -@@ -0,0 +1,6 @@ -+extern int a0(void); -+int -+a1(void) -+{ -+ return 1 + a0(); -+} -diff --git a/ld/testsuite/ld-plugin/pr28138-2.c b/ld/testsuite/ld-plugin/pr28138-2.c -new file mode 100644 -index 00000000000..1120cd797e9 ---- /dev/null -+++ b/ld/testsuite/ld-plugin/pr28138-2.c -@@ -0,0 +1,6 @@ -+extern int a1(void); -+int -+a2(void) -+{ -+ return 1 + a1(); -+} -diff --git a/ld/testsuite/ld-plugin/pr28138-3.c b/ld/testsuite/ld-plugin/pr28138-3.c -new file mode 100644 -index 00000000000..ec464947ee6 ---- /dev/null -+++ b/ld/testsuite/ld-plugin/pr28138-3.c -@@ -0,0 +1,6 @@ -+extern int a2(void); -+int -+a3(void) -+{ -+ return 1 + a2(); -+} -diff --git a/ld/testsuite/ld-plugin/pr28138-4.c b/ld/testsuite/ld-plugin/pr28138-4.c -new file mode 100644 -index 00000000000..475701b2c5c ---- /dev/null -+++ b/ld/testsuite/ld-plugin/pr28138-4.c -@@ -0,0 +1,6 @@ -+extern int a3(void); -+int -+a4(void) -+{ -+ return 1 + a3(); -+} -diff --git a/ld/testsuite/ld-plugin/pr28138-5.c b/ld/testsuite/ld-plugin/pr28138-5.c -new file mode 100644 -index 00000000000..e24f86c363e ---- /dev/null -+++ b/ld/testsuite/ld-plugin/pr28138-5.c -@@ -0,0 +1,6 @@ -+extern int a4(void); -+int -+a5(void) -+{ -+ return 1 + a4(); -+} -diff --git a/ld/testsuite/ld-plugin/pr28138-6.c b/ld/testsuite/ld-plugin/pr28138-6.c -new file mode 100644 -index 00000000000..b5b938bdb21 ---- /dev/null -+++ b/ld/testsuite/ld-plugin/pr28138-6.c -@@ -0,0 +1,6 @@ -+extern int a5(void); -+int -+a6(void) -+{ -+ return 1 + a5(); -+} -diff --git a/ld/testsuite/ld-plugin/pr28138-7.c b/ld/testsuite/ld-plugin/pr28138-7.c -new file mode 100644 -index 00000000000..4ef75bf0f0c ---- /dev/null -+++ b/ld/testsuite/ld-plugin/pr28138-7.c -@@ -0,0 +1,6 @@ -+extern int a6(void); -+int -+a7(void) -+{ -+ return 1 + a6(); -+} -diff --git a/ld/testsuite/ld-plugin/pr28138.c b/ld/testsuite/ld-plugin/pr28138.c -new file mode 100644 -index 00000000000..68252c9f382 ---- /dev/null -+++ b/ld/testsuite/ld-plugin/pr28138.c -@@ -0,0 +1,20 @@ -+#include -+ -+extern int a7(void); -+ -+int -+a0(void) -+{ -+ return 0; -+} -+ -+int -+main() -+{ -+ if (a7() == 7) -+ { -+ printf ("PASS\n"); -+ return 0; -+ } -+ return 1; -+} --- -2.34.1 - diff --git a/package/binutils/2.37/0007-i386-Allow-GOT32-relocations-against-ABS-symbols.patch b/package/binutils/2.37/0007-i386-Allow-GOT32-relocations-against-ABS-symbols.patch deleted file mode 100644 index 3e292822613c..000000000000 --- a/package/binutils/2.37/0007-i386-Allow-GOT32-relocations-against-ABS-symbols.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 30a954525f4e53a9cd50a1a8a6f201c7cf6595c7 Mon Sep 17 00:00:00 2001 -From: "H.J. Lu" -Date: Mon, 7 Feb 2022 15:22:19 -0800 -Subject: [PATCH] i386: Allow GOT32 relocations against ABS symbols - -GOT32 relocations are allowed since absolute value + addend is stored in -the GOT slot. - -Tested on glibc 2.35 build with GCC 11.2 and -Os. - -bfd/ - - PR ld/28870 - * elfxx-x86.c (_bfd_elf_x86_valid_reloc_p): Also allow GOT32 - relocations. - - -Signed-off-by: Waldemar Brodkorb - -diff --git a/bfd/elfxx-x86.c b/bfd/elfxx-x86.c -index 7ac2411fc80..d00dc45677b 100644 ---- a/bfd/elfxx-x86.c -+++ b/bfd/elfxx-x86.c -@@ -1942,9 +1942,9 @@ _bfd_elf_x86_valid_reloc_p (asection *input_section, - irel = *rel; - - /* Only allow relocations against absolute symbol, which can be -- resolved as absolute value + addend. GOTPCREL relocations -- are allowed since absolute value + addend is stored in the -- GOT slot. */ -+ resolved as absolute value + addend. GOTPCREL and GOT32 -+ relocations are allowed since absolute value + addend is -+ stored in the GOT slot. */ - if (bed->target_id == X86_64_ELF_DATA) - { - r_type &= ~R_X86_64_converted_reloc_bit; -@@ -1965,7 +1965,9 @@ _bfd_elf_x86_valid_reloc_p (asection *input_section, - else - valid_p = (r_type == R_386_32 - || r_type == R_386_16 -- || r_type == R_386_8); -+ || r_type == R_386_8 -+ || r_type == R_386_GOT32 -+ || r_type == R_386_GOT32X); - - if (valid_p) - *no_dynreloc_p = true; diff --git a/package/binutils/2.38/0001-sh-conf.patch b/package/binutils/2.38/0001-sh-conf.patch deleted file mode 100644 index fcc597e4d947..000000000000 --- a/package/binutils/2.38/0001-sh-conf.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 33f3c1f804efc2e4f97849081589efb70cda31e5 Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Fri, 25 Dec 2015 11:38:13 +0100 -Subject: [PATCH] sh-conf - -Likewise, binutils has no idea about any of these new targets either, so we -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). - -[Romain: rebase on top of 2.32] -Signed-off-by: Romain Naour -[Thomas: rebase on top of 2.29, in which sh64 support was removed.] -Signed-off-by: Thomas Petazzoni ---- - configure | 2 +- - configure.ac | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/configure b/configure -index 3dd206525a7..6881ce632f5 100755 ---- a/configure -+++ b/configure -@@ -3892,7 +3892,7 @@ case "${target}" in - nvptx*-*-*) - noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc" - ;; -- sh-*-*) -+ sh*-*-*) - case "${target}" in - sh*-*-elf) - ;; -diff --git a/configure.ac b/configure.ac -index 797a624621e..1f9256bbf18 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1175,7 +1175,7 @@ case "${target}" in - nvptx*-*-*) - noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc" - ;; -- sh-*-*) -+ sh*-*-*) - case "${target}" in - sh*-*-elf) - ;; --- -2.31.1 - diff --git a/package/binutils/2.38/0002-poison-system-directories.patch b/package/binutils/2.38/0002-poison-system-directories.patch deleted file mode 100644 index 1a5fe465752a..000000000000 --- a/package/binutils/2.38/0002-poison-system-directories.patch +++ /dev/null @@ -1,306 +0,0 @@ -From 4d8705ddb55897e8a74b617ab95736d520d9e1ea Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Fri, 25 Dec 2015 11:45:38 +0100 -Subject: [PATCH] poison-system-directories - -Patch adapted to binutils 2.23.2 and extended to use -BR_COMPILER_PARANOID_UNSAFE_PATH by Thomas Petazzoni. - -[Romain: rebase on top of 2.33.1] -Signed-off-by: Romain Naour -[Gustavo: adapt to binutils 2.25] -Signed-off-by: Thomas Petazzoni -Signed-off-by: Gustavo Zacarias - -Upstream-Status: Inappropriate [distribution: codesourcery] - -Patch originally created by Mark Hatle, forward-ported to -binutils 2.21 by Scott Garman. - -purpose: warn for uses of system directories when cross linking - -Code Merged from Sourcery G++ binutils 2.19 - 4.4-277 - -2008-07-02 Joseph Myers - - ld/ - * ld.h (args_type): Add error_poison_system_directories. - * ld.texinfo (--error-poison-system-directories): Document. - * ldfile.c (ldfile_add_library_path): Check - command_line.error_poison_system_directories. - * ldmain.c (main): Initialize - command_line.error_poison_system_directories. - * lexsup.c (enum option_values): Add - OPTION_ERROR_POISON_SYSTEM_DIRECTORIES. - (ld_options): Add --error-poison-system-directories. - (parse_args): Handle new option. - -2007-06-13 Joseph Myers - - ld/ - * config.in: Regenerate. - * ld.h (args_type): Add poison_system_directories. - * ld.texinfo (--no-poison-system-directories): Document. - * ldfile.c (ldfile_add_library_path): Check - command_line.poison_system_directories. - * ldmain.c (main): Initialize - command_line.poison_system_directories. - * lexsup.c (enum option_values): Add - OPTION_NO_POISON_SYSTEM_DIRECTORIES. - (ld_options): Add --no-poison-system-directories. - (parse_args): Handle new option. - -2007-04-20 Joseph Myers - - Merge from Sourcery G++ binutils 2.17: - - 2007-03-20 Joseph Myers - Based on patch by Mark Hatle . - ld/ - * configure.ac (--enable-poison-system-directories): New option. - * configure, config.in: Regenerate. - * ldfile.c (ldfile_add_library_path): If - ENABLE_POISON_SYSTEM_DIRECTORIES defined, warn for use of /lib, - /usr/lib, /usr/local/lib or /usr/X11R6/lib. - -Signed-off-by: Mark Hatle -Signed-off-by: Scott Garman ---- - ld/config.in | 3 +++ - ld/configure | 14 ++++++++++++++ - ld/configure.ac | 10 ++++++++++ - ld/ld.h | 8 ++++++++ - ld/ld.texi | 12 ++++++++++++ - ld/ldfile.c | 17 +++++++++++++++++ - ld/ldlex.h | 2 ++ - ld/ldmain.c | 2 ++ - ld/lexsup.c | 21 +++++++++++++++++++++ - 9 files changed, 89 insertions(+) - -diff --git a/ld/config.in b/ld/config.in -index 26d55a00d47..ffad464783c 100644 ---- a/ld/config.in -+++ b/ld/config.in -@@ -43,6 +43,9 @@ - language is requested. */ - #undef ENABLE_NLS - -+/* Define to warn for use of native system library directories */ -+#undef ENABLE_POISON_SYSTEM_DIRECTORIES -+ - /* Additional extension a shared object might have. */ - #undef EXTRA_SHLIB_EXTENSION - -diff --git a/ld/configure b/ld/configure -index c197aaef3cb..882263aa43f 100755 ---- a/ld/configure -+++ b/ld/configure -@@ -829,6 +829,7 @@ with_lib_path - enable_targets - enable_64_bit_bfd - with_sysroot -+enable_poison_system_directories - enable_gold - enable_got - enable_compressed_debug_sections -@@ -1498,6 +1499,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) -+ --enable-poison-system-directories -+ warn for use of native system library directories - --enable-gold[=ARG] build gold [ARG={default,yes,no}] - --enable-got= GOT handling scheme (target, single, negative, - multigot) -@@ -15236,7 +15239,18 @@ else - fi - - -+# Check whether --enable-poison-system-directories was given. -+if test "${enable_poison_system_directories+set}" = set; then : -+ enableval=$enable_poison_system_directories; -+else -+ enable_poison_system_directories=no -+fi -+ -+if test "x${enable_poison_system_directories}" = "xyes"; then - -+$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h -+ -+fi - - # Check whether --enable-got was given. - if test "${enable_got+set}" = set; then : -diff --git a/ld/configure.ac b/ld/configure.ac -index 8ea97c43cd4..0f246db67d8 100644 ---- a/ld/configure.ac -+++ b/ld/configure.ac -@@ -106,6 +106,16 @@ AC_SUBST(use_sysroot) - AC_SUBST(TARGET_SYSTEM_ROOT) - AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE) - -+AC_ARG_ENABLE([poison-system-directories], -+ AS_HELP_STRING([--enable-poison-system-directories], -+ [warn for use of native system library directories]),, -+ [enable_poison_system_directories=no]) -+if test "x${enable_poison_system_directories}" = "xyes"; then -+ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES], -+ [1], -+ [Define to warn for use of native system library directories]) -+fi -+ - 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 --git a/ld/ld.h b/ld/ld.h -index 35fafebfaed..74e66405de6 100644 ---- a/ld/ld.h -+++ b/ld/ld.h -@@ -162,6 +162,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 dd8f571d4e4..3ab210b41b9 100644 ---- a/ld/ld.texi -+++ b/ld/ld.texi -@@ -2863,6 +2863,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. - @end table - - @c man end -diff --git a/ld/ldfile.c b/ld/ldfile.c -index 9d0af06f1f6..7cdd3b1c1b1 100644 ---- a/ld/ldfile.c -+++ b/ld/ldfile.c -@@ -117,6 +117,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); -+ -+#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES -+ if (command_line.poison_system_directories -+ && ((!strncmp (name, "/lib", 4)) -+ || (!strncmp (name, "/usr/lib", 8)) -+ || (!strncmp (name, "/usr/local/lib", 14)) -+ || (!strncmp (name, "/usr/X11R6/lib", 14)))) -+ { -+ if (command_line.error_poison_system_directories) -+ einfo (_("%X%P: error: library search path \"%s\" is unsafe for " -+ "cross-compilation\n"), name); -+ else -+ einfo (_("%P: warning: library search path \"%s\" is unsafe for " -+ "cross-compilation\n"), name); -+ } -+#endif -+ - } - - /* Try to open a BFD for a lang_input_statement. */ -diff --git a/ld/ldlex.h b/ld/ldlex.h -index 9e8bf5fb835..2f0fadfe0a3 100644 ---- a/ld/ldlex.h -+++ b/ld/ldlex.h -@@ -163,6 +163,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, - }; - - /* The initial parser states. */ -diff --git a/ld/ldmain.c b/ld/ldmain.c -index 42660eb9a3c..1aef9387f93 100644 ---- a/ld/ldmain.c -+++ b/ld/ldmain.c -@@ -321,6 +321,8 @@ main (int argc, char **argv) - command_line.warn_mismatch = true; - command_line.warn_search_mismatch = true; - command_line.check_section_addresses = -1; -+ command_line.poison_system_directories = true; -+ command_line.error_poison_system_directories = false; - - /* We initialize DEMANGLING based on the environment variable - COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the -diff --git a/ld/lexsup.c b/ld/lexsup.c -index 00274c500d0..4f23b3a2da2 100644 ---- a/ld/lexsup.c -+++ b/ld/lexsup.c -@@ -595,6 +595,14 @@ static const struct ld_option ld_options[] = - " is: share-unconflicted (default),\n" - " share-duplicated"), - TWO_DASHES }, -+ { {"no-poison-system-directories", no_argument, NULL, -+ OPTION_NO_POISON_SYSTEM_DIRECTORIES}, -+ '\0', NULL, N_("Do not warn for -L options using system directories"), -+ TWO_DASHES }, -+ { {"error-poison-system-directories", no_argument, NULL, -+ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES}, -+ '\0', NULL, N_("Give an error for -L options using system directories"), -+ TWO_DASHES }, - }; - - #define OPTION_COUNT ARRAY_SIZE (ld_options) -@@ -607,6 +615,7 @@ parse_args (unsigned argc, char **argv) - int ingroup = 0; - char *default_dirlist = NULL; - char *shortopts; -+ char *BR_paranoid_env; - struct option *longopts; - struct option *really_longopts; - int last_optind; -@@ -1643,6 +1652,14 @@ parse_args (unsigned argc, char **argv) - } - break; - -+ case OPTION_NO_POISON_SYSTEM_DIRECTORIES: -+ command_line.poison_system_directories = false; -+ break; -+ -+ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES: -+ command_line.error_poison_system_directories = true; -+ break; -+ - case OPTION_PUSH_STATE: - input_flags.pushed = xmemdup (&input_flags, - sizeof (input_flags), -@@ -1788,6 +1805,10 @@ parse_args (unsigned argc, char **argv) - command_line.soname = NULL; - } - -+ BR_paranoid_env = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH"); -+ if (BR_paranoid_env && strlen(BR_paranoid_env) > 0) -+ command_line.error_poison_system_directories = true; -+ - while (ingroup) - { - einfo (_("%P: missing --end-group; added as last command line option\n")); --- -2.31.1 - diff --git a/package/binutils/2.38/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch b/package/binutils/2.38/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch deleted file mode 100644 index bfd531b81859..000000000000 --- a/package/binutils/2.38/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch +++ /dev/null @@ -1,50 +0,0 @@ -From ef4ba1da823e8366ea4f126f50885a44ebf4dcf0 Mon Sep 17 00:00:00 2001 -From: Giulio Benetti -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 ---- - 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 - diff --git a/package/binutils/2.38/0004-or1k-Avoid-R_OR1K_GOT16-signed-overflow-by-using-spe.patch b/package/binutils/2.38/0004-or1k-Avoid-R_OR1K_GOT16-signed-overflow-by-using-spe.patch deleted file mode 100644 index 8609db95b7ab..000000000000 --- a/package/binutils/2.38/0004-or1k-Avoid-R_OR1K_GOT16-signed-overflow-by-using-spe.patch +++ /dev/null @@ -1,75 +0,0 @@ -From 362a20108782b87cd780a989c0dbd014fc2def8b Mon Sep 17 00:00:00 2001 -From: Stafford Horne -Date: Sun, 2 Jan 2022 09:03:28 +0900 -Subject: [PATCH] or1k: Avoid R_OR1K_GOT16 signed overflow by using special - howto - -Previously when fixing PR 21464 we masked out upper bits of the -relocation value in order to avoid overflow complaints when acceptable. -It turns out this does not work when the relocation value ends up being -signed. - -To fix this this patch introduces a special howto with -complain_on_overflow set to complain_overflow_dont. This is used in -place of the normal R_OR1K_GOT16 howto when we detect R_OR1K_GOT_AHI16 -relocations. - -bfd/ChangeLog: - - PR 28735 - * elf32-or1k.c (or1k_elf_got16_no_overflow_howto): Define. - (or1k_elf_relocate_section): Use new howto instead of trying to - mask out relocation bits. - -Signed-off-by: Giulio Benetti ---- - bfd/elf32-or1k.c | 24 ++++++++++++++++++++---- - 1 file changed, 20 insertions(+), 4 deletions(-) - -diff --git a/bfd/elf32-or1k.c b/bfd/elf32-or1k.c -index 4ae7f324d33..7fd88d72442 100644 ---- a/bfd/elf32-or1k.c -+++ b/bfd/elf32-or1k.c -@@ -828,6 +828,23 @@ static reloc_howto_type or1k_elf_howto_table[] = - false), /* pcrel_offset */ - }; - -+/* A copy of the R_OR1K_GOT16 used in the presense of R_OR1K_GOT_AHI16 -+ relocations when we know we can ignore overflows. */ -+static reloc_howto_type or1k_elf_got16_no_overflow_howto = -+ HOWTO (R_OR1K_GOT16, /* type */ -+ 0, /* rightshift */ -+ 2, /* size (0 = byte, 1 = short, 2 = long) */ -+ 16, /* bitsize */ -+ false, /* pc_relative */ -+ 0, /* bitpos */ -+ complain_overflow_dont, /* complain_on_overflow */ -+ bfd_elf_generic_reloc, /* special_function */ -+ "R_OR1K_GOT16", /* name */ -+ false, /* partial_inplace */ -+ 0, /* src_mask */ -+ 0xffff, /* dst_mask */ -+ false); /* pcrel_offset */ -+ - /* Map BFD reloc types to Or1k ELF reloc types. */ - - struct or1k_reloc_map -@@ -1506,12 +1523,11 @@ or1k_elf_relocate_section (bfd *output_bfd, - if (r_type == R_OR1K_GOT_AHI16) - saw_gotha = true; - -- /* If we have a R_OR1K_GOT16 followed by a R_OR1K_GOT_AHI16 -+ /* If we have a R_OR1K_GOT16 following a R_OR1K_GOT_AHI16 - relocation we assume the code is doing the right thing to avoid -- overflows. Here we mask the lower 16-bit of the relocation to -- avoid overflow validation failures. */ -+ overflows. */ - if (r_type == R_OR1K_GOT16 && saw_gotha) -- relocation &= 0xffff; -+ howto = &or1k_elf_got16_no_overflow_howto; - - /* Addend should be zero. */ - if (rel->r_addend != 0) --- -2.25.1 - diff --git a/package/binutils/2.38/0005-binutils-2.38-vs.-ppc32-linux-kernel.patch b/package/binutils/2.38/0005-binutils-2.38-vs.-ppc32-linux-kernel.patch deleted file mode 100644 index c62652c95f3e..000000000000 --- a/package/binutils/2.38/0005-binutils-2.38-vs.-ppc32-linux-kernel.patch +++ /dev/null @@ -1,55 +0,0 @@ -From ed9b2e40ebffec835d63473367da8dd8f80d7d5b Mon Sep 17 00:00:00 2001 -From: Alan Modra -Date: Mon, 21 Feb 2022 10:58:57 +1030 -Subject: [PATCH] binutils 2.38 vs. ppc32 linux kernel - -Commit b25f942e18d6 made .machine more strict. Weaken it again. - - * config/tc-ppc.c (ppc_machine): Treat an early .machine specially, - keeping sticky options to work around gcc bugs. - -(cherry picked from commit cebc89b9328eab994f6b0314c263f94e7949a553) -Signed-off-by: Waldemar Brodkorb ---- - gas/config/tc-ppc.c | 25 ++++++++++++++++++++++++- - 1 file changed, 24 insertions(+), 1 deletion(-) - -diff --git a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c -index 054f9c72161..89bc7d3f9b9 100644 ---- a/gas/config/tc-ppc.c -+++ b/gas/config/tc-ppc.c -@@ -5965,7 +5965,30 @@ ppc_machine (int ignore ATTRIBUTE_UNUSED) - options do not count as a new machine, instead they add - to currently selected opcodes. */ - ppc_cpu_t machine_sticky = 0; -- new_cpu = ppc_parse_cpu (ppc_cpu, &machine_sticky, cpu_string); -+ /* Unfortunately, some versions of gcc emit a .machine -+ directive very near the start of the compiler's assembly -+ output file. This is bad because it overrides user -Wa -+ cpu selection. Worse, there are versions of gcc that -+ emit the *wrong* cpu, not even respecting the -mcpu given -+ to gcc. See gcc pr101393. And to compound the problem, -+ as of 20220222 gcc doesn't pass the correct cpu option to -+ gas on the command line. See gcc pr59828. Hack around -+ this by keeping sticky options for an early .machine. */ -+ asection *sec; -+ for (sec = stdoutput->sections; sec != NULL; sec = sec->next) -+ { -+ segment_info_type *info = seg_info (sec); -+ /* Are the frags for this section perturbed from their -+ initial state? Even .align will count here. */ -+ if (info != NULL -+ && (info->frchainP->frch_root != info->frchainP->frch_last -+ || info->frchainP->frch_root->fr_type != rs_fill -+ || info->frchainP->frch_root->fr_fix != 0)) -+ break; -+ } -+ new_cpu = ppc_parse_cpu (ppc_cpu, -+ sec == NULL ? &sticky : &machine_sticky, -+ cpu_string); - if (new_cpu != 0) - ppc_cpu = new_cpu; - else --- -2.30.2 - diff --git a/package/binutils/2.40/0001-sh-conf.patch b/package/binutils/2.40/0001-sh-conf.patch new file mode 100644 index 000000000000..ffa23a88a793 --- /dev/null +++ b/package/binutils/2.40/0001-sh-conf.patch @@ -0,0 +1,50 @@ +From 87551ade276aa0db86c4567b3ac219c4f979b538 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 25 Dec 2015 11:38:13 +0100 +Subject: [PATCH] sh-conf + +Likewise, binutils has no idea about any of these new targets either, so we +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 +[Thomas: rebase on top of 2.29, in which sh64 support was removed.] +Signed-off-by: Thomas Petazzoni +--- + configure | 2 +- + configure.ac | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure b/configure +index 417fc5a970c..fa8ba331796 100755 +--- a/configure ++++ b/configure +@@ -4067,7 +4067,7 @@ case "${target}" in + nvptx*-*-*) + noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc" + ;; +- sh-*-*) ++ sh*-*-*) + case "${target}" in + sh*-*-elf) + ;; +diff --git a/configure.ac b/configure.ac +index 3a1eb0357e5..d700c14ddf5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1300,7 +1300,7 @@ case "${target}" in + nvptx*-*-*) + noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc" + ;; +- sh-*-*) ++ sh*-*-*) + case "${target}" in + sh*-*-elf) + ;; +-- +2.40.1 + diff --git a/package/binutils/2.40/0002-poison-system-directories.patch b/package/binutils/2.40/0002-poison-system-directories.patch new file mode 100644 index 000000000000..4b927b630e03 --- /dev/null +++ b/package/binutils/2.40/0002-poison-system-directories.patch @@ -0,0 +1,309 @@ +From a6d90a842e349545ceb27f022317618dd99378ce Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 25 Dec 2015 11:45:38 +0100 +Subject: [PATCH] poison-system-directories + +Patch adapted to binutils 2.23.2 and extended to use +BR_COMPILER_PARANOID_UNSAFE_PATH by Thomas Petazzoni. + +[Waldemar: rebase on top of 2.39] +Signed-off-by: Waldemar Brodkorb +[Romain: rebase on top of 2.33.1] +Signed-off-by: Romain Naour +[Gustavo: adapt to binutils 2.25] +Signed-off-by: Thomas Petazzoni +Signed-off-by: Gustavo Zacarias + +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. + +purpose: warn for uses of system directories when cross linking + +Code Merged from Sourcery G++ binutils 2.19 - 4.4-277 + +2008-07-02 Joseph Myers + + ld/ + * ld.h (args_type): Add error_poison_system_directories. + * ld.texinfo (--error-poison-system-directories): Document. + * ldfile.c (ldfile_add_library_path): Check + command_line.error_poison_system_directories. + * ldmain.c (main): Initialize + command_line.error_poison_system_directories. + * lexsup.c (enum option_values): Add + OPTION_ERROR_POISON_SYSTEM_DIRECTORIES. + (ld_options): Add --error-poison-system-directories. + (parse_args): Handle new option. + +2007-06-13 Joseph Myers + + ld/ + * config.in: Regenerate. + * ld.h (args_type): Add poison_system_directories. + * ld.texinfo (--no-poison-system-directories): Document. + * ldfile.c (ldfile_add_library_path): Check + command_line.poison_system_directories. + * ldmain.c (main): Initialize + command_line.poison_system_directories. + * lexsup.c (enum option_values): Add + OPTION_NO_POISON_SYSTEM_DIRECTORIES. + (ld_options): Add --no-poison-system-directories. + (parse_args): Handle new option. + +2007-04-20 Joseph Myers + + Merge from Sourcery G++ binutils 2.17: + + 2007-03-20 Joseph Myers + Based on patch by Mark Hatle . + ld/ + * configure.ac (--enable-poison-system-directories): New option. + * configure, config.in: Regenerate. + * ldfile.c (ldfile_add_library_path): If + ENABLE_POISON_SYSTEM_DIRECTORIES defined, warn for use of /lib, + /usr/lib, /usr/local/lib or /usr/X11R6/lib. + +Signed-off-by: Mark Hatle +Signed-off-by: Scott Garman +--- + ld/config.in | 3 +++ + ld/configure | 14 ++++++++++++++ + ld/configure.ac | 10 ++++++++++ + ld/ld.h | 8 ++++++++ + ld/ld.texi | 12 ++++++++++++ + ld/ldfile.c | 17 +++++++++++++++++ + ld/ldlex.h | 2 ++ + ld/ldmain.c | 2 ++ + ld/lexsup.c | 21 +++++++++++++++++++++ + 9 files changed, 89 insertions(+) + +diff --git a/ld/config.in b/ld/config.in +index ad0dc6a106c..d21edaddce7 100644 +--- a/ld/config.in ++++ b/ld/config.in +@@ -58,6 +58,9 @@ + language is requested. */ + #undef ENABLE_NLS + ++/* Define to warn for use of native system library directories */ ++#undef ENABLE_POISON_SYSTEM_DIRECTORIES ++ + /* Additional extension a shared object might have. */ + #undef EXTRA_SHLIB_EXTENSION + +diff --git a/ld/configure b/ld/configure +index 43b44be1dc6..28f054ea3f8 100755 +--- a/ld/configure ++++ b/ld/configure +@@ -839,6 +839,7 @@ with_lib_path + enable_targets + enable_64_bit_bfd + with_sysroot ++enable_poison_system_directories + enable_gold + enable_got + enable_compressed_debug_sections +@@ -1521,6 +1522,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) ++ --enable-poison-system-directories ++ warn for use of native system library directories + --enable-gold[=ARG] build gold [ARG={default,yes,no}] + --enable-got= GOT handling scheme (target, single, negative, + multigot) +@@ -15504,7 +15507,18 @@ else + fi + + ++# Check whether --enable-poison-system-directories was given. ++if test "${enable_poison_system_directories+set}" = set; then : ++ enableval=$enable_poison_system_directories; ++else ++ enable_poison_system_directories=no ++fi ++ ++if test "x${enable_poison_system_directories}" = "xyes"; then + ++$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h ++ ++fi + + # Check whether --enable-got was given. + if test "${enable_got+set}" = set; then : +diff --git a/ld/configure.ac b/ld/configure.ac +index 77edac3258c..a74dac63038 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) + ++AC_ARG_ENABLE([poison-system-directories], ++ AS_HELP_STRING([--enable-poison-system-directories], ++ [warn for use of native system library directories]),, ++ [enable_poison_system_directories=no]) ++if test "x${enable_poison_system_directories}" = "xyes"; then ++ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES], ++ [1], ++ [Define to warn for use of native system library directories]) ++fi ++ + 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 --git a/ld/ld.h b/ld/ld.h +index 05649ff61b8..1818c227473 100644 +--- a/ld/ld.h ++++ b/ld/ld.h +@@ -163,6 +163,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 db3a9f09b45..9dacc934f80 100644 +--- a/ld/ld.texi ++++ b/ld/ld.texi +@@ -2949,6 +2949,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 b8fd4e5d8e0..1f1d8e23bc9 100644 +--- a/ld/ldfile.c ++++ b/ld/ldfile.c +@@ -117,6 +117,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); ++ ++#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES ++ if (command_line.poison_system_directories ++ && ((!strncmp (name, "/lib", 4)) ++ || (!strncmp (name, "/usr/lib", 8)) ++ || (!strncmp (name, "/usr/local/lib", 14)) ++ || (!strncmp (name, "/usr/X11R6/lib", 14)))) ++ { ++ if (command_line.error_poison_system_directories) ++ einfo (_("%X%P: error: library search path \"%s\" is unsafe for " ++ "cross-compilation\n"), name); ++ else ++ einfo (_("%P: warning: library search path \"%s\" is unsafe for " ++ "cross-compilation\n"), name); ++ } ++#endif ++ + } + + /* Try to open a BFD for a lang_input_statement. */ +diff --git a/ld/ldlex.h b/ld/ldlex.h +index 0538f0a06a1..d1de3aec23d 100644 +--- a/ld/ldlex.h ++++ b/ld/ldlex.h +@@ -166,6 +166,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 --git a/ld/ldmain.c b/ld/ldmain.c +index 9290a189b0d..e2e3074e872 100644 +--- a/ld/ldmain.c ++++ b/ld/ldmain.c +@@ -321,6 +321,8 @@ main (int argc, char **argv) + command_line.warn_mismatch = true; + command_line.warn_search_mismatch = true; + command_line.check_section_addresses = -1; ++ command_line.poison_system_directories = true; ++ command_line.error_poison_system_directories = false; + + /* We initialize DEMANGLING based on the environment variable + COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the +diff --git a/ld/lexsup.c b/ld/lexsup.c +index c5960385572..da0a7829914 100644 +--- a/ld/lexsup.c ++++ b/ld/lexsup.c +@@ -613,6 +613,14 @@ static const struct ld_option ld_options[] = + " is: share-unconflicted (default),\n" + " share-duplicated"), + TWO_DASHES }, ++ { {"no-poison-system-directories", no_argument, NULL, ++ OPTION_NO_POISON_SYSTEM_DIRECTORIES}, ++ '\0', NULL, N_("Do not warn for -L options using system directories"), ++ TWO_DASHES }, ++ { {"error-poison-system-directories", no_argument, NULL, ++ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES}, ++ '\0', NULL, N_("Give an error for -L options using system directories"), ++ TWO_DASHES }, + }; + + #define OPTION_COUNT ARRAY_SIZE (ld_options) +@@ -625,6 +633,7 @@ parse_args (unsigned argc, char **argv) + int ingroup = 0; + char *default_dirlist = NULL; + char *shortopts; ++ char *BR_paranoid_env; + struct option *longopts; + struct option *really_longopts; + int last_optind; +@@ -1692,6 +1701,14 @@ parse_args (unsigned argc, char **argv) + } + break; + ++ case OPTION_NO_POISON_SYSTEM_DIRECTORIES: ++ command_line.poison_system_directories = false; ++ break; ++ ++ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES: ++ command_line.error_poison_system_directories = true; ++ break; ++ + case OPTION_PUSH_STATE: + input_flags.pushed = xmemdup (&input_flags, + sizeof (input_flags), +@@ -1837,6 +1854,10 @@ parse_args (unsigned argc, char **argv) + command_line.soname = NULL; + } + ++ BR_paranoid_env = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH"); ++ if (BR_paranoid_env && strlen(BR_paranoid_env) > 0) ++ command_line.error_poison_system_directories = true; ++ + while (ingroup) + { + einfo (_("%P: missing --end-group; added as last command line option\n")); +-- +2.40.1 + diff --git a/package/binutils/2.41/0001-sh-conf.patch b/package/binutils/2.41/0001-sh-conf.patch new file mode 100644 index 000000000000..ffa23a88a793 --- /dev/null +++ b/package/binutils/2.41/0001-sh-conf.patch @@ -0,0 +1,50 @@ +From 87551ade276aa0db86c4567b3ac219c4f979b538 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 25 Dec 2015 11:38:13 +0100 +Subject: [PATCH] sh-conf + +Likewise, binutils has no idea about any of these new targets either, so we +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 +[Thomas: rebase on top of 2.29, in which sh64 support was removed.] +Signed-off-by: Thomas Petazzoni +--- + configure | 2 +- + configure.ac | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure b/configure +index 417fc5a970c..fa8ba331796 100755 +--- a/configure ++++ b/configure +@@ -4067,7 +4067,7 @@ case "${target}" in + nvptx*-*-*) + noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc" + ;; +- sh-*-*) ++ sh*-*-*) + case "${target}" in + sh*-*-elf) + ;; +diff --git a/configure.ac b/configure.ac +index 3a1eb0357e5..d700c14ddf5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1300,7 +1300,7 @@ case "${target}" in + nvptx*-*-*) + noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc" + ;; +- sh-*-*) ++ sh*-*-*) + case "${target}" in + sh*-*-elf) + ;; +-- +2.40.1 + diff --git a/package/binutils/2.41/0002-poison-system-directories.patch b/package/binutils/2.41/0002-poison-system-directories.patch new file mode 100644 index 000000000000..4b927b630e03 --- /dev/null +++ b/package/binutils/2.41/0002-poison-system-directories.patch @@ -0,0 +1,309 @@ +From a6d90a842e349545ceb27f022317618dd99378ce Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 25 Dec 2015 11:45:38 +0100 +Subject: [PATCH] poison-system-directories + +Patch adapted to binutils 2.23.2 and extended to use +BR_COMPILER_PARANOID_UNSAFE_PATH by Thomas Petazzoni. + +[Waldemar: rebase on top of 2.39] +Signed-off-by: Waldemar Brodkorb +[Romain: rebase on top of 2.33.1] +Signed-off-by: Romain Naour +[Gustavo: adapt to binutils 2.25] +Signed-off-by: Thomas Petazzoni +Signed-off-by: Gustavo Zacarias + +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. + +purpose: warn for uses of system directories when cross linking + +Code Merged from Sourcery G++ binutils 2.19 - 4.4-277 + +2008-07-02 Joseph Myers + + ld/ + * ld.h (args_type): Add error_poison_system_directories. + * ld.texinfo (--error-poison-system-directories): Document. + * ldfile.c (ldfile_add_library_path): Check + command_line.error_poison_system_directories. + * ldmain.c (main): Initialize + command_line.error_poison_system_directories. + * lexsup.c (enum option_values): Add + OPTION_ERROR_POISON_SYSTEM_DIRECTORIES. + (ld_options): Add --error-poison-system-directories. + (parse_args): Handle new option. + +2007-06-13 Joseph Myers + + ld/ + * config.in: Regenerate. + * ld.h (args_type): Add poison_system_directories. + * ld.texinfo (--no-poison-system-directories): Document. + * ldfile.c (ldfile_add_library_path): Check + command_line.poison_system_directories. + * ldmain.c (main): Initialize + command_line.poison_system_directories. + * lexsup.c (enum option_values): Add + OPTION_NO_POISON_SYSTEM_DIRECTORIES. + (ld_options): Add --no-poison-system-directories. + (parse_args): Handle new option. + +2007-04-20 Joseph Myers + + Merge from Sourcery G++ binutils 2.17: + + 2007-03-20 Joseph Myers + Based on patch by Mark Hatle . + ld/ + * configure.ac (--enable-poison-system-directories): New option. + * configure, config.in: Regenerate. + * ldfile.c (ldfile_add_library_path): If + ENABLE_POISON_SYSTEM_DIRECTORIES defined, warn for use of /lib, + /usr/lib, /usr/local/lib or /usr/X11R6/lib. + +Signed-off-by: Mark Hatle +Signed-off-by: Scott Garman +--- + ld/config.in | 3 +++ + ld/configure | 14 ++++++++++++++ + ld/configure.ac | 10 ++++++++++ + ld/ld.h | 8 ++++++++ + ld/ld.texi | 12 ++++++++++++ + ld/ldfile.c | 17 +++++++++++++++++ + ld/ldlex.h | 2 ++ + ld/ldmain.c | 2 ++ + ld/lexsup.c | 21 +++++++++++++++++++++ + 9 files changed, 89 insertions(+) + +diff --git a/ld/config.in b/ld/config.in +index ad0dc6a106c..d21edaddce7 100644 +--- a/ld/config.in ++++ b/ld/config.in +@@ -58,6 +58,9 @@ + language is requested. */ + #undef ENABLE_NLS + ++/* Define to warn for use of native system library directories */ ++#undef ENABLE_POISON_SYSTEM_DIRECTORIES ++ + /* Additional extension a shared object might have. */ + #undef EXTRA_SHLIB_EXTENSION + +diff --git a/ld/configure b/ld/configure +index 43b44be1dc6..28f054ea3f8 100755 +--- a/ld/configure ++++ b/ld/configure +@@ -839,6 +839,7 @@ with_lib_path + enable_targets + enable_64_bit_bfd + with_sysroot ++enable_poison_system_directories + enable_gold + enable_got + enable_compressed_debug_sections +@@ -1521,6 +1522,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) ++ --enable-poison-system-directories ++ warn for use of native system library directories + --enable-gold[=ARG] build gold [ARG={default,yes,no}] + --enable-got= GOT handling scheme (target, single, negative, + multigot) +@@ -15504,7 +15507,18 @@ else + fi + + ++# Check whether --enable-poison-system-directories was given. ++if test "${enable_poison_system_directories+set}" = set; then : ++ enableval=$enable_poison_system_directories; ++else ++ enable_poison_system_directories=no ++fi ++ ++if test "x${enable_poison_system_directories}" = "xyes"; then + ++$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h ++ ++fi + + # Check whether --enable-got was given. + if test "${enable_got+set}" = set; then : +diff --git a/ld/configure.ac b/ld/configure.ac +index 77edac3258c..a74dac63038 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) + ++AC_ARG_ENABLE([poison-system-directories], ++ AS_HELP_STRING([--enable-poison-system-directories], ++ [warn for use of native system library directories]),, ++ [enable_poison_system_directories=no]) ++if test "x${enable_poison_system_directories}" = "xyes"; then ++ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES], ++ [1], ++ [Define to warn for use of native system library directories]) ++fi ++ + 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 --git a/ld/ld.h b/ld/ld.h +index 05649ff61b8..1818c227473 100644 +--- a/ld/ld.h ++++ b/ld/ld.h +@@ -163,6 +163,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 db3a9f09b45..9dacc934f80 100644 +--- a/ld/ld.texi ++++ b/ld/ld.texi +@@ -2949,6 +2949,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 b8fd4e5d8e0..1f1d8e23bc9 100644 +--- a/ld/ldfile.c ++++ b/ld/ldfile.c +@@ -117,6 +117,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); ++ ++#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES ++ if (command_line.poison_system_directories ++ && ((!strncmp (name, "/lib", 4)) ++ || (!strncmp (name, "/usr/lib", 8)) ++ || (!strncmp (name, "/usr/local/lib", 14)) ++ || (!strncmp (name, "/usr/X11R6/lib", 14)))) ++ { ++ if (command_line.error_poison_system_directories) ++ einfo (_("%X%P: error: library search path \"%s\" is unsafe for " ++ "cross-compilation\n"), name); ++ else ++ einfo (_("%P: warning: library search path \"%s\" is unsafe for " ++ "cross-compilation\n"), name); ++ } ++#endif ++ + } + + /* Try to open a BFD for a lang_input_statement. */ +diff --git a/ld/ldlex.h b/ld/ldlex.h +index 0538f0a06a1..d1de3aec23d 100644 +--- a/ld/ldlex.h ++++ b/ld/ldlex.h +@@ -166,6 +166,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 --git a/ld/ldmain.c b/ld/ldmain.c +index 9290a189b0d..e2e3074e872 100644 +--- a/ld/ldmain.c ++++ b/ld/ldmain.c +@@ -321,6 +321,8 @@ main (int argc, char **argv) + command_line.warn_mismatch = true; + command_line.warn_search_mismatch = true; + command_line.check_section_addresses = -1; ++ command_line.poison_system_directories = true; ++ command_line.error_poison_system_directories = false; + + /* We initialize DEMANGLING based on the environment variable + COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the +diff --git a/ld/lexsup.c b/ld/lexsup.c +index c5960385572..da0a7829914 100644 +--- a/ld/lexsup.c ++++ b/ld/lexsup.c +@@ -613,6 +613,14 @@ static const struct ld_option ld_options[] = + " is: share-unconflicted (default),\n" + " share-duplicated"), + TWO_DASHES }, ++ { {"no-poison-system-directories", no_argument, NULL, ++ OPTION_NO_POISON_SYSTEM_DIRECTORIES}, ++ '\0', NULL, N_("Do not warn for -L options using system directories"), ++ TWO_DASHES }, ++ { {"error-poison-system-directories", no_argument, NULL, ++ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES}, ++ '\0', NULL, N_("Give an error for -L options using system directories"), ++ TWO_DASHES }, + }; + + #define OPTION_COUNT ARRAY_SIZE (ld_options) +@@ -625,6 +633,7 @@ parse_args (unsigned argc, char **argv) + int ingroup = 0; + char *default_dirlist = NULL; + char *shortopts; ++ char *BR_paranoid_env; + struct option *longopts; + struct option *really_longopts; + int last_optind; +@@ -1692,6 +1701,14 @@ parse_args (unsigned argc, char **argv) + } + break; + ++ case OPTION_NO_POISON_SYSTEM_DIRECTORIES: ++ command_line.poison_system_directories = false; ++ break; ++ ++ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES: ++ command_line.error_poison_system_directories = true; ++ break; ++ + case OPTION_PUSH_STATE: + input_flags.pushed = xmemdup (&input_flags, + sizeof (input_flags), +@@ -1837,6 +1854,10 @@ parse_args (unsigned argc, char **argv) + command_line.soname = NULL; + } + ++ BR_paranoid_env = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH"); ++ if (BR_paranoid_env && strlen(BR_paranoid_env) > 0) ++ command_line.error_poison_system_directories = true; ++ + while (ingroup) + { + einfo (_("%P: missing --end-group; added as last command line option\n")); +-- +2.40.1 + diff --git a/package/binutils/Config.in.host b/package/binutils/Config.in.host index 5dd2af2f9caa..bc7dc4443c3e 100644 --- a/package/binutils/Config.in.host +++ b/package/binutils/Config.in.host @@ -5,41 +5,43 @@ 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_38_X if !BR2_arc + default BR2_BINUTILS_VERSION_2_40_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_37_X - bool "binutils 2.37" - # AVX512FP16 instructions were not supported before binutils - # 2.38 - depends on !BR2_X86_CPU_HAS_AVX512 - -config BR2_BINUTILS_VERSION_2_38_X - bool "binutils 2.38" - 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" + +config BR2_BINUTILS_VERSION_2_41_X + bool "binutils 2.41" config BR2_BINUTILS_VERSION_ARC bool "binutils arc (2.34.50)" depends on BR2_arc + select BR2_PACKAGE_BINUTILS_HAS_NO_LIBSFRAME endchoice config BR2_BINUTILS_VERSION string default "arc-2020.09-release" if BR2_BINUTILS_VERSION_ARC - default "2.37" if BR2_BINUTILS_VERSION_2_37_X - default "2.38" if BR2_BINUTILS_VERSION_2_38_X 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 config BR2_BINUTILS_GPROFNG bool "gprofng support" - depends on BR2_BINUTILS_VERSION_2_39_X + depends on !BR2_BINUTILS_VERSION_ARC help This option enables support for gprofng, a new profiler. diff --git a/package/binutils/binutils.hash b/package/binutils/binutils.hash index 1a8574de92be..564a4c3bd7ba 100644 --- a/package/binutils/binutils.hash +++ b/package/binutils/binutils.hash @@ -1,7 +1,7 @@ -# From ftp://gcc.gnu.org/pub/binutils/releases/sha512.sum -sha512 5c11aeef6935860a6819ed3a3c93371f052e52b4bdc5033da36037c1544d013b7f12cb8d561ec954fe7469a68f1b66f1a3cd53d5a3af7293635a90d69edd15e7 binutils-2.37.tar.xz -sha512 8bf0b0d193c9c010e0518ee2b2e5a830898af206510992483b427477ed178396cd210235e85fd7bd99a96fc6d5eedbeccbd48317a10f752b7336ada8b2bb826d binutils-2.38.tar.xz +# 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 # Locally calculated (fetched from Github) sha512 76a8227a19218435319c660e4983ea17985194b7f496f163e97543e7f6fd3e9249241fdc05a16ba512fba96a1d846c1f7b080983404d821d6215f10e7f11e238 binutils-gdb-arc-2020.09-release.tar.gz diff --git a/package/binutils/binutils.mk b/package/binutils/binutils.mk index 1ef7ee57d2ff..4bc1b69fa0fd 100644 --- a/package/binutils/binutils.mk +++ b/package/binutils/binutils.mk @@ -11,7 +11,7 @@ ifeq ($(BINUTILS_VERSION),) ifeq ($(BR2_arc),y) BINUTILS_VERSION = arc-2020.09-release else -BINUTILS_VERSION = 2.38 +BINUTILS_VERSION = 2.40 endif endif # BINUTILS_VERSION @@ -54,7 +54,8 @@ BINUTILS_CONF_OPTS = \ --with-system-zlib \ --disable-gprofng \ $(BINUTILS_DISABLE_GDB_CONF_OPTS) \ - $(BINUTILS_EXTRA_CONFIG_OPTIONS) + $(BINUTILS_EXTRA_CONFIG_OPTIONS) \ + --without-zstd ifeq ($(BR2_STATIC_LIBS),y) BINUTILS_CONF_OPTS += --disable-plugins @@ -90,7 +91,8 @@ HOST_BINUTILS_CONF_OPTS = \ --enable-plugins \ --enable-lto \ $(BINUTILS_DISABLE_GDB_CONF_OPTS) \ - $(BINUTILS_EXTRA_CONFIG_OPTIONS) + $(BINUTILS_EXTRA_CONFIG_OPTIONS) \ + --without-zstd ifeq ($(BR2_BINUTILS_GPROFNG),y) HOST_BINUTILS_DEPENDENCIES += host-bison @@ -103,12 +105,19 @@ 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) endef # If we don't want full binutils on target diff --git a/package/bird/bird.hash b/package/bird/bird.hash index 3e00a1993db6..a62fbba630e9 100644 --- a/package/bird/bird.hash +++ b/package/bird/bird.hash @@ -1,2 +1,2 @@ -sha256 60a7b83b67b9d089d2a745a11fddd12461f631abc7b645b6c085adf90b3f55d6 bird-2.0.11.tar.gz +sha256 3ec462a237d06d1f4455d6ec00a42f0b1686061fc988e5c89a841d01dd753b53 bird-2.0.12.tar.gz sha256 94c53c84320078920ac1f0d49c81a4e9004512f534521a58bdf145acbcbc2cd2 README diff --git a/package/bird/bird.mk b/package/bird/bird.mk index 1295358fb9de..f1b2ee6c5ea0 100644 --- a/package/bird/bird.mk +++ b/package/bird/bird.mk @@ -4,7 +4,7 @@ # ################################################################################ -BIRD_VERSION = 2.0.11 +BIRD_VERSION = 2.0.12 BIRD_SITE = https://bird.network.cz/download BIRD_LICENSE = GPL-2.0+ BIRD_LICENSE_FILES = README diff --git a/package/bitcoin/0002-Add-missing-includes-to-fix-gcc-13-compile-error.patch b/package/bitcoin/0002-Add-missing-includes-to-fix-gcc-13-compile-error.patch new file mode 100644 index 000000000000..22c0ca2adf6d --- /dev/null +++ b/package/bitcoin/0002-Add-missing-includes-to-fix-gcc-13-compile-error.patch @@ -0,0 +1,48 @@ +From 339a95b7537b47e5d6b732c0633a00afd96e3ca0 Mon Sep 17 00:00:00 2001 +From: MarcoFalke <*~=`'#}+{/-|&$^_@721217.xyz> +Date: Thu, 19 Jan 2023 19:35:43 +0100 +Subject: [PATCH] Add missing includes to fix gcc-13 compile error + +Upstream: https://github.com/bitcoin/bitcoin/commit/fadeb6b103cb441e0e91ef506ef29febabb10715 + +Signed-off-by: Bernd Kuhls +--- + src/support/lockedpool.cpp | 3 +++ + src/support/lockedpool.h | 4 ++-- + 2 files changed, 5 insertions(+), 2 deletions(-) + +diff --git a/src/support/lockedpool.cpp b/src/support/lockedpool.cpp +index 26de780f2..11131d551 100644 +--- a/src/support/lockedpool.cpp ++++ b/src/support/lockedpool.cpp +@@ -22,6 +22,9 @@ + #endif + + #include ++#include ++#include ++#include + #ifdef ARENA_DEBUG + #include + #include +diff --git a/src/support/lockedpool.h b/src/support/lockedpool.h +index b9e2e99d1..25b4c0f36 100644 +--- a/src/support/lockedpool.h ++++ b/src/support/lockedpool.h +@@ -5,11 +5,11 @@ + #ifndef BITCOIN_SUPPORT_LOCKEDPOOL_H + #define BITCOIN_SUPPORT_LOCKEDPOOL_H + +-#include ++#include + #include + #include +-#include + #include ++#include + #include + + /** +-- +2.39.2 + diff --git a/package/bitcoin/0003-refactor-add-most-of-src-util-to-iwyu.patch b/package/bitcoin/0003-refactor-add-most-of-src-util-to-iwyu.patch new file mode 100644 index 000000000000..095fa648dd3d --- /dev/null +++ b/package/bitcoin/0003-refactor-add-most-of-src-util-to-iwyu.patch @@ -0,0 +1,34 @@ +From c187efa907fd64ea2c7b7d699c5c97f9d5b79960 Mon Sep 17 00:00:00 2001 +From: fanquake +Date: Thu, 9 Jun 2022 16:26:55 +0100 +Subject: [PATCH] refactor: add most of src/util to iwyu + +These files change infrequently, and not much header shuffling is required. + +We don't add everything in src/util/ yet, because IWYU makes some +dubious suggestions, which I'm going to follow up with upstream. + +Upstream: https://github.com/bitcoin/bitcoin/commit/07f2c25d04c39a0074e1d9ee1b24b3e359c8153f + +[Bernd: backported relevant part from upstream commit to version 0.21.2 + to fix build error with gcc 13.x] +Signed-off-by: Bernd Kuhls +--- + src/util/bip32.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/util/bip32.h b/src/util/bip32.h +index 347e83db9..6ef051c48 100644 +--- a/src/util/bip32.h ++++ b/src/util/bip32.h +@@ -6,6 +6,7 @@ + #define BITCOIN_UTIL_BIP32_H + + #include ++#include + #include + #include + +-- +2.39.2 + diff --git a/package/bitcoin/0004-src-util-string-h-fix-gcc13.patch b/package/bitcoin/0004-src-util-string-h-fix-gcc13.patch new file mode 100644 index 000000000000..00a9ef2b9712 --- /dev/null +++ b/package/bitcoin/0004-src-util-string-h-fix-gcc13.patch @@ -0,0 +1,23 @@ +From fa2deae2a86417d7e0d4cd33fb933b1000d20313 Mon Sep 17 00:00:00 2001 +From: MacroFake +Date: Thu, 5 May 2022 08:28:29 +0200 +Subject: [PATCH] Wrap boost::replace_all + +Upstream: https://github.com/bitcoin/bitcoin/commit/fa2deae2a86417d7e0d4cd33fb933b1000d20313 + +[Bernd: backported relevant part from upstream commit to version 0.21.2 + to fix build error with gcc 13.x] +Signed-off-by: Bernd Kuhls +--- +diff --git a/src/util/string.h b/src/util/string.h +index 2e91347b27a10..df20e34ae9aaa 100644 +--- a/src/util/string.h ++++ b/src/util/string.h +@@ -9,6 +9,7 @@ + + #include + #include ++#include + #include + #include + #include diff --git a/package/bitwise/bitwise.hash b/package/bitwise/bitwise.hash index c8daa0aa649a..9da1a4c0c587 100644 --- a/package/bitwise/bitwise.hash +++ b/package/bitwise/bitwise.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 f524f794188a10defc4df673d8cf0b3739f93e58e93aff0cdb8a99fbdcca2ffb bitwise-v0.43.tar.gz +sha256 806271fa5bf31de0600315e8720004a8f529954480e991ca84a9868dc1cae97e bitwise-v0.50.tar.gz sha256 3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986 COPYING diff --git a/package/bitwise/bitwise.mk b/package/bitwise/bitwise.mk index 33d8f6776b5c..5bce92fcf797 100644 --- a/package/bitwise/bitwise.mk +++ b/package/bitwise/bitwise.mk @@ -4,7 +4,7 @@ # ################################################################################ -BITWISE_VERSION = 0.43 +BITWISE_VERSION = 0.50 BITWISE_SITE = https://github.com/mellowcandle/bitwise/releases/download/v$(BITWISE_VERSION) BITWISE_SOURCE = bitwise-v$(BITWISE_VERSION).tar.gz BITWISE_DEPENDENCIES = ncurses readline diff --git a/package/bluez-alsa/Config.in b/package/bluez-alsa/Config.in index 73ae3d5333b4..d70172646fd5 100644 --- a/package/bluez-alsa/Config.in +++ b/package/bluez-alsa/Config.in @@ -13,6 +13,9 @@ config BR2_PACKAGE_BLUEZ_ALSA select BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_AUDIO select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_SBC + # samplerate ALSA plugin is needed for proper sample rate + # conversion with Bluetooth devices + select BR2_PACKAGE_LIBSAMPLERATE if BR2_PACKAGE_ALSA_PLUGINS help Bluetooth Audio ALSA Backend. diff --git a/package/bluez-alsa/bluez-alsa.hash b/package/bluez-alsa/bluez-alsa.hash index ad7fe6270857..551386560393 100644 --- a/package/bluez-alsa/bluez-alsa.hash +++ b/package/bluez-alsa/bluez-alsa.hash @@ -1,3 +1,3 @@ # Locally calculated: -sha256 ce5e060e61669d61d44f5f9bad34a7b88378376e9d49d31482406a68127a6b29 bluez-alsa-4.0.0.tar.gz -sha256 aaebd0cca73b0f361cb7f1bffa40418b2485fc10bfae7a47c193679c7e26d2e3 LICENSE +sha256 b69a3e6dd69315194403ee930ac1553aed3fb9a3988e502ae5c24a8bfef70f9f bluez-alsa-4.1.1.tar.gz +sha256 956564dcf06ba65cd7a5eb6cdfd695e2ab0f09ea9684e4eaf079f5d533bd206d LICENSE diff --git a/package/bluez-alsa/bluez-alsa.mk b/package/bluez-alsa/bluez-alsa.mk index 83dfce61776c..38682c275582 100644 --- a/package/bluez-alsa/bluez-alsa.mk +++ b/package/bluez-alsa/bluez-alsa.mk @@ -4,7 +4,7 @@ # ################################################################################ -BLUEZ_ALSA_VERSION = 4.0.0 +BLUEZ_ALSA_VERSION = 4.1.1 BLUEZ_ALSA_SITE = $(call github,Arkq,bluez-alsa,v$(BLUEZ_ALSA_VERSION)) BLUEZ_ALSA_LICENSE = MIT BLUEZ_ALSA_LICENSE_FILES = LICENSE @@ -20,6 +20,10 @@ BLUEZ_ALSA_CONF_OPTS = \ --with-alsaplugindir=/usr/lib/alsa-lib \ --with-alsaconfdir=/etc/alsa/conf.d +ifeq ($(BR2_PACKAGE_ALSA_PLUGINS),y) +BLUEZ_ALSA_DEPENDENCIES += alsa-plugins +endif + ifeq ($(BR2_PACKAGE_FDK_AAC),y) BLUEZ_ALSA_DEPENDENCIES += fdk-aac BLUEZ_ALSA_CONF_OPTS += --enable-aac diff --git a/package/bluez5_utils-headers/bluez5_utils-headers.mk b/package/bluez5_utils-headers/bluez5_utils-headers.mk index 565511120fec..0790dd7e0e5a 100644 --- a/package/bluez5_utils-headers/bluez5_utils-headers.mk +++ b/package/bluez5_utils-headers/bluez5_utils-headers.mk @@ -5,7 +5,7 @@ ################################################################################ # Keep the version and patches in sync with bluez5_utils -BLUEZ5_UTILS_HEADERS_VERSION = 5.65 +BLUEZ5_UTILS_HEADERS_VERSION = 5.68 BLUEZ5_UTILS_HEADERS_SOURCE = bluez-$(BLUEZ5_UTILS_VERSION).tar.xz BLUEZ5_UTILS_HEADERS_SITE = $(BR2_KERNEL_MIRROR)/linux/bluetooth BLUEZ5_UTILS_HEADERS_DL_SUBDIR = bluez5_utils diff --git a/package/bluez5_utils/0001-configure-Check-ell-path.patch b/package/bluez5_utils/0001-configure-Check-ell-path.patch new file mode 100644 index 000000000000..3e5f7c651685 --- /dev/null +++ b/package/bluez5_utils/0001-configure-Check-ell-path.patch @@ -0,0 +1,35 @@ +From 124187ef9abed60a7c40f751153e9c4516cd1f91 Mon Sep 17 00:00:00 2001 +From: Rudi Heitbaum +Date: Sat, 1 Jul 2023 01:31:20 +0000 +Subject: [PATCH] configure: Check ell path + +Use of AC_CHECK_FILE prevents cross compilation. +Instead use test to support cross compiling. + +Signed-off-by: Rudi Heitbaum + +Upstream: https://github.com/bluez/bluez/pull/546 + +Signed-off-by: Bernd Kuhls +--- + configure.ac | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/configure.ac b/configure.ac +index eff297960..bc7edfcd3 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -298,9 +298,10 @@ if (test "${enable_external_ell}" = "yes"); then + AC_SUBST(ELL_LIBS) + fi + if (test "${enable_external_ell}" != "yes"); then +- AC_CHECK_FILE(${srcdir}/ell/ell.h, dummy=yes, +- AC_CHECK_FILE(${srcdir}/../ell/ell/ell.h, dummy=yes, +- AC_MSG_ERROR(ELL source is required or use --enable-external-ell))) ++ if (test ! -f ${srcdir}/ell/ell.h) && ++ (test ! -f ${srcdir}/../ell/ell/ell.h); then ++ AC_MSG_ERROR(ELL source is required or use --enable-external-ell) ++ fi + fi + AM_CONDITIONAL(EXTERNAL_ELL, test "${enable_external_ell}" = "yes" || + (test "${enable_btpclient}" != "yes" && diff --git a/package/bluez5_utils/S40bluetooth b/package/bluez5_utils/S40bluetoothd old mode 100755 new mode 100644 similarity index 100% rename from package/bluez5_utils/S40bluetooth rename to package/bluez5_utils/S40bluetoothd diff --git a/package/bluez5_utils/bluez5_utils.hash b/package/bluez5_utils/bluez5_utils.hash index e0c9f3cdb935..45952e60f19d 100644 --- a/package/bluez5_utils/bluez5_utils.hash +++ b/package/bluez5_utils/bluez5_utils.hash @@ -1,5 +1,5 @@ # From https://www.kernel.org/pub/linux/bluetooth/sha256sums.asc: -sha256 2565a4d48354b576e6ad92e25b54ed66808296581c8abb80587051f9993d96d4 bluez-5.65.tar.xz +sha256 fc505e6445cb579a55cacee6821fe70d633921522043d322b696de0a175ff933 bluez-5.68.tar.xz # Locally computed sha256 b499eddebda05a8859e32b820a64577d91f1de2b52efa2a1575a2cb4000bc259 COPYING sha256 ec60b993835e2c6b79e6d9226345f4e614e686eb57dc13b6420c15a33a8996e5 COPYING.LIB diff --git a/package/bluez5_utils/bluez5_utils.mk b/package/bluez5_utils/bluez5_utils.mk index 76070dc3a90f..82800c043001 100644 --- a/package/bluez5_utils/bluez5_utils.mk +++ b/package/bluez5_utils/bluez5_utils.mk @@ -5,10 +5,12 @@ ################################################################################ # Keep the version and patches in sync with bluez5_utils-headers -BLUEZ5_UTILS_VERSION = 5.65 +BLUEZ5_UTILS_VERSION = 5.68 BLUEZ5_UTILS_SOURCE = bluez-$(BLUEZ5_UTILS_VERSION).tar.xz BLUEZ5_UTILS_SITE = $(BR2_KERNEL_MIRROR)/linux/bluetooth BLUEZ5_UTILS_INSTALL_STAGING = YES +# 0001-configure-Check-ell-path.patch +BLUEZ5_UTILS_AUTORECONF = YES BLUEZ5_UTILS_LICENSE = GPL-2.0+, LGPL-2.1+ BLUEZ5_UTILS_LICENSE_FILES = COPYING COPYING.LIB BLUEZ5_UTILS_CPE_ID_VENDOR = bluez @@ -64,9 +66,19 @@ endif # enable audio plugins (a2dp and avrcp) ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_AUDIO),y) -BLUEZ5_UTILS_CONF_OPTS += --enable-a2dp --enable-avrcp +BLUEZ5_UTILS_CONF_OPTS += \ + --enable-a2dp \ + --enable-avrcp \ + --enable-bap \ + --enable-mcp \ + --enable-vcp else -BLUEZ5_UTILS_CONF_OPTS += --disable-a2dp --disable-avrcp +BLUEZ5_UTILS_CONF_OPTS += \ + --disable-a2dp \ + --disable-avrcp \ + --disable-bap \ + --disable-mcp \ + --disable-vcp endif # enable health plugin @@ -184,8 +196,8 @@ BLUEZ5_UTILS_CONF_OPTS += --disable-systemd endif define BLUEZ5_UTILS_INSTALL_INIT_SYSV - $(INSTALL) -m 0755 -D package/bluez5_utils/S40bluetooth \ - $(TARGET_DIR)/etc/init.d/S40bluetooth + $(INSTALL) -m 0755 -D package/bluez5_utils/S40bluetoothd \ + $(TARGET_DIR)/etc/init.d/S40bluetoothd endef $(eval $(autotools-package)) diff --git a/package/boost/0001-Improve-modfunc-performance.patch b/package/boost/0001-Improve-modfunc-performance.patch deleted file mode 100644 index a34d6bb4d547..000000000000 --- a/package/boost/0001-Improve-modfunc-performance.patch +++ /dev/null @@ -1,551 +0,0 @@ -From 825aedad557b7e3bb27614335b6ced16887103de Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ion=20Gazta=C3=B1aga?= -Date: Mon, 7 Nov 2022 00:16:44 +0100 -Subject: [PATCH] Improve "modfunc" performance Fixes #79 - ("boost/intrusive/hashtable.hpp: build failure (undeclared indentifier)") - -Backport from Boost development branch to fix issues with some architectures -(64-bit with 128-bit processing, where size_t != unsigned long). In this case, -code is enabled that causes a build failure. - -Upstream: https://github.com/boostorg/intrusive/commit/825aedad557b7e3bb27614335b6ced16887103de -Issue: https://github.com/boostorg/intrusive/issues/79 -Fixes: http://autobuild.buildroot.net/results/6cb/6cbc0672f3c5046405793d8cdc8f961d2ffb1d3e - -Signed-off-by: Andreas Ziegler ---- - include/boost/intrusive/hashtable.hpp | 235 ++++++++++++++++---------- - 1 file changed, 145 insertions(+), 90 deletions(-) - -diff --git a/include/boost/intrusive/hashtable.hpp b/include/boost/intrusive/hashtable.hpp -index b8bc877..688fb9b 100644 ---- a/boost/intrusive/hashtable.hpp -+++ b/boost/intrusive/hashtable.hpp -@@ -2,6 +2,7 @@ - // - // (C) Copyright Ion Gaztanaga 2006-2022 - // (C) Copyright 2022 Joaquin M Lopez Munoz. -+// (C) Copyright 2022 Christian Mazakas - // - // Distributed under the Boost Software License, Version 1.0. - // (See accompanying file LICENSE_1_0.txt or copy at -@@ -84,11 +85,6 @@ namespace intrusive { - - /// @cond - --#if !defined(BOOST_NO_INT64_T)&&\ -- (defined(BOOST_HAS_INT128) || (defined(_MSC_VER) && defined(_WIN64))) --#define BOOST_INTRUSIVE_FCA_FASTMOD_SUPPORT --#endif -- - //We only support LLP64(Win64) or LP64(most Unix) data models - #ifdef _WIN64 //In 64 bit windows sizeof(size_t) == sizeof(unsigned long long) - # define BOOST_INTRUSIVE_SIZE_C(NUMBER) NUMBER##ULL -@@ -98,7 +94,6 @@ namespace intrusive { - # define BOOST_INTRUSIVE_64_BIT_SIZE_T (((((ULONG_MAX>>16)>>16)>>16)>>15) != 0) - #endif - -- - template - struct prime_list_holder - { -@@ -167,11 +162,11 @@ struct prime_list_holder - { return prime_list[std::ptrdiff_t(n)]; } - - template -- BOOST_INTRUSIVE_FORCEINLINE static std::size_t modfunc(std::size_t hash) { return hash % prime_list[SizeIndex]; } -+ BOOST_INTRUSIVE_FORCEINLINE static std::size_t modfunc(std::size_t hash) { return hash % SizeIndex; } - - static std::size_t(*const positions[])(std::size_t); - -- #if defined(BOOST_INTRUSIVE_FCA_FASTMOD_SUPPORT) -+ #if BOOST_INTRUSIVE_64_BIT_SIZE_T - static const uint64_t inv_sizes32[]; - static const std::size_t inv_sizes32_size; - #endif -@@ -185,17 +180,20 @@ struct prime_list_holder - BOOST_INTRUSIVE_FORCEINLINE static std::size_t size(std::size_t size_index) - { return prime_list_holder<>::size_from_index(size_index); } - -- #if defined(BOOST_INTRUSIVE_FCA_FASTMOD_SUPPORT) -+ #if BOOST_INTRUSIVE_64_BIT_SIZE_T - // https://github.com/lemire/fastmod - -- - BOOST_INTRUSIVE_FORCEINLINE static uint64_t mul128_u32(uint64_t lowbits, uint32_t d) - { - #if defined(_MSC_VER) -- return __umulh(lowbits, d); -+ return __umulh(lowbits, d); -+ #elif defined(BOOST_HAS_INT128) -+ return static_cast((uint128_type(lowbits) * d) >> 64); - #else -- __extension__ typedef unsigned __int128 ext_uint128_t; -- return (ext_uint128_t(lowbits) * d) >> 64; -+ uint64_t r1 = (lowbits & UINT32_MAX) * d; -+ uint64_t r2 = (lowbits >> 32) * d; -+ r2 += r1 >> 32; -+ return r2 >> 32; - #endif - } - -@@ -204,51 +202,67 @@ struct prime_list_holder - uint64_t lowbits = M * a; - return (uint32_t)(mul128_u32(lowbits, d)); - } -- #endif // defined(BOOST_INTRUSIVE_FCA_FASTMOD_SUPPORT) -+ #endif // BOOST_INTRUSIVE_64_BIT_SIZE_T - - BOOST_INTRUSIVE_FORCEINLINE static std::size_t position(std::size_t hash,std::size_t size_index) - { -- #if defined(BOOST_INTRUSIVE_FCA_FASTMOD_SUPPORT) && BOOST_INTRUSIVE_64_BIT_SIZE_T -- const std::size_t sizes_under_32bit = sizeof(inv_sizes32)/sizeof(inv_sizes32[0]); -+ #if BOOST_INTRUSIVE_64_BIT_SIZE_T -+ BOOST_CONSTEXPR_OR_CONST std::size_t sizes_under_32bit = sizeof(inv_sizes32)/sizeof(inv_sizes32[0]); - if(BOOST_LIKELY(size_index < sizes_under_32bit)){ - return fastmod_u32( uint32_t(hash)+uint32_t(hash>>32) - , inv_sizes32[size_index] - , uint32_t(prime_list[size_index]) ); - } - else{ -- return positions[size_index-sizes_under_32bit](hash); -+ return positions[size_index](hash); - } -- #elif defined(BOOST_INTRUSIVE_FCA_FASTMOD_SUPPORT) -- return fastmod_u32(hash, inv_sizes32[size_index], uint32_t(sizes[size_index])); - #else - return positions[size_index](hash); -- #endif // defined(BOOST_INTRUSIVE_FCA_FASTMOD_SUPPORT) -+ #endif // BOOST_INTRUSIVE_64_BIT_SIZE_T - } - }; - - template - std::size_t(* const prime_list_holder::positions[])(std::size_t) = - { -- #if !defined(BOOST_INTRUSIVE_FCA_FASTMOD_SUPPORT) -- modfunc< 0>,modfunc< 1>,modfunc< 2>,modfunc< 3>,modfunc< 4>, -- modfunc< 5>,modfunc< 6>,modfunc< 7>,modfunc< 8>,modfunc< 9>, -- modfunc<10>,modfunc<11>,modfunc<12>,modfunc<13>,modfunc<14>, -- modfunc<15>,modfunc<16>,modfunc<17>,modfunc<18>,modfunc<19>, -- modfunc<20>,modfunc<21>,modfunc<22>,modfunc<23>,modfunc<24>, -- modfunc<25>,modfunc<26>,modfunc<27>,modfunc<28>,modfunc<29>, -- modfunc<30>, -- #endif -- # if BOOST_INTRUSIVE_64_BIT_SIZE_T -- modfunc<31>,modfunc<32>,modfunc<33>,modfunc<34>, -- modfunc<35>,modfunc<36>,modfunc<37>,modfunc<38>,modfunc<39>, -- modfunc<40>,modfunc<41>,modfunc<42>,modfunc<43>,modfunc<44>, -- modfunc<45>,modfunc<46>,modfunc<47>,modfunc<48>,modfunc<49>, -- modfunc<50>,modfunc<51>,modfunc<52>,modfunc<53>,modfunc<54>, -- modfunc<55>,modfunc<56>,modfunc<57>,modfunc<58>,modfunc<59>, -- modfunc<60>,modfunc<61>,modfunc<62>,modfunc<63> -- # else -- modfunc<31> -- # endif -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, //0-30 indexes -+#if BOOST_INTRUSIVE_64_BIT_SIZE_T -+ //Taken from Boost.MultiIndex code, thanks to Joaquin M. Lopez Munoz. -+ modfunc, //<- 32 bit values stop here (index 31) -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc, -+ modfunc, modfunc //(index 63) -+#else -+ modfunc //<- 32 bit stops here (index 31) as ptrdiff_t is signed -+#endif - }; - - template -@@ -298,7 +312,7 @@ const std::size_t prime_list_holder::prime_list_size - = sizeof(prime_list) / sizeof(std::size_t); - - --#if defined(BOOST_INTRUSIVE_FCA_FASTMOD_SUPPORT) -+#if BOOST_INTRUSIVE_64_BIT_SIZE_T - - template - const uint64_t prime_list_holder::inv_sizes32[] = { -@@ -340,7 +354,7 @@ template - const std::size_t prime_list_holder::inv_sizes32_size - = sizeof(inv_sizes32) / sizeof(uint64_t); - --#endif // defined(BOOST_INTRUSIVE_FCA_FASTMOD_SUPPORT) -+#endif // BOOST_INTRUSIVE_64_BIT_SIZE_T - - struct prime_fmod_size : prime_list_holder<> - { -@@ -785,9 +799,9 @@ BOOST_INTRUSIVE_FORCEINLINE std::size_t hash_to_bucket_split(std::size_t hash_va - } - - template //fastmod_buckets --BOOST_INTRUSIVE_FORCEINLINE std::size_t hash_to_bucket_split(std::size_t hash_value, std::size_t bucket_cnt, std::size_t split, detail::true_) -+BOOST_INTRUSIVE_FORCEINLINE std::size_t hash_to_bucket_split(std::size_t hash_value, std::size_t , std::size_t split, detail::true_) - { -- return prime_fmod_size::position(hash_value, split); (void)bucket_cnt; -+ return prime_fmod_size::position(hash_value, split); - } - - //!This metafunction will obtain the type of a bucket -@@ -1473,6 +1487,10 @@ struct bucket_hash_t - , bucket_plus_vtraits_t(BOOST_MOVE_BASE(bucket_plus_vtraits_t, other)) - {} - -+ template -+ BOOST_INTRUSIVE_FORCEINLINE std::size_t priv_hash(const K &k) const -+ { return this->base_t::operator()(k); } -+ - BOOST_INTRUSIVE_FORCEINLINE const hasher &priv_hasher() const - { return this->base_t::get(); } - -@@ -1747,8 +1765,17 @@ struct hashtable_size_wrapper - typedef const size_traits & size_traits_const_t; - typedef size_traits & size_traits_t; - -- BOOST_INTRUSIVE_FORCEINLINE size_traits_const_t priv_size_traits() const -- { return size_traits_; } -+ BOOST_INTRUSIVE_FORCEINLINE SizeType get_hashtable_size_wrapper_size() const -+ { return size_traits_.get_size(); } -+ -+ BOOST_INTRUSIVE_FORCEINLINE void set_hashtable_size_wrapper_size(SizeType s) -+ { size_traits_.set_size(s); } -+ -+ BOOST_INTRUSIVE_FORCEINLINE void inc_hashtable_size_wrapper_size() -+ { size_traits_.increment(); } -+ -+ BOOST_INTRUSIVE_FORCEINLINE void dec_hashtable_size_wrapper_size() -+ { size_traits_.decrement(); } - - BOOST_INTRUSIVE_FORCEINLINE size_traits_t priv_size_traits() - { return size_traits_; } -@@ -1780,7 +1807,19 @@ struct hashtable_size_wrapper - typedef size_traits size_traits_const_t; - typedef size_traits size_traits_t; - -- BOOST_INTRUSIVE_FORCEINLINE size_traits priv_size_traits() const -+ BOOST_INTRUSIVE_FORCEINLINE SizeType get_hashtable_size_wrapper_size() const -+ { return 0u; } -+ -+ BOOST_INTRUSIVE_FORCEINLINE void set_hashtable_size_wrapper_size(SizeType) -+ {} -+ -+ BOOST_INTRUSIVE_FORCEINLINE void inc_hashtable_size_wrapper_size() -+ {} -+ -+ BOOST_INTRUSIVE_FORCEINLINE void dec_hashtable_size_wrapper_size() -+ {} -+ -+ BOOST_INTRUSIVE_FORCEINLINE size_traits priv_size_traits() - { return size_traits(); } - }; - -@@ -1815,14 +1854,14 @@ struct hashdata_internal - public: - static const bool linear_buckets = 0 != (BoolFlags & hash_bool_flags::linear_buckets_pos); - typedef typename get_hashtable_size_wrapper_bucket -- ::type internal_type; -- -- typedef typename internal_type::key_equal key_equal; -- typedef typename internal_type::hasher hasher; -+ ::type split_bucket_hash_equal_t; -+ -+ typedef typename split_bucket_hash_equal_t::key_equal key_equal; -+ typedef typename split_bucket_hash_equal_t::hasher hasher; - typedef bucket_plus_vtraits - bucket_plus_vtraits_t; - typedef SizeType size_type; -- typedef typename internal_type::size_traits split_traits; -+ typedef typename split_bucket_hash_equal_t::size_traits split_traits; - typedef typename bucket_plus_vtraits_t::bucket_ptr bucket_ptr; - typedef typename bucket_plus_vtraits_t::const_value_traits_ptr const_value_traits_ptr; - typedef typename bucket_plus_vtraits_t::siterator siterator; -@@ -1866,23 +1905,20 @@ struct hashdata_internal - - hashdata_internal( const ValueTraits &val_traits, const bucket_traits &b_traits - , const hasher & h, const key_equal &e) -- : internal_type(val_traits, b_traits, h, e) -+ : split_bucket_hash_equal_t(val_traits, b_traits, h, e) - {} - - BOOST_INTRUSIVE_FORCEINLINE hashdata_internal(BOOST_RV_REF(hashdata_internal) other) -- : internal_type(BOOST_MOVE_BASE(internal_type, other)) -+ : split_bucket_hash_equal_t(BOOST_MOVE_BASE(split_bucket_hash_equal_t, other)) - {} - -- BOOST_INTRUSIVE_FORCEINLINE typename internal_type::size_traits_t priv_split_traits() -- { return this->priv_size_traits(); } -- -- BOOST_INTRUSIVE_FORCEINLINE typename internal_type::size_traits_const_t priv_split_traits() const -+ BOOST_INTRUSIVE_FORCEINLINE typename split_bucket_hash_equal_t::size_traits_t priv_split_traits() - { return this->priv_size_traits(); } - - ~hashdata_internal() - { this->priv_clear_buckets(); } - -- using internal_type::priv_clear_buckets; -+ using split_bucket_hash_equal_t::priv_clear_buckets; - - void priv_clear_buckets() - { -@@ -1907,7 +1943,17 @@ struct hashdata_internal - - //public functions - BOOST_INTRUSIVE_FORCEINLINE SizeType split_count() const BOOST_NOEXCEPT -- { return this->priv_split_traits().get_size(); } -+ { return this->split_bucket_hash_equal_t::get_hashtable_size_wrapper_size(); } -+ -+ BOOST_INTRUSIVE_FORCEINLINE void split_count(SizeType s) BOOST_NOEXCEPT -+ { this->split_bucket_hash_equal_t::set_hashtable_size_wrapper_size(s); } -+ -+ //public functions -+ BOOST_INTRUSIVE_FORCEINLINE void inc_split_count() BOOST_NOEXCEPT -+ { this->split_bucket_hash_equal_t::inc_hashtable_size_wrapper_size(); } -+ -+ BOOST_INTRUSIVE_FORCEINLINE void dec_split_count() BOOST_NOEXCEPT -+ { this->split_bucket_hash_equal_t::dec_hashtable_size_wrapper_size(); } - - BOOST_INTRUSIVE_FORCEINLINE static SizeType initial_split_from_bucket_count(SizeType bc) BOOST_NOEXCEPT - { -@@ -1983,10 +2029,7 @@ struct hashdata_internal - { return (priv_hash_to_nbucket)(hash_value, fastmod_buckets_t()); } - - BOOST_INTRUSIVE_FORCEINLINE size_type priv_hash_to_nbucket(std::size_t hash_value, detail::true_) const //fastmod_buckets_t -- { -- return static_cast(hash_to_bucket_split -- (hash_value, this->priv_usable_bucket_count(), this->split_count(), detail::true_())); -- } -+ { return static_cast(prime_fmod_size::position(hash_value, this->split_count())); } - - BOOST_INTRUSIVE_FORCEINLINE size_type priv_hash_to_nbucket(std::size_t hash_value, detail::false_) const //!fastmod_buckets_t - { -@@ -1994,7 +2037,6 @@ struct hashdata_internal - (hash_value, this->priv_usable_bucket_count(), this->split_count(), detail::false_())); - } - -- - BOOST_INTRUSIVE_FORCEINLINE iterator iterator_to(reference value, detail::false_) BOOST_NOEXCEPT - { - return iterator( siterator(this->priv_value_to_node_ptr(value)) -@@ -2083,8 +2125,8 @@ struct hashdata_internal - , this->priv_value_traits_ptr()); - } - -- using internal_type::end; -- using internal_type::cend; -+ using split_bucket_hash_equal_t::end; -+ using split_bucket_hash_equal_t::cend; - - local_iterator end(size_type n) BOOST_NOEXCEPT - { return local_iterator(this->priv_bucket_lend(n), this->priv_value_traits_ptr()); } -@@ -2322,19 +2364,32 @@ class hashtable_impl - public: - typedef insert_commit_data_impl insert_commit_data; - -+ private: - void default_init_actions() - { - this->priv_set_sentinel_bucket(); - this->priv_init_buckets_and_cache(); -- this->priv_size_traits().set_size(size_type(0)); -+ this->priv_size_count(size_type(0)); - size_type bucket_sz = this->bucket_count(); - BOOST_INTRUSIVE_INVARIANT_ASSERT(bucket_sz != 0); - //Check power of two bucket array if the option is activated - BOOST_INTRUSIVE_INVARIANT_ASSERT - (!power_2_buckets || (0 == (bucket_sz & (bucket_sz - 1)))); -- this->priv_split_traits().set_size(this->initial_split_from_bucket_count(bucket_sz)); -+ this->split_count(this->initial_split_from_bucket_count(bucket_sz)); - } - -+ BOOST_INTRUSIVE_FORCEINLINE SizeType priv_size_count() const BOOST_NOEXCEPT -+ { return this->internal_type::get_hashtable_size_wrapper_size(); } -+ -+ BOOST_INTRUSIVE_FORCEINLINE void priv_size_count(SizeType s) BOOST_NOEXCEPT -+ { this->internal_type::set_hashtable_size_wrapper_size(s); } -+ -+ BOOST_INTRUSIVE_FORCEINLINE void priv_size_inc() BOOST_NOEXCEPT -+ { this->internal_type::inc_hashtable_size_wrapper_size(); } -+ -+ BOOST_INTRUSIVE_FORCEINLINE void priv_size_dec() BOOST_NOEXCEPT -+ { this->internal_type::dec_hashtable_size_wrapper_size(); } -+ - public: - - //! Requires: buckets must not be being used by any other resource. -@@ -2403,10 +2458,10 @@ class hashtable_impl - { - this->priv_swap_cache(x); - x.priv_init_cache(); -- this->priv_size_traits().set_size(x.priv_size_traits().get_size()); -- x.priv_size_traits().set_size(size_type(0)); -- this->priv_split_traits().set_size(x.split_count()); -- x.priv_split_traits().set_size(size_type(0)); -+ this->priv_size_count(x.priv_size_count()); -+ x.priv_size_count(size_type(0)); -+ this->split_count(x.split_count()); -+ x.split_count(size_type(0)); - } - - //! Effects: Equivalent to swap. -@@ -2524,7 +2579,7 @@ class hashtable_impl - size_type size() const BOOST_NOEXCEPT - { - BOOST_IF_CONSTEXPR(constant_time_size) -- return this->priv_size_traits().get_size(); -+ return this->priv_size_count(); - else{ - std::size_t len = 0; - std::size_t bucket_cnt = this->bucket_count(); -@@ -2798,7 +2853,7 @@ class hashtable_impl - //! After a successful rehashing insert_commit_data remains valid. - iterator insert_unique_commit(reference value, const insert_commit_data &commit_data) BOOST_NOEXCEPT - { -- this->priv_size_traits().increment(); -+ this->priv_size_inc(); - node_ptr const n = this->priv_value_to_node_ptr(value); - BOOST_INTRUSIVE_SAFE_HOOK_DEFAULT_ASSERT(!safemode_or_autounlink || slist_node_algorithms::unique(n)); - node_functions_t::store_hash(n, commit_data.get_hash(), store_hash_t()); -@@ -2890,7 +2945,7 @@ class hashtable_impl - //Get the bucket number and local iterator for both iterators - const bucket_ptr bp = this->priv_get_bucket_ptr(i); - this->priv_erase_node(*bp, i.slist_it(), this->make_node_disposer(disposer), optimize_multikey_t()); -- this->priv_size_traits().decrement(); -+ this->priv_size_dec(); - this->priv_erasure_update_cache(bp); - } - -@@ -2931,7 +2986,7 @@ class hashtable_impl - size_type const num_erased = (size_type)this->priv_erase_node_range - ( before_first_local_it, first_bucket_num, last_local_it, last_bucket_num - , this->make_node_disposer(disposer), optimize_multikey_t()); -- this->priv_size_traits().set_size(size_type(this->priv_size_traits().get_size()-num_erased)); -+ this->priv_size_count(size_type(this->priv_size_count()-num_erased)); - this->priv_erasure_update_cache_range(first_bucket_num, last_bucket_num); - } - } -@@ -3001,7 +3056,7 @@ class hashtable_impl - (this->priv_value_from_siterator(it), h, key, equal_func, compare_hash_t())); - slist_node_algorithms::unlink_after_and_dispose(prev.pointed_node(), it.pointed_node(), this->make_node_disposer(disposer)); - } -- this->priv_size_traits().set_size(size_type(this->priv_size_traits().get_size()-cnt)); -+ this->priv_size_count(size_type(this->priv_size_count()-cnt)); - this->priv_erasure_update_cache(); - } - -@@ -3020,7 +3075,7 @@ class hashtable_impl - void clear() BOOST_NOEXCEPT - { - this->priv_clear_buckets_and_cache(); -- this->priv_size_traits().set_size(size_type(0)); -+ this->priv_size_count(size_type(0)); - } - - //! Requires: Disposer::operator()(pointer) shouldn't throw. -@@ -3045,7 +3100,7 @@ class hashtable_impl - --num_buckets; - slist_node_algorithms::detach_and_dispose(b->get_node_ptr(), d); - } -- this->priv_size_traits().set_size(size_type(0)); -+ this->priv_size_count(size_type(0)); - } - this->priv_init_cache(); - } -@@ -3339,7 +3394,7 @@ class hashtable_impl - //! - //! Note: the return value is in the range [0, this->bucket_count()). - BOOST_INTRUSIVE_FORCEINLINE size_type bucket(const key_type& k) const -- { return this->bucket(k, this->priv_hasher()); } -+ { return this->priv_hash_to_nbucket(this->priv_hash(k)); } - - //! Requires: "hash_func" must be a hash function that induces - //! the same hash values as the stored hasher. The difference is that -@@ -3520,7 +3575,7 @@ class hashtable_impl - if((ret = split_idx < bucket_cnt)){ - const std::size_t bucket_to_rehash = split_idx - bucket_cnt/2u; - bucket_type &old_bucket = this->priv_bucket(bucket_to_rehash); -- this->priv_split_traits().increment(); -+ this->inc_split_count(); - - //Anti-exception stuff: if an exception is thrown while - //moving elements from old_bucket to the target bucket, all moved -@@ -3553,7 +3608,7 @@ class hashtable_impl - bucket_type &target_bucket = this->priv_bucket(target_bucket_num); - bucket_type &source_bucket = this->priv_bucket(split_idx-1u); - slist_node_algorithms::transfer_after(target_bucket.get_node_ptr(), source_bucket.get_node_ptr()); -- this->priv_split_traits().decrement(); -+ this->dec_split_count(); - this->priv_insertion_update_cache(target_bucket_num); - } - return ret; -@@ -3763,8 +3818,8 @@ class hashtable_impl - ArrayDisposer rollback2(old_buckets[0], nd, old_bucket_count); - - //Put size in a safe value for rollback exception -- size_type const size_backup = this->priv_size_traits().get_size(); -- this->priv_size_traits().set_size(0); -+ size_type const size_backup = this->priv_size_count(); -+ this->priv_size_count(0); - //Put cache to safe position - this->priv_init_cache(); - this->priv_unset_sentinel_bucket(); -@@ -3826,8 +3881,8 @@ class hashtable_impl - } - } - -- this->priv_size_traits().set_size(size_backup); -- this->priv_split_traits().set_size(split); -+ this->priv_size_count(size_backup); -+ this->split_count(split); - if(&new_bucket_traits != &this->priv_bucket_traits()) - this->priv_bucket_traits() = new_bucket_traits; - this->priv_set_sentinel_bucket(); -@@ -3927,8 +3982,8 @@ class hashtable_impl - this->priv_hasher() = src.priv_hasher(); - this->priv_equal() = src.priv_equal(); - rollback.release(); -- this->priv_size_traits().set_size(src.priv_size_traits().get_size()); -- this->priv_split_traits().set_size(dst_bucket_count); -+ this->priv_size_count(src.priv_size_count()); -+ this->split_count(dst_bucket_count); - this->priv_set_cache_bucket_num(0u); - this->priv_erasure_update_cache(); - } -@@ -3946,7 +4001,7 @@ class hashtable_impl - , n, optimize_multikey_t()); - //Update cache and increment size if needed - this->priv_insertion_update_cache(bucket_num); -- this->priv_size_traits().increment(); -+ this->priv_size_inc(); - slist_node_algorithms::link_after(prev.pointed_node(), n); - return this->build_iterator(siterator(n), this->priv_bucket_ptr(bucket_num)); - } --- -2.34.1 - diff --git a/package/boost/0001-unordered-fix-copy-assign.patch b/package/boost/0001-unordered-fix-copy-assign.patch new file mode 100644 index 000000000000..670552535aff --- /dev/null +++ b/package/boost/0001-unordered-fix-copy-assign.patch @@ -0,0 +1,22 @@ +Upstream Patch for Unordered + +Prevent erroneous copying of groups data, update max load to properly propagate + +Signed-off-by: Michael Nosthoff +Upstream: https://github.com/boostorg/unordered/commit/067884a4e213352e7c81c441f1453c54735c39f3 +diff --git a/include/boost/unordered/detail/foa/core.hpp b/include/boost/unordered/detail/foa/core.hpp +index 239d05d3..7ae9f2c8 100644 +--- a/boost/unordered/detail/foa/core.hpp ++++ b/boost/unordered/detail/foa/core.hpp +@@ -1870,9 +1870,10 @@ private: + + void fast_copy_elements_from(const table_core& x) + { +- if(arrays.elements){ ++ if(arrays.elements&&x.arrays.elements){ + copy_elements_array_from(x); + copy_groups_array_from(x); ++ size_ctrl.ml=std::size_t(x.size_ctrl.ml); + size_ctrl.size=std::size_t(x.size_ctrl.size); + } + } diff --git a/package/boost/Config.in b/package/boost/Config.in index b99b01f22ebe..60cc0a11a2ff 100644 --- a/package/boost/Config.in +++ b/package/boost/Config.in @@ -219,6 +219,7 @@ comment "boost-log needs a toolchain not affected by GCC bug 64735" config BR2_PACKAGE_BOOST_MATH bool "boost-math" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 # C++14 help Boost.Math includes several contributions in the domain of mathematics: @@ -341,6 +342,19 @@ config BR2_PACKAGE_BOOST_TYPE_ERASURE comment "boost-type_erasure needs a toolchain not affected by GCC bug 64735" depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735 +config BR2_PACKAGE_BOOST_URL + bool "boost-url" + help + Boost.URL is a portable C++ library which provides containers + and algorithms which model a "URL," more formally described + using the Uniform Resource Identifier (URI) specification. + + This library understands the grammars related to URLs and + provides functionality to validate, parse, examine, and + modify urls, and apply normalization or resolution algorithms. + + To use the library "header-only" this option is not needed. + config BR2_PACKAGE_BOOST_WAVE bool "boost-wave" # limitation of assembler for coldfire diff --git a/package/boost/boost.hash b/package/boost/boost.hash index ab54a4b2fc09..14403758acdf 100644 --- a/package/boost/boost.hash +++ b/package/boost/boost.hash @@ -1,5 +1,5 @@ -# From https://www.boost.org/users/history/version_1_80_0.html -sha256 1e19565d82e43bc59209a168f5ac899d3ba471d55c7610c677d4ccf2c9c500c0 boost_1_80_0.tar.bz2 +# From https://www.boost.org/users/history/version_1_83_0.html +sha256 6478edfe2f3305127cffe8caf73ea0176c53769f4bf1585be237eb30798c3b8e boost_1_83_0.tar.bz2 # Locally computed sha256 c9bff75738922193e67fa726fa225535870d2aa1059f91452c411736284ad566 LICENSE_1_0.txt diff --git a/package/boost/boost.mk b/package/boost/boost.mk index bd1d32998252..9b1baec5bf72 100644 --- a/package/boost/boost.mk +++ b/package/boost/boost.mk @@ -4,7 +4,7 @@ # ################################################################################ -BOOST_VERSION = 1.80.0 +BOOST_VERSION = 1.83.0 BOOST_SOURCE = boost_$(subst .,_,$(BOOST_VERSION)).tar.bz2 BOOST_SITE = https://boostorg.jfrog.io/artifactory/main/release/$(BOOST_VERSION)/source BOOST_INSTALL_STAGING = YES @@ -18,7 +18,7 @@ HOST_BOOST_FLAGS = --without-icu --with-toolset=gcc \ contract container coroutine date_time exception fiber filesystem graph \ graph_parallel iostreams json locale log math mpi nowide program_options \ python random serialization stacktrace test thread timer \ - type_erasure wave) + type_erasure url wave) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_ATOMIC),,atomic) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_CHRONO),,chrono) @@ -50,6 +50,7 @@ BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_TEST),,test) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_THREAD),,thread) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_TIMER),,timer) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_TYPE_ERASURE),,type_erasure) +BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_URL),,url) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_WAVE),,wave) BOOST_TARGET_CXXFLAGS = $(TARGET_CXXFLAGS) diff --git a/package/bootgen/0001-Fix-build-on-machines-with-modern-flex.patch b/package/bootgen/0001-Fix-build-on-machines-with-modern-flex.patch deleted file mode 100644 index ea82f5e70cd9..000000000000 --- a/package/bootgen/0001-Fix-build-on-machines-with-modern-flex.patch +++ /dev/null @@ -1,133 +0,0 @@ -From 7251dce3dc974c7372e7024ade3e8a455266cfd2 Mon Sep 17 00:00:00 2001 -From: Peter Korsgaard -Date: Fri, 18 Mar 2022 09:02:31 +0100 -Subject: [PATCH] Fix build on machines with modern flex - -Bootgen embeds an old version of flex, but uses the system include syntax -(#include <>) to reference it, causing conflicts on systems with the -development headers for a modern flex version installed, leading to build -issues like: - -../bisonflex/bif.yy.cpp: In member function 'virtual int BIF::FlexScanner::yylex()': -../bisonflex/bif.yy.cpp:1608:18: error: no match for 'operator=' (operand types are 'std::istream' {aka 'std::basic_istream'} and 'std::istream*' {aka 'std::basic_istream*'}) - -Fix it by using normal local #include statements by: - -sed -i 's//"FlexLexer.h"/g' * - -Signed-off-by: Peter Korsgaard -[Submitted upstream: https://github.com/Xilinx/bootgen/pull/20] ---- - FlexLexer.h | 6 +++--- - bif.yy.cpp | 2 +- - bifscanner.h | 2 +- - cmdoptions.yy.cpp | 2 +- - cmdoptionsscanner.h | 2 +- - reginit.yy.cpp | 2 +- - reginitscanner.h | 2 +- - 7 files changed, 9 insertions(+), 9 deletions(-) - -diff --git a/FlexLexer.h b/FlexLexer.h -index b115b5d..1c0386f 100755 ---- a/FlexLexer.h -+++ b/FlexLexer.h -@@ -33,15 +33,15 @@ - // - // If you want to create multiple lexer classes, you use the -P flag - // to rename each yyFlexLexer to some other xxFlexLexer. You then --// include in your other sources once per lexer class: -+// include "FlexLexer.h" in your other sources once per lexer class: - // - // #undef yyFlexLexer - // #define yyFlexLexer xxFlexLexer --// #include -+// #include "FlexLexer.h" - // - // #undef yyFlexLexer - // #define yyFlexLexer zzFlexLexer --// #include -+// #include "FlexLexer.h" - // ... - - #ifndef __FLEX_LEXER_H -diff --git a/bif.yy.cpp b/bif.yy.cpp -index 7dd0841..9e09267 100644 ---- a/bif.yy.cpp -+++ b/bif.yy.cpp -@@ -379,7 +379,7 @@ typedef unsigned char YY_CHAR; - - #define yytext_ptr yytext - --#include -+#include "FlexLexer.h" - - int yyFlexLexer::yywrap() { return 1; } - int yyFlexLexer::yylex() -diff --git a/bifscanner.h b/bifscanner.h -index a6ec9e4..ded78da 100755 ---- a/bifscanner.h -+++ b/bifscanner.h -@@ -28,7 +28,7 @@ - #if ! defined(yyFlexLexerOnce) - #undef yyFlexLexer - #define yyFlexLexer bifFlexLexer --#include -+#include "FlexLexer.h" - #endif - - // Override the interface for yylex since we namespaced it -diff --git a/cmdoptions.yy.cpp b/cmdoptions.yy.cpp -index 6ee80de..1acfcce 100644 ---- a/cmdoptions.yy.cpp -+++ b/cmdoptions.yy.cpp -@@ -379,7 +379,7 @@ typedef unsigned char YY_CHAR; - - #define yytext_ptr yytext - --#include -+#include "FlexLexer.h" - - int yyFlexLexer::yywrap() { return 1; } - int yyFlexLexer::yylex() -diff --git a/cmdoptionsscanner.h b/cmdoptionsscanner.h -index a48af09..e02c1f1 100755 ---- a/cmdoptionsscanner.h -+++ b/cmdoptionsscanner.h -@@ -29,7 +29,7 @@ - - #undef yyFlexLexer - #define yyFlexLexer reginitFlexLexer --#include -+#include "FlexLexer.h" - #endif - - // Override the interface for yylex since we namespaced it -diff --git a/reginit.yy.cpp b/reginit.yy.cpp -index 8422867..ff088f9 100644 ---- a/reginit.yy.cpp -+++ b/reginit.yy.cpp -@@ -379,7 +379,7 @@ typedef unsigned char YY_CHAR; - - #define yytext_ptr yytext - --#include -+#include "FlexLexer.h" - - int yyFlexLexer::yywrap() { return 1; } - int yyFlexLexer::yylex() -diff --git a/reginitscanner.h b/reginitscanner.h -index 4e78af9..23177be 100755 ---- a/reginitscanner.h -+++ b/reginitscanner.h -@@ -29,7 +29,7 @@ - - #undef yyFlexLexer - #define yyFlexLexer reginitFlexLexer --#include -+#include "FlexLexer.h" - #endif - - // Override the interface for yylex since we namespaced it --- -2.30.2 - diff --git a/package/bootgen/bootgen.hash b/package/bootgen/bootgen.hash index 5d77c164f3ec..6f34b2b85068 100644 --- a/package/bootgen/bootgen.hash +++ b/package/bootgen/bootgen.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 7e07c75aa3e3965c8e33faefde037877f78130451cebc2056b096db9c66acbb3 bootgen-xilinx_v2022.2.tar.gz +sha256 aa8120369d8a6016c731a3338188045c82833602e8ea955b53130a16560e5eb3 bootgen-xilinx_v2023.2.tar.gz sha256 4da5f5eff0592e5d275f1871faf9e9a4fc0f6346027bfb777fa59d0aa6a59aa3 LICENSE diff --git a/package/bootgen/bootgen.mk b/package/bootgen/bootgen.mk index 88bc73b604f1..70338090f4cc 100644 --- a/package/bootgen/bootgen.mk +++ b/package/bootgen/bootgen.mk @@ -4,7 +4,7 @@ # ################################################################################ -BOOTGEN_VERSION = xilinx_v2022.2 +BOOTGEN_VERSION = xilinx_v2023.2 BOOTGEN_SITE = $(call github,Xilinx,bootgen,$(BOOTGEN_VERSION)) HOST_BOOTGEN_DEPENDENCIES = host-openssl host-pkgconf BOOTGEN_LICENSE = Apache-2.0 diff --git a/package/bpftool/Config.in b/package/bpftool/Config.in index 461be9e5b4f8..ef3a7a8a45d8 100644 --- a/package/bpftool/Config.in +++ b/package/bpftool/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_BPFTOOL_ARCH_SUPPORTS bool # see libbpf/src/bpf.c default y if BR2_arc + default y if BR2_arm || BR2_armeb default y if BR2_aarch64 || BR2_aarch64_be default y if BR2_i386 || BR2_x86_64 default y if BR2_sparc || BR2_sparc64 @@ -15,7 +16,6 @@ config BR2_PACKAGE_BPFTOOL depends on BR2_USE_WCHAR # binutils, elfutils depends on !BR2_STATIC_LIBS # elfutils depends on BR2_TOOLCHAIN_HAS_THREADS # elfutils - depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12 select BR2_PACKAGE_BINUTILS select BR2_PACKAGE_ELFUTILS @@ -23,11 +23,10 @@ config BR2_PACKAGE_BPFTOOL bpftool is a tool for for inspection and simple manipulation of eBPF programs and maps. -comment "bpftool needs a uClibc or glibc toolchain w/ wchar, dynamic library, threads, headers >= 4.12" +comment "bpftool needs a toolchain w/ wchar, dynamic library, threads, headers >= 4.12" depends on BR2_PACKAGE_BPFTOOL_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_nios2 depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS \ || !BR2_TOOLCHAIN_HAS_THREADS \ - || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) \ || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12 diff --git a/package/brltty/0002-shell-prologue-runProgramTerminationCommands-used-a-.patch b/package/brltty/0002-shell-prologue-runProgramTerminationCommands-used-a-.patch deleted file mode 100644 index 0f81254e0866..000000000000 --- a/package/brltty/0002-shell-prologue-runProgramTerminationCommands-used-a-.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 4503c2cbd3981ba1b50ec7ce287ab48c772b3a7f Mon Sep 17 00:00:00 2001 -From: Dave Mielke -Date: Sat, 15 Oct 2022 15:20:38 -0400 -Subject: [PATCH] shell prologue: runProgramTerminationCommands used a bash - command. (dm) - -Signed-off-by: James Hilliard -[james.hilliard1@gmail.com: backport from upstream commit -4503c2cbd3981ba1b50ec7ce287ab48c772b3a7f] ---- - brltty-prologue.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/brltty-prologue.sh b/brltty-prologue.sh -index 05b817742..6d1faf983 100644 ---- a/brltty-prologue.sh -+++ b/brltty-prologue.sh -@@ -102,7 +102,7 @@ runProgramTerminationCommands() { - while [ "${programTerminationCommandCount}" -gt 0 ] - do - set -- $(getVariable "programTerminationCommand${programTerminationCommandCount}") -- let "programTerminationCommandCount -= 1" -+ programTerminationCommandCount=$((programTerminationCommandCount - 1)) - - local process="${1}" - local directory="${2}" --- -2.34.1 - diff --git a/package/brltty/brltty.hash b/package/brltty/brltty.hash index 9fc63714bc21..9b707fc1c29f 100644 --- a/package/brltty/brltty.hash +++ b/package/brltty/brltty.hash @@ -1,4 +1,4 @@ # Locally computed -sha256 2f173535291ba39b5a9fc8d80c349234333d92042d95d6dd88796c98a02f316b brltty-6.5.tar.xz +sha256 ab11cfc5fbd7ef0ec876ffea7e131e424b2fd004b6158064e1a2e46412825529 brltty-6.6.tar.xz sha256 d80c9d084ebfb50ea1ed91bfbc2410d6ce542097a32c43b00781b83adcb8c77f LICENSE-LGPL -sha256 c00c876cb4581a6b54fcc176f7e694896e5b52c4b015615566a787e8bc89fe69 README +sha256 72740317768530c60046c591160d4552afb3ac49657b04c7b8452c1bbe7b834e README diff --git a/package/brltty/brltty.mk b/package/brltty/brltty.mk index dc5a38cddb10..f00a18cc6ff1 100644 --- a/package/brltty/brltty.mk +++ b/package/brltty/brltty.mk @@ -4,7 +4,7 @@ # ################################################################################ -BRLTTY_VERSION = 6.5 +BRLTTY_VERSION = 6.6 BRLTTY_SOURCE = brltty-$(BRLTTY_VERSION).tar.xz BRLTTY_SITE = http://brltty.com/archive BRLTTY_INSTALL_STAGING_OPTS = INSTALL_ROOT=$(STAGING_DIR) install diff --git a/package/brotli/0001-CMake-Allow-using-BUILD_SHARED_LIBS-to-choose-static.patch b/package/brotli/0001-CMake-Allow-using-BUILD_SHARED_LIBS-to-choose-static.patch deleted file mode 100644 index 2a3204fc3460..000000000000 --- a/package/brotli/0001-CMake-Allow-using-BUILD_SHARED_LIBS-to-choose-static.patch +++ /dev/null @@ -1,130 +0,0 @@ -From 6cb16322decd643fed9de332d9cda77f7738b7af Mon Sep 17 00:00:00 2001 -From: Adrian Perez de Castro -Date: Mon, 7 Sep 2020 12:14:22 +0300 -Subject: [PATCH] CMake: Allow using BUILD_SHARED_LIBS to choose static/shared - libs - -By convention projects using CMake which can build either static or -shared libraries use a BUILD_SHARED_LIBS flag to allow selecting between -both: the add_library() command automatically switches between both using -this variable when the library kind is not passed to add_library(). It -is also usual to expose the BUILD_SHARED_LIBS as an user-facing setting -with the option() command. - -This way, the following will both work as expected: - - % cmake -DBUILD_SHARED_LIBS=OFF ... - % cmake -DBUILS_SHARED_LIBS=ON ... - -This is helpful for distributions which need (or want) to build only -static libraries. - -Signed-off-by: Adrian Perez de Castro -[Upstream status: https://github.com/google/brotli/pull/655] ---- - CMakeLists.txt | 46 ++++++++++++++----------------------------- - c/fuzz/test_fuzzer.sh | 6 +++--- - 2 files changed, 18 insertions(+), 34 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 4ff3401..f889311 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -6,6 +6,8 @@ cmake_minimum_required(VERSION 2.8.6) - - project(brotli C) - -+option(BUILD_SHARED_LIBS "Build shared libraries" ON) -+ - if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) - message(STATUS "Setting build type to Release as none was specified.") - set(CMAKE_BUILD_TYPE "Release" CACHE STRING "Choose the type of build." FORCE) -@@ -137,10 +139,6 @@ set(BROTLI_LIBRARIES_CORE brotlienc brotlidec brotlicommon) - set(BROTLI_LIBRARIES ${BROTLI_LIBRARIES_CORE} ${LIBM_LIBRARY}) - mark_as_advanced(BROTLI_LIBRARIES) - --set(BROTLI_LIBRARIES_CORE_STATIC brotlienc-static brotlidec-static brotlicommon-static) --set(BROTLI_LIBRARIES_STATIC ${BROTLI_LIBRARIES_CORE_STATIC} ${LIBM_LIBRARY}) --mark_as_advanced(BROTLI_LIBRARIES_STATIC) -- - if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") - add_definitions(-DOS_LINUX) - elseif(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD") -@@ -161,29 +159,25 @@ transform_sources_list("scripts/sources.lst" "${CMAKE_CURRENT_BINARY_DIR}/source - include("${CMAKE_CURRENT_BINARY_DIR}/sources.lst.cmake") - - if(BROTLI_EMSCRIPTEN) -- set(BROTLI_SHARED_LIBS "") --else() -- set(BROTLI_SHARED_LIBS brotlicommon brotlidec brotlienc) -- add_library(brotlicommon SHARED ${BROTLI_COMMON_C}) -- add_library(brotlidec SHARED ${BROTLI_DEC_C}) -- add_library(brotlienc SHARED ${BROTLI_ENC_C}) -+ set(BUILD_SHARED_LIBS OFF) - endif() - --set(BROTLI_STATIC_LIBS brotlicommon-static brotlidec-static brotlienc-static) --add_library(brotlicommon-static STATIC ${BROTLI_COMMON_C}) --add_library(brotlidec-static STATIC ${BROTLI_DEC_C}) --add_library(brotlienc-static STATIC ${BROTLI_ENC_C}) -+add_library(brotlicommon ${BROTLI_COMMON_C}) -+add_library(brotlidec ${BROTLI_DEC_C}) -+add_library(brotlienc ${BROTLI_ENC_C}) - - # Older CMake versions does not understand INCLUDE_DIRECTORIES property. - include_directories(${BROTLI_INCLUDE_DIRS}) - --foreach(lib IN LISTS BROTLI_SHARED_LIBS) -- target_compile_definitions(${lib} PUBLIC "BROTLI_SHARED_COMPILATION" ) -- string(TOUPPER "${lib}" LIB) -- set_target_properties (${lib} PROPERTIES DEFINE_SYMBOL "${LIB}_SHARED_COMPILATION") --endforeach() -+if(BUILD_SHARED_LIBS) -+ foreach(lib brotlicommon brotlidec brotlienc) -+ target_compile_definitions(${lib} PUBLIC "BROTLI_SHARED_COMPILATION" ) -+ string(TOUPPER "${lib}" LIB) -+ set_target_properties (${lib} PROPERTIES DEFINE_SYMBOL "${LIB}_SHARED_COMPILATION") -+ endforeach() -+endif() - --foreach(lib IN LISTS BROTLI_SHARED_LIBS BROTLI_STATIC_LIBS) -+foreach(lib brotlicommon brotlidec brotlienc) - target_link_libraries(${lib} ${LIBM_LIBRARY}) - set_property(TARGET ${lib} APPEND PROPERTY INCLUDE_DIRECTORIES ${BROTLI_INCLUDE_DIRS}) - set_target_properties(${lib} PROPERTIES -@@ -200,9 +194,6 @@ target_link_libraries(brotlidec brotlicommon) - target_link_libraries(brotlienc brotlicommon) - endif() - --target_link_libraries(brotlidec-static brotlicommon-static) --target_link_libraries(brotlienc-static brotlicommon-static) -- - # For projects stuck on older versions of CMake, this will set the - # BROTLI_INCLUDE_DIRS and BROTLI_LIBRARIES variables so they still - # have a relatively easy way to use Brotli: -@@ -216,7 +207,7 @@ endif() - - # Build the brotli executable - add_executable(brotli ${BROTLI_CLI_C}) --target_link_libraries(brotli ${BROTLI_LIBRARIES_STATIC}) -+target_link_libraries(brotli ${BROTLI_LIBRARIES}) - - # Installation - if(NOT BROTLI_EMSCRIPTEN) -@@ -233,13 +224,6 @@ if(NOT BROTLI_BUNDLED_MODE) - RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" - ) - -- install( -- TARGETS ${BROTLI_LIBRARIES_CORE_STATIC} -- ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" -- LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" -- RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" -- ) -- - install( - DIRECTORY ${BROTLI_INCLUDE_DIRS}/brotli - DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}" --- -2.28.0 - diff --git a/package/brotli/0002-Revert-Add-runtime-linker-path-to-pkg-config-files.patch b/package/brotli/0002-Revert-Add-runtime-linker-path-to-pkg-config-files.patch deleted file mode 100644 index 892aa1da15d9..000000000000 --- a/package/brotli/0002-Revert-Add-runtime-linker-path-to-pkg-config-files.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 09b0992b6acb7faa6fd3b23f9bc036ea117230fc Mon Sep 17 00:00:00 2001 -From: Eugene Kliuchnikov -Date: Wed, 2 Sep 2020 11:38:26 +0200 -Subject: [PATCH] Revert "Add runtime linker path to pkg-config files (#740)" - (#838) - -This reverts commit 31754d4ffce14153b5c2addf7a11019ec23f51c1. -[Retrieved from: -https://github.com/google/brotli/commit/09b0992b6acb7faa6fd3b23f9bc036ea117230fc] -Signed-off-by: Fabrice Fontaine ---- - scripts/libbrotlicommon.pc.in | 2 +- - scripts/libbrotlidec.pc.in | 2 +- - scripts/libbrotlienc.pc.in | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/scripts/libbrotlicommon.pc.in b/scripts/libbrotlicommon.pc.in -index 10ca969e..2a8cf7a3 100644 ---- a/scripts/libbrotlicommon.pc.in -+++ b/scripts/libbrotlicommon.pc.in -@@ -7,5 +7,5 @@ Name: libbrotlicommon - URL: https://github.com/google/brotli - Description: Brotli common dictionary library - Version: @PACKAGE_VERSION@ --Libs: -L${libdir} -R${libdir} -lbrotlicommon -+Libs: -L${libdir} -lbrotlicommon - Cflags: -I${includedir} -diff --git a/scripts/libbrotlidec.pc.in b/scripts/libbrotlidec.pc.in -index e7c3124f..6f8ef2e4 100644 ---- a/scripts/libbrotlidec.pc.in -+++ b/scripts/libbrotlidec.pc.in -@@ -7,6 +7,6 @@ Name: libbrotlidec - URL: https://github.com/google/brotli - Description: Brotli decoder library - Version: @PACKAGE_VERSION@ --Libs: -L${libdir} -R${libdir} -lbrotlidec -+Libs: -L${libdir} -lbrotlidec - Requires.private: libbrotlicommon >= 1.0.2 - Cflags: -I${includedir} -diff --git a/scripts/libbrotlienc.pc.in b/scripts/libbrotlienc.pc.in -index 4dd0811b..2098afe2 100644 ---- a/scripts/libbrotlienc.pc.in -+++ b/scripts/libbrotlienc.pc.in -@@ -7,6 +7,6 @@ Name: libbrotlienc - URL: https://github.com/google/brotli - Description: Brotli encoder library - Version: @PACKAGE_VERSION@ --Libs: -L${libdir} -R${libdir} -lbrotlienc -+Libs: -L${libdir} -lbrotlienc - Requires.private: libbrotlicommon >= 1.0.2 - Cflags: -I${includedir} diff --git a/package/brotli/brotli.hash b/package/brotli/brotli.hash index 22f894c403be..145467c420ac 100644 --- a/package/brotli/brotli.hash +++ b/package/brotli/brotli.hash @@ -1,5 +1,5 @@ # Locally generated: -sha512 b8e2df955e8796ac1f022eb4ebad29532cb7e3aa6a4b6aee91dbd2c7d637eee84d9a144d3e878895bb5e62800875c2c01c8f737a1261020c54feacf9f676b5f5 v1.0.9.tar.gz +sha512 6eb280d10d8e1b43d22d00fa535435923c22ce8448709419d676ff47d4a644102ea04f488fc65a179c6c09fee12380992e9335bad8dfebd5d1f20908d10849d9 v1.1.0.tar.gz # Hash for license files: sha512 bae78184c2f50f86d8c727826d3982c469454c42b9af81f4ef007e39036434fa894cf5be3bf5fc65b7de2301f0a72d067a8186e303327db8a96bd14867e0a3a8 LICENSE diff --git a/package/brotli/brotli.mk b/package/brotli/brotli.mk index ac49fe664f7e..80aa2566b51d 100644 --- a/package/brotli/brotli.mk +++ b/package/brotli/brotli.mk @@ -4,7 +4,7 @@ # ################################################################################ -BROTLI_VERSION = 1.0.9 +BROTLI_VERSION = 1.1.0 BROTLI_SOURCE = v$(BROTLI_VERSION).tar.gz BROTLI_SITE = https://github.com/google/brotli/archive BROTLI_LICENSE = MIT diff --git a/package/bubblewrap/bubblewrap.hash b/package/bubblewrap/bubblewrap.hash index 0475f8882a91..abc69d96be99 100644 --- a/package/bubblewrap/bubblewrap.hash +++ b/package/bubblewrap/bubblewrap.hash @@ -1,5 +1,5 @@ -# From https://github.com/containers/bubblewrap/releases/tag/v0.7.0 -sha256 764ab7100bd037ea53d440d362e099d7a425966bc62d1f00ab26b8fbb882a9dc bubblewrap-0.7.0.tar.xz +# From https://github.com/containers/bubblewrap/releases/tag/v0.8.0 +sha256 957ad1149db9033db88e988b12bcebe349a445e1efc8a9b59ad2939a113d333a bubblewrap-0.8.0.tar.xz # Hash for license files: sha256 b7993225104d90ddd8024fd838faf300bea5e83d91203eab98e29512acebd69c COPYING diff --git a/package/bubblewrap/bubblewrap.mk b/package/bubblewrap/bubblewrap.mk index 658e6e113c80..1081db697dac 100644 --- a/package/bubblewrap/bubblewrap.mk +++ b/package/bubblewrap/bubblewrap.mk @@ -4,7 +4,7 @@ # ################################################################################ -BUBBLEWRAP_VERSION = 0.7.0 +BUBBLEWRAP_VERSION = 0.8.0 BUBBLEWRAP_SITE = https://github.com/containers/bubblewrap/releases/download/v$(BUBBLEWRAP_VERSION) BUBBLEWRAP_SOURCE = bubblewrap-$(BUBBLEWRAP_VERSION).tar.xz BUBBLEWRAP_DEPENDENCIES = host-pkgconf libcap diff --git a/package/busybox/0005-seedrng-fix-for-glibc-2.24-not-providing-getrandom.patch b/package/busybox/0005-seedrng-fix-for-glibc-2.24-not-providing-getrandom.patch new file mode 100644 index 000000000000..4a194612b466 --- /dev/null +++ b/package/busybox/0005-seedrng-fix-for-glibc-2.24-not-providing-getrandom.patch @@ -0,0 +1,39 @@ +From 200a9669fbf6f06894e4243cccc9fc11a1a6073a Mon Sep 17 00:00:00 2001 +From: Denys Vlasenko +Date: Mon, 10 Apr 2023 17:26:04 +0200 +Subject: [PATCH] seedrng: fix for glibc <= 2.24 not providing getrandom() + +Signed-off-by: Denys Vlasenko +Upstream: https://git.busybox.net/busybox/commit/?id=200a9669fbf6f06894e4243cccc9fc11a1a6073a +--- + miscutils/seedrng.c | 14 ++++++++++++++ + 1 file changed, 14 insertions(+) + +diff --git a/miscutils/seedrng.c b/miscutils/seedrng.c +index 967741dc7..7cc855141 100644 +--- a/miscutils/seedrng.c ++++ b/miscutils/seedrng.c +@@ -45,6 +45,20 @@ + #include + #include + ++/* Fix up glibc <= 2.24 not having getrandom() */ ++#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ <= 24 ++#include ++# define getrandom(...) bb_getrandom(__VA_ARGS__) ++static ssize_t getrandom(void *buffer, size_t length, unsigned flags) ++{ ++# if defined(__NR_getrandom) ++ return syscall(__NR_getrandom, buffer, length, flags); ++# else ++ return ENOSYS; ++# endif ++} ++#endif ++ + #ifndef GRND_INSECURE + #define GRND_INSECURE 0x0004 /* Apparently some headers don't ship with this yet. */ + #endif +-- +2.39.1 + diff --git a/package/busybox/0006-seedrng-fix-for-glibc-2.24-not-providing-random-head.patch b/package/busybox/0006-seedrng-fix-for-glibc-2.24-not-providing-random-head.patch new file mode 100644 index 000000000000..d7298848056f --- /dev/null +++ b/package/busybox/0006-seedrng-fix-for-glibc-2.24-not-providing-random-head.patch @@ -0,0 +1,60 @@ +From cb57abb46f06f4ede8d9ccbdaac67377fdf416cf Mon Sep 17 00:00:00 2001 +From: Thomas Devoogdt +Date: Mon, 10 Apr 2023 19:58:15 +0200 +Subject: [PATCH] seedrng: fix for glibc <= 2.24 not providing random header + + - dropped the wrong define (not sure why it was there) + - not available if glibc <= 2.24 + - GRND_NONBLOCK not defined if not included + - ret < 0 && errno == ENOSYS has to be true to get creditable set + +Signed-off-by: Thomas Devoogdt +Signed-off-by: Denys Vlasenko +Upstream: https://git.busybox.net/busybox/commit/?id=cb57abb46f06f4ede8d9ccbdaac67377fdf416cf +--- + miscutils/seedrng.c | 14 ++++++++++---- + 1 file changed, 10 insertions(+), 4 deletions(-) + +diff --git a/miscutils/seedrng.c b/miscutils/seedrng.c +index 7cc855141..3bf6e2ea7 100644 +--- a/miscutils/seedrng.c ++++ b/miscutils/seedrng.c +@@ -42,25 +42,31 @@ + #include "libbb.h" + + #include +-#include + #include + + /* Fix up glibc <= 2.24 not having getrandom() */ + #if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ <= 24 + #include +-# define getrandom(...) bb_getrandom(__VA_ARGS__) + static ssize_t getrandom(void *buffer, size_t length, unsigned flags) + { + # if defined(__NR_getrandom) + return syscall(__NR_getrandom, buffer, length, flags); + # else +- return ENOSYS; ++ errno = ENOSYS; ++ return -1; + # endif + } ++#else ++#include ++#endif ++ ++/* Apparently some headers don't ship with this yet. */ ++#ifndef GRND_NONBLOCK ++#define GRND_NONBLOCK 0x0001 + #endif + + #ifndef GRND_INSECURE +-#define GRND_INSECURE 0x0004 /* Apparently some headers don't ship with this yet. */ ++#define GRND_INSECURE 0x0004 + #endif + + #define DEFAULT_SEED_DIR "/var/lib/seedrng" +-- +2.39.1 + diff --git a/package/busybox/0007-seedrng-fix-getrandom-detection-for-non-glibc-libc.patch b/package/busybox/0007-seedrng-fix-getrandom-detection-for-non-glibc-libc.patch new file mode 100644 index 000000000000..140b27cae671 --- /dev/null +++ b/package/busybox/0007-seedrng-fix-getrandom-detection-for-non-glibc-libc.patch @@ -0,0 +1,124 @@ +From b2d26d449ec855602b9a88f58c2eb675de0224f2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Rapha=C3=ABl=20M=C3=A9lotte?= +Date: Tue, 18 Apr 2023 15:54:43 +0200 +Subject: [PATCH v4] seedrng: fix getrandom() detection for non-glibc libc +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +glibc <= 2.24 does not provide getrandom(). A check for it has been +added in 200a9669fbf6f06894e4243cccc9fc11a1a6073a and fixed in +cb57abb46f06f4ede8d9ccbdaac67377fdf416cf. + +However, building with a libc other than glibc can lead to the same +problem as not every other libc has getrandom() either: + +- uClibc provides it from v1.0.2 onwards, but requires to define +_GNU_SOURCE (all versions - we already define it by default), and +stddef to be included first (when using uClibc < 1.0.35 - we already +include it through libbb.h). + +- musl libc has getrandom(), but only from version 1.1.20 onwards. As +musl does not provide __MUSL__ or version information, it's not +possible to check for it like we did for glibc. + +All of this makes it difficult (or impossible in case of musl) to +check what we need to do to have getrandom() based on each libc +versions. + +On top of that, getrandom() is also not available on older kernels. As +an example, when using a 3.10 kernel with uClibc 1.0.26, getrandom() +is declared so compiling works, but it fails at link time because +getrandom() is not defined. + +To make it easier, take a similar approach to what was done for the +crypt library: try to build a sample program to see if we have +getrandom(). To keep it compatible with different versions of +make (for reference see [1]), a variable for '#' is also introduced. + +Based on the new Makefile variable, we now either use the +libc-provided getrandom() when it's available, or use our own +implementation when it's not (like it was the case already for glibc < +2.25). + +This should fix compiling with many libc/kernel combinations. + +[1]: https://git.savannah.gnu.org/cgit/make.git/commit/?id=c6966b323811c37acedff05b576b907b06aea5f4 + +Signed-off-by: Raphaël Mélotte +Upstream: http://lists.busybox.net/pipermail/busybox/2023-May/090317.html +--- +Changes v3 -> v4: + - use a variable for '#' for compatibility with GNU make 4.2.1 and earlier. + +Changes v2 -> v3: + - fix _GNU_SOURCE define location + +Changes v1 -> v2: + - move _GNU_SOURCE to bb_libtest.c + - remove GRND_NONBLOCK + +Note that I was not able to test every single combination, but I could +confirm it builds successfully for: +uClibc 10.0.24, linux headers 3.10 (libc getrandom NOT used) +uClibc 1.0.36, linux headers 4.9 (libc getrandom used) +musl 1.1.16, linux headers 4.12 (libc getrandom NOT used) +musl 1.2.1, linux headers (libc getrandom used) +glibc 2.25, linux headers 4.10 (libc getrandom used) + + Makefile.flags | 12 ++++++++++++ + miscutils/seedrng.c | 8 ++++---- + 2 files changed, 16 insertions(+), 4 deletions(-) + +diff --git a/Makefile.flags b/Makefile.flags +index 1cec5ba20..0d437303a 100644 +--- a/Makefile.flags ++++ b/Makefile.flags +@@ -161,6 +161,18 @@ ifeq ($(RT_AVAILABLE),y) + LDLIBS += rt + endif + ++# GNU Make version 4.2.1 and earlier require number signs ('#') ++# inside function invocations to be escaped, while versions 4.3+ ++# require them to be unescaped. Use a variable for it so that it works ++# for both versions: ++C := \# ++# Not all libc versions have getrandom, so check for it: ++HAVE_GETRANDOM := $(shell printf '$Cdefine _GNU_SOURCE\n$Cinclude \n$Cinclude \nint main(void){char buf[256];\ngetrandom(buf,sizeof(buf),0);}' >bb_libtest.c; $(CC) $(CFLAGS) $(CFLAGS_busybox) -o /dev/null bb_libtest.c >/dev/null 2>&1 && echo "y"; rm bb_libtest.c) ++ ++ifeq ($(HAVE_GETRANDOM),y) ++CFLAGS += -DHAVE_GETRANDOM ++endif ++ + # libpam may use libpthread, libdl and/or libaudit. + # On some platforms that requires an explicit -lpthread, -ldl, -laudit. + # However, on *other platforms* it fails when some of those flags +diff --git a/miscutils/seedrng.c b/miscutils/seedrng.c +index 3bf6e2ea7..2f1e18c32 100644 +--- a/miscutils/seedrng.c ++++ b/miscutils/seedrng.c +@@ -44,8 +44,10 @@ + #include + #include + +-/* Fix up glibc <= 2.24 not having getrandom() */ +-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ <= 24 ++/* Fix up some libc (e.g. glibc <= 2.24) not having getrandom() */ ++#if defined HAVE_GETRANDOM ++#include ++#else /* No getrandom */ + #include + static ssize_t getrandom(void *buffer, size_t length, unsigned flags) + { +@@ -56,8 +58,6 @@ static ssize_t getrandom(void *buffer, size_t length, unsigned flags) + return -1; + # endif + } +-#else +-#include + #endif + + /* Apparently some headers don't ship with this yet. */ +-- +2.39.1 + diff --git a/package/busybox/0008-shell-fix-SIGWINCH-and-SIGCHLD-in-hush-interrupting-.patch b/package/busybox/0008-shell-fix-SIGWINCH-and-SIGCHLD-in-hush-interrupting-.patch new file mode 100644 index 000000000000..8ebb487ec6d3 --- /dev/null +++ b/package/busybox/0008-shell-fix-SIGWINCH-and-SIGCHLD-in-hush-interrupting-.patch @@ -0,0 +1,103 @@ +From 93e0898c663a533082b5f3c2e7dcce93ec47076d Mon Sep 17 00:00:00 2001 +From: Denys Vlasenko +Date: Thu, 26 Jan 2023 12:56:33 +0100 +Subject: [PATCH] shell: fix SIGWINCH and SIGCHLD (in hush) interrupting line + input, closes 15256 + +function old new delta +record_pending_signo 32 63 +31 +lineedit_read_key 231 224 -7 +------------------------------------------------------------------------------ +(add/remove: 0/0 grow/shrink: 1/1 up/down: 31/-7) Total: 24 bytes + +Signed-off-by: Denys Vlasenko +Upstream: https://git.busybox.net/busybox/commit/?id=93e0898c663a533082b5f3c2e7dcce93ec47076d +Signed-off-by: Romain Naour +--- + libbb/lineedit.c | 17 ++++++++++------- + shell/ash.c | 3 ++- + shell/hush.c | 10 ++++++++-- + 3 files changed, 20 insertions(+), 10 deletions(-) + +diff --git a/libbb/lineedit.c b/libbb/lineedit.c +index d6b2e76ff..b942f540a 100644 +--- a/libbb/lineedit.c ++++ b/libbb/lineedit.c +@@ -2180,7 +2180,8 @@ static int lineedit_read_key(char *read_key_buffer, int timeout) + * "\xff\n",pause,"ls\n" invalid and thus won't lose "ls". + * + * If LI_INTERRUPTIBLE, return -1 if got EINTR in poll() +- * inside read_key, or if bb_got_signal != 0 (IOW: if signal ++ * inside read_key and bb_got_signal became != 0, ++ * or if bb_got_signal != 0 (IOW: if signal + * arrived before poll() is reached). + * + * Note: read_key sets errno to 0 on success. +@@ -2197,14 +2198,16 @@ static int lineedit_read_key(char *read_key_buffer, int timeout) + IF_FEATURE_EDITING_WINCH(S.ok_to_redraw = 0;) + if (errno != EINTR) + break; ++ /* It was EINTR. Repeat read_key() unless... */ + if (state->flags & LI_INTERRUPTIBLE) { +- /* LI_INTERRUPTIBLE bails out on EINTR, +- * but nothing really guarantees that bb_got_signal +- * is nonzero. Follow the least surprise principle: ++ /* LI_INTERRUPTIBLE bails out on EINTR ++ * if bb_got_signal became nonzero. ++ * (It may stay zero: for example, our SIGWINCH ++ * handler does not set it. This is used for signals ++ * which should not interrupt line editing). + */ +- if (bb_got_signal == 0) +- bb_got_signal = 255; +- goto ret; ++ if (bb_got_signal != 0) ++ goto ret; /* will return -1 */ + } + } + +diff --git a/shell/ash.c b/shell/ash.c +index 18ccc1329..5f8c8ea19 100644 +--- a/shell/ash.c ++++ b/shell/ash.c +@@ -10821,7 +10821,8 @@ preadfd(void) + again: + /* For shell, LI_INTERRUPTIBLE is set: + * read_line_input will abort on either +- * getting EINTR in poll(), or if it sees bb_got_signal != 0 ++ * getting EINTR in poll() and bb_got_signal became != 0, ++ * or if it sees bb_got_signal != 0 + * (IOW: if signal arrives before poll() is reached). + * Interactive testcases: + * (while kill -INT $$; do sleep 1; done) & +diff --git a/shell/hush.c b/shell/hush.c +index d111f0cc5..f064b8fd2 100644 +--- a/shell/hush.c ++++ b/shell/hush.c +@@ -1946,7 +1946,12 @@ static void record_pending_signo(int sig) + { + sigaddset(&G.pending_set, sig); + #if ENABLE_FEATURE_EDITING +- bb_got_signal = sig; /* for read_line_input: "we got a signal" */ ++ if (sig != SIGCHLD ++ || (G_traps && G_traps[SIGCHLD] && G_traps[SIGCHLD][0]) ++ /* ^^^ if SIGCHLD, interrupt line reading only if it has a trap */ ++ ) { ++ bb_got_signal = sig; /* for read_line_input: "we got a signal" */ ++ } + #endif + #if ENABLE_HUSH_FAST + if (sig == SIGCHLD) { +@@ -2669,7 +2674,8 @@ static int get_user_input(struct in_str *i) + } else { + /* For shell, LI_INTERRUPTIBLE is set: + * read_line_input will abort on either +- * getting EINTR in poll(), or if it sees bb_got_signal != 0 ++ * getting EINTR in poll() and bb_got_signal became != 0, ++ * or if it sees bb_got_signal != 0 + * (IOW: if signal arrives before poll() is reached). + * Interactive testcases: + * (while kill -INT $$; do sleep 1; done) & +-- +2.30.2 + diff --git a/package/busybox/Config.in b/package/busybox/Config.in index 5e5c5867621a..3c2aa515f845 100644 --- a/package/busybox/Config.in +++ b/package/busybox/Config.in @@ -13,6 +13,7 @@ if BR2_PACKAGE_BUSYBOX config BR2_PACKAGE_BUSYBOX_CONFIG string "BusyBox configuration file to use?" + default "package/busybox/busybox-minimal.config" if !BR2_USE_MMU default "package/busybox/busybox.config" help Some people may wish to use their own modified BusyBox diff --git a/package/busybox/busybox-minimal.config b/package/busybox/busybox-minimal.config index 1fb4e39e21d3..1e7ad1d357e1 100644 --- a/package/busybox/busybox-minimal.config +++ b/package/busybox/busybox-minimal.config @@ -53,7 +53,7 @@ CONFIG_EXTRA_CFLAGS="" CONFIG_EXTRA_LDFLAGS="" CONFIG_EXTRA_LDLIBS="" # CONFIG_USE_PORTABLE_CODE is not set -CONFIG_STACK_OPTIMIZATION_386=y +# CONFIG_STACK_OPTIMIZATION_386 is not set CONFIG_STATIC_LIBGCC=y # diff --git a/package/busybox/busybox.config b/package/busybox/busybox.config index 4826fb824286..6e8bd2799d1b 100644 --- a/package/busybox/busybox.config +++ b/package/busybox/busybox.config @@ -53,7 +53,7 @@ CONFIG_EXTRA_CFLAGS="" CONFIG_EXTRA_LDFLAGS="" CONFIG_EXTRA_LDLIBS="" # CONFIG_USE_PORTABLE_CODE is not set -CONFIG_STACK_OPTIMIZATION_386=y +# CONFIG_STACK_OPTIMIZATION_386 is not set CONFIG_STATIC_LIBGCC=y # diff --git a/package/busybox/busybox.hash b/package/busybox/busybox.hash index 6d1c36906dd2..6eba365ecc77 100644 --- a/package/busybox/busybox.hash +++ b/package/busybox/busybox.hash @@ -1,5 +1,5 @@ -# From https://busybox.net/downloads/busybox-1.35.0.tar.bz2.sha256 -sha256 542750c8af7cb2630e201780b4f99f3dcceeb06f505b479ec68241c1e6af61a5 busybox-1.36.0.tar.bz2 +# From https://busybox.net/downloads/busybox-1.36.1.tar.bz2.sha256 +sha256 b8cc24c9574d809e7279c3be349795c5d5ceb6fdf19ca709f80cde50e47de314 busybox-1.36.1.tar.bz2 # Locally computed sha256 bbfc9843646d483c334664f651c208b9839626891d8f17604db2146962f43548 LICENSE sha256 b5a136ed67798e51fe2e0ca0b2a21cb01b904ff0c9f7d563a6292e276607e58f archival/libarchive/bz/LICENSE diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk index 1633ca525d15..eb5e7ad9222a 100644 --- a/package/busybox/busybox.mk +++ b/package/busybox/busybox.mk @@ -4,7 +4,7 @@ # ################################################################################ -BUSYBOX_VERSION = 1.36.0 +BUSYBOX_VERSION = 1.36.1 BUSYBOX_SITE = https://www.busybox.net/downloads BUSYBOX_SOURCE = busybox-$(BUSYBOX_VERSION).tar.bz2 BUSYBOX_LICENSE = GPL-2.0, bzip2-1.0.4 @@ -276,6 +276,15 @@ define BUSYBOX_INSTALL_INDIVIDUAL_BINARIES endef endif +# Disable SHA1 and SHA256 HWACCEL to avoid segfault in init +# with some x86 toolchains (mostly musl?). +ifeq ($(BR2_i386),y) +define BUSYBOX_MUSL_DISABLE_SHA_HWACCEL + $(call KCONFIG_DISABLE_OPT,CONFIG_SHA1_HWACCEL) + $(call KCONFIG_DISABLE_OPT,CONFIG_SHA256_HWACCEL) +endef +endif + # Only install our logging scripts if no other package does it. ifeq ($(BR2_PACKAGE_SYSKLOGD)$(BR2_PACKAGE_RSYSLOG)$(BR2_PACKAGE_SYSLOG_NG),) define BUSYBOX_INSTALL_LOGGING_SCRIPT @@ -364,6 +373,7 @@ endef BUSYBOX_TARGET_FINALIZE_HOOKS += BUSYBOX_INSTALL_ADD_TO_SHELLS define BUSYBOX_KCONFIG_FIXUP_CMDS + $(BUSYBOX_MUSL_DISABLE_SHA_HWACCEL) $(BUSYBOX_SET_MMU) $(BUSYBOX_PREFER_STATIC) $(BUSYBOX_SET_MDEV) diff --git a/package/bwm-ng/bwm-ng.mk b/package/bwm-ng/bwm-ng.mk index de09eafae5f5..bf3ed74afcfa 100644 --- a/package/bwm-ng/bwm-ng.mk +++ b/package/bwm-ng/bwm-ng.mk @@ -9,6 +9,7 @@ BWM_NG_SITE = $(call github,vgropp,bwm-ng,v$(BWM_NG_VERSION)) BWM_NG_CONF_OPTS = --with-procnetdev --with-diskstats BWM_NG_LICENSE = GPL-2.0+ BWM_NG_LICENSE_FILES = COPYING +BWM_NG_CPE_ID_VENDOR = bwm-ng_project BWM_NG_AUTORECONF = YES ifeq ($(BR2_PACKAGE_NCURSES),y) diff --git a/package/c-ares/c-ares.hash b/package/c-ares/c-ares.hash index edf891674ba5..c2897f6e4441 100644 --- a/package/c-ares/c-ares.hash +++ b/package/c-ares/c-ares.hash @@ -1,5 +1,5 @@ # Locally calculated after checking pgp signature -sha256 bfceba37e23fd531293829002cac0401ef49a6dc55923f7f92236585b7ad1dd3 c-ares-1.19.0.tar.gz +sha256 de24a314844cb157909730828560628704f4f896d167dd7da0fa2fb93ea18b10 c-ares-1.20.1.tar.gz # Hash for license file -sha256 db4eb63fe09daebdf57d3f79b091bb5ee5070c0d761040e83264e648d307af4c LICENSE.md +sha256 80fff25340df53b0cf0c3cddbca9050b559b9cbed2ad71830327cfef54959aef LICENSE.md diff --git a/package/c-ares/c-ares.mk b/package/c-ares/c-ares.mk index 4332fc6919d0..7a49b2639abe 100644 --- a/package/c-ares/c-ares.mk +++ b/package/c-ares/c-ares.mk @@ -4,7 +4,7 @@ # ################################################################################ -C_ARES_VERSION = 1.19.0 +C_ARES_VERSION = 1.20.1 C_ARES_SITE = http://c-ares.haxx.se/download C_ARES_INSTALL_STAGING = YES C_ARES_CONF_OPTS = --with-random=/dev/urandom diff --git a/package/c-periphery/c-periphery.hash b/package/c-periphery/c-periphery.hash index 516cfb33e5f7..f8f0654b4f75 100644 --- a/package/c-periphery/c-periphery.hash +++ b/package/c-periphery/c-periphery.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 ba298aac5c1f6ebe2b89ed623a2f678bedfa3b9dc78aaf4f0534a1dd304629da c-periphery-2.3.1.tar.gz -sha256 7121a0a2ba36ed9388be2f1a916f0e3584d8e49cc7888fbcfcf83bab2a8bebef LICENSE +sha256 24327bc2a22588444b2576fa1c9560619f6faad986c236c54f4b3f36b20dad56 c-periphery-2.4.2.tar.gz +sha256 2c29e38ac4d393558522c5fa671bd03f9d6f7d751c899a3482b20ab2a0ba5122 LICENSE diff --git a/package/c-periphery/c-periphery.mk b/package/c-periphery/c-periphery.mk index 722679f9f86f..367ac319b36f 100644 --- a/package/c-periphery/c-periphery.mk +++ b/package/c-periphery/c-periphery.mk @@ -4,7 +4,7 @@ # ################################################################################ -C_PERIPHERY_VERSION = 2.3.1 +C_PERIPHERY_VERSION = 2.4.2 C_PERIPHERY_SITE = $(call github,vsergeev,c-periphery,v$(C_PERIPHERY_VERSION)) C_PERIPHERY_INSTALL_STAGING = YES C_PERIPHERY_LICENSE = MIT diff --git a/package/ca-certificates/0001-mozilla-certdata2pem.py-make-cryptography-module-opt.patch b/package/ca-certificates/0001-mozilla-certdata2pem.py-make-cryptography-module-opt.patch index b76c1bfd7f55..ed90c217eca8 100644 --- a/package/ca-certificates/0001-mozilla-certdata2pem.py-make-cryptography-module-opt.patch +++ b/package/ca-certificates/0001-mozilla-certdata2pem.py-make-cryptography-module-opt.patch @@ -1,4 +1,4 @@ -From bf18b564122e8f976681a2398862fde1eafd84ba Mon Sep 17 00:00:00 2001 +From a4e468a2a0afa80df174831c2f422184820bb0fa Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Thu, 6 Jan 2022 23:15:00 +0100 Subject: [PATCH] mozilla/certdata2pem.py: make cryptography module optional @@ -14,38 +14,39 @@ cryptography Python module is there, we perform the check, otherwise the check is skipped. Signed-off-by: Thomas Petazzoni +[Steve: refreshed to apply on ca-certificates version 20230311] +Signed-off-by: Steve Hay --- - mozilla/certdata2pem.py | 18 ++++++++++-------- - 1 file changed, 10 insertions(+), 8 deletions(-) + mozilla/certdata2pem.py | 17 ++++++++++------- + 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/mozilla/certdata2pem.py b/mozilla/certdata2pem.py -index ede23d4..a6261f8 100644 +index 4df86a2..3a6d7dc 100644 --- a/mozilla/certdata2pem.py +++ b/mozilla/certdata2pem.py -@@ -28,9 +28,6 @@ import sys +@@ -28,8 +28,6 @@ import sys import textwrap import io -from cryptography import x509 - -- + objects = [] - # Dirty file parser. -@@ -122,11 +119,16 @@ for obj in objects: +@@ -122,11 +120,16 @@ for obj in objects: if not obj['CKA_LABEL'] in trust or not trust[obj['CKA_LABEL']]: continue -- cert = x509.load_der_x509_certificate(obj['CKA_VALUE']) -- if cert.not_valid_after < datetime.datetime.now(): +- cert = x509.load_der_x509_certificate(bytes(obj['CKA_VALUE'])) +- if cert.not_valid_after < datetime.datetime.utcnow(): - print('!'*74) - print('Trusted but expired certificate found: %s' % obj['CKA_LABEL']) - print('!'*74) + try: + from cryptography import x509 + -+ cert = x509.load_der_x509_certificate(obj['CKA_VALUE']) -+ if cert.not_valid_after < datetime.datetime.now(): ++ cert = x509.load_der_x509_certificate(bytes(obj['CKA_VALUE'])) ++ if cert.not_valid_after < datetime.datetime.utcnow(): + print('!'*74) + print('Trusted but expired certificate found: %s' % obj['CKA_LABEL']) + print('!'*74) @@ -55,5 +56,5 @@ index ede23d4..a6261f8 100644 bname = obj['CKA_LABEL'][1:-1].replace('/', '_')\ .replace(' ', '_')\ -- -2.33.1 +2.30.2 diff --git a/package/ca-certificates/0002-mozilla-certdata2pem.py-Fix-compat-with-cryptography.patch b/package/ca-certificates/0002-mozilla-certdata2pem.py-Fix-compat-with-cryptography.patch deleted file mode 100644 index 0537da92242d..000000000000 --- a/package/ca-certificates/0002-mozilla-certdata2pem.py-Fix-compat-with-cryptography.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 5e493ca307a031e81528ceddb96f3da40bc062cf Mon Sep 17 00:00:00 2001 -From: Wataru Ashihara -Date: Wed, 2 Nov 2022 12:40:05 -0400 -Subject: [PATCH] mozilla/certdata2pem.py: Fix compat with cryptography > 3.0 - -In newer cryptography packages, load_der_x509_certificate is enforced to be 'bytes' rather than currently used 'bytearray'. This fixes that. - -https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1008244 -Signed-off-by: Justin Wood ---- - mozilla/certdata2pem.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/mozilla/certdata2pem.py b/mozilla/certdata2pem.py -index a6261f8..c0fa52c 100644 ---- a/mozilla/certdata2pem.py -+++ b/mozilla/certdata2pem.py -@@ -122,7 +122,7 @@ for obj in objects: - try: - from cryptography import x509 - -- cert = x509.load_der_x509_certificate(obj['CKA_VALUE']) -+ cert = x509.load_der_x509_certificate(bytes(obj['CKA_VALUE'])) - if cert.not_valid_after < datetime.datetime.now(): - print('!'*74) - print('Trusted but expired certificate found: %s' % obj['CKA_LABEL']) --- -2.38.1 - diff --git a/package/ca-certificates/ca-certificates.hash b/package/ca-certificates/ca-certificates.hash index a1675b999e73..8a5b48dd7916 100644 --- a/package/ca-certificates/ca-certificates.hash +++ b/package/ca-certificates/ca-certificates.hash @@ -1,6 +1,4 @@ # hashes from: $(CA_CERTIFICATES_SITE)/ca-certificates_$(CA_CERTIFICATES_VERSION).dsc : -sha1 bce5a8fac45456dbebf256f3a812c6cd0a853e3e ca-certificates_20211016.tar.xz -sha256 2ae9b6dc5f40c25d6d7fe55e07b54f12a8967d1955d3b7b2f42ee46266eeef88 ca-certificates_20211016.tar.xz - +sha256 83de934afa186e279d1ed08ea0d73f5cf43a6fbfb5f00874b6db3711c64576f3 ca-certificates_20230311.tar.xz # Locally computed sha256 e85e1bcad3a915dc7e6f41412bc5bdeba275cadd817896ea0451f2140a93967c debian/copyright diff --git a/package/ca-certificates/ca-certificates.mk b/package/ca-certificates/ca-certificates.mk index 0b6962ab7b86..fe115209a7d9 100644 --- a/package/ca-certificates/ca-certificates.mk +++ b/package/ca-certificates/ca-certificates.mk @@ -4,9 +4,9 @@ # ################################################################################ -CA_CERTIFICATES_VERSION = 20211016 +CA_CERTIFICATES_VERSION = 20230311 CA_CERTIFICATES_SOURCE = ca-certificates_$(CA_CERTIFICATES_VERSION).tar.xz -CA_CERTIFICATES_SITE = https://snapshot.debian.org/archive/debian/20211022T144903Z/pool/main/c/ca-certificates +CA_CERTIFICATES_SITE = https://snapshot.debian.org/archive/debian/20230317T205011Z/pool/main/c/ca-certificates CA_CERTIFICATES_DEPENDENCIES = host-openssl host-python3 CA_CERTIFICATES_LICENSE = GPL-2.0+ (script), MPL-2.0 (data) CA_CERTIFICATES_LICENSE_FILES = debian/copyright @@ -20,7 +20,9 @@ define CA_CERTIFICATES_INSTALL_TARGET_CMDS $(INSTALL) -d -m 0755 $(TARGET_DIR)/etc/ssl/certs $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install DESTDIR=$(TARGET_DIR) rm -f $(TARGET_DIR)/usr/sbin/update-ca-certificates +endef +define CA_CERTIFICATES_GEN_BUNDLE # Remove any existing certificates under /etc/ssl/certs rm -f $(TARGET_DIR)/etc/ssl/certs/* @@ -30,14 +32,15 @@ define CA_CERTIFICATES_INSTALL_TARGET_CMDS for i in `find usr/share/ca-certificates -name "*.crt" | LC_COLLATE=C sort` ; do \ ln -sf ../../../$$i etc/ssl/certs/`basename $${i} .crt`.pem ;\ cat $$i ;\ - done >$(@D)/ca-certificates.crt + done >$(BUILD_DIR)/ca-certificates.crt # Create symlinks to the certificates by their hash values $(HOST_DIR)/bin/c_rehash $(TARGET_DIR)/etc/ssl/certs # Install the certificates bundle - $(INSTALL) -D -m 644 $(@D)/ca-certificates.crt \ + $(INSTALL) -D -m 644 $(BUILD_DIR)/ca-certificates.crt \ $(TARGET_DIR)/etc/ssl/certs/ca-certificates.crt endef +CA_CERTIFICATES_TARGET_FINALIZE_HOOKS += CA_CERTIFICATES_GEN_BUNDLE $(eval $(generic-package)) diff --git a/package/cage/0001-Upgrade-to-wlroots-0.15.patch b/package/cage/0001-Upgrade-to-wlroots-0.15.patch deleted file mode 100644 index a5716ede4399..000000000000 --- a/package/cage/0001-Upgrade-to-wlroots-0.15.patch +++ /dev/null @@ -1,312 +0,0 @@ -From e51bef3fdad649d453276717294cc6177666cf5a Mon Sep 17 00:00:00 2001 -From: Simon Ser -Date: Wed, 11 Aug 2021 11:31:14 +0200 -Subject: [PATCH] Upgrade to wlroots 0.15 - -- Update wlr_box includes to util/box.h: the wlroots header has - been moved upstream. -- Subsurface fields have been moved -- Create renderer and allocator, stop using wlr_backend_get_renderer -- Initalize output rendering - -Signed-off-by: Adrian Perez de Castro -Upstream status: https://github.com/Hjdskes/cage/commit/395189fb051ed722c7b10b6cb11caa8f6904079c ---- - cage.c | 21 +++++++++++++++++---- - meson.build | 2 +- - output.c | 5 +++++ - render.c | 26 ++++++++------------------ - server.h | 2 ++ - util.c | 2 -- - util.h | 2 +- - view.c | 5 ++--- - view.h | 2 +- - xdg_shell.c | 1 - - xwayland.c | 1 - - 11 files changed, 37 insertions(+), 32 deletions(-) - -diff --git a/cage.c b/cage.c -index 5392535..f9db7a9 100644 ---- a/cage.c -+++ b/cage.c -@@ -19,6 +19,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -261,7 +262,6 @@ main(int argc, char *argv[]) - struct wl_event_source *sigint_source = NULL; - struct wl_event_source *sigterm_source = NULL; - struct wl_event_source *sigchld_source = NULL; -- struct wlr_renderer *renderer = NULL; - struct wlr_compositor *compositor = NULL; - struct wlr_data_device_manager *data_device_manager = NULL; - struct wlr_server_decoration_manager *server_decoration_manager = NULL; -@@ -316,8 +316,21 @@ main(int argc, char *argv[]) - goto end; - } - -- renderer = wlr_backend_get_renderer(server.backend); -- wlr_renderer_init_wl_display(renderer, server.wl_display); -+ server.renderer = wlr_renderer_autocreate(server.backend); -+ if (!server.renderer) { -+ wlr_log(WLR_ERROR, "Unable to create the wlroots renderer"); -+ ret = 1; -+ goto end; -+ } -+ -+ server.allocator = wlr_allocator_autocreate(server.backend, server.renderer); -+ if (!server.allocator) { -+ wlr_log(WLR_ERROR, "Unable to create the wlroots allocator"); -+ ret = 1; -+ goto end; -+ } -+ -+ wlr_renderer_init_wl_display(server.renderer, server.wl_display); - - wl_list_init(&server.views); - wl_list_init(&server.outputs); -@@ -329,7 +342,7 @@ main(int argc, char *argv[]) - goto end; - } - -- compositor = wlr_compositor_create(server.wl_display, renderer); -+ compositor = wlr_compositor_create(server.wl_display, server.renderer); - if (!compositor) { - wlr_log(WLR_ERROR, "Unable to create the wlroots compositor"); - ret = 1; -diff --git a/meson.build b/meson.build -index 3a84794..f2e5428 100644 ---- a/meson.build -+++ b/meson.build -@@ -34,7 +34,7 @@ if is_freebsd - ) - endif - --wlroots = dependency('wlroots', version: '>= 0.14.0') -+wlroots = dependency('wlroots', version: '>= 0.15.0') - wayland_protos = dependency('wayland-protocols', version: '>=1.14') - wayland_server = dependency('wayland-server') - pixman = dependency('pixman-1') -diff --git a/output.c b/output.c -index d8da3b9..e8b3a22 100644 ---- a/output.c -+++ b/output.c -@@ -442,6 +442,11 @@ handle_new_output(struct wl_listener *listener, void *data) - struct cg_server *server = wl_container_of(listener, server, new_output); - struct wlr_output *wlr_output = data; - -+ if (!wlr_output_init_render(wlr_output, server->allocator, server->renderer)) { -+ wlr_log(WLR_ERROR, "Failed to initialize output rendering"); -+ return; -+ } -+ - struct cg_output *output = calloc(1, sizeof(struct cg_output)); - if (!output) { - wlr_log(WLR_ERROR, "Failed to allocate output"); -diff --git a/render.c b/render.c -index 166a088..ffa960f 100644 ---- a/render.c -+++ b/render.c -@@ -10,11 +10,11 @@ - #include - #include - #include --#include - #include - #include - #include - #include -+#include - #include - #include - -@@ -27,8 +27,6 @@ - static void - scissor_output(struct wlr_output *output, pixman_box32_t *rect) - { -- struct wlr_renderer *renderer = wlr_backend_get_renderer(output->backend); -- - struct wlr_box box = { - .x = rect->x1, - .y = rect->y1, -@@ -41,7 +39,7 @@ scissor_output(struct wlr_output *output, pixman_box32_t *rect) - enum wl_output_transform transform = wlr_output_transform_invert(output->transform); - wlr_box_transform(&box, &box, transform, output_width, output_height); - -- wlr_renderer_scissor(renderer, &box); -+ wlr_renderer_scissor(output->renderer, &box); - } - - struct render_data { -@@ -52,8 +50,6 @@ static void - render_texture(struct wlr_output *wlr_output, pixman_region32_t *output_damage, struct wlr_texture *texture, - const struct wlr_box *box, const float matrix[static 9]) - { -- struct wlr_renderer *renderer = wlr_backend_get_renderer(wlr_output->backend); -- - pixman_region32_t damage; - pixman_region32_init(&damage); - pixman_region32_union_rect(&damage, &damage, box->x, box->y, box->width, box->height); -@@ -66,7 +62,7 @@ render_texture(struct wlr_output *wlr_output, pixman_region32_t *output_damage, - pixman_box32_t *rects = pixman_region32_rectangles(&damage, &nrects); - for (int i = 0; i < nrects; i++) { - scissor_output(wlr_output, &rects[i]); -- wlr_render_texture_with_matrix(renderer, texture, matrix, 1.0f); -+ wlr_render_texture_with_matrix(wlr_output->renderer, texture, matrix, 1.0f); - } - - damage_finish: -@@ -134,13 +130,7 @@ output_render(struct cg_output *output, pixman_region32_t *damage) - struct cg_server *server = output->server; - struct wlr_output *wlr_output = output->wlr_output; - -- struct wlr_renderer *renderer = wlr_backend_get_renderer(wlr_output->backend); -- if (!renderer) { -- wlr_log(WLR_DEBUG, "Expected the output backend to have a renderer"); -- return; -- } -- -- wlr_renderer_begin(renderer, wlr_output->width, wlr_output->height); -+ wlr_renderer_begin(server->renderer, wlr_output->width, wlr_output->height); - - if (!pixman_region32_not_empty(damage)) { - wlr_log(WLR_DEBUG, "Output isn't damaged but needs a buffer swap"); -@@ -149,7 +139,7 @@ output_render(struct cg_output *output, pixman_region32_t *damage) - - #ifdef DEBUG - if (server->debug_damage_tracking) { -- wlr_renderer_clear(renderer, (float[]){1.0f, 0.0f, 0.0f, 1.0f}); -+ wlr_renderer_clear(server->renderer, (float[]){1.0f, 0.0f, 0.0f, 1.0f}); - } - #endif - -@@ -158,7 +148,7 @@ output_render(struct cg_output *output, pixman_region32_t *damage) - pixman_box32_t *rects = pixman_region32_rectangles(damage, &nrects); - for (int i = 0; i < nrects; i++) { - scissor_output(wlr_output, &rects[i]); -- wlr_renderer_clear(renderer, color); -+ wlr_renderer_clear(server->renderer, color); - } - - // TODO: render only top view, possibly use focused view for this, see #35. -@@ -178,8 +168,8 @@ renderer_end: - /* Draw software cursor in case hardware cursors aren't - available. This is a no-op when they are. */ - wlr_output_render_software_cursors(wlr_output, damage); -- wlr_renderer_scissor(renderer, NULL); -- wlr_renderer_end(renderer); -+ wlr_renderer_scissor(server->renderer, NULL); -+ wlr_renderer_end(server->renderer); - - int output_width, output_height; - wlr_output_transformed_resolution(wlr_output, &output_width, &output_height); -diff --git a/server.h b/server.h -index 817637b..74970c5 100644 ---- a/server.h -+++ b/server.h -@@ -25,6 +25,8 @@ struct cg_server { - struct wl_display *wl_display; - struct wl_list views; - struct wlr_backend *backend; -+ struct wlr_renderer *renderer; -+ struct wlr_allocator *allocator; - - struct cg_seat *seat; - struct wlr_idle *idle; -diff --git a/util.c b/util.c -index 95de499..714c7e3 100644 ---- a/util.c -+++ b/util.c -@@ -6,8 +6,6 @@ - * See the LICENSE file accompanying this file. - */ - --#include -- - #include "util.h" - - int -diff --git a/util.h b/util.h -index db6bc7d..b6281f3 100644 ---- a/util.h -+++ b/util.h -@@ -1,7 +1,7 @@ - #ifndef CG_UTIL_H - #define CG_UTIL_H - --#include -+#include - - /** Apply scale to a width or height. */ - int scale_length(int length, int offset, float scale); -diff --git a/view.c b/view.c -index 3f3b0ed..33b59b4 100644 ---- a/view.c -+++ b/view.c -@@ -12,7 +12,6 @@ - #include - #include - #include --#include - #include - #include - -@@ -235,10 +234,10 @@ view_map(struct cg_view *view, struct wlr_surface *surface) - view->wlr_surface = surface; - - struct wlr_subsurface *subsurface; -- wl_list_for_each (subsurface, &view->wlr_surface->subsurfaces_below, parent_link) { -+ wl_list_for_each (subsurface, &view->wlr_surface->current.subsurfaces_below, current.link) { - subsurface_create(view, subsurface); - } -- wl_list_for_each (subsurface, &view->wlr_surface->subsurfaces_above, parent_link) { -+ wl_list_for_each (subsurface, &view->wlr_surface->current.subsurfaces_above, current.link) { - subsurface_create(view, subsurface); - } - -diff --git a/view.h b/view.h -index cd16e42..87477d0 100644 ---- a/view.h -+++ b/view.h -@@ -5,9 +5,9 @@ - - #include - #include --#include - #include - #include -+#include - #if CAGE_HAS_XWAYLAND - #include - #endif -diff --git a/xdg_shell.c b/xdg_shell.c -index 2e42347..d676552 100644 ---- a/xdg_shell.c -+++ b/xdg_shell.c -@@ -9,7 +9,6 @@ - #include - #include - #include --#include - #include - #include - -diff --git a/xwayland.c b/xwayland.c -index 2aae0f9..ebd8e54 100644 ---- a/xwayland.c -+++ b/xwayland.c -@@ -9,7 +9,6 @@ - #include - #include - #include --#include - #include - #include - --- -2.36.0 - diff --git a/package/cage/cage.hash b/package/cage/cage.hash index 57a1c12638a2..d5517bd918e2 100644 --- a/package/cage/cage.hash +++ b/package/cage/cage.hash @@ -1,5 +1,5 @@ -# Generated locally after checking GPG signature -sha256 dfe27fb0c7d43db72d6c82f01e2736580a0791a23ba69d7b56285d08af98ad90 cage-0.1.4.tar.gz +# Generated locally after checking GPG signature from https://github.com/cage-kiosk/cage/releases/download/v0.1.5/cage-0.1.5.tar.gz.sig +sha256 ece0312e559289df0238289ea6c60e9fed32d27fe3ae8a8f83eeff26ddc239e1 cage-0.1.5.tar.gz # Hashes for license files: sha256 e117104073335dbaf78596fb1bedf89dda63c71f60f0b665947b2d369c77ecee LICENSE diff --git a/package/cage/cage.mk b/package/cage/cage.mk index c132f086f634..119950bc00e6 100644 --- a/package/cage/cage.mk +++ b/package/cage/cage.mk @@ -4,7 +4,7 @@ # ################################################################################ -CAGE_VERSION = 0.1.4 +CAGE_VERSION = 0.1.5 CAGE_SITE = https://github.com/Hjdskes/cage/releases/download/v$(CAGE_VERSION) CAGE_LICENSE = MIT CAGE_LICENSE_FILES = LICENSE diff --git a/package/cairo/cairo.mk b/package/cairo/cairo.mk index e8a704c7da65..7bc8f92debe5 100644 --- a/package/cairo/cairo.mk +++ b/package/cairo/cairo.mk @@ -26,7 +26,7 @@ ifeq ($(BR2_m68k_cf),y) CAIRO_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -mxgot" endif -ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),) +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS_NPTL),) CAIRO_CONF_ENV += CPPFLAGS="$(TARGET_CPPFLAGS) -DCAIRO_NO_MUTEX=1" endif diff --git a/package/cairomm/Config.in b/package/cairomm/Config.in index 75f6692b8ab9..174f3967abdb 100644 --- a/package/cairomm/Config.in +++ b/package/cairomm/Config.in @@ -11,7 +11,7 @@ config BR2_PACKAGE_CAIROMM help The cairomm package is a set of C++ bindings for Cairo. - http://www.gtkmm.org/ + https://www.cairographics.org/cairomm/ comment "cairomm needs a toolchain w/ C++, wchar, threads, gcc >= 7" depends on BR2_USE_MMU diff --git a/package/cairomm/cairomm.hash b/package/cairomm/cairomm.hash index d14a65c2d6f7..254413af0907 100644 --- a/package/cairomm/cairomm.hash +++ b/package/cairomm/cairomm.hash @@ -1,3 +1,6 @@ +# From https://www.cairographics.org/releases/cairomm-1.16.2.tar.xz.sha1 +sha1 c24339d5962e2bcbbea85b2fc66347e71fd3db8c cairomm-1.16.2.tar.xz + # Locally computed -sha256 bb86d855041bd46d31b03e43ea355d233de44034b39d4200725b1e0947e63e67 cairomm-1.16.1.tar.gz +sha256 6a63bf98a97dda2b0f55e34d1b5f3fb909ef8b70f9b8d382cb1ff3978e7dc13f cairomm-1.16.2.tar.xz sha256 bfe4a52dc4645385f356a8e83cc54216a293e3b6f1cb4f79f5fc0277abf937fd COPYING diff --git a/package/cairomm/cairomm.mk b/package/cairomm/cairomm.mk index 856c9d67fc26..571512878e23 100644 --- a/package/cairomm/cairomm.mk +++ b/package/cairomm/cairomm.mk @@ -4,10 +4,11 @@ # ################################################################################ -CAIROMM_VERSION = 1.16.1 +CAIROMM_VERSION = 1.16.2 CAIROMM_LICENSE = LGPL-2.0+ CAIROMM_LICENSE_FILES = COPYING -CAIROMM_SITE = https://gitlab.freedesktop.org/cairo/cairomm/-/archive/$(CAIROMM_VERSION) +CAIROMM_SOURCE = cairomm-$(CAIROMM_VERSION).tar.xz +CAIROMM_SITE = https://cairographics.org/releases CAIROMM_INSTALL_STAGING = YES CAIROMM_DEPENDENCIES = cairo libglib2 libsigc host-pkgconf CAIROMM_CONF_OPTS = -Dbuild-examples=false -Dbuild-tests=false diff --git a/package/cairomm1_14/Config.in b/package/cairomm1_14/Config.in index 6e767d242831..e369aa6f4ad2 100644 --- a/package/cairomm1_14/Config.in +++ b/package/cairomm1_14/Config.in @@ -14,7 +14,7 @@ config BR2_PACKAGE_CAIROMM1_14 This is the last version before the API and ABI change introduced in 1.16.0 which requires C++17. - http://www.gtkmm.org/ + https://www.cairographics.org/cairomm/ comment "cairomm (1.14.x) needs a toolchain w/ C++, wchar, threads, gcc >= 4.9" depends on BR2_USE_MMU diff --git a/package/cairomm1_14/cairomm1_14.hash b/package/cairomm1_14/cairomm1_14.hash index 521e7cc54669..6d58de360abe 100644 --- a/package/cairomm1_14/cairomm1_14.hash +++ b/package/cairomm1_14/cairomm1_14.hash @@ -1,3 +1,6 @@ +# From https://www.cairographics.org/releases/cairomm-1.14.4.tar.xz.sha1 +sha1 a58419bb9792a2c998631704ce5671c38e0c82a1 cairomm-1.14.4.tar.xz + # Locally computed -sha256 ee12b920b2d47cea1b6e20c367690d726eb22b4ca9fc711db329d03adcc0c8e0 cairomm-1.14.4.tar.gz +sha256 4749d25a2b2ef67cc0c014caaf5c87fa46792fc4b3ede186fb0fc932d2055158 cairomm-1.14.4.tar.xz sha256 bfe4a52dc4645385f356a8e83cc54216a293e3b6f1cb4f79f5fc0277abf937fd COPYING diff --git a/package/cairomm1_14/cairomm1_14.mk b/package/cairomm1_14/cairomm1_14.mk index 5d076ddf0a4a..6502d34c5a4e 100644 --- a/package/cairomm1_14/cairomm1_14.mk +++ b/package/cairomm1_14/cairomm1_14.mk @@ -7,8 +7,8 @@ CAIROMM1_14_VERSION = 1.14.4 CAIROMM1_14_LICENSE = LGPL-2.0+ CAIROMM1_14_LICENSE_FILES = COPYING -CAIROMM1_14_SOURCE = cairomm-$(CAIROMM1_14_VERSION).tar.gz -CAIROMM1_14_SITE = https://gitlab.freedesktop.org/cairo/cairomm/-/archive/$(CAIROMM1_14_VERSION) +CAIROMM1_14_SOURCE = cairomm-$(CAIROMM1_14_VERSION).tar.xz +CAIROMM1_14_SITE = https://cairographics.org/releases CAIROMM1_14_INSTALL_STAGING = YES CAIROMM1_14_DEPENDENCIES = cairo libglib2 libsigc2 host-pkgconf CAIROMM1_14_CONF_OPTS = -Dbuild-examples=false -Dbuild-tests=false diff --git a/package/can-utils/0001-Don-t-compile-programs-using-fork-on-MMU-less-system.patch b/package/can-utils/0001-Don-t-compile-programs-using-fork-on-MMU-less-system.patch new file mode 100644 index 000000000000..57f93b18e0bc --- /dev/null +++ b/package/can-utils/0001-Don-t-compile-programs-using-fork-on-MMU-less-system.patch @@ -0,0 +1,257 @@ +From 5ed3b4ded6cf3e4de6fc8c8739b84231b0285b0e Mon Sep 17 00:00:00 2001 +From: Dario Binacchi +Date: Fri, 5 May 2023 08:57:45 +0200 +Subject: [PATCH] Don't compile programs using fork() on MMU-less systems + +Systems that lack a MMU cannot use fork() to create the child process. +The patch does not compile the affected programs on MMU-less systems. + +Co-developed-by: Marc Kleine-Budde +Signed-off-by: Marc Kleine-Budde +Signed-off-by: Dario Binacchi +Upstream: https://github.com/linux-can/can-utils/commit/5ed3b4ded6cf3e4de6fc8c8739b84231b0285b0e +--- + CMakeLists.txt | 15 ++++++++++++--- + GNUmakefile.am | 10 +++++++--- + Makefile | 16 +++++++++++++--- + check_cc.sh | 16 ++++++++++++++++ + configure.ac | 2 ++ + fork_test.c | 27 +++++++++++++++++++++++++++ + 6 files changed, 77 insertions(+), 9 deletions(-) + create mode 100755 check_cc.sh + create mode 100644 fork_test.c + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 09ccd805de66..aee8ff7fca02 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -2,6 +2,7 @@ cmake_minimum_required(VERSION 3.3) + + project(can-utils LANGUAGES C) + ++include (CheckFunctionExists) + include (CheckSymbolExists) + include (GNUInstallDirs) + +@@ -25,12 +26,13 @@ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DSCM_TXTIME=SO_TXTIME") + include_directories (.) + include_directories (./include) + ++check_function_exists(fork HAVE_FORK) ++ + set(PROGRAMS_CANLIB + asc2log + canbusload + candump + cangen +- canlogserver + canplayer + cansend + cansequence +@@ -39,6 +41,10 @@ set(PROGRAMS_CANLIB + slcanpty + ) + ++if(HAVE_FORK) ++ list(APPEND PROGRAMS_CANLIB canlogserver) ++endif() ++ + set(PROGRAMS_J1939 + j1939acd + j1939cat +@@ -49,7 +55,6 @@ set(PROGRAMS_J1939 + + set(PROGRAMS + ${PROGRAMS_CANLIB} +- bcmserver + canfdtest + cangw + cansniffer +@@ -57,13 +62,17 @@ set(PROGRAMS + isotpperf + isotprecv + isotpsend +- isotpserver + isotpsniffer + isotptun + slcan_attach + slcand + ) + ++if(HAVE_FORK) ++ list(APPEND PROGRAMS bcmserver) ++ list(APPEND PROGRAMS isotpserver) ++endif() ++ + add_executable(can-calc-bit-timing + calc-bit-timing/can-calc-bit-timing.c + ) +diff --git a/GNUmakefile.am b/GNUmakefile.am +index 5a7ad75f682e..e818754db3a4 100644 +--- a/GNUmakefile.am ++++ b/GNUmakefile.am +@@ -75,14 +75,12 @@ EXTRA_DIST += \ + + bin_PROGRAMS = \ + asc2log \ +- bcmserver \ + can-calc-bit-timing \ + canbusload \ + candump \ + canfdtest \ + cangen \ + cangw \ +- canlogserver \ + canplayer \ + cansend \ + cansequence \ +@@ -91,7 +89,6 @@ bin_PROGRAMS = \ + isotpperf \ + isotprecv \ + isotpsend \ +- isotpserver \ + isotpsniffer \ + isotptun \ + j1939acd \ +@@ -106,6 +103,13 @@ bin_PROGRAMS = \ + slcanpty \ + testj1939 + ++if HAVE_FORK ++bin_PROGRAMS += \ ++ bcmserver \ ++ canlogserver \ ++ isotpserver ++endif ++ + j1939acd_LDADD = libj1939.la + j1939cat_LDADD = libj1939.la + j1939spy_LDADD = libj1939.la +diff --git a/Makefile b/Makefile +index 29eef997b290..a26ff3d75e67 100644 +--- a/Makefile ++++ b/Makefile +@@ -45,6 +45,8 @@ MAKEFLAGS := -k + + CFLAGS := -O2 -Wall -Wno-parentheses + ++HAVE_FORK := $(shell ./check_cc.sh "$(CC)" fork_test.c) ++ + CPPFLAGS += \ + -I. \ + -Iinclude \ +@@ -66,10 +68,14 @@ PROGRAMS_ISOTP := \ + isotpperf \ + isotprecv \ + isotpsend \ +- isotpserver \ + isotpsniffer \ + isotptun + ++ifeq ($(HAVE_FORK),1) ++PROGRAMS_ISOTP += \ ++ isotpserver ++endif ++ + PROGRAMS_J1939 := \ + j1939acd \ + j1939cat \ +@@ -87,14 +93,12 @@ PROGRAMS := \ + $(PROGRAMS_J1939) \ + $(PROGRAMS_SLCAN) \ + asc2log \ +- bcmserver \ + can-calc-bit-timing \ + canbusload \ + candump \ + canfdtest \ + cangen \ + cansequence \ +- canlogserver \ + canplayer \ + cansend \ + cansniffer \ +@@ -103,6 +107,12 @@ PROGRAMS := \ + mcp251xfd-dump \ + slcanpty + ++ifeq ($(HAVE_FORK),1) ++PROGRAMS += \ ++ canlogserver \ ++ bcmserver ++endif ++ + all: $(PROGRAMS) + + clean: +diff --git a/check_cc.sh b/check_cc.sh +new file mode 100755 +index 000000000000..d85ad129da9d +--- /dev/null ++++ b/check_cc.sh +@@ -0,0 +1,16 @@ ++#!/bin/sh ++# SPDX-License-Identifier: GPL-2.0-only ++# check_cc.sh - Helper to test userspace compilation support ++# Copyright (c) 2015 Andrew Lutomirski ++ ++CC="$1" ++TESTPROG="$2" ++shift 2 ++ ++if [ -n "$CC" ] && $CC -o /dev/null "$TESTPROG" -O0 "$@"; then ++ echo 1 ++else ++ echo 0 ++fi ++ ++exit 0 +diff --git a/configure.ac b/configure.ac +index 5493c9c7ccdf..9bf62a5c6409 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -76,6 +76,8 @@ AC_CHECK_FUNCS([ \ + strtoul \ + ]) + ++AM_CONDITIONAL(HAVE_FORK, test "$ac_cv_func_fork_works" = "yes") ++ + # glibc versions before 2.17 needs to link with -lrt for clock_nanosleep + AC_SEARCH_LIBS([clock_nanosleep], [rt]) + +diff --git a/fork_test.c b/fork_test.c +new file mode 100644 +index 000000000000..036692392483 +--- /dev/null ++++ b/fork_test.c +@@ -0,0 +1,27 @@ ++/* SPDX-License-Identifier: GPL-2.0-only */ ++/* ++ * Copyright (C) 2023 Dario Binacchi ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the version 2 of the GNU General Public License ++ * as published by the Free Software Foundation ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, see . ++ */ ++ ++#include ++#include ++#include ++ ++int main(int argc, char **argv) ++{ ++ fork(); ++ ++ return 0; ++} +-- +2.32.0 + diff --git a/package/can-utils/Config.in b/package/can-utils/Config.in index bdc84b461afc..a33919a20867 100644 --- a/package/can-utils/Config.in +++ b/package/can-utils/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_CAN_UTILS bool "can-utils" - depends on BR2_USE_MMU # fork() help SocketCAN is a set of open source CAN drivers and a networking stack. diff --git a/package/can-utils/can-utils.hash b/package/can-utils/can-utils.hash index 4e47143f313b..e539e05b4569 100644 --- a/package/can-utils/can-utils.hash +++ b/package/can-utils/can-utils.hash @@ -1,4 +1,4 @@ # Locally computed -sha256 c9b8f29515ad34af7f78450ec55c983abc5393e86b1f128a92ac0dfd141baaf7 can-utils-2021.08.0.tar.gz +sha256 2790dfb57fe3ec22b6fd512838c6480c39f7c9ae193e59f1ae01221216505a7e can-utils-2023.03.tar.gz sha256 c3dc748f5e725cf5ed89784fe78e4ff1b05d309bf1e7ade4c572e8fde1b8406c LICENSES/BSD-3-Clause sha256 995a31f60a9ddb4c609214cc7d17ca94cc3cbc7f37e1e64dba81e7f8ea9d4f91 LICENSES/GPL-2.0-only.txt diff --git a/package/can-utils/can-utils.mk b/package/can-utils/can-utils.mk index 5b8a2aeea3b8..462e123c6d92 100644 --- a/package/can-utils/can-utils.mk +++ b/package/can-utils/can-utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -CAN_UTILS_VERSION = 2021.08.0 +CAN_UTILS_VERSION = 2023.03 CAN_UTILS_SITE = $(call github,linux-can,can-utils,v$(CAN_UTILS_VERSION)) CAN_UTILS_LICENSE = BSD-3-Clause or GPL-2.0 CAN_UTILS_LICENSE_FILES = LICENSES/BSD-3-Clause LICENSES/GPL-2.0-only.txt diff --git a/package/capnproto/capnproto.hash b/package/capnproto/capnproto.hash index 0faf69d069ec..aa722a424272 100644 --- a/package/capnproto/capnproto.hash +++ b/package/capnproto/capnproto.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 e07446f56043c983e009038e69d18ff86a2924909f0b518ccf47eccf5ac03919 capnproto-0.10.3.tar.gz +sha256 c6f25940688c87ddb24e0c4e475c3213d9b044aad2ba305439cc8c224f559da6 capnproto-0.10.4.tar.gz sha256 9564998c8d7f270a61a8b89869a8d17a9d5e3783b64027788b5e339ec8479e10 LICENSE diff --git a/package/capnproto/capnproto.mk b/package/capnproto/capnproto.mk index 84acf5fc6551..7424a1420f76 100644 --- a/package/capnproto/capnproto.mk +++ b/package/capnproto/capnproto.mk @@ -4,7 +4,7 @@ # ################################################################################ -CAPNPROTO_VERSION = 0.10.3 +CAPNPROTO_VERSION = 0.10.4 CAPNPROTO_SITE = $(call github,capnproto,capnproto,v$(CAPNPROTO_VERSION)) CAPNPROTO_LICENSE = MIT CAPNPROTO_LICENSE_FILES = LICENSE diff --git a/package/casync/0001-src-compressor.h-fix-build-with-gcc-13.patch b/package/casync/0001-src-compressor.h-fix-build-with-gcc-13.patch new file mode 100644 index 000000000000..32af9142a731 --- /dev/null +++ b/package/casync/0001-src-compressor.h-fix-build-with-gcc-13.patch @@ -0,0 +1,40 @@ +From 8db993c32f97188bdd6de4b2aa177fc513ee7e9f Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sun, 15 Oct 2023 21:22:58 +0200 +Subject: [PATCH] src/compressor.h: fix build with gcc >= 13 + +Fix the following build failure with gcc >= 13: + +In file included from ../src/compressor.c:3: +../src/compressor.h:59:59: error: unknown type name 'size_t' + 59 | int compressor_input(CompressorContext *c, const void *p, size_t sz); + | ^~~~~~ +../src/compressor.h:19:1: note: 'size_t' is defined in header ''; did you forget to '#include '? + 18 | #include "cacompression.h" + +++ |+#include + 19 | + +Fixes: + - http://autobuild.buildroot.org/results/ab08f3b90d253db45643dd058b80ae1dd5f49d0f + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/systemd/casync/pull/270 +--- + src/compressor.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/compressor.h b/src/compressor.h +index 2c9f93b..ae2eb30 100644 +--- a/src/compressor.h ++++ b/src/compressor.h +@@ -4,6 +4,7 @@ + #define foocompresshorhfoo + + #include ++#include + + #if HAVE_LIBLZMA + # include +-- +2.42.0 + diff --git a/package/catch2/catch2.hash b/package/catch2/catch2.hash index b533792f8f9f..88a6a06df256 100644 --- a/package/catch2/catch2.hash +++ b/package/catch2/catch2.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 d90351cdc55421f640c553cfc0875a8c834428679444e8062e9187d05b18aace catch2-3.3.1.tar.gz +sha256 122928b814b75717316c71af69bd2b43387643ba076a6ec16e7882bfb2dfacbb catch2-3.4.0.tar.gz sha256 c9bff75738922193e67fa726fa225535870d2aa1059f91452c411736284ad566 LICENSE.txt diff --git a/package/catch2/catch2.mk b/package/catch2/catch2.mk index 6e4af3d670af..580ddca5da1c 100644 --- a/package/catch2/catch2.mk +++ b/package/catch2/catch2.mk @@ -4,7 +4,7 @@ # ################################################################################ -CATCH2_VERSION = 3.3.1 +CATCH2_VERSION = 3.4.0 CATCH2_SITE = $(call github,catchorg,Catch2,v$(CATCH2_VERSION)) CATCH2_INSTALL_STAGING = YES CATCH2_INSTALL_TARGET = NO diff --git a/package/ccache/0001-fix-Work-around-GCC-12.3-bug-109241.patch b/package/ccache/0001-fix-Work-around-GCC-12.3-bug-109241.patch new file mode 100644 index 000000000000..42872597cd63 --- /dev/null +++ b/package/ccache/0001-fix-Work-around-GCC-12.3-bug-109241.patch @@ -0,0 +1,29 @@ +From 689168c292f1ed26c5f4a3070aeb649dad7facb5 Mon Sep 17 00:00:00 2001 +From: Joel Rosdahl +Date: Tue, 1 Aug 2023 12:30:12 +0200 +Subject: [PATCH] fix: Work around GCC 12.3 bug 109241 + +See also #1289. + +Upstream: https://github.com/ccache/ccache/commit/689168c292f1ed26c5f4a3070aeb649dad7facb5 + +Signed-off-by: Bernd Kuhls +--- + src/storage/local/LocalStorage.cpp | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/src/storage/local/LocalStorage.cpp b/src/storage/local/LocalStorage.cpp +index 3e5abe5074..d0a904e553 100644 +--- a/src/storage/local/LocalStorage.cpp ++++ b/src/storage/local/LocalStorage.cpp +@@ -854,7 +854,9 @@ LocalStorage::recompress(const std::optional level, + auto l2_content_lock = get_level_2_content_lock(l1_index, l2_index); + l2_content_lock.make_long_lived(lock_manager); + if (!l2_content_lock.acquire()) { +- LOG("Failed to acquire content lock for {}/{}", l1_index, l2_index); ++ // LOG_RAW+fmt::format instead of LOG due to GCC 12.3 bug #109241 ++ LOG_RAW(fmt::format( ++ "Failed to acquire content lock for {}/{}", l1_index, l2_index)); + return; + } + diff --git a/package/ccache/ccache.hash b/package/ccache/ccache.hash index 16cfad602c9a..736122e0abf6 100644 --- a/package/ccache/ccache.hash +++ b/package/ccache/ccache.hash @@ -1,4 +1,4 @@ # sha256 computed locally -sha256 a02f4e8360dc6618bc494ca35b0ae21cea080f804a4898eab1ad3fcd108eb400 ccache-3.7.12.tar.xz -sha256 ec6b1a326ff93b2cc21df88a697ae470ff6927a55b8929e7e491b315e1563361 GPL-3.0.txt -sha256 4f63223bcdee822d55a6768cc8399ffe06401d7a03cfe79e1dc305f50dc22c59 LICENSE.adoc +sha256 3d3fb3f888a5b16c4fa7ee5214cca76348afd6130e8443de5f6f2424f2076a49 ccache-4.8.2.tar.xz +sha256 80b5112739a423dfac7bed1ca8a1df3cccda3d794425441997d4462b83db4dd5 GPL-3.0.txt +sha256 55ce274f2b898dad70d3695ab13f82656fd455bd8fb6d1c85d6f7c453bef0b2e LICENSE.adoc diff --git a/package/ccache/ccache.mk b/package/ccache/ccache.mk index 97aa8b1c75df..ac4bc4aba5f5 100644 --- a/package/ccache/ccache.mk +++ b/package/ccache/ccache.mk @@ -4,27 +4,19 @@ # ################################################################################ -CCACHE_VERSION = 3.7.12 +CCACHE_VERSION = 4.8.2 CCACHE_SITE = https://github.com/ccache/ccache/releases/download/v$(CCACHE_VERSION) CCACHE_SOURCE = ccache-$(CCACHE_VERSION).tar.xz CCACHE_LICENSE = GPL-3.0+, others CCACHE_LICENSE_FILES = LICENSE.adoc GPL-3.0.txt - -# Force ccache to use its internal zlib. The problem is that without -# this, ccache would link against the zlib of the build system, but we -# might build and install a different version of zlib in $(O)/host -# afterwards, which ccache will pick up. This might break if there is -# a version mismatch. A solution would be to add host-zlib has a -# dependency of ccache, but it would require tuning the zlib .mk file -# to use HOSTCC_NOCCACHE as the compiler. Instead, we take the easy -# path: tell ccache to use its internal copy of zlib, so that ccache -# has zero dependency besides the C library. -HOST_CCACHE_CONF_OPTS += --with-bundled-zlib +HOST_CCACHE_DEPENDENCIES = host-hiredis host-zstd # We are ccache, so we can't use ccache -HOST_CCACHE_CONF_ENV = \ - CC="$(HOSTCC_NOCCACHE)" \ - CXX="$(HOSTCXX_NOCCACHE)" +HOST_CCACHE_CONF_OPTS += \ + -UCMAKE_C_COMPILER_LAUNCHER \ + -UCMAKE_CXX_COMPILER_LAUNCHER \ + -DZSTD_FROM_INTERNET=OFF \ + -DHIREDIS_FROM_INTERNET=OFF # Patch host-ccache as follows: # - Use BR_CACHE_DIR instead of CCACHE_DIR, because CCACHE_DIR @@ -33,13 +25,17 @@ HOST_CCACHE_CONF_ENV = \ # BR2_CCACHE_DIR. # - Change hard-coded last-ditch default to match path in .config, to avoid # the need to specify BR_CACHE_DIR when invoking ccache directly. -# CCache replaces "%s" with the home directory of the current user, -# So rewrite BR_CACHE_DIR to take that into consideration for SDK purpose -HOST_CCACHE_DEFAULT_CCACHE_DIR = $(patsubst $(HOME)/%,\%s/%,$(BR_CACHE_DIR)) +# CCache replaces "home_dir" with the home directory of the current user, +# so rewrite BR_CACHE_DIR to take that into consideration for SDK purpose +HOST_CCACHE_DEFAULT_CCACHE_DIR = $(patsubst $(HOME)/%,%,$(BR_CACHE_DIR)) define HOST_CCACHE_PATCH_CONFIGURATION - sed -i 's,getenv("CCACHE_DIR"),getenv("BR_CACHE_DIR"),' $(@D)/src/ccache.c - sed -i 's,"%s/.ccache","$(HOST_CCACHE_DEFAULT_CCACHE_DIR)",' $(@D)/src/conf.c + sed -i 's,getenv("CCACHE_DIR"),getenv("BR_CACHE_DIR"),' $(@D)/src/Config.cpp + sed -i 's,".ccache","$(HOST_CCACHE_DEFAULT_CCACHE_DIR)",' $(@D)/src/Config.cpp + sed -i 's,"/.cache/ccache","/$(HOST_CCACHE_DEFAULT_CCACHE_DIR)",' $(@D)/src/Config.cpp + sed -i 's,"/.config/ccache","/$(HOST_CCACHE_DEFAULT_CCACHE_DIR)",' $(@D)/src/Config.cpp + sed -i 's,getenv("XDG_CACHE_HOME"),nullptr,' $(@D)/src/Config.cpp + sed -i 's,getenv("XDG_CONFIG_HOME"),nullptr,' $(@D)/src/Config.cpp endef HOST_CCACHE_POST_PATCH_HOOKS += HOST_CCACHE_PATCH_CONFIGURATION @@ -62,7 +58,7 @@ endef HOST_CCACHE_POST_INSTALL_HOOKS += HOST_CCACHE_DO_INITIAL_SETUP endif -$(eval $(host-autotools-package)) +$(eval $(host-cmake-package)) ifeq ($(BR2_CCACHE),y) ccache-stats: host-ccache diff --git a/package/ccid/ccid.hash b/package/ccid/ccid.hash index d42d0778f17a..fcd8d10ed9eb 100644 --- a/package/ccid/ccid.hash +++ b/package/ccid/ccid.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 81549b3422469d503996d03a3aed2ef1375b359167f10d66be9e3844e729322e ccid-1.5.0.tar.bz2 +sha256 13934487e6f8b48f699a16d367cc7a1af7a3ca874de721ac6e9633beb86e7219 ccid-1.5.2.tar.bz2 sha256 a9bdde5616ecdd1e980b44f360600ee8783b1f99b8cc83a2beb163a0a390e861 COPYING diff --git a/package/ccid/ccid.mk b/package/ccid/ccid.mk index c05e28a5d274..0510b4c9ad27 100644 --- a/package/ccid/ccid.mk +++ b/package/ccid/ccid.mk @@ -4,7 +4,7 @@ # ################################################################################ -CCID_VERSION = 1.5.0 +CCID_VERSION = 1.5.2 CCID_SOURCE = ccid-$(CCID_VERSION).tar.bz2 CCID_SITE = https://ccid.apdu.fr/files CCID_LICENSE = LGPL-2.1+ diff --git a/package/check/check.hash b/package/check/check.hash index 543e78f317ed..a8cec60d16a6 100644 --- a/package/check/check.hash +++ b/package/check/check.hash @@ -1,4 +1,4 @@ # Locally computed -sha256 a8de4e0bacfb4d76dd1c618ded263523b53b85d92a146d8835eb1a52932fa20a check-0.15.2.tar.gz +sha256 20e7360f5774844c09fde696e5bf71d061e9f53b3d763d886d3318d8893fdda4 check-11970a7e112dfe243a2e68773f014687df2900e8.tar.gz # License files, locally calculated sha256 a9bdde5616ecdd1e980b44f360600ee8783b1f99b8cc83a2beb163a0a390e861 COPYING.LESSER diff --git a/package/check/check.mk b/package/check/check.mk index ccffd08ee39d..95fe5c9d5764 100644 --- a/package/check/check.mk +++ b/package/check/check.mk @@ -4,18 +4,14 @@ # ################################################################################ -CHECK_VERSION = 0.15.2 -CHECK_SITE = https://github.com/libcheck/check/releases/download/$(CHECK_VERSION) +# This is the same as tag 0.15.2, but we can't use it, as to avoid conflict +# with the released tarball that was incomplete +CHECK_VERSION = 11970a7e112dfe243a2e68773f014687df2900e8 +CHECK_SITE = $(call github,libcheck,check,$(CHECK_VERSION)) CHECK_INSTALL_STAGING = YES CHECK_DEPENDENCIES = host-pkgconf CHECK_LICENSE = LGPL-2.1+ CHECK_LICENSE_FILES = COPYING.LESSER -CHECK_CONF_OPTS = --disable-build-docs +CHECK_CONF_OPTS = -DBUILD_TESTING=OFF -DINSTALL_CHECKMK=OFF -# Having checkmk in the target makes no sense -define CHECK_REMOVE_CHECKMK - rm -f $(TARGET_DIR)/usr/bin/checkmk -endef -CHECK_POST_INSTALL_TARGET_HOOKS += CHECK_REMOVE_CHECKMK - -$(eval $(autotools-package)) +$(eval $(cmake-package)) diff --git a/package/checkpolicy/checkpolicy.hash b/package/checkpolicy/checkpolicy.hash index 358638904740..fcfd81c554de 100644 --- a/package/checkpolicy/checkpolicy.hash +++ b/package/checkpolicy/checkpolicy.hash @@ -1,5 +1,5 @@ # https://github.com/SELinuxProject/selinux/wiki/Releases -sha256 25c84edfa3a10ab8cb073b97bc55cb66377532d54a2723da9accdabd05431485 checkpolicy-3.3.tar.gz +sha256 7aa48ab2222a0b9881111d6d7f70c3014d3d9338827d9e02df105a68c0df5dbc checkpolicy-3.5.tar.gz # Hash for license file -sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 COPYING +sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 LICENSE diff --git a/package/checkpolicy/checkpolicy.mk b/package/checkpolicy/checkpolicy.mk index baf16fb8029f..024d306233a9 100644 --- a/package/checkpolicy/checkpolicy.mk +++ b/package/checkpolicy/checkpolicy.mk @@ -4,10 +4,10 @@ # ################################################################################ -CHECKPOLICY_VERSION = 3.3 +CHECKPOLICY_VERSION = 3.5 CHECKPOLICY_SITE = https://github.com/SELinuxProject/selinux/releases/download/$(CHECKPOLICY_VERSION) CHECKPOLICY_LICENSE = GPL-2.0 -CHECKPOLICY_LICENSE_FILES = COPYING +CHECKPOLICY_LICENSE_FILES = LICENSE CHECKPOLICY_DEPENDENCIES = libselinux flex host-flex host-bison diff --git a/package/chocolate-doom/chocolate-doom.mk b/package/chocolate-doom/chocolate-doom.mk index 8318c123bd95..581b2c51c230 100644 --- a/package/chocolate-doom/chocolate-doom.mk +++ b/package/chocolate-doom/chocolate-doom.mk @@ -8,6 +8,8 @@ CHOCOLATE_DOOM_VERSION = 3.0.1 CHOCOLATE_DOOM_SITE = http://www.chocolate-doom.org/downloads/$(CHOCOLATE_DOOM_VERSION) CHOCOLATE_DOOM_LICENSE = GPL-2.0+ CHOCOLATE_DOOM_LICENSE_FILES = COPYING +CHOCOLATE_DOOM_CPE_ID_VENDOR = chocolate-doom +CHOCOLATE_DOOM_CPE_ID_PRODUCT = chocolate_doom CHOCOLATE_DOOM_DEPENDENCIES = host-pkgconf sdl2 sdl2_mixer sdl2_net # Avoid installing desktop entries, icons, etc. diff --git a/package/chrony/chrony.hash b/package/chrony/chrony.hash index 9c0e11757ba1..2cf6cca031b6 100644 --- a/package/chrony/chrony.hash +++ b/package/chrony/chrony.hash @@ -1,5 +1,5 @@ # Locally calculated after checking pgp signature -# https://download.tuxfamily.org/chrony/chrony-4.3-tar-gz-asc.txt -sha256 9d0da889a865f089a5a21610ffb6713e3c9438ce303a63b49c2fb6eaff5b8804 chrony-4.3.tar.gz +# https://download.tuxfamily.org/chrony/chrony-4.4-tar-gz-asc.txt +sha256 eafb07e6daf92b142200f478856dfed6efc9ea2d146eeded5edcb09b93127088 chrony-4.4.tar.gz # Locally calculated sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/chrony/chrony.mk b/package/chrony/chrony.mk index 86f23d906056..e7e6931a2a84 100644 --- a/package/chrony/chrony.mk +++ b/package/chrony/chrony.mk @@ -4,7 +4,7 @@ # ################################################################################ -CHRONY_VERSION = 4.3 +CHRONY_VERSION = 4.4 CHRONY_SITE = http://download.tuxfamily.org/chrony CHRONY_LICENSE = GPL-2.0 CHRONY_LICENSE_FILES = COPYING diff --git a/package/civetweb/0001-resources-Makefile.in-lua-fix-build-with-Lua-5.1.patch b/package/civetweb/0001-resources-Makefile.in-lua-fix-build-with-Lua-5.1.patch new file mode 100644 index 000000000000..ac9655caf5d2 --- /dev/null +++ b/package/civetweb/0001-resources-Makefile.in-lua-fix-build-with-Lua-5.1.patch @@ -0,0 +1,44 @@ +From 3afcd237e509a6700c449056dcc5b9092af31e6a Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Mon, 6 Nov 2023 21:38:02 +0100 +Subject: [PATCH] resources/Makefile.in-lua: fix build with Lua 5.1 + +Fix the following build failure with Lua 5.1 raised since version 1.16 +and +https://github.com/civetweb/civetweb/commit/82ba5a04c9a1ca980d8dfe00c18e086017e8ab25: + +/home/buildroot/autobuild/instance-1/output-1/host/opt/ext-toolchain/bin/../lib/gcc/sh4-buildroot-linux-gnu/13.2.0/../../../../sh4-buildroot-linux-gnu/bin/ld: out/src/third_party/lua_struct.o: in function `luaopen_struct': +lua_struct.c:(.text+0xce4): undefined reference to `luaL_newlib' + +Fixes: + - http://autobuild.buildroot.org/results/7459b504e52f473c5830c0f3c7bffd037f6e1770 + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/civetweb/civetweb/pull/1211 +--- + resources/Makefile.in-lua | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/resources/Makefile.in-lua b/resources/Makefile.in-lua +index d3038f66..45f80181 100644 +--- a/resources/Makefile.in-lua ++++ b/resources/Makefile.in-lua +@@ -150,6 +150,7 @@ CFLAGS += -DUSE_LUA_FILE_SYSTEM + #SOURCE_DIRS = $(LFS_DIR) + + ++ifneq ($(WITH_LUA_VERSION), 501) + LXX_DIR = src/third_party + LXX_SOURCE_FILES = lua_struct.c + LXX_SOURCES = $(addprefix $(LXX_DIR)/, $(LXX_SOURCE_FILES)) +@@ -159,6 +160,7 @@ OBJECTS += $(LXX_OBJECTS) + CFLAGS += $(LXX_CFLAGS) + CFLAGS += -DUSE_LUA_STRUCT + #SOURCE_DIRS = $(LXX_DIR) ++endif + + + ifneq ($(WITH_LUA_VERSION), 501) +-- +2.42.0 + diff --git a/package/civetweb/civetweb.hash b/package/civetweb/civetweb.hash index bdf6d77427f0..0daa6efee2bf 100644 --- a/package/civetweb/civetweb.hash +++ b/package/civetweb/civetweb.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 90a533422944ab327a4fbb9969f0845d0dba05354f9cacce3a5005fa59f593b9 civetweb-1.15.tar.gz -sha256 24d3d2aee56ae3cddcdf3392c1250877818108314233cf15f2bc9eb3ac298934 LICENSE.md +sha256 f0e471c1bf4e7804a6cfb41ea9d13e7d623b2bcc7bc1e2a4dd54951a24d60285 civetweb-1.16.tar.gz +sha256 bc24af9ffb777f4842f8556ac752efd5ea212c55d2eccfae58cc2c2a24ea1f03 LICENSE.md diff --git a/package/civetweb/civetweb.mk b/package/civetweb/civetweb.mk index a299de85e919..633ae21c00b2 100644 --- a/package/civetweb/civetweb.mk +++ b/package/civetweb/civetweb.mk @@ -4,7 +4,7 @@ # ################################################################################ -CIVETWEB_VERSION = 1.15 +CIVETWEB_VERSION = 1.16 CIVETWEB_SITE = $(call github,civetweb,civetweb,v$(CIVETWEB_VERSION)) CIVETWEB_LICENSE = MIT CIVETWEB_LICENSE_FILES = LICENSE.md diff --git a/package/cjson/cjson.hash b/package/cjson/cjson.hash index c39e884cdd95..74844d6aa680 100644 --- a/package/cjson/cjson.hash +++ b/package/cjson/cjson.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 5308fd4bd90cef7aa060558514de6a1a4a0819974a26e6ed13973c5f624c24b2 cjson-1.7.15.tar.gz +sha256 451131a92c55efc5457276807fc0c4c2c2707c9ee96ef90c47d68852d5384c6c cjson-1.7.16.tar.gz sha256 a36dda207c36db5818729c54e7ad4e8b0c6fba847491ba64f372c1a2037b6d5c LICENSE diff --git a/package/cjson/cjson.mk b/package/cjson/cjson.mk index ad9d76a4bab2..7ed732ac903e 100644 --- a/package/cjson/cjson.mk +++ b/package/cjson/cjson.mk @@ -4,7 +4,7 @@ # ################################################################################ -CJSON_VERSION = 1.7.15 +CJSON_VERSION = 1.7.16 CJSON_SITE = $(call github,DaveGamble,cjson,v$(CJSON_VERSION)) CJSON_INSTALL_STAGING = YES CJSON_LICENSE = MIT diff --git a/package/clamav/0001-mbox-do-not-use-backtrace-if-using-uClibc-without-ba.patch b/package/clamav/0001-mbox-do-not-use-backtrace-if-using-uClibc-without-ba.patch deleted file mode 100644 index d4be5c7b297f..000000000000 --- a/package/clamav/0001-mbox-do-not-use-backtrace-if-using-uClibc-without-ba.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 053bac34b9f0f947c58fcdf80ac03d5a6b05aa12 Mon Sep 17 00:00:00 2001 -From: "Yann E. MORIN" -Date: Mon, 7 May 2018 23:15:58 +0200 -Subject: [PATCH] mbox: do not use backtrace if using uClibc without backtrace - support - -Since uClibc can be configured without support for backtrace, disable -the backtrace if we are building with a uClibc that was built without -backtrace. - -This is a bit hacky, and would greatly benefit from a test in ./configure -instead, but does nicely as a quick fix for now. - -Signed-off-by: "Yann E. MORIN" -Signed-off-by: Bernd Kuhls -[Bernd: rebased for 0.103.0] ---- - libclamav/mbox.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libclamav/mbox.c b/libclamav/mbox.c -index 71f540c0a..4851297a9 100644 ---- a/libclamav/mbox.c -+++ b/libclamav/mbox.c -@@ -91,7 +91,7 @@ - #include - #endif - --#if __GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 -+#if __GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 && !defined(__UCLIBC__) || defined(__UCLIBC_HAS_BACKTRACE__) - #define HAVE_BACKTRACE - #endif - #endif --- -2.14.3 - diff --git a/package/clamav/Config.in b/package/clamav/Config.in index 2857f9cbf439..ae5cad036ad7 100644 --- a/package/clamav/Config.in +++ b/package/clamav/Config.in @@ -1,14 +1,20 @@ config BR2_PACKAGE_CLAMAV bool "clamav" depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # fork() depends on !BR2_STATIC_LIBS # dlopen depends on BR2_USE_WCHAR + select BR2_PACKAGE_BZIP2 + select BR2_PACKAGE_HOST_RUSTC + select BR2_PACKAGE_JSON_C select BR2_PACKAGE_LIBCURL select BR2_PACKAGE_LIBMSPACK + select BR2_PACKAGE_LIBXML2 select BR2_PACKAGE_MUSL_FTS if !BR2_TOOLCHAIN_USES_GLIBC select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_PCRE2 select BR2_PACKAGE_ZLIB select BR2_PACKAGE_ZLIB_FORCE_LIBZLIB help @@ -20,4 +26,5 @@ config BR2_PACKAGE_CLAMAV comment "clamav needs a toolchain w/ C++, dynamic library, threads, wchar" depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS \ || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR + depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS depends on BR2_USE_MMU diff --git a/package/clamav/clamav.hash b/package/clamav/clamav.hash index 27f9b16a3922..cb4f67156c7f 100644 --- a/package/clamav/clamav.hash +++ b/package/clamav/clamav.hash @@ -1,14 +1,14 @@ # Locally calculated -sha256 6f49da6ee927936de13d359e559d3944248e3a257d40b80b6c99ebe6fe8c8c3f clamav-0.103.8.tar.gz -sha256 0c4fd2fa9733fc9122503797648710851e4ee6d9e4969dd33fcbd8c63cd2f584 COPYING -sha256 d72a145c90918184a05ef65a04c9e6f7466faa59bc1b82c8f6a8ddc7ddcb9bed COPYING.bzip2 -sha256 dfb818a0d41411c6fb1c193c68b73018ceadd1994bda41ad541cbff292894bc6 COPYING.file -sha256 6dce638b76399e7521ad8e182d3e33e4496c85b3b69b6ff434b53017101e82ad COPYING.getopt -sha256 a9bdde5616ecdd1e980b44f360600ee8783b1f99b8cc83a2beb163a0a390e861 COPYING.LGPL -sha256 e3a9b913515a42f8ff3ef1551c3a2cdba383c39ed959729e0e2911219496ad74 COPYING.llvm -sha256 d96d71b66aa32c4a2d1619b9ca3347dafa9460bcf0fb5ac2408916067ad31dfc COPYING.lzma -sha256 accdcf2455c07b99abea59016b3663eaef926a92092d103bfaa25fed27cf6b24 COPYING.pcre -sha256 e2c1395a3d9fea6d5d25847c9d783db6e2cc8b085b4025861f459139c5dfd90b COPYING.regex -sha256 1faccc6b5c7b958fb807a3f573d5be9bf7889fe898f7e0617c544b05a81bfd00 COPYING.unrar -sha256 a20d6317c5384e8d4c05f9c31097878675d9429ec46090656166039cc10bc957 COPYING.YARA -sha256 c2f77553f8d870c5635b0dace0519253233f172b33ce1fdf6578610706294eee COPYING.zlib +sha256 3d6b99644874558b7de5faf9b340737a9bbc1083878fcd95a49f989c7c980146 clamav-1.0.4.tar.gz +sha256 0c4fd2fa9733fc9122503797648710851e4ee6d9e4969dd33fcbd8c63cd2f584 COPYING.txt +sha256 d72a145c90918184a05ef65a04c9e6f7466faa59bc1b82c8f6a8ddc7ddcb9bed COPYING/COPYING.bzip2 +sha256 dfb818a0d41411c6fb1c193c68b73018ceadd1994bda41ad541cbff292894bc6 COPYING/COPYING.file +sha256 6dce638b76399e7521ad8e182d3e33e4496c85b3b69b6ff434b53017101e82ad COPYING/COPYING.getopt +sha256 a9bdde5616ecdd1e980b44f360600ee8783b1f99b8cc83a2beb163a0a390e861 COPYING/COPYING.LGPL +sha256 e3a9b913515a42f8ff3ef1551c3a2cdba383c39ed959729e0e2911219496ad74 COPYING/COPYING.llvm +sha256 c7cbcf00b59dc61165b655b45bf6c21bb685d593861e7abbc78460c499167b42 COPYING/COPYING.lzma +sha256 accdcf2455c07b99abea59016b3663eaef926a92092d103bfaa25fed27cf6b24 COPYING/COPYING.pcre +sha256 e2c1395a3d9fea6d5d25847c9d783db6e2cc8b085b4025861f459139c5dfd90b COPYING/COPYING.regex +sha256 1faccc6b5c7b958fb807a3f573d5be9bf7889fe898f7e0617c544b05a81bfd00 COPYING/COPYING.unrar +sha256 a20d6317c5384e8d4c05f9c31097878675d9429ec46090656166039cc10bc957 COPYING/COPYING.YARA +sha256 c2f77553f8d870c5635b0dace0519253233f172b33ce1fdf6578610706294eee COPYING/COPYING.zlib diff --git a/package/clamav/clamav.mk b/package/clamav/clamav.mk index 0f0491bf0d3f..c9012261faa3 100644 --- a/package/clamav/clamav.mk +++ b/package/clamav/clamav.mk @@ -4,30 +4,38 @@ # ################################################################################ -CLAMAV_VERSION = 0.103.8 +CLAMAV_VERSION = 1.0.4 CLAMAV_SITE = https://www.clamav.net/downloads/production CLAMAV_LICENSE = GPL-2.0 -CLAMAV_LICENSE_FILES = COPYING COPYING.bzip2 COPYING.file COPYING.getopt \ - COPYING.LGPL COPYING.llvm COPYING.lzma COPYING.pcre COPYING.regex \ - COPYING.unrar COPYING.zlib +CLAMAV_LICENSE_FILES = \ + COPYING.txt \ + COPYING/COPYING.bzip2 \ + COPYING/COPYING.file \ + COPYING/COPYING.getopt \ + COPYING/COPYING.LGPL \ + COPYING/COPYING.llvm \ + COPYING/COPYING.lzma \ + COPYING/COPYING.pcre \ + COPYING/COPYING.regex \ + COPYING/COPYING.unrar \ + COPYING/COPYING.zlib CLAMAV_CPE_ID_VENDOR = clamav CLAMAV_SELINUX_MODULES = clamav # affects only Cisco devices CLAMAV_IGNORE_CVES += CVE-2016-1405 CLAMAV_DEPENDENCIES = \ + bzip2 \ host-pkgconf \ + host-rustc \ + json-c \ libcurl \ libmspack \ + libxml2 \ openssl \ + pcre2 \ zlib \ $(TARGET_NLS_DEPENDENCIES) -# mmap cannot be detected when cross-compiling, needed for mempool support -CLAMAV_CONF_ENV = \ - ac_cv_c_mmap_private=yes \ - have_cv_ipv6=yes \ - OBJC=$(TARGET_CC) - ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) CLAMAV_LIBS += -latomic endif @@ -40,66 +48,27 @@ endif CLAMAV_CONF_ENV += LIBS="$(CLAMAV_LIBS)" CLAMAV_CONF_OPTS = \ - --with-dbdir=/var/lib/clamav \ - --with-libcurl=$(STAGING_DIR)/usr \ - --with-openssl=$(STAGING_DIR)/usr \ - --with-system-libmspack=$(STAGING_DIR)/usr \ - --with-zlib=$(STAGING_DIR)/usr \ - --disable-zlib-vcheck \ - --disable-rpath \ - --disable-clamav \ - --disable-milter \ - --disable-llvm \ - --disable-clamdtop \ - --enable-mempool - -ifeq ($(BR2_PACKAGE_BZIP2),y) -CLAMAV_DEPENDENCIES += bzip2 -# autodetection gets confused if host has bzip2, so force it -CLAMAV_CONF_ENV += \ - ac_cv_libbz2_libs=-lbz2 \ - ac_cv_libbz2_ltlibs=-lbz2 -else -CLAMAV_CONF_OPTS += --disable-bzip2 -endif - -ifeq ($(BR2_PACKAGE_JSON_C),y) -CLAMAV_CONF_OPTS += --with-libjson=$(STAGING_DIR)/usr -CLAMAV_DEPENDENCIES += json-c -else -CLAMAV_CONF_OPTS += --without-libjson -endif - -ifeq ($(BR2_PACKAGE_LIBXML2),y) -CLAMAV_CONF_ENV += ac_cv_path_xmlconfig=$(STAGING_DIR)/usr/bin/xml2-config -CLAMAV_CONF_OPTS += --with-xml=$(STAGING_DIR)/usr -CLAMAV_DEPENDENCIES += libxml2 -else -CLAMAV_CONF_OPTS += --disable-xml -endif - -ifeq ($(BR2_PACKAGE_LIBICONV),y) -CLAMAV_CONF_OPTS += --with-iconv -CLAMAV_DEPENDENCIES += libiconv -else -CLAMAV_CONF_OPTS += --without-iconv -endif - -ifeq ($(BR2_PACKAGE_PCRE2),y) -CLAMAV_CONF_OPTS += --with-pcre=$(STAGING_DIR)/usr -CLAMAV_DEPENDENCIES += pcre2 -else ifeq ($(BR2_PACKAGE_PCRE),y) -CLAMAV_CONF_OPTS += --with-pcre=$(STAGING_DIR)/usr -CLAMAV_DEPENDENCIES += pcre -else -CLAMAV_CONF_OPTS += --without-pcre -endif + -DCMAKE_SKIP_INSTALL_RPATH=ON \ + -DENABLE_JSON_SHARED=ON \ + -DENABLE_MAN_PAGES=OFF \ + -DENABLE_MILTER=OFF \ + -DENABLE_TESTS=OFF \ + -DHAVE_SYSTEM_LFS_FTS=ON \ + -DRUST_COMPILER_TARGET=$(RUSTC_TARGET_NAME) \ + -Dtest_run_result=ON \ + -Dtest_run_result__TRYRUN_OUTPUT=ON +ifeq ($(BR2_PACKAGE_NCURSES),y) +CLAMAV_CONF_OPTS += -DENABLE_APP=ON +CLAMAV_DEPENDENCIES += ncurses ifeq ($(BR2_INIT_SYSTEMD),y) -CLAMAV_CONF_OPTS += --with-systemdsystemunitdir=/usr/lib/systemd/system +CLAMAV_CONF_OPTS += -DENABLE_SYSTEMD=ON CLAMAV_DEPENDENCIES += systemd else -CLAMAV_CONF_OPTS += --with-systemdsystemunitdir=no +CLAMAV_CONF_OPTS += -DENABLE_SYSTEMD=OFF +endif +else +CLAMAV_CONF_OPTS += -DENABLE_APP=OFF -DENABLE_SYSTEMD=OFF endif -$(eval $(autotools-package)) +$(eval $(cmake-package)) diff --git a/package/clang/Config.in b/package/clang/Config.in deleted file mode 100644 index e4d455781e44..000000000000 --- a/package/clang/Config.in +++ /dev/null @@ -1,27 +0,0 @@ -config BR2_PACKAGE_CLANG - bool "clang" - depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 - depends on BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_INSTALL_LIBSTDCPP - depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::shared_future - depends on !BR2_STATIC_LIBS - depends on BR2_USE_WCHAR # std::wstring - depends on BR2_HOST_GCC_AT_LEAST_5 - select BR2_PACKAGE_LLVM - help - Clang is a C/C++, Objective C/C++ and OpenCL C front-end - for the LLVM compiler. - - http://clang.llvm.org - -comment "clang needs a toolchain w/ wchar, threads, C++, gcc >= 5, dynamic library, host gcc >= 5" - depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS - depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \ - !BR2_TOOLCHAIN_GCC_AT_LEAST_5 \ - || BR2_STATIC_LIBS || !BR2_USE_WCHAR \ - || !BR2_HOST_GCC_AT_LEAST_5 - -comment "clang needs a toolchain not affected by GCC bug 64735" - depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS - depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735 diff --git a/package/clang/clang.hash b/package/clang/clang.hash deleted file mode 100644 index 0136b806641a..000000000000 --- a/package/clang/clang.hash +++ /dev/null @@ -1,3 +0,0 @@ -# locally calculated -sha256 0a8288f065d1f57cb6d96da4d2965cbea32edc572aa972e466e954d17148558b clang-11.1.0.src.tar.xz -sha256 ebcd9bbf783a73d05c53ba4d586b8d5813dcdf3bbec50265860ccc885e606f47 LICENSE.TXT diff --git a/package/cli11/cli11.hash b/package/cli11/cli11.hash index 12e5b4fb55e8..42ab5d131139 100644 --- a/package/cli11/cli11.hash +++ b/package/cli11/cli11.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 378da73d2d1d9a7b82ad6ed2b5bda3e7bc7093c4034a1d680a2e009eb067e7b2 cli11-2.3.1.tar.gz -sha256 89022151dbf5827a22430557ef2f8a75808dd25fa1e9a12709ef5421d363e66d LICENSE +sha256 aac0ab42108131ac5d3344a9db0fdf25c4db652296641955720a4fbe52334e22 cli11-2.3.2.tar.gz +sha256 4110754959bd99e0ebc34001ed0402ff5f371364e83f9db6d1e230d02368984f LICENSE diff --git a/package/cli11/cli11.mk b/package/cli11/cli11.mk index b02bd4478ff0..349c14fe6050 100644 --- a/package/cli11/cli11.mk +++ b/package/cli11/cli11.mk @@ -4,7 +4,7 @@ # ################################################################################ -CLI11_VERSION = 2.3.1 +CLI11_VERSION = 2.3.2 CLI11_SITE = $(call github,CLIUtils,CLI11,v$(CLI11_VERSION)) CLI11_LICENSE = BSD-3-Clause CLI11_LICENSE_FILES = LICENSE diff --git a/package/cmake/0001-rename-cmake-rootfile.patch b/package/cmake/0001-rename-cmake-rootfile.patch index a8cd3ee82058..7e6e0a8cf775 100644 --- a/package/cmake/0001-rename-cmake-rootfile.patch +++ b/package/cmake/0001-rename-cmake-rootfile.patch @@ -12,10 +12,12 @@ This buildroot-specific patch makes sure ctest looks also for [Vincent: tweak patch for 3.6.3] [James: tweak patch for 3.15.4] +[Bernd: tweak patch for 3.27.0] Signed-off-by: Davide Viti Signed-off-by: Vicente Olivert Riera Signed-off-by: James Hilliard +Signed-off-by: Bernd Kuhls --- Source/cmake.cxx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) @@ -24,8 +26,8 @@ diff --git a/Source/cmake.cxx b/Source/cmake.cxx index 3772f09985..c317e4af38 100644 --- a/Source/cmake.cxx +++ b/Source/cmake.cxx -@@ -1009,7 +1009,12 @@ int cmake::AddCMakePaths() - "Path to cpack program executable.", cmStateEnums::INTERNAL); +@@ -1891,7 +1891,12 @@ int cmake::AddCMakePaths() + cmStateEnums::INTERNAL); #endif if (!cmSystemTools::FileExists( - (cmSystemTools::GetCMakeRoot() + "/Modules/CMake.cmake"))) { diff --git a/package/cmake/Config.in b/package/cmake/Config.in index 3c47fdcb497d..00692fe78a9d 100644 --- a/package/cmake/Config.in +++ b/package/cmake/Config.in @@ -6,7 +6,7 @@ config BR2_PACKAGE_CMAKE_ARCH_SUPPORTS BR2_mipsel || BR2_mips64el || BR2_powerpc || \ BR2_powerpc64 || BR2_powerpc64le || BR2_sparc || \ BR2_i386 || BR2_x86_64 || BR2_xtensa || \ - BR2_s390x + BR2_s390x || BR2_riscv config BR2_PACKAGE_CMAKE bool @@ -14,7 +14,7 @@ config BR2_PACKAGE_CMAKE config BR2_PACKAGE_CMAKE_CTEST bool "ctest" depends on BR2_PACKAGE_CMAKE_ARCH_SUPPORTS - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # from jsoncpp + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # jsoncpp, libuv depends on BR2_USE_WCHAR # libarchive depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_STATIC_LIBS @@ -40,10 +40,10 @@ config BR2_PACKAGE_CMAKE_CTEST http://www.cmake.org/ -comment "ctest needs a toolchain w/ C++, wchar, dynamic library, gcc >= 4.7, NPTL" +comment "ctest needs a toolchain w/ C++, wchar, dynamic library, gcc >= 4.9, NPTL" depends on BR2_PACKAGE_CMAKE_ARCH_SUPPORTS depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ - BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 || \ + BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \ !BR2_TOOLCHAIN_HAS_THREADS_NPTL diff --git a/package/cmake/Config.in.host b/package/cmake/Config.in.host index b2e210ee2cb0..0935e9a564ed 100644 --- a/package/cmake/Config.in.host +++ b/package/cmake/Config.in.host @@ -9,3 +9,55 @@ config BR2_PACKAGE_HOST_CMAKE the compiler environment of your choice. http://www.cmake.org/ + +# The minimum system cmake version we expect if 3.18 as provided by +# Debian bullseye, that we use in our reference build docker image. +config BR2_HOST_CMAKE_AT_LEAST_3_19 + bool + +config BR2_HOST_CMAKE_AT_LEAST_3_20 + bool + select BR2_HOST_CMAKE_AT_LEAST_3_19 + +config BR2_HOST_CMAKE_AT_LEAST_3_21 + bool + select BR2_HOST_CMAKE_AT_LEAST_3_20 + +config BR2_HOST_CMAKE_AT_LEAST_3_22 + bool + select BR2_HOST_CMAKE_AT_LEAST_3_21 + +config BR2_HOST_CMAKE_AT_LEAST_3_23 + bool + select BR2_HOST_CMAKE_AT_LEAST_3_22 + +config BR2_HOST_CMAKE_AT_LEAST_3_24 + bool + select BR2_HOST_CMAKE_AT_LEAST_3_23 + +config BR2_HOST_CMAKE_AT_LEAST_3_25 + bool + select BR2_HOST_CMAKE_AT_LEAST_3_24 + +config BR2_HOST_CMAKE_AT_LEAST_3_26 + bool + select BR2_HOST_CMAKE_AT_LEAST_3_25 + +config BR2_HOST_CMAKE_AT_LEAST_3_27 + bool + select BR2_HOST_CMAKE_AT_LEAST_3_26 + +# This order guarantees that the highest version is set, as kconfig +# stops affecting a value on the first matching default. +config BR2_HOST_CMAKE_AT_LEAST + string + default "3.27" if BR2_HOST_CMAKE_AT_LEAST_3_27 + default "3.26" if BR2_HOST_CMAKE_AT_LEAST_3_26 + default "3.25" if BR2_HOST_CMAKE_AT_LEAST_3_25 + default "3.24" if BR2_HOST_CMAKE_AT_LEAST_3_24 + default "3.23" if BR2_HOST_CMAKE_AT_LEAST_3_23 + default "3.22" if BR2_HOST_CMAKE_AT_LEAST_3_22 + default "3.21" if BR2_HOST_CMAKE_AT_LEAST_3_21 + default "3.20" if BR2_HOST_CMAKE_AT_LEAST_3_20 + default "3.19" if BR2_HOST_CMAKE_AT_LEAST_3_19 + default "3.18" diff --git a/package/cmake/cmake.hash b/package/cmake/cmake.hash index 43b5efb0f05f..e495061bae95 100644 --- a/package/cmake/cmake.hash +++ b/package/cmake/cmake.hash @@ -1,5 +1,5 @@ -# From https://cmake.org/files/v3.22/cmake-3.22.3-SHA-256.txt -sha256 9f8469166f94553b6978a16ee29227ec49a2eb5ceb608275dec40d8ae0d1b5a0 cmake-3.22.3.tar.gz +# From https://cmake.org/files/v3.27/cmake-3.27.7-SHA-256.txt +sha256 08f71a106036bf051f692760ef9558c0577c42ac39e96ba097e7662bd4158d8e cmake-3.27.7.tar.gz # Locally calculated -sha256 f1a4326266aada65b307dac05161a9d02d3dba4fb08b50cb26e3c24cc8a86e97 Copyright.txt +sha256 4a01ccf2dc580ba570d02bc015bbe0ec92f1f318717aae9540ba841ba7946756 Copyright.txt diff --git a/package/cmake/cmake.mk b/package/cmake/cmake.mk index 053658fad60d..41278bf6db8f 100644 --- a/package/cmake/cmake.mk +++ b/package/cmake/cmake.mk @@ -4,8 +4,9 @@ # ################################################################################ -CMAKE_VERSION_MAJOR = 3.22 -CMAKE_VERSION = $(CMAKE_VERSION_MAJOR).3 +# When updating the version, please also update BR2_HOST_CMAKE_AT_LEAST_X_Y +CMAKE_VERSION_MAJOR = 3.27 +CMAKE_VERSION = $(CMAKE_VERSION_MAJOR).7 CMAKE_SITE = https://cmake.org/files/v$(CMAKE_VERSION_MAJOR) CMAKE_LICENSE = BSD-3-Clause CMAKE_LICENSE_FILES = Copyright.txt @@ -32,6 +33,7 @@ CMAKE_CONF_OPTS = \ -DKWSYS_CHAR_IS_SIGNED=TRUE \ -DCMAKE_USE_SYSTEM_LIBRARIES=1 \ -DCTEST_USE_XMLRPC=OFF \ + -DCMake_ENABLE_DEBUGGER=0 \ -DBUILD_CursesDialog=OFF # Get rid of -I* options from $(HOST_CPPFLAGS) to prevent that a @@ -40,9 +42,16 @@ CMAKE_CONF_OPTS = \ HOST_CMAKE_CFLAGS = $(shell echo $(HOST_CFLAGS) | sed -r "s%$(HOST_CPPFLAGS)%%") HOST_CMAKE_CXXFLAGS = $(shell echo $(HOST_CXXFLAGS) | sed -r "s%$(HOST_CPPFLAGS)%%") +# We may be a ccache dependency, so we can't use ccache +HOST_CMAKE_CONFIGURE_OPTS = \ + $(HOST_CONFIGURE_OPTS) \ + CC="$(HOSTCC_NOCCACHE)" \ + GCC="$(HOSTCC_NOCCACHE)" \ + CXX="$(HOSTCXX_NOCCACHE)" + define HOST_CMAKE_CONFIGURE_CMDS (cd $(@D); \ - $(HOST_CONFIGURE_OPTS) \ + $(HOST_CMAKE_CONFIGURE_OPTS) \ CFLAGS="$(HOST_CMAKE_CFLAGS)" \ ./bootstrap --prefix=$(HOST_DIR) \ --parallel=$(PARALLEL_JOBS) -- \ diff --git a/package/cmocka/cmocka.mk b/package/cmocka/cmocka.mk index eafb4898e1e4..297f95f46504 100644 --- a/package/cmocka/cmocka.mk +++ b/package/cmocka/cmocka.mk @@ -21,4 +21,9 @@ ifeq ($(BR2_SHARED_STATIC_LIBS),y) CMOCKA_CONF_OPTS += -DWITH_STATIC_LIB=ON endif +# gcc for ARM Thumb1 doesn't implement -fstack-clash-protection +ifeq ($(BR2_ARM_INSTRUCTIONS_THUMB),y) +CMOCKA_CONF_OPTS += -DWITH_STACK_CLASH_PROTECTION=OFF +endif + $(eval $(cmake-package)) diff --git a/package/cni-plugins/cni-plugins.hash b/package/cni-plugins/cni-plugins.hash index 0c3e07c91c30..90cb18460449 100644 --- a/package/cni-plugins/cni-plugins.hash +++ b/package/cni-plugins/cni-plugins.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 f3496ddda9c7770a0b695b67ae7ee80a4ee331ac2745af4830054b81627f79b7 cni-plugins-1.2.0.tar.gz +sha256 f9871b9f6ccb51d2b264532e96521e44f926928f91434b56ce135c95becf2901 cni-plugins-1.3.0.tar.gz sha256 b40930bbcf80744c86c46a12bc9da056641d722716c378f5659b9e555ef833e1 LICENSE diff --git a/package/cni-plugins/cni-plugins.mk b/package/cni-plugins/cni-plugins.mk index be02c2ff45da..bccc1674aadd 100644 --- a/package/cni-plugins/cni-plugins.mk +++ b/package/cni-plugins/cni-plugins.mk @@ -4,13 +4,15 @@ # ################################################################################ -CNI_PLUGINS_VERSION = 1.2.0 +CNI_PLUGINS_VERSION = 1.3.0 CNI_PLUGINS_SITE = $(call github,containernetworking,plugins,v$(CNI_PLUGINS_VERSION)) CNI_PLUGINS_LICENSE = Apache-2.0 CNI_PLUGINS_LICENSE_FILES = LICENSE CNI_PLUGINS_BUILD_TARGETS = \ plugins/ipam/dhcp \ + plugins/ipam/host-local \ + plugins/ipam/static \ plugins/main/bridge \ plugins/main/dummy \ plugins/main/host-device \ @@ -18,6 +20,7 @@ CNI_PLUGINS_BUILD_TARGETS = \ plugins/main/loopback \ plugins/main/macvlan \ plugins/main/ptp \ + plugins/main/tap \ plugins/main/vlan \ plugins/meta/bandwidth \ plugins/meta/firewall \ diff --git a/package/cog/cog.hash b/package/cog/cog.hash index 2ea3ddee080b..177113bb42e9 100644 --- a/package/cog/cog.hash +++ b/package/cog/cog.hash @@ -1,7 +1,7 @@ -# From https://wpewebkit.org/releases/cog-0.16.1.tar.xz.sums -md5 1489740db6b4ea568578035c30b8b2f4 cog-0.16.1.tar.xz -sha1 1235203085e7ccd8fc76eab6bdfcdb2e3ae38ea9 cog-0.16.1.tar.xz -sha256 37c5f14123b8dcf077839f6c60f0d721d2a91bb37829e796f420126e6b0d38b5 cog-0.16.1.tar.xz +# From https://wpewebkit.org/releases/cog-0.18.1.tar.xz.sums +md5 204ae9353ed828e4ac39b1dd4c5c35dd cog-0.18.1.tar.xz +sha1 f0f0ebcd279170f427be0ad57fd356faff1a2732 cog-0.18.1.tar.xz +sha256 72e3a84052b459e2d53d0e8b947f20e27bf5d8049766c4c1594eb9c6b6cf7ab3 cog-0.18.1.tar.xz # Hashes for license files: sha256 e6c42d93c68b292bcccf6d2ec3e13da85df90b718ba27c2c2a01053a9d009252 COPYING diff --git a/package/cog/cog.mk b/package/cog/cog.mk index da4bfc7ac605..bd34f124c536 100644 --- a/package/cog/cog.mk +++ b/package/cog/cog.mk @@ -4,7 +4,7 @@ # ################################################################################ -COG_VERSION = 0.16.1 +COG_VERSION = 0.18.1 COG_SITE = https://wpewebkit.org/releases COG_SOURCE = cog-$(COG_VERSION).tar.xz COG_INSTALL_STAGING = YES @@ -15,7 +15,7 @@ COG_CONF_OPTS = \ -Ddocumentation=false \ -Dmanpages=false \ -Dprograms=true \ - -Dsoup2=enabled \ + -Dwpe_api=2.0 \ -Dcog_home_uri='$(call qstrip,$(BR2_PACKAGE_COG_PROGRAMS_HOME_URI))' \ -Dplatforms='$(subst $(space),$(comma),$(strip $(COG_PLATFORMS_LIST)))' diff --git a/package/compiler-rt/Config.in b/package/compiler-rt/Config.in deleted file mode 100644 index 02169b66c081..000000000000 --- a/package/compiler-rt/Config.in +++ /dev/null @@ -1,15 +0,0 @@ -config BR2_PACKAGE_COMPILER_RT - bool "compiler-rt" - depends on BR2_PACKAGE_LLVM - depends on BR2_TOOLCHAIN_USES_GLIBC # asan lib requires - depends on BR2_HOST_GCC_AT_LEAST_5 # host-clang - help - A collection of runtime libraries primarily used by clang and - llvm to provide builtins, sanitizer runtimes, and profiling - at runtime. - - https://compiler-rt.llvm.org/ - -comment "compiler-rt requires llvm to be enabled, a glibc toolchain, host gcc >= 5" - depends on !BR2_PACKAGE_LLVM - depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_HOST_GCC_AT_LEAST_5 diff --git a/package/compiler-rt/compiler-rt.hash b/package/compiler-rt/compiler-rt.hash deleted file mode 100644 index 8ee010ac5ad3..000000000000 --- a/package/compiler-rt/compiler-rt.hash +++ /dev/null @@ -1,3 +0,0 @@ -# Locally computed: -sha256 def1fc00c764cd3abbba925c712ac38860a756a43b696b291f46fee09e453274 compiler-rt-11.1.0.src.tar.xz -sha256 1a8f1058753f1ba890de984e48f0242a3a5c29a6a8f2ed9fd813f36985387e8d LICENSE.TXT diff --git a/package/composer/Config.in.host b/package/composer/Config.in.host new file mode 100644 index 000000000000..ced73ceae95e --- /dev/null +++ b/package/composer/Config.in.host @@ -0,0 +1,8 @@ +config BR2_PACKAGE_HOST_COMPOSER + bool "host composer" + help + Composer is a tool for dependency management in PHP. It + allows you to declare the libraries your project depends on + and it will manage (install/update) them for you. + + https://getcomposer.org/ diff --git a/package/composer/composer.hash b/package/composer/composer.hash new file mode 100644 index 000000000000..123d6de1beff --- /dev/null +++ b/package/composer/composer.hash @@ -0,0 +1,4 @@ +# Hash from https://getcomposer.org/download/ +sha256 f07934fad44f9048c0dc875a506cca31cc2794d6aebfc1867f3b1fbf48dce2c5 composer-2.5.8.phar +# Locally calculated +sha256 c8cce4b6b9729f264ffdf9296d505d63432497feeed1f586d1902b942197e024 LICENSE diff --git a/package/composer/composer.mk b/package/composer/composer.mk new file mode 100644 index 000000000000..9bfabc28af8b --- /dev/null +++ b/package/composer/composer.mk @@ -0,0 +1,33 @@ +################################################################################ +# +# composer +# +################################################################################ + +COMPOSER_VERSION = 2.5.8 +COMPOSER_SOURCE = composer-$(COMPOSER_VERSION).phar +# Here, we pass a dummy URL parameter in order to control the name the file +# will have once downloaded. +# Otherwise, the names will clash ifever we update the version. +BASE_SITE = https://getcomposer.org/download/$(COMPOSER_VERSION)/composer.phar +COMPOSER_SITE = $(BASE_SITE)?n=f/$(COMPOSER_SOURCE) +COMPOSER_LICENSE = MIT +COMPOSER_LICENSE_FILES = LICENSE +COMPOSER_CPE_ID_VENDOR = getcomposer + +HOST_COMPOSER_DEPENDENCIES = host-php +HOST_COMPOSER_EXTRACT_DEPENDENCIES = host-php + +define HOST_COMPOSER_EXTRACT_CMDS + cp $(HOST_COMPOSER_DL_DIR)/$(COMPOSER_SOURCE) $(@D) + cd $(@D); $(HOST_DIR)/bin/php <<< 'extractTo(".", "LICENSE");' +endef + +define HOST_COMPOSER_INSTALL_CMDS + mv $(@D)/$(COMPOSER_SOURCE) $(HOST_DIR)/bin/composer + chmod +x $(HOST_DIR)/bin/composer +endef + +$(eval $(host-generic-package)) diff --git a/package/conmon/0001-src-seccomp_notify.c-fix-static-build.patch b/package/conmon/0001-src-seccomp_notify.c-fix-static-build.patch new file mode 100644 index 000000000000..afffa909c807 --- /dev/null +++ b/package/conmon/0001-src-seccomp_notify.c-fix-static-build.patch @@ -0,0 +1,44 @@ +From 6cfcea9a16017f2a49cd792d39ebd9c86395946a Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Wed, 1 Nov 2023 16:45:21 +0100 +Subject: [PATCH] src/seccomp_notify.c: fix static build + +Fix the following static build failure raised even when seccomp is +disabled: + +src/seccomp_notify.c:10:10: fatal error: dlfcn.h: No such file or directory + 10 | #include + | ^~~~~~~~~ + +Fixes: + - http://autobuild.buildroot.org/results/71b4f35b3150183c7b44bc3897f01b0019e10ebe + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/containers/conmon/issues/462 +--- + src/seccomp_notify.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/seccomp_notify.c b/src/seccomp_notify.c +index 8d34d9d..bf738ea 100644 +--- a/src/seccomp_notify.c ++++ b/src/seccomp_notify.c +@@ -7,7 +7,6 @@ + + #include + #include +-#include + #include + #include + #include +@@ -19,6 +18,7 @@ + + #ifdef USE_SECCOMP + ++#include + #include + #include + #include +-- +2.42.0 + diff --git a/package/conmon/Config.in b/package/conmon/Config.in new file mode 100644 index 000000000000..9ba9c215b7ea --- /dev/null +++ b/package/conmon/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_CONMON + bool "conmon" + depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 + depends on BR2_USE_MMU # libglib2 + depends on BR2_USE_WCHAR # libglib2 + select BR2_PACKAGE_LIBGLIB2 + help + Conmon is an OCI container runtime monitor. + + https://github.com/containers/conmon + +comment "conmon needs a toolchain w/ threads, wchar" + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU diff --git a/package/conmon/conmon.hash b/package/conmon/conmon.hash new file mode 100644 index 000000000000..f2e89b8a92ec --- /dev/null +++ b/package/conmon/conmon.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 e72c090210a03ca3b43a0fad53f15bca90bbee65105c412468009cf3a5988325 conmon-2.1.8.tar.gz +sha256 9c9d771d4004725237a31ada889fe06c85a24fd0a29e41825181ab4cde54f016 LICENSE diff --git a/package/conmon/conmon.mk b/package/conmon/conmon.mk new file mode 100644 index 000000000000..214cb460a545 --- /dev/null +++ b/package/conmon/conmon.mk @@ -0,0 +1,36 @@ +################################################################################ +# +# conmon +# +################################################################################ + +CONMON_VERSION = 2.1.8 +CONMON_SITE = $(call github,containers,conmon,v$(CONMON_VERSION)) +CONMON_LICENSE = Apache-2.0 +CONMON_LICENSE_FILES = LICENSE + +CONMON_DEPENDENCIES = host-pkgconf libglib2 + +ifeq ($(BR2_PACKAGE_LIBSECCOMP)$(BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_0):$(BR2_STATIC_LIBS),yy:) +CONMON_DISABLE_SECCOMP = 0 +CONMON_DEPENDENCIES += libseccomp +else +CONMON_DISABLE_SECCOMP = 1 +endif + +define CONMON_CONFIGURE_CMDS + printf '#!/bin/bash\necho "$(CONMON_DISABLE_SECCOMP)"\n' > \ + $(@D)/hack/seccomp-notify.sh + chmod +x $(@D)/hack/seccomp-notify.sh +endef + +define CONMON_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ + LDFLAGS="$(TARGET_LDFLAGS)" -C $(@D) bin/conmon +endef + +define CONMON_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 755 $(@D)/bin/conmon $(TARGET_DIR)/usr/bin/conmon +endef + +$(eval $(generic-package)) diff --git a/package/connman/0001-gweb-Fix-OOB-write-in-received_data.patch b/package/connman/0001-gweb-Fix-OOB-write-in-received_data.patch deleted file mode 100644 index d1a9d8f8fe28..000000000000 --- a/package/connman/0001-gweb-Fix-OOB-write-in-received_data.patch +++ /dev/null @@ -1,36 +0,0 @@ -From d1a5ede5d255bde8ef707f8441b997563b9312bd Mon Sep 17 00:00:00 2001 -From: Nathan Crandall -Date: Tue, 12 Jul 2022 08:56:34 +0200 -Subject: gweb: Fix OOB write in received_data() - -There is a mismatch of handling binary vs. C-string data with memchr -and strlen, resulting in pos, count, and bytes_read to become out of -sync and result in a heap overflow. Instead, do not treat the buffer -as an ASCII C-string. We calculate the count based on the return value -of memchr, instead of strlen. - -Fixes: CVE-2022-32292 - -[Retrieved from: -https://git.kernel.org/pub/scm/network/connman/connman.git/commit/?id=d1a5ede5d255bde8ef707f8441b997563b9312bd] -Signed-off-by: Fabrice Fontaine ---- - gweb/gweb.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/gweb/gweb.c b/gweb/gweb.c -index 12fcb1d8..13c6c5f2 100644 ---- a/gweb/gweb.c -+++ b/gweb/gweb.c -@@ -918,7 +918,7 @@ static gboolean received_data(GIOChannel *channel, GIOCondition cond, - } - - *pos = '\0'; -- count = strlen((char *) ptr); -+ count = pos - ptr; - if (count > 0 && ptr[count - 1] == '\r') { - ptr[--count] = '\0'; - bytes_read--; --- -cgit - diff --git a/package/connman/0002-wispr-Add-reference-counter-to-portal-context.patch b/package/connman/0002-wispr-Add-reference-counter-to-portal-context.patch deleted file mode 100644 index c2cebdfdcc2b..000000000000 --- a/package/connman/0002-wispr-Add-reference-counter-to-portal-context.patch +++ /dev/null @@ -1,142 +0,0 @@ -From 72343929836de80727a27d6744c869dff045757c Mon Sep 17 00:00:00 2001 -From: Daniel Wagner -Date: Tue, 5 Jul 2022 08:32:12 +0200 -Subject: wispr: Add reference counter to portal context - -Track the connman_wispr_portal_context live time via a -refcounter. This only adds the infrastructure to do proper reference -counting. - -Fixes: CVE-2022-32293 - -[Retrieved from: -https://git.kernel.org/pub/scm/network/connman/connman.git/commit/?id=72343929836de80727a27d6744c869dff045757c] -Signed-off-by: Fabrice Fontaine ---- - src/wispr.c | 52 ++++++++++++++++++++++++++++++++++++++++++---------- - 1 file changed, 42 insertions(+), 10 deletions(-) - -diff --git a/src/wispr.c b/src/wispr.c -index a07896ca..bde7e63b 100644 ---- a/src/wispr.c -+++ b/src/wispr.c -@@ -56,6 +56,7 @@ struct wispr_route { - }; - - struct connman_wispr_portal_context { -+ int refcount; - struct connman_service *service; - enum connman_ipconfig_type type; - struct connman_wispr_portal *wispr_portal; -@@ -97,6 +98,11 @@ static char *online_check_ipv4_url = NULL; - static char *online_check_ipv6_url = NULL; - static bool enable_online_to_ready_transition = false; - -+#define wispr_portal_context_ref(wp_context) \ -+ wispr_portal_context_ref_debug(wp_context, __FILE__, __LINE__, __func__) -+#define wispr_portal_context_unref(wp_context) \ -+ wispr_portal_context_unref_debug(wp_context, __FILE__, __LINE__, __func__) -+ - static void connman_wispr_message_init(struct connman_wispr_message *msg) - { - DBG(""); -@@ -162,9 +168,6 @@ static void free_connman_wispr_portal_context( - { - DBG("context %p", wp_context); - -- if (!wp_context) -- return; -- - if (wp_context->wispr_portal) { - if (wp_context->wispr_portal->ipv4_context == wp_context) - wp_context->wispr_portal->ipv4_context = NULL; -@@ -201,9 +204,38 @@ static void free_connman_wispr_portal_context( - g_free(wp_context); - } - -+static struct connman_wispr_portal_context * -+wispr_portal_context_ref_debug(struct connman_wispr_portal_context *wp_context, -+ const char *file, int line, const char *caller) -+{ -+ DBG("%p ref %d by %s:%d:%s()", wp_context, -+ wp_context->refcount + 1, file, line, caller); -+ -+ __sync_fetch_and_add(&wp_context->refcount, 1); -+ -+ return wp_context; -+} -+ -+static void wispr_portal_context_unref_debug( -+ struct connman_wispr_portal_context *wp_context, -+ const char *file, int line, const char *caller) -+{ -+ if (!wp_context) -+ return; -+ -+ DBG("%p ref %d by %s:%d:%s()", wp_context, -+ wp_context->refcount - 1, file, line, caller); -+ -+ if (__sync_fetch_and_sub(&wp_context->refcount, 1) != 1) -+ return; -+ -+ free_connman_wispr_portal_context(wp_context); -+} -+ - static struct connman_wispr_portal_context *create_wispr_portal_context(void) - { -- return g_try_new0(struct connman_wispr_portal_context, 1); -+ return wispr_portal_context_ref( -+ g_new0(struct connman_wispr_portal_context, 1)); - } - - static void free_connman_wispr_portal(gpointer data) -@@ -215,8 +247,8 @@ static void free_connman_wispr_portal(gpointer data) - if (!wispr_portal) - return; - -- free_connman_wispr_portal_context(wispr_portal->ipv4_context); -- free_connman_wispr_portal_context(wispr_portal->ipv6_context); -+ wispr_portal_context_unref(wispr_portal->ipv4_context); -+ wispr_portal_context_unref(wispr_portal->ipv6_context); - - g_free(wispr_portal); - } -@@ -452,7 +484,7 @@ static void portal_manage_status(GWebResult *result, - connman_info("Client-Timezone: %s", str); - - if (!enable_online_to_ready_transition) -- free_connman_wispr_portal_context(wp_context); -+ wispr_portal_context_unref(wp_context); - - __connman_service_ipconfig_indicate_state(service, - CONNMAN_SERVICE_STATE_ONLINE, type); -@@ -616,7 +648,7 @@ static void wispr_portal_request_wispr_login(struct connman_service *service, - return; - } - -- free_connman_wispr_portal_context(wp_context); -+ wispr_portal_context_unref(wp_context); - return; - } - -@@ -952,7 +984,7 @@ static int wispr_portal_detect(struct connman_wispr_portal_context *wp_context) - - if (wp_context->token == 0) { - err = -EINVAL; -- free_connman_wispr_portal_context(wp_context); -+ wispr_portal_context_unref(wp_context); - } - } else if (wp_context->timeout == 0) { - wp_context->timeout = g_idle_add(no_proxy_callback, wp_context); -@@ -1001,7 +1033,7 @@ int __connman_wispr_start(struct connman_service *service, - - /* If there is already an existing context, we wipe it */ - if (wp_context) -- free_connman_wispr_portal_context(wp_context); -+ wispr_portal_context_unref(wp_context); - - wp_context = create_wispr_portal_context(); - if (!wp_context) --- -cgit - diff --git a/package/connman/0003-wispr-Update-portal-context-references.patch b/package/connman/0003-wispr-Update-portal-context-references.patch deleted file mode 100644 index 61c4e21f94e9..000000000000 --- a/package/connman/0003-wispr-Update-portal-context-references.patch +++ /dev/null @@ -1,175 +0,0 @@ -From 416bfaff988882c553c672e5bfc2d4f648d29e8a Mon Sep 17 00:00:00 2001 -From: Daniel Wagner -Date: Tue, 5 Jul 2022 09:11:09 +0200 -Subject: wispr: Update portal context references - -Maintain proper portal context references to avoid UAF. - -Fixes: CVE-2022-32293 - -[Retrieved from: -https://git.kernel.org/pub/scm/network/connman/connman.git/commit/?id=416bfaff988882c553c672e5bfc2d4f648d29e8a] -Signed-off-by: Fabrice Fontaine ---- - src/wispr.c | 34 ++++++++++++++++++++++------------ - 1 file changed, 22 insertions(+), 12 deletions(-) - -diff --git a/src/wispr.c b/src/wispr.c -index bde7e63b..84bed33f 100644 ---- a/src/wispr.c -+++ b/src/wispr.c -@@ -105,8 +105,6 @@ static bool enable_online_to_ready_transition = false; - - static void connman_wispr_message_init(struct connman_wispr_message *msg) - { -- DBG(""); -- - msg->has_error = false; - msg->current_element = NULL; - -@@ -166,8 +164,6 @@ static void free_wispr_routes(struct connman_wispr_portal_context *wp_context) - static void free_connman_wispr_portal_context( - struct connman_wispr_portal_context *wp_context) - { -- DBG("context %p", wp_context); -- - if (wp_context->wispr_portal) { - if (wp_context->wispr_portal->ipv4_context == wp_context) - wp_context->wispr_portal->ipv4_context = NULL; -@@ -483,9 +479,6 @@ static void portal_manage_status(GWebResult *result, - &str)) - connman_info("Client-Timezone: %s", str); - -- if (!enable_online_to_ready_transition) -- wispr_portal_context_unref(wp_context); -- - __connman_service_ipconfig_indicate_state(service, - CONNMAN_SERVICE_STATE_ONLINE, type); - -@@ -546,14 +539,17 @@ static void wispr_portal_request_portal( - { - DBG(""); - -+ wispr_portal_context_ref(wp_context); - wp_context->request_id = g_web_request_get(wp_context->web, - wp_context->status_url, - wispr_portal_web_result, - wispr_route_request, - wp_context); - -- if (wp_context->request_id == 0) -+ if (wp_context->request_id == 0) { - wispr_portal_error(wp_context); -+ wispr_portal_context_unref(wp_context); -+ } - } - - static bool wispr_input(const guint8 **data, gsize *length, -@@ -618,13 +614,15 @@ static void wispr_portal_browser_reply_cb(struct connman_service *service, - return; - - if (!authentication_done) { -- wispr_portal_error(wp_context); - free_wispr_routes(wp_context); -+ wispr_portal_error(wp_context); -+ wispr_portal_context_unref(wp_context); - return; - } - - /* Restarting the test */ - __connman_service_wispr_start(service, wp_context->type); -+ wispr_portal_context_unref(wp_context); - } - - static void wispr_portal_request_wispr_login(struct connman_service *service, -@@ -700,11 +698,13 @@ static bool wispr_manage_message(GWebResult *result, - - wp_context->wispr_result = CONNMAN_WISPR_RESULT_LOGIN; - -+ wispr_portal_context_ref(wp_context); - if (__connman_agent_request_login_input(wp_context->service, - wispr_portal_request_wispr_login, -- wp_context) != -EINPROGRESS) -+ wp_context) != -EINPROGRESS) { - wispr_portal_error(wp_context); -- else -+ wispr_portal_context_unref(wp_context); -+ } else - return true; - - break; -@@ -753,6 +753,7 @@ static bool wispr_portal_web_result(GWebResult *result, gpointer user_data) - if (length > 0) { - g_web_parser_feed_data(wp_context->wispr_parser, - chunk, length); -+ wispr_portal_context_unref(wp_context); - return true; - } - -@@ -770,6 +771,7 @@ static bool wispr_portal_web_result(GWebResult *result, gpointer user_data) - - switch (status) { - case 000: -+ wispr_portal_context_ref(wp_context); - __connman_agent_request_browser(wp_context->service, - wispr_portal_browser_reply_cb, - wp_context->status_url, wp_context); -@@ -781,11 +783,14 @@ static bool wispr_portal_web_result(GWebResult *result, gpointer user_data) - if (g_web_result_get_header(result, "X-ConnMan-Status", - &str)) { - portal_manage_status(result, wp_context); -+ wispr_portal_context_unref(wp_context); - return false; -- } else -+ } else { -+ wispr_portal_context_ref(wp_context); - __connman_agent_request_browser(wp_context->service, - wispr_portal_browser_reply_cb, - wp_context->redirect_url, wp_context); -+ } - - break; - case 300: -@@ -798,6 +803,7 @@ static bool wispr_portal_web_result(GWebResult *result, gpointer user_data) - !g_web_result_get_header(result, "Location", - &redirect)) { - -+ wispr_portal_context_ref(wp_context); - __connman_agent_request_browser(wp_context->service, - wispr_portal_browser_reply_cb, - wp_context->status_url, wp_context); -@@ -808,6 +814,7 @@ static bool wispr_portal_web_result(GWebResult *result, gpointer user_data) - - wp_context->redirect_url = g_strdup(redirect); - -+ wispr_portal_context_ref(wp_context); - wp_context->request_id = g_web_request_get(wp_context->web, - redirect, wispr_portal_web_result, - wispr_route_request, wp_context); -@@ -820,6 +827,7 @@ static bool wispr_portal_web_result(GWebResult *result, gpointer user_data) - - break; - case 505: -+ wispr_portal_context_ref(wp_context); - __connman_agent_request_browser(wp_context->service, - wispr_portal_browser_reply_cb, - wp_context->status_url, wp_context); -@@ -832,6 +840,7 @@ static bool wispr_portal_web_result(GWebResult *result, gpointer user_data) - wp_context->request_id = 0; - done: - wp_context->wispr_msg.message_type = -1; -+ wispr_portal_context_unref(wp_context); - return false; - } - -@@ -890,6 +899,7 @@ static void proxy_callback(const char *proxy, void *user_data) - xml_wispr_parser_callback, wp_context); - - wispr_portal_request_portal(wp_context); -+ wispr_portal_context_unref(wp_context); - } - - static gboolean no_proxy_callback(gpointer user_data) --- -cgit - diff --git a/package/connman/connman.hash b/package/connman/connman.hash index 6fc5edf29a2c..ea87f1ea17da 100644 --- a/package/connman/connman.hash +++ b/package/connman/connman.hash @@ -1,4 +1,4 @@ # From https://www.kernel.org/pub/linux/network/connman/sha256sums.asc -sha256 79fb40f4fdd5530c45aa8e592fb16ba23d3674f3a98cf10b89a6576f198de589 connman-1.41.tar.xz +sha256 a3e6bae46fc081ef2e9dae3caa4f7649de892c3de622c20283ac0ca81423c2aa connman-1.42.tar.xz # Locally computed sha256 b499eddebda05a8859e32b820a64577d91f1de2b52efa2a1575a2cb4000bc259 COPYING diff --git a/package/connman/connman.mk b/package/connman/connman.mk index fbd7318e4eb3..142a6583ad3c 100644 --- a/package/connman/connman.mk +++ b/package/connman/connman.mk @@ -4,7 +4,7 @@ # ################################################################################ -CONNMAN_VERSION = 1.41 +CONNMAN_VERSION = 1.42 CONNMAN_SOURCE = connman-$(CONNMAN_VERSION).tar.xz CONNMAN_SITE = $(BR2_KERNEL_MIRROR)/linux/network/connman CONNMAN_DEPENDENCIES = libglib2 dbus @@ -13,13 +13,6 @@ CONNMAN_LICENSE = GPL-2.0 CONNMAN_LICENSE_FILES = COPYING CONNMAN_CPE_ID_VENDOR = intel -# 0001-gweb-Fix-OOB-write-in-received_data.patch -CONNMAN_IGNORE_CVES += CVE-2022-32292 - -# 0002-wispr-Add-reference-counter-to-portal-context.patch -# 0003-wispr-Update-portal-context-references.patch -CONNMAN_IGNORE_CVES += CVE-2022-32293 - CONNMAN_CONF_OPTS = --with-dbusconfdir=/etc ifeq ($(BR2_INIT_SYSTEMD),y) diff --git a/package/containerd/Config.in b/package/containerd/Config.in index e69dd6768ad5..12a53bc11122 100644 --- a/package/containerd/Config.in +++ b/package/containerd/Config.in @@ -26,6 +26,39 @@ config BR2_PACKAGE_CONTAINERD_DRIVER_BTRFS help Build the btrfs snapshot driver for containerd. +config BR2_PACKAGE_CONTAINERD_DRIVER_DEVMAPPER + bool "devmapper snapshot driver" + depends on BR2_TOOLCHAIN_HAS_THREADS # lvm2 + depends on BR2_USE_MMU # lvm2 + depends on !BR2_STATIC_LIBS # lvm2 + select BR2_PACKAGE_LVM2 + help + Build the devmapper snapshot driver for containerd. + +comment "devmapper snapshot driver needs a toolchain w/ threads, dynamic library" + depends on BR2_USE_MMU + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS + +config BR2_PACKAGE_CONTAINERD_DRIVER_ZFS + bool "zfs snapshot driver" + depends on BR2_LINUX_KERNEL # zfs + depends on BR2_PACKAGE_HAS_UDEV # zfs + depends on BR2_USE_MMU # zfs + depends on BR2_TOOLCHAIN_HAS_THREADS # zfs + select BR2_PACKAGE_ZFS + help + Build the zfs snapshot driver for containerd. + +comment "zfs snapshot driver needs a Linux kernel, udev, toolchain w/ threads" + depends on BR2_USE_MMU + depends on !BR2_LINUX_KERNEL || !BR2_PACKAGE_HAS_UDEV || \ + !BR2_TOOLCHAIN_HAS_THREADS + +config BR2_PACKAGE_CONTAINERD_CRI + bool "Kubernetes CRI support" + help + Build containerd with Kubernetes CRI support. + endif comment "containerd needs a glibc or musl toolchain w/ threads" diff --git a/package/containerd/containerd.hash b/package/containerd/containerd.hash index 16474089d177..5524a1a44e8f 100644 --- a/package/containerd/containerd.hash +++ b/package/containerd/containerd.hash @@ -1,3 +1,3 @@ # Computed locally -sha256 e0a893cf67df9dfaecbcde2ba4e896efb3a86ffe48dcfe0d2b26f7cf19b5af3a containerd-1.6.16.tar.gz +sha256 891b84e614b491ab1d3bd5c8f4fb119e4929c24762e149e83e181e72d687f706 containerd-1.7.8.tar.gz sha256 4bbe3b885e8cd1907ab4cf9a41e862e74e24b5422297a4f2fe524e6a30ada2b4 LICENSE diff --git a/package/containerd/containerd.mk b/package/containerd/containerd.mk index 4a0d6ec38b49..61a8472dddd7 100644 --- a/package/containerd/containerd.mk +++ b/package/containerd/containerd.mk @@ -4,7 +4,7 @@ # ################################################################################ -CONTAINERD_VERSION = 1.6.16 +CONTAINERD_VERSION = 1.7.8 CONTAINERD_SITE = $(call github,containerd,containerd,v$(CONTAINERD_VERSION)) CONTAINERD_LICENSE = Apache-2.0 CONTAINERD_LICENSE_FILES = LICENSE @@ -24,6 +24,7 @@ CONTAINERD_BUILD_TARGETS = \ cmd/ctr CONTAINERD_INSTALL_BINS = $(notdir $(CONTAINERD_BUILD_TARGETS)) +CONTAINERD_TAGS = no_aufs ifeq ($(BR2_PACKAGE_LIBAPPARMOR),y) CONTAINERD_DEPENDENCIES += libapparmor @@ -41,6 +42,18 @@ else CONTAINERD_TAGS += no_btrfs endif +ifneq ($(BR2_PACKAGE_CONTAINERD_DRIVER_DEVMAPPER),y) +CONTAINERD_TAGS += no_devmapper +endif + +ifneq ($(BR2_PACKAGE_CONTAINERD_DRIVER_ZFS),y) +CONTAINERD_TAGS += no_zfs +endif + +ifneq ($(BR2_PACKAGE_CONTAINERD_CRI),y) +CONTAINERD_TAGS += no_cri +endif + define CONTAINERD_INSTALL_INIT_SYSTEMD $(INSTALL) -D -m 0644 $(@D)/containerd.service \ $(TARGET_DIR)/usr/lib/systemd/system/containerd.service diff --git a/package/coremark/coremark.mk b/package/coremark/coremark.mk index 418fd5c8d39b..9ea8693e7189 100644 --- a/package/coremark/coremark.mk +++ b/package/coremark/coremark.mk @@ -11,6 +11,7 @@ COREMARK_LICENSE_FILES = LICENSE.md define COREMARK_BUILD_CMDS $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" -C $(@D) \ + PORT_CFLAGS="$(TARGET_CFLAGS)" \ PORT_DIR=linux$(if $(BR2_ARCH_IS_64),64) EXE= link endef diff --git a/package/coreutils/coreutils.hash b/package/coreutils/coreutils.hash index eb9a5744c655..7df1048afac9 100644 --- a/package/coreutils/coreutils.hash +++ b/package/coreutils/coreutils.hash @@ -1,4 +1,4 @@ # Locally calculated after checking pgp signature -sha256 61a1f410d78ba7e7f37a5a4f50e6d1320aca33375484a3255eddf17a38580423 coreutils-9.1.tar.xz +sha256 adbcfcfe899235b71e8768dcf07cd532520b7f54f9a8064843f8d199a904bbaa coreutils-9.3.tar.xz # Locally computed sha256 3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986 COPYING diff --git a/package/coreutils/coreutils.mk b/package/coreutils/coreutils.mk index 931859b0aca2..e9cb7b67cbf1 100644 --- a/package/coreutils/coreutils.mk +++ b/package/coreutils/coreutils.mk @@ -4,7 +4,7 @@ # ################################################################################ -COREUTILS_VERSION = 9.1 +COREUTILS_VERSION = 9.3 COREUTILS_SITE = $(BR2_GNU_MIRROR)/coreutils COREUTILS_SOURCE = coreutils-$(COREUTILS_VERSION).tar.xz COREUTILS_LICENSE = GPL-3.0+ @@ -22,18 +22,13 @@ endif COREUTILS_CONF_ENV = ac_cv_c_restrict=no \ ac_cv_func_chown_works=yes \ - ac_cv_func_euidaccess=no \ ac_cv_func_fstatat=yes \ ac_cv_func_getdelim=yes \ ac_cv_func_getgroups=yes \ ac_cv_func_getgroups_works=yes \ ac_cv_func_getloadavg=no \ - ac_cv_func_lstat_dereferences_slashed_symlink=yes \ - ac_cv_func_lstat_empty_string_bug=no \ ac_cv_func_strerror_r_char_p=no \ ac_cv_func_strnlen_working=yes \ - ac_cv_func_strtod=yes \ - ac_cv_func_working_mktime=yes \ ac_cv_have_decl_strerror_r=yes \ ac_cv_have_decl_strnlen=yes \ ac_cv_lib_getloadavg_getloadavg=no \ @@ -44,14 +39,13 @@ COREUTILS_CONF_ENV = ac_cv_c_restrict=no \ fu_cv_sys_stat_statfs2_bsize=yes \ gl_cv_func_getcwd_null=yes \ gl_cv_func_getcwd_path_max=yes \ - gl_cv_func_gettimeofday_clobber=no \ gl_cv_func_link_follows_symlink=no \ + gl_cv_func_lstat_dereferences_slashed_symlink=yes \ gl_cv_func_re_compile_pattern_working=yes \ gl_cv_func_svid_putenv=yes \ - gl_cv_func_tzset_clobber=no \ gl_cv_func_working_mkstemp=yes \ gl_cv_func_working_utimes=yes \ - gl_getline_needs_run_time_check=no \ + gl_cv_macro_MB_CUR_MAX_good=yes \ gl_cv_have_proc_uptime=yes \ utils_cv_localtime_cache=no \ PERL=missing \ diff --git a/package/cpio/0001-Minor-fix.patch b/package/cpio/0001-Minor-fix.patch deleted file mode 100644 index 429df7d5f823..000000000000 --- a/package/cpio/0001-Minor-fix.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 641d3f489cf6238bb916368d4ba0d9325a235afb Mon Sep 17 00:00:00 2001 -From: Sergey Poznyakoff -Date: Mon, 20 Jan 2020 07:45:39 +0200 -Subject: Minor fix * src/global.c: Remove superfluous declaration of - program_name - -[Retrieved from: -https://git.savannah.gnu.org/cgit/cpio.git/commit/?id=641d3f489cf6238bb916368d4ba0d9325a235afb] -Signed-off-by: Fabrice Fontaine ---- - src/global.c | 3 --- - 1 file changed, 3 deletions(-) - -diff --git a/src/global.c b/src/global.c -index fb3abe9..acf92bc 100644 ---- a/src/global.c -+++ b/src/global.c -@@ -184,9 +184,6 @@ unsigned int warn_option = 0; - /* Extract to standard output? */ - bool to_stdout_option = false; - --/* The name this program was run with. */ --char *program_name; -- - /* A pointer to either lstat or stat, depending on whether - dereferencing of symlinks is done for input files. */ - int (*xstat) (); --- -cgit v1.2.1 - diff --git a/package/cpio/0002-Rewrite-dynamic-string-support.patch b/package/cpio/0002-Rewrite-dynamic-string-support.patch deleted file mode 100644 index 44282ae3f118..000000000000 --- a/package/cpio/0002-Rewrite-dynamic-string-support.patch +++ /dev/null @@ -1,461 +0,0 @@ -From dd96882877721703e19272fe25034560b794061b Mon Sep 17 00:00:00 2001 -From: Sergey Poznyakoff -Date: Sat, 7 Aug 2021 12:52:21 +0300 -Subject: Rewrite dynamic string support. - -* src/dstring.c (ds_init): Take a single argument. -(ds_free): New function. -(ds_resize): Take a single argument. Use x2nrealloc to expand -the storage. -(ds_reset,ds_append,ds_concat,ds_endswith): New function. -(ds_fgetstr): Rewrite. In particular, this fixes integer overflow. -* src/dstring.h (dynamic_string): Keep both the allocated length -(ds_size) and index of the next free byte in the string (ds_idx). -(ds_init,ds_resize): Change signature. -(ds_len): New macro. -(ds_free,ds_reset,ds_append,ds_concat,ds_endswith): New protos. -* src/copyin.c: Use new ds_ functions. -* src/copyout.c: Likewise. -* src/copypass.c: Likewise. -* src/util.c: Likewise. - -[Retrieved from: -https://git.savannah.gnu.org/cgit/cpio.git/commit/?id=dd96882877721703e19272fe25034560b794061b] -Signed-off-by: Fabrice Fontaine ---- - src/copyin.c | 40 +++++++++++++------------- - src/copyout.c | 16 ++++------- - src/copypass.c | 34 +++++++++++------------ - src/dstring.c | 88 ++++++++++++++++++++++++++++++++++++++++++---------------- - src/dstring.h | 31 ++++++++++----------- - src/util.c | 6 ++-- - 6 files changed, 123 insertions(+), 92 deletions(-) - -diff --git a/src/copyin.c b/src/copyin.c -index a096048..4fb14af 100644 ---- a/src/copyin.c -+++ b/src/copyin.c -@@ -55,11 +55,12 @@ query_rename(struct cpio_file_stat* file_hdr, FILE *tty_in, FILE *tty_out, - char *str_res; /* Result for string function. */ - static dynamic_string new_name; /* New file name for rename option. */ - static int initialized_new_name = false; -+ - if (!initialized_new_name) -- { -- ds_init (&new_name, 128); -- initialized_new_name = true; -- } -+ { -+ ds_init (&new_name); -+ initialized_new_name = true; -+ } - - if (rename_flag) - { -@@ -780,37 +781,36 @@ long_format (struct cpio_file_stat *file_hdr, char const *link_name) - already in `save_patterns' (from the command line) are preserved. */ - - static void --read_pattern_file () -+read_pattern_file (void) - { -- int max_new_patterns; -- char **new_save_patterns; -- int new_num_patterns; -+ char **new_save_patterns = NULL; -+ size_t max_new_patterns; -+ size_t new_num_patterns; - int i; -- dynamic_string pattern_name; -+ dynamic_string pattern_name = DYNAMIC_STRING_INITIALIZER; - FILE *pattern_fp; - - if (num_patterns < 0) - num_patterns = 0; -- max_new_patterns = 1 + num_patterns; -- new_save_patterns = (char **) xmalloc (max_new_patterns * sizeof (char *)); - new_num_patterns = num_patterns; -- ds_init (&pattern_name, 128); -+ max_new_patterns = num_patterns; -+ new_save_patterns = xcalloc (max_new_patterns, sizeof (new_save_patterns[0])); - - pattern_fp = fopen (pattern_file_name, "r"); - if (pattern_fp == NULL) - open_fatal (pattern_file_name); - while (ds_fgetstr (pattern_fp, &pattern_name, '\n') != NULL) - { -- if (new_num_patterns >= max_new_patterns) -- { -- max_new_patterns += 1; -- new_save_patterns = (char **) -- xrealloc ((char *) new_save_patterns, -- max_new_patterns * sizeof (char *)); -- } -+ if (new_num_patterns == max_new_patterns) -+ new_save_patterns = x2nrealloc (new_save_patterns, -+ &max_new_patterns, -+ sizeof (new_save_patterns[0])); - new_save_patterns[new_num_patterns] = xstrdup (pattern_name.ds_string); - ++new_num_patterns; - } -+ -+ ds_free (&pattern_name); -+ - if (ferror (pattern_fp) || fclose (pattern_fp) == EOF) - close_error (pattern_file_name); - -@@ -1210,7 +1210,7 @@ swab_array (char *ptr, int count) - in the file system. */ - - void --process_copy_in () -+process_copy_in (void) - { - FILE *tty_in = NULL; /* Interactive file for rename option. */ - FILE *tty_out = NULL; /* Interactive file for rename option. */ -diff --git a/src/copyout.c b/src/copyout.c -index 5ca587f..ca6798c 100644 ---- a/src/copyout.c -+++ b/src/copyout.c -@@ -594,9 +594,10 @@ assign_string (char **pvar, char *value) - The format of the header depends on the compatibility (-c) flag. */ - - void --process_copy_out () -+process_copy_out (void) - { -- dynamic_string input_name; /* Name of file read from stdin. */ -+ dynamic_string input_name = DYNAMIC_STRING_INITIALIZER; -+ /* Name of file read from stdin. */ - struct stat file_stat; /* Stat record for file. */ - struct cpio_file_stat file_hdr = CPIO_FILE_STAT_INITIALIZER; - /* Output header information. */ -@@ -605,7 +606,6 @@ process_copy_out () - char *orig_file_name = NULL; - - /* Initialize the copy out. */ -- ds_init (&input_name, 128); - file_hdr.c_magic = 070707; - - /* Check whether the output file might be a tape. */ -@@ -657,14 +657,9 @@ process_copy_out () - { - if (file_hdr.c_mode & CP_IFDIR) - { -- int len = strlen (input_name.ds_string); - /* Make sure the name ends with a slash */ -- if (input_name.ds_string[len-1] != '/') -- { -- ds_resize (&input_name, len + 2); -- input_name.ds_string[len] = '/'; -- input_name.ds_string[len+1] = 0; -- } -+ if (!ds_endswith (&input_name, '/')) -+ ds_append (&input_name, '/'); - } - } - -@@ -875,6 +870,7 @@ process_copy_out () - (unsigned long) blocks), (unsigned long) blocks); - } - cpio_file_stat_free (&file_hdr); -+ ds_free (&input_name); - } - - -diff --git a/src/copypass.c b/src/copypass.c -index 5d5e939..23ee687 100644 ---- a/src/copypass.c -+++ b/src/copypass.c -@@ -48,10 +48,12 @@ set_copypass_perms (int fd, const char *name, struct stat *st) - If `link_flag', link instead of copying. */ - - void --process_copy_pass () -+process_copy_pass (void) - { -- dynamic_string input_name; /* Name of file from stdin. */ -- dynamic_string output_name; /* Name of new file. */ -+ dynamic_string input_name = DYNAMIC_STRING_INITIALIZER; -+ /* Name of file from stdin. */ -+ dynamic_string output_name = DYNAMIC_STRING_INITIALIZER; -+ /* Name of new file. */ - size_t dirname_len; /* Length of `directory_name'. */ - int res; /* Result of functions. */ - char *slash; /* For moving past slashes in input name. */ -@@ -65,25 +67,18 @@ process_copy_pass () - created files */ - - /* Initialize the copy pass. */ -- ds_init (&input_name, 128); - - dirname_len = strlen (directory_name); - if (change_directory_option && !ISSLASH (directory_name[0])) - { - char *pwd = xgetcwd (); -- -- dirname_len += strlen (pwd) + 1; -- ds_init (&output_name, dirname_len + 2); -- strcpy (output_name.ds_string, pwd); -- strcat (output_name.ds_string, "/"); -- strcat (output_name.ds_string, directory_name); -+ -+ ds_concat (&output_name, pwd); -+ ds_append (&output_name, '/'); - } -- else -- { -- ds_init (&output_name, dirname_len + 2); -- strcpy (output_name.ds_string, directory_name); -- } -- output_name.ds_string[dirname_len] = '/'; -+ ds_concat (&output_name, directory_name); -+ ds_append (&output_name, '/'); -+ dirname_len = ds_len (&output_name); - output_is_seekable = true; - - change_dir (); -@@ -116,8 +111,8 @@ process_copy_pass () - /* Make the name of the new file. */ - for (slash = input_name.ds_string; *slash == '/'; ++slash) - ; -- ds_resize (&output_name, dirname_len + strlen (slash) + 2); -- strcpy (output_name.ds_string + dirname_len + 1, slash); -+ ds_reset (&output_name, dirname_len); -+ ds_concat (&output_name, slash); - - existing_dir = false; - if (lstat (output_name.ds_string, &out_file_stat) == 0) -@@ -333,6 +328,9 @@ process_copy_pass () - (unsigned long) blocks), - (unsigned long) blocks); - } -+ -+ ds_free (&input_name); -+ ds_free (&output_name); - } - - /* Try and create a hard link from FILE_NAME to another file -diff --git a/src/dstring.c b/src/dstring.c -index b261d5a..692d3e7 100644 ---- a/src/dstring.c -+++ b/src/dstring.c -@@ -20,8 +20,8 @@ - #if defined(HAVE_CONFIG_H) - # include - #endif -- - #include -+#include - #if defined(HAVE_STRING_H) || defined(STDC_HEADERS) - #include - #else -@@ -33,24 +33,41 @@ - /* Initialiaze dynamic string STRING with space for SIZE characters. */ - - void --ds_init (dynamic_string *string, int size) -+ds_init (dynamic_string *string) -+{ -+ memset (string, 0, sizeof *string); -+} -+ -+/* Free the dynamic string storage. */ -+ -+void -+ds_free (dynamic_string *string) - { -- string->ds_length = size; -- string->ds_string = (char *) xmalloc (size); -+ free (string->ds_string); - } - --/* Expand dynamic string STRING, if necessary, to hold SIZE characters. */ -+/* Expand dynamic string STRING, if necessary. */ - - void --ds_resize (dynamic_string *string, int size) -+ds_resize (dynamic_string *string) - { -- if (size > string->ds_length) -+ if (string->ds_idx == string->ds_size) - { -- string->ds_length = size; -- string->ds_string = (char *) xrealloc ((char *) string->ds_string, size); -+ string->ds_string = x2nrealloc (string->ds_string, &string->ds_size, -+ 1); - } - } - -+/* Reset the index of the dynamic string S to LEN. */ -+ -+void -+ds_reset (dynamic_string *s, size_t len) -+{ -+ while (len > s->ds_size) -+ ds_resize (s); -+ s->ds_idx = len; -+} -+ - /* Dynamic string S gets a string terminated by the EOS character - (which is removed) from file F. S will increase - in size during the function if the string from F is longer than -@@ -61,34 +78,50 @@ ds_resize (dynamic_string *string, int size) - char * - ds_fgetstr (FILE *f, dynamic_string *s, char eos) - { -- int insize; /* Amount needed for line. */ -- int strsize; /* Amount allocated for S. */ - int next_ch; - - /* Initialize. */ -- insize = 0; -- strsize = s->ds_length; -+ s->ds_idx = 0; - - /* Read the input string. */ -- next_ch = getc (f); -- while (next_ch != eos && next_ch != EOF) -+ while ((next_ch = getc (f)) != eos && next_ch != EOF) - { -- if (insize >= strsize - 1) -- { -- ds_resize (s, strsize * 2 + 2); -- strsize = s->ds_length; -- } -- s->ds_string[insize++] = next_ch; -- next_ch = getc (f); -+ ds_resize (s); -+ s->ds_string[s->ds_idx++] = next_ch; - } -- s->ds_string[insize++] = '\0'; -+ ds_resize (s); -+ s->ds_string[s->ds_idx] = '\0'; - -- if (insize == 1 && next_ch == EOF) -+ if (s->ds_idx == 0 && next_ch == EOF) - return NULL; - else - return s->ds_string; - } - -+void -+ds_append (dynamic_string *s, int c) -+{ -+ ds_resize (s); -+ s->ds_string[s->ds_idx] = c; -+ if (c) -+ { -+ s->ds_idx++; -+ ds_resize (s); -+ s->ds_string[s->ds_idx] = 0; -+ } -+} -+ -+void -+ds_concat (dynamic_string *s, char const *str) -+{ -+ size_t len = strlen (str); -+ while (len + 1 > s->ds_size) -+ ds_resize (s); -+ memcpy (s->ds_string + s->ds_idx, str, len); -+ s->ds_idx += len; -+ s->ds_string[s->ds_idx] = 0; -+} -+ - char * - ds_fgets (FILE *f, dynamic_string *s) - { -@@ -100,3 +133,10 @@ ds_fgetname (FILE *f, dynamic_string *s) - { - return ds_fgetstr (f, s, '\0'); - } -+ -+/* Return true if the dynamic string S ends with character C. */ -+int -+ds_endswith (dynamic_string *s, int c) -+{ -+ return (s->ds_idx > 0 && s->ds_string[s->ds_idx - 1] == c); -+} -diff --git a/src/dstring.h b/src/dstring.h -index 5d24181..ca7a5f1 100644 ---- a/src/dstring.h -+++ b/src/dstring.h -@@ -17,10 +17,6 @@ - Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301 USA. */ - --#ifndef NULL --#define NULL 0 --#endif -- - /* A dynamic string consists of record that records the size of an - allocated string and the pointer to that string. The actual string - is a normal zero byte terminated string that can be used with the -@@ -30,22 +26,25 @@ - - typedef struct - { -- int ds_length; /* Actual amount of storage allocated. */ -- char *ds_string; /* String. */ -+ size_t ds_size; /* Actual amount of storage allocated. */ -+ size_t ds_idx; /* Index of the next free byte in the string. */ -+ char *ds_string; /* String storage. */ - } dynamic_string; - -+#define DYNAMIC_STRING_INITIALIZER { 0, 0, NULL } - --/* Macros that look similar to the original string functions. -- WARNING: These macros work only on pointers to dynamic string records. -- If used with a real record, an "&" must be used to get the pointer. */ --#define ds_strlen(s) strlen ((s)->ds_string) --#define ds_strcmp(s1, s2) strcmp ((s1)->ds_string, (s2)->ds_string) --#define ds_strncmp(s1, s2, n) strncmp ((s1)->ds_string, (s2)->ds_string, n) --#define ds_index(s, c) index ((s)->ds_string, c) --#define ds_rindex(s, c) rindex ((s)->ds_string, c) -+void ds_init (dynamic_string *string); -+void ds_free (dynamic_string *string); -+void ds_reset (dynamic_string *s, size_t len); - --void ds_init (dynamic_string *string, int size); --void ds_resize (dynamic_string *string, int size); -+/* All functions below guarantee that s->ds_string[s->ds_idx] == '\0' */ - char *ds_fgetname (FILE *f, dynamic_string *s); - char *ds_fgets (FILE *f, dynamic_string *s); - char *ds_fgetstr (FILE *f, dynamic_string *s, char eos); -+void ds_append (dynamic_string *s, int c); -+void ds_concat (dynamic_string *s, char const *str); -+ -+#define ds_len(s) ((s)->ds_idx) -+ -+int ds_endswith (dynamic_string *s, int c); -+ -diff --git a/src/util.c b/src/util.c -index 996d4fa..ff2746d 100644 ---- a/src/util.c -+++ b/src/util.c -@@ -846,11 +846,9 @@ get_next_reel (int tape_des) - FILE *tty_out; /* File for interacting with user. */ - int old_tape_des; - char *next_archive_name; -- dynamic_string new_name; -+ dynamic_string new_name = DYNAMIC_STRING_INITIALIZER; - char *str_res; - -- ds_init (&new_name, 128); -- - /* Open files for interactive communication. */ - tty_in = fopen (TTY_NAME, "r"); - if (tty_in == NULL) -@@ -925,7 +923,7 @@ get_next_reel (int tape_des) - error (PAXEXIT_FAILURE, 0, _("internal error: tape descriptor changed from %d to %d"), - old_tape_des, tape_des); - -- free (new_name.ds_string); -+ ds_free (&new_name); - fclose (tty_in); - fclose (tty_out); - } --- -cgit v1.2.1 - diff --git a/package/cpio/0003-Fix-previous-commit.patch b/package/cpio/0003-Fix-previous-commit.patch deleted file mode 100644 index e33a8523d86a..000000000000 --- a/package/cpio/0003-Fix-previous-commit.patch +++ /dev/null @@ -1,40 +0,0 @@ -From dfc801c44a93bed7b3951905b188823d6a0432c8 Mon Sep 17 00:00:00 2001 -From: Sergey Poznyakoff -Date: Wed, 11 Aug 2021 18:10:38 +0300 -Subject: Fix previous commit - -* src/dstring.c (ds_reset,ds_concat): Don't call ds_resize in a -loop. - -[Retrieved from: -https://git.savannah.gnu.org/cgit/cpio.git/commit/?id=dfc801c44a93bed7b3951905b188823d6a0432c8] -Signed-off-by: Fabrice Fontaine ---- - src/dstring.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/dstring.c b/src/dstring.c -index 692d3e7..b7e0bb5 100644 ---- a/src/dstring.c -+++ b/src/dstring.c -@@ -64,7 +64,7 @@ void - ds_reset (dynamic_string *s, size_t len) - { - while (len > s->ds_size) -- ds_resize (s); -+ s->ds_string = x2nrealloc (s->ds_string, &s->ds_size, 1); - s->ds_idx = len; - } - -@@ -116,7 +116,7 @@ ds_concat (dynamic_string *s, char const *str) - { - size_t len = strlen (str); - while (len + 1 > s->ds_size) -- ds_resize (s); -+ s->ds_string = x2nrealloc (s->ds_string, &s->ds_size, 1); - memcpy (s->ds_string + s->ds_idx, str, len); - s->ds_idx += len; - s->ds_string[s->ds_idx] = 0; --- -cgit v1.2.1 - diff --git a/package/cpio/cpio.hash b/package/cpio/cpio.hash index b03114635ccc..20fd9392e7c9 100644 --- a/package/cpio/cpio.hash +++ b/package/cpio/cpio.hash @@ -1,7 +1,6 @@ -# From https://lists.gnu.org/archive/html/info-gnu/2019-11/msg00002.html -md5 f3438e672e3fa273a7dc26339dd1eed6 cpio-2.13.tar.bz2 -sha1 4dcefc0e1bc36b11506a354768d82b15e3fe6bb8 cpio-2.13.tar.bz2 +# From https://lists.gnu.org/archive/html/info-gnu/2023-05/msg00001.html +sha1 cbac50a61079b6f3bdcf9ffe42171d9257cfe877 cpio-2.14.tar.bz2 # Locally calculated after checking pgp signature -sha256 eab5bdc5ae1df285c59f2a4f140a98fc33678a0bf61bdba67d9436ae26b46f6d cpio-2.13.tar.bz2 +sha256 fcdc15d60f7267a6fc7efcd6b9db7b6c8966c4f2fbbb964c24d41336fd3f2c12 cpio-2.13.tar.bz2 # Locally calculated sha256 fc82ca8b6fdb18d4e3e85cfd8ab58d1bcd3f1b29abe782895abd91d64763f8e7 COPYING diff --git a/package/cpio/cpio.mk b/package/cpio/cpio.mk index e95ea742b33d..911d16822b8a 100644 --- a/package/cpio/cpio.mk +++ b/package/cpio/cpio.mk @@ -4,7 +4,7 @@ # ################################################################################ -CPIO_VERSION = 2.13 +CPIO_VERSION = 2.14 CPIO_SOURCE = cpio-$(CPIO_VERSION).tar.bz2 CPIO_SITE = $(BR2_GNU_MIRROR)/cpio CPIO_CONF_OPTS = --bindir=/bin @@ -12,10 +12,6 @@ CPIO_LICENSE = GPL-3.0+ CPIO_LICENSE_FILES = COPYING CPIO_CPE_ID_VENDOR = gnu -# 0002-Rewrite-dynamic-string-support.patch -# 0003-Fix-previous-commit.patch -CPIO_IGNORE_CVES += CVE-2021-38185 - # cpio uses argp.h which is not provided by uclibc or musl by default. # Use the argp-standalone package to provide this. ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y) diff --git a/package/cppzmq/cppzmq.hash b/package/cppzmq/cppzmq.hash index 3fbee7af28b3..dd6e06494a3d 100644 --- a/package/cppzmq/cppzmq.hash +++ b/package/cppzmq/cppzmq.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 3fdf5b100206953f674c94d40599bdb3ea255244dcc42fab0d75855ee3645581 cppzmq-4.9.0.tar.gz +sha256 c81c81bba8a7644c84932225f018b5088743a22999c6d82a2b5f5cd1e6942b74 cppzmq-4.10.0.tar.gz sha256 7e6db90e2e805c72b3daa77849d1cb5f1f92da0e69750c8a4aa1d86d70704748 LICENSE diff --git a/package/cppzmq/cppzmq.mk b/package/cppzmq/cppzmq.mk index d702cc174e2e..90213ec0f60a 100644 --- a/package/cppzmq/cppzmq.mk +++ b/package/cppzmq/cppzmq.mk @@ -4,7 +4,7 @@ # ################################################################################ -CPPZMQ_VERSION = 4.9.0 +CPPZMQ_VERSION = 4.10.0 CPPZMQ_SITE = $(call github,zeromq,cppzmq,v$(CPPZMQ_VERSION)) CPPZMQ_INSTALL_STAGING = YES CPPZMQ_DEPENDENCIES = host-pkgconf zeromq diff --git a/package/criu/Config.in b/package/criu/Config.in new file mode 100644 index 000000000000..ff3bf302291c --- /dev/null +++ b/package/criu/Config.in @@ -0,0 +1,53 @@ +# criu only builds on certain architectures +config BR2_PACKAGE_CRIU_ARCH_SUPPORTS + bool + default y if BR2_ARM_CPU_ARMV6 + default y if BR2_ARM_CPU_ARMV7A + default y if BR2_ARM_CPU_ARMV7M + default y if BR2_ARM_CPU_ARMV8A + default y if BR2_aarch64 + default y if BR2_i386 + default y if BR2_mips + default y if BR2_x86_64 + default y if BR2_powerpc64le # Only support powerpc64 with LE + # CRIU has "some" support for s390 but it is not included due to + # BE/LE endian issues. + depends on BR2_USE_MMU # libcap + depends on BR2_PACKAGE_HOST_PROTOBUF_ARCH_SUPPORTS # protobuf-c + depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS + depends on BR2_PACKAGE_LIBBSD_ARCH_SUPPORTS + +config BR2_PACKAGE_CRIU + bool "criu" + depends on BR2_PACKAGE_CRIU_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # -march=armv7-a+fp + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 # rseq.h + depends on !BR2_TOOLCHAIN_USES_UCLIBC # no aio.h + depends on !BR2_STATIC_LIBS # protobuf, libbsd + depends on BR2_INSTALL_LIBSTDCPP # protobuf + depends on BR2_TOOLCHAIN_HAS_THREADS # protobuf, libnl + depends on BR2_USE_WCHAR # libbsd + select BR2_PACKAGE_HOST_PYTHON3 + select BR2_PACKAGE_HOST_PYTHON3_SSL + select BR2_PACKAGE_PROTOBUF + select BR2_PACKAGE_PROTOBUF_C + select BR2_PACKAGE_LIBAIO + select BR2_PACKAGE_LIBBSD + select BR2_PACKAGE_LIBCAP + select BR2_PACKAGE_LIBNET + select BR2_PACKAGE_LIBNL + select BR2_PACKAGE_PYTHON3 + help + Checkpoint/Restore In Userspace (CRIU), is a software + tool for the Linux operating system to make it possible + to freeze a running application and checkpoint it to + persistent storage as a collection of files. + + https://criu.org/Main_Page + +comment "criu needs a glibc or musl toolchain w/ threads, gcc >= 8, headers >= 4.18, dynamic library, wchar" + depends on BR2_PACKAGE_CRIU_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_8 || !BR2_TOOLCHAIN_HAS_THREADS \ + || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_18 \ + || BR2_TOOLCHAIN_USES_UCLIBC \ + || BR2_STATIC_LIBS || !BR2_USE_WCHAR diff --git a/package/criu/criu.hash b/package/criu/criu.hash new file mode 100644 index 000000000000..2c4a07252bb0 --- /dev/null +++ b/package/criu/criu.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 6a9997981c9fe4730c848ce59346b3a22fad69b803607cb67a3f6ec0557fa474 criu-3.18.tar.gz +sha256 568a1fa9d90e18a1a1a61ea58ec2eece16b56a5042cc72c1b4f8d4455ae6fcb7 COPYING diff --git a/package/criu/criu.mk b/package/criu/criu.mk new file mode 100644 index 000000000000..7f70c890686b --- /dev/null +++ b/package/criu/criu.mk @@ -0,0 +1,77 @@ +################################################################################ +# +# CRIU +# +################################################################################ + +CRIU_VERSION = 3.18 +CRIU_SITE = $(call github,checkpoint-restore,criu,v$(CRIU_VERSION)) + +CRIU_LICENSE = GPL-2.0, LGPL-2.1 (for lib/), MIT (for images/) +CRIU_LICENSE_FILES = COPYING images/LICENSE + +CRIU_DEPENDENCIES =\ + host-pkgconf \ + host-protobuf-c \ + host-python3 \ + host-python-pip \ + libaio \ + libbsd \ + libcap \ + libnet \ + libnl \ + protobuf \ + protobuf-c \ + python3 + +CRIU_MAKE_ENV =\ + $(TARGET_MAKE_ENV) \ + $(TARGET_CONFIGURE_OPTS) \ + CROSS_COMPILE=$(TARGET_CROSS) \ + WERROR=0 + +# Remap to match the used in criu. +ifeq ($(BR2_NORMALIZED_ARCH),"x86_64") +CRIU_MAKE_ENV += ARCH=x86 +else ifeq ($(BR2_NORMALIZED_ARCH),"powerpc") +CRIU_MAKE_ENV += ARCH=ppc64 +else ifeq ($(BR2_NORMALIZED_ARCH),"arm64") +CRIU_MAKE_ENV += ARCH=aarch64 +else +CRIU_MAKE_ENV += ARCH=$(BR2_NORMALIZED_ARCH) +endif + +ifeq ($(BR2_ARM_CPU_ARMV6),y) +CRIU_MAKE_ENV += SUBARCH=armv6 +else ifeq ($(BR2_ARM_CPU_ARMV7A),y) +CRIU_MAKE_ENV += SUBARCH=armv7 +else ifeq ($(BR2_ARM_CPU_ARMV7M),y) +CRIU_MAKE_ENV += SUBARCH=armv7 +else ifeq ($(BR2_ARM_CPU_ARMV8A),y) +CRIU_MAKE_ENV += SUBARCH=armv8 +endif + +# Criu needs Kernel Checkpoint/restore support which is not enabled +# by default. +define CRIU_LINUX_CONFIG_FIXUPS + $(call KCONFIG_ENABLE_OPT,CONFIG_CHECKPOINT_RESTORE) +endef + +define CRIU_BUILD_CMDS + rm -rf $(@D)/images/google/protobuf/descriptor.proto + cp -a $(STAGING_DIR)/usr/include/google/protobuf/descriptor.proto \ + $(@D)/images/google/protobuf/descriptor.proto + $(CRIU_MAKE_ENV) $(MAKE) -C $(@D) \ + PREFIX=/usr +endef + +define CRIU_INSTALL_TARGET_CMDS + $(CRIU_MAKE_ENV) $(MAKE) -C $(@D) \ + PREFIX=/usr \ + DESTDIR=$(TARGET_DIR) \ + install-criu \ + install-lib \ + install-compel +endef + +$(eval $(generic-package)) diff --git a/package/crucible/crucible.hash b/package/crucible/crucible.hash index d0a2a63fab26..256513da6b98 100644 --- a/package/crucible/crucible.hash +++ b/package/crucible/crucible.hash @@ -1,2 +1,2 @@ -sha256 1229c7d1587a97e9f3d456392e06c7be288bacf6ffb68c940d497bf55edab20b crucible-2022.05.25.tar.gz +sha256 bfeaa9b1c8bb95f02d33bd915892e748eb8939fd8b901e1d31d2efa7f7aefcb3 crucible-2023.04.12.tar.gz sha256 d88514630470aec9fa7abdc990a1e0a8751a752321bffa868188c49009d64d59 LICENSE diff --git a/package/crucible/crucible.mk b/package/crucible/crucible.mk index fdad709dded2..dad89b214956 100644 --- a/package/crucible/crucible.mk +++ b/package/crucible/crucible.mk @@ -4,7 +4,7 @@ # ################################################################################ -CRUCIBLE_VERSION = 2022.05.25 +CRUCIBLE_VERSION = 2023.04.12 CRUCIBLE_SITE = $(call github,usbarmory,crucible,v$(CRUCIBLE_VERSION)) CRUCIBLE_LICENSE = GPL-3.0 CRUCIBLE_LICENSE_FILES = LICENSE diff --git a/package/crudini/0001-prefer-shlex-over-pipes.patch b/package/crudini/0001-prefer-shlex-over-pipes.patch new file mode 100644 index 000000000000..16296f619fa1 --- /dev/null +++ b/package/crudini/0001-prefer-shlex-over-pipes.patch @@ -0,0 +1,41 @@ +From d81b703f3e8e29c1547386135c7e9ca539c1f054 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?P=C3=A1draig=20Brady?= +Date: Tue, 2 Aug 2022 14:40:37 +0100 +Subject: [PATCH] prefer shlex over pipes + +pipes is deprecated since python 3.10 +and slated for removal in python 3.13 + +[Romain backport to 0.9.3] +Upstream: https://github.com/pixelb/crudini/commit/e1650941054822faad4cda788bff6fe364eb4ca3 +Signed-off-by: Romain Naour +--- + crudini | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/crudini b/crudini +index 669596b..a136241 100755 +--- a/crudini ++++ b/crudini +@@ -17,15 +17,17 @@ import getopt + import hashlib + import iniparse + import os +-import pipes ++import re + import shutil + import string + import tempfile + + if sys.version_info[0] >= 3: ++ import shlex as pipes + from io import StringIO + import configparser + else: ++ import pipes + from cStringIO import StringIO + import ConfigParser as configparser + +-- +2.34.3 + diff --git a/package/crudini/crudini.mk b/package/crudini/crudini.mk index c376c5f777f5..48e0ebde8ff5 100644 --- a/package/crudini/crudini.mk +++ b/package/crudini/crudini.mk @@ -9,6 +9,9 @@ CRUDINI_SITE = $(call github,pixelb,crudini,$(CRUDINI_VERSION)) CRUDINI_SETUP_TYPE = setuptools CRUDINI_LICENSE = GPL-2.0 CRUDINI_LICENSE_FILES = COPYING +# This is a runtime dependency, but we don't have the concept of +# runtime dependencies for host packages. +HOST_CRUDINI_DEPENDENCIES = host-python-iniparse $(eval $(python-package)) $(eval $(host-python-package)) diff --git a/package/crun/0001-src-crun.c-fix-build-without-dlfcn.h.patch b/package/crun/0001-src-crun.c-fix-build-without-dlfcn.h.patch deleted file mode 100644 index 104c19a40ffc..000000000000 --- a/package/crun/0001-src-crun.c-fix-build-without-dlfcn.h.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 278b9b447bec3fb81bf252eb2fe2c856892ec802 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Fri, 30 Dec 2022 18:40:15 +0100 -Subject: [PATCH] src/crun.c: fix build without dlfcn.h - -Fix the following build failure without dlfcn.h raised since version 1.7 -and -https://github.com/containers/crun/commit/5837234e9840cd067edd9f6cd2ed9cae9a0e6570: - -src/crun.c:26:10: fatal error: dlfcn.h: No such file or directory - 26 | #include - | ^~~~~~~~~ - -Fixes: - - http://autobuild.buildroot.org/results/a5f52a7ee757c92c9571261c0ed884d05caeaf2f - -[fontaine.fabrice@gmail.com: backport upstream commit] -Signed-off-by: Fabrice Fontaine ---- - src/crun.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/crun.c b/src/crun.c -index cbfe900..af0cc97 100644 ---- a/src/crun.c -+++ b/src/crun.c -@@ -23,7 +23,9 @@ - #include - #include - -+#ifdef HAVE_DLOPEN - #include -+#endif - - #include "crun.h" - #include "libcrun/utils.h" --- -2.25.1 - diff --git a/package/crun/Config.in b/package/crun/Config.in index 45c86f0655a0..f6a1ec7c6688 100644 --- a/package/crun/Config.in +++ b/package/crun/Config.in @@ -1,8 +1,8 @@ config BR2_PACKAGE_CRUN bool "crun" - depends on !BR2_TOOLCHAIN_USES_UCLIBC # no fexecve + depends on BR2_USE_MMU # fork() depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C11/stdatomic.h - select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_MUSL + select BR2_PACKAGE_ARGP_STANDALONE if !BR2_TOOLCHAIN_USES_GLIBC select BR2_PACKAGE_YAJL # libocispec help crun is a fast and low-memory OCI Container Runtime in C. @@ -10,5 +10,6 @@ config BR2_PACKAGE_CRUN https://github.com/containers/crun comment "crun needs a glibc or musl toolchain, gcc >= 4.9" + depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_USES_UCLIBC || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 diff --git a/package/crun/crun.hash b/package/crun/crun.hash index 2b21800f022e..bdffb0c6aabb 100644 --- a/package/crun/crun.hash +++ b/package/crun/crun.hash @@ -1,4 +1,4 @@ # Locally computed -sha256 f669ecd3d1895dcaa8425eabb707c06eb3bdb5ae5201a50a423c3cace36c4a05 crun-1.7.2.tar.gz +sha256 5b8b5adb1dff7af768b69d2b0b4f2cd785ec931e7aa10138aa29812c46ee09ff crun-1.8.4.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.libcrun diff --git a/package/crun/crun.mk b/package/crun/crun.mk index ddb96a0b336f..15438a44b32a 100644 --- a/package/crun/crun.mk +++ b/package/crun/crun.mk @@ -4,7 +4,7 @@ # ################################################################################ -CRUN_VERSION = 1.7.2 +CRUN_VERSION = 1.8.4 CRUN_SITE = https://github.com/containers/crun/releases/download/$(CRUN_VERSION) CRUN_DEPENDENCIES = host-pkgconf yajl diff --git a/package/cryptodev-linux/Config.in b/package/cryptodev-linux/Config.in new file mode 100644 index 000000000000..89964ab0587c --- /dev/null +++ b/package/cryptodev-linux/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_CRYPTODEV_LINUX + bool "cryptodev-linux" + depends on !BR2_microblaze + depends on BR2_LINUX_KERNEL + help + Cryptodev-linux is a device that allows access to Linux kernel + cryptographic drivers; thus allowing userspace applications + to take advantage of hardware accelerators. + + http://cryptodev-linux.org/index.html + +comment "cryptodev-linux needs a Linux kernel to be built" + depends on !BR2_microblaze + depends on !BR2_LINUX_KERNEL diff --git a/package/cryptodev-linux/cryptodev-linux.hash b/package/cryptodev-linux/cryptodev-linux.hash index d649e8934ae1..300aa3bcd423 100644 --- a/package/cryptodev-linux/cryptodev-linux.hash +++ b/package/cryptodev-linux/cryptodev-linux.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 f51c2254749233b1b1d7ec9445158bd709f124f88e1c650fe2faac83c3a81938 cryptodev-linux-1.12.tar.gz +sha256 33b7915c46eb39a37110e88c681423c0dd0df25d784b6e1475ac3196367f0db5 cryptodev-linux-1.13.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/cryptodev-linux/cryptodev-linux.mk b/package/cryptodev-linux/cryptodev-linux.mk index d0c3bc5218e4..580ea89520fa 100644 --- a/package/cryptodev-linux/cryptodev-linux.mk +++ b/package/cryptodev-linux/cryptodev-linux.mk @@ -4,15 +4,13 @@ # ################################################################################ -CRYPTODEV_LINUX_VERSION = 1.12 +CRYPTODEV_LINUX_VERSION = 1.13 CRYPTODEV_LINUX_SITE = $(call github,cryptodev-linux,cryptodev-linux,cryptodev-linux-$(CRYPTODEV_LINUX_VERSION)) CRYPTODEV_LINUX_INSTALL_STAGING = YES CRYPTODEV_LINUX_LICENSE = GPL-2.0+ CRYPTODEV_LINUX_LICENSE_FILES = COPYING CRYPTODEV_LINUX_CPE_ID_VENDOR = cryptodev-linux -CRYPTODEV_LINUX_PROVIDES = cryptodev - define CRYPTODEV_LINUX_MODULE_GEN_VERSION_H $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) version.h endef diff --git a/package/cryptodev/Config.in b/package/cryptodev/Config.in deleted file mode 100644 index d1e64498a848..000000000000 --- a/package/cryptodev/Config.in +++ /dev/null @@ -1,50 +0,0 @@ -comment "cryptodev needs a Linux kernel to be built" - depends on !BR2_LINUX_KERNEL - -config BR2_PACKAGE_CRYPTODEV - bool "cryptodev" - depends on BR2_LINUX_KERNEL - help - Select the desired cryptodev implementation. - -if BR2_PACKAGE_CRYPTODEV - -choice - prompt "cryptodev variant" - default BR2_PACKAGE_CRYPTODEV_LINUX if !BR2_microblaze - help - Select the cryptodev implementation. - -config BR2_PACKAGE_CRYPTODEV_LINUX - bool "cryptodev-linux" - depends on !BR2_microblaze - select BR2_PACKAGE_HAS_CRYPTODEV - help - Cryptodev-linux is a device that allows access to Linux kernel - cryptographic drivers; thus allowing userspace applications - to take advantage of hardware accelerators. - - http://cryptodev-linux.org/index.html - -config BR2_PACKAGE_OCF_LINUX - bool "ocf-linux" - select BR2_PACKAGE_HAS_CRYPTODEV - help - OCF-Linux is a Linux port of the OpenBSD/FreeBSD Cryptographic - Framework (OCF). This port aims to bring full asynchronous - HW/SW crypto acceleration to the Linux kernel and applications - running under Linux. - - http://ocf-linux.sourceforge.net/ - -endchoice - -config BR2_PACKAGE_HAS_CRYPTODEV - bool - -config BR2_PACKAGE_PROVIDES_CRYPTODEV - string - default "cryptodev-linux" if BR2_PACKAGE_CRYPTODEV_LINUX - default "ocf-linux" if BR2_PACKAGE_OCF_LINUX - -endif diff --git a/package/cryptodev/cryptodev.mk b/package/cryptodev/cryptodev.mk deleted file mode 100644 index 969d1bd17a9c..000000000000 --- a/package/cryptodev/cryptodev.mk +++ /dev/null @@ -1,7 +0,0 @@ -################################################################################ -# -# cryptodev -# -################################################################################ - -$(eval $(virtual-package)) diff --git a/package/cryptopp/0001-GNUmakefile-add-missing-shared-library-symlink.patch b/package/cryptopp/0001-GNUmakefile-add-missing-shared-library-symlink.patch deleted file mode 100644 index 5f87414d5338..000000000000 --- a/package/cryptopp/0001-GNUmakefile-add-missing-shared-library-symlink.patch +++ /dev/null @@ -1,62 +0,0 @@ -From e4c2e3bc8174f24cf63923619f5d06d85b84ae1d Mon Sep 17 00:00:00 2001 -From: Kamel Bouhara -Date: Fri, 7 Jan 2022 22:59:23 +0100 -Subject: [PATCH] GNUmakefile: add missing shared library symlink - -The GNUmakefile install-lib target currently installs the following -symlink: - - libcryptopp.so -> libcryptopp.so.8.6.0 - -However, it does not create the following symlink: - - libcryptopp.so.8 -> libcryptopp.so.8.6.0 - -This symlink is necessary at runtime because libcryptopp.so.8 is the -SONAME of the cryptopp library, and therefore this is what the dynamic -loader will search when starting a program that is linked against -cryptopp. - -For native compilation, the 'ldconfig' invocation that immediately -follows will create that symlink, so everything works. - -For cross-compilation however, ldconfig can't be used, and therefore -LDCONFIG is passed as /bin/true, and therefore it doesn't create the -symlink. So instead, create it directly inside the GNUmakefile, -without relying on ldconfig. - -Upstream: https://github.com/weidai11/cryptopp/pull/1101 -Signed-off-by: Kamel Bouhara -Signed-off-by: Thomas Petazzoni ---- - GNUmakefile | 1 + - GNUmakefile-cross | 1 + - 2 files changed, 2 insertions(+) - -diff --git a/GNUmakefile b/GNUmakefile -index 23273edb..3b55e420 100644 ---- a/GNUmakefile -+++ b/GNUmakefile -@@ -1412,6 +1412,7 @@ ifneq ($(wildcard libcryptopp.so$(SOLIB_VERSION_SUFFIX)),) - $(CHMOD) u=rwx,go=rx $(DESTDIR)$(LIBDIR)/libcryptopp.so$(SOLIB_VERSION_SUFFIX) - ifeq ($(HAS_SOLIB_VERSION),1) - -$(LN) libcryptopp.so$(SOLIB_VERSION_SUFFIX) $(DESTDIR)$(LIBDIR)/libcryptopp.so -+ -$(LN) libcryptopp.so$(SOLIB_VERSION_SUFFIX) $(DESTDIR)$(LIBDIR)/libcryptopp.so$(SOLIB_COMPAT_SUFFIX) - $(LDCONF) $(DESTDIR)$(LIBDIR) - endif - endif -diff --git a/GNUmakefile-cross b/GNUmakefile-cross -index 9847f04b..a2b87e4a 100644 ---- a/GNUmakefile-cross -+++ b/GNUmakefile-cross -@@ -856,6 +856,7 @@ ifneq ($(wildcard libcryptopp.so$(SOLIB_VERSION_SUFFIX)),) - $(CHMOD) u=rwx,go=rx $(DESTDIR)$(LIBDIR)/libcryptopp.so$(SOLIB_VERSION_SUFFIX) - ifeq ($(HAS_SOLIB_VERSION),1) - -$(LN) libcryptopp.so$(SOLIB_VERSION_SUFFIX) $(DESTDIR)$(LIBDIR)/libcryptopp.so -+ -$(LN) libcryptopp.so$(SOLIB_VERSION_SUFFIX) $(DESTDIR)$(LIBDIR)/libcryptopp.so$(SOLIB_COMPAT_SUFFIX) - $(LDCONF) $(DESTDIR)$(LIBDIR) - endif - endif --- -2.33.1 - diff --git a/package/cryptopp/cryptopp.hash b/package/cryptopp/cryptopp.hash index 9a113b8f04f8..a7bc578da44f 100644 --- a/package/cryptopp/cryptopp.hash +++ b/package/cryptopp/cryptopp.hash @@ -1,5 +1,5 @@ -# Hash from: https://www.cryptopp.com/release860.html: -sha512 e7773f5e4a7dc7e8e735b1702524bee56ba38e5211544c9c9778bc51ed8dc7b376c17f2e406410043b636312336f26f76dc963f298872f8c13933e88c232fc03 cryptopp860.zip +# Hash from: https://www.cryptopp.com/release890.html: +sha512 903970c4c0312272e93bae0cc3477be66b273dd38c9329fda9f7157ec44e247a3bc16b9d2b4ad625f258af0eaf2dc2c4210d4d14829b455f180983859a5c4b41 cryptopp890.zip # Hash for license file: -sha256 e668af8c73a38a66a1e8951d14ec24e7582fee5254dd6c3dae488a416d105d5f License.txt +sha256 78e4010b682cb94187fe0b57e50116d0ba271ef81104d1ddb35c80c3d81e3169 License.txt diff --git a/package/cryptopp/cryptopp.mk b/package/cryptopp/cryptopp.mk index 87d6fba2374e..a538f8c17dd7 100644 --- a/package/cryptopp/cryptopp.mk +++ b/package/cryptopp/cryptopp.mk @@ -4,7 +4,7 @@ # ################################################################################ -CRYPTOPP_VERSION = 8.6.0 +CRYPTOPP_VERSION = 8.9.0 CRYPTOPP_SOURCE = cryptopp$(subst .,,$(CRYPTOPP_VERSION)).zip CRYPTOPP_SITE = https://cryptopp.com CRYPTOPP_LICENSE = BSL-1.0, BSD-3-Clause (CRYPTOGAMS), Public domain (ChaCha SSE2 and AVX) diff --git a/package/cups-filters/0001-beh-backend-Use-execv-instead-of-system-CVE-2023-24805.patch b/package/cups-filters/0001-beh-backend-Use-execv-instead-of-system-CVE-2023-24805.patch new file mode 100644 index 000000000000..e527b20f9166 --- /dev/null +++ b/package/cups-filters/0001-beh-backend-Use-execv-instead-of-system-CVE-2023-24805.patch @@ -0,0 +1,208 @@ +From 93e60d3df358c0ae6f3dba79e1c9684657683d89 Mon Sep 17 00:00:00 2001 +From: Till Kamppeter +Date: Wed, 17 May 2023 11:11:29 +0200 +Subject: [PATCH] beh backend: Use execv() instead of system() - CVE-2023-24805 + +With execv() command line arguments are passed as separate strings and +not the full command line in a single string. This prevents arbitrary +command execution by escaping the quoting of the arguments in a job +with a forged job title. + +In addition, done the following fixes and improvements: + +- Do not allow '/' in the scheme of the URI (= backend executable + name), to assure that only backends inside /usr/lib/cups/backend/ + are used. + +- URI must have ':', to split off scheme, otherwise error out. + +- Check return value of snprintf() to create call path for backend, to + error out on truncation of a too long scheme or on complete failure + due to a completely odd scheme. + +- Use strncat() instead of strncpy() for getting scheme from URI, the latter + does not require setting terminating zero byte in case of truncation. + +- Also exclude "." or ".." as scheme, as directories are not valid CUPS + backends. + +- Do not use fprintf() in sigterm_handler(), to not interfere with a + fprintf() which could be running in the main process when + sigterm_handler() is triggered. + +- Use "static volatile int" for global variable job_canceled. + +Upstream: https://github.com/OpenPrinting/cups-filters/commit/93e60d3df358c0ae6f3dba79e1c9684657683d89 +Signed-off-by: Fabrice Fontaine +--- + backend/beh.c | 107 +++++++++++++++++++++++++++++++++++++++----------- + 1 file changed, 84 insertions(+), 23 deletions(-) + +diff --git a/backend/beh.c b/backend/beh.c +index 225fd27d5..8d51235b1 100644 +--- a/backend/beh.c ++++ b/backend/beh.c +@@ -22,12 +22,13 @@ + #include "backend-private.h" + #include + #include ++#include + + /* + * Local globals... + */ + +-static int job_canceled = 0; /* Set to 1 on SIGTERM */ ++static volatile int job_canceled = 0; /* Set to 1 on SIGTERM */ + + /* + * Local functions... +@@ -213,21 +214,40 @@ call_backend(char *uri, /* I - URI of final destination */ + char **argv, /* I - Command-line arguments */ + char *filename) { /* I - File name of input data */ + const char *cups_serverbin; /* Location of programs */ ++ char *backend_argv[8]; /* Arguments for backend */ + char scheme[1024], /* Scheme from URI */ + *ptr, /* Pointer into scheme */ +- cmdline[65536]; /* Backend command line */ +- int retval; ++ backend_path[2048]; /* Backend path */ ++ int pid = 0, /* Process ID of backend */ ++ wait_pid, /* Process ID from wait() */ ++ wait_status, /* Status from child */ ++ retval = 0; ++ int bytes; + + /* + * Build the backend command line... + */ + +- strncpy(scheme, uri, sizeof(scheme) - 1); +- if (strlen(uri) > 1023) +- scheme[1023] = '\0'; ++ scheme[0] = '\0'; ++ strncat(scheme, uri, sizeof(scheme) - 1); + if ((ptr = strchr(scheme, ':')) != NULL) + *ptr = '\0'; +- ++ else { ++ fprintf(stderr, ++ "ERROR: beh: Invalid URI, no colon (':') to mark end of scheme part.\n"); ++ exit (CUPS_BACKEND_FAILED); ++ } ++ if (strchr(scheme, '/')) { ++ fprintf(stderr, ++ "ERROR: beh: Invalid URI, scheme contains a slash ('/').\n"); ++ exit (CUPS_BACKEND_FAILED); ++ } ++ if (!strcmp(scheme, ".") || !strcmp(scheme, "..")) { ++ fprintf(stderr, ++ "ERROR: beh: Invalid URI, scheme (\"%s\") is a directory.\n", ++ scheme); ++ exit (CUPS_BACKEND_FAILED); ++ } + if ((cups_serverbin = getenv("CUPS_SERVERBIN")) == NULL) + cups_serverbin = CUPS_SERVERBIN; + +@@ -235,16 +255,29 @@ call_backend(char *uri, /* I - URI of final destination */ + fprintf(stderr, + "ERROR: beh: Direct output into a file not supported.\n"); + exit (CUPS_BACKEND_FAILED); +- } else +- snprintf(cmdline, sizeof(cmdline), +- "%s/backend/%s '%s' '%s' '%s' '%s' '%s' %s", +- cups_serverbin, scheme, argv[1], argv[2], argv[3], +- /* Apply number of copies only if beh was called with a +- file name and not with the print data in stdin, as +- backends should handle copies only if they are called +- with a file name */ +- (argc == 6 ? "1" : argv[4]), +- argv[5], filename); ++ } ++ ++ backend_argv[0] = uri; ++ backend_argv[1] = argv[1]; ++ backend_argv[2] = argv[2]; ++ backend_argv[3] = argv[3]; ++ /* Apply number of copies only if beh was called with a file name ++ and not with the print data in stdin, as backends should handle ++ copies only if they are called with a file name */ ++ backend_argv[4] = (argc == 6 ? "1" : argv[4]); ++ backend_argv[5] = argv[5]; ++ backend_argv[6] = filename; ++ backend_argv[7] = NULL; ++ ++ bytes = snprintf(backend_path, sizeof(backend_path), ++ "%s/backend/%s", cups_serverbin, scheme); ++ if (bytes < 0 || bytes >= sizeof(backend_path)) ++ { ++ fprintf(stderr, ++ "ERROR: beh: Invalid scheme (\"%s\"), could not determing backend path.\n", ++ scheme); ++ return (CUPS_BACKEND_FAILED); ++ } + + /* + * Overwrite the device URI and run the actual backend... +@@ -253,18 +286,44 @@ call_backend(char *uri, /* I - URI of final destination */ + setenv("DEVICE_URI", uri, 1); + + fprintf(stderr, +- "DEBUG: beh: Executing backend command line \"%s\"...\n", +- cmdline); ++ "DEBUG: beh: Executing backend command line \"%s '%s' '%s' '%s' '%s' '%s' %s\"...\n", ++ backend_path, backend_argv[1], backend_argv[2], backend_argv[3], ++ backend_argv[4], backend_argv[5], backend_argv[6]); + fprintf(stderr, + "DEBUG: beh: Using device URI: %s\n", + uri); + +- retval = system(cmdline) >> 8; ++ if ((pid = fork()) == 0) { ++ /* ++ * Child comes here... ++ */ ++ ++ /* Run the backend */ ++ execv(backend_path, backend_argv); + +- if (retval == -1) + fprintf(stderr, "ERROR: Unable to execute backend command line: %s\n", + strerror(errno)); + ++ exit(1); ++ } else if (pid < 0) { ++ /* ++ * Unable to fork! ++ */ ++ ++ return (CUPS_BACKEND_FAILED); ++ } ++ ++ while ((wait_pid = wait(&wait_status)) < 0 && errno == EINTR); ++ ++ if (wait_pid >= 0 && wait_status) { ++ if (WIFEXITED(wait_status)) ++ retval = WEXITSTATUS(wait_status); ++ else if (WTERMSIG(wait_status) != SIGTERM) ++ retval = WTERMSIG(wait_status); ++ else ++ retval = 0; ++ } ++ + return (retval); + } + +@@ -277,8 +336,10 @@ static void + sigterm_handler(int sig) { /* I - Signal number (unused) */ + (void)sig; + +- fprintf(stderr, +- "DEBUG: beh: Job canceled.\n"); ++ const char * const msg = "DEBUG: beh: Job canceled.\n"; ++ /* The if() is to eliminate the return value and silence the warning ++ about an unused return value. */ ++ if (write(2, msg, strlen(msg))); + + if (job_canceled) + _exit(CUPS_BACKEND_OK); diff --git a/package/cups-filters/cups-filters.hash b/package/cups-filters/cups-filters.hash index b910cdce134e..7fb3badf46dc 100644 --- a/package/cups-filters/cups-filters.hash +++ b/package/cups-filters/cups-filters.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 0ca77bb820719a040ff003ecb478d0c2ceffc94e8bd1cd03ddb5a199444127ba cups-filters-1.28.16.tar.gz +sha256 01a2acbd6bb78f09638047e4e9ce305d7e5ef4cb9ed6949672b5d901b7321dd4 cups-filters-1.28.17.tar.gz sha256 38192ffdaca98b718f78b2d4abc38bb087f0bbcc9a16d212c98b903b985f900f COPYING diff --git a/package/cups-filters/cups-filters.mk b/package/cups-filters/cups-filters.mk index 3250649e0763..dcfb2e950090 100644 --- a/package/cups-filters/cups-filters.mk +++ b/package/cups-filters/cups-filters.mk @@ -4,12 +4,15 @@ # ################################################################################ -CUPS_FILTERS_VERSION = 1.28.16 -CUPS_FILTERS_SITE = http://openprinting.org/download/cups-filters +CUPS_FILTERS_VERSION = 1.28.17 +CUPS_FILTERS_SITE = https://github.com/OpenPrinting/cups-filters/releases/download/$(CUPS_FILTERS_VERSION) CUPS_FILTERS_LICENSE = GPL-2.0, GPL-2.0+, GPL-3.0, GPL-3.0+, LGPL-2, LGPL-2.1+, MIT, BSD-4-Clause CUPS_FILTERS_LICENSE_FILES = COPYING CUPS_FILTERS_CPE_ID_VENDOR = linuxfoundation +# 0001-beh-backend-Use-execv-instead-of-system-CVE-2023-24805.patch +CUPS_FILTERS_IGNORE_CVES += CVE-2023-24805 + CUPS_FILTERS_DEPENDENCIES = cups libglib2 lcms2 qpdf fontconfig freetype jpeg CUPS_FILTERS_CONF_OPTS = \ diff --git a/package/cups/0005-raster-interpret.c-Fix-CVE-2023-4504.patch b/package/cups/0005-raster-interpret.c-Fix-CVE-2023-4504.patch new file mode 100644 index 000000000000..d1dff4e1fa51 --- /dev/null +++ b/package/cups/0005-raster-interpret.c-Fix-CVE-2023-4504.patch @@ -0,0 +1,45 @@ +From 2431caddb7e6a87f04ac90b5c6366ad268b6ff31 Mon Sep 17 00:00:00 2001 +From: Zdenek Dohnal +Date: Wed, 20 Sep 2023 14:45:17 +0200 +Subject: [PATCH] raster-interpret.c: Fix CVE-2023-4504 + +We didn't check for end of buffer if it looks there is an escaped +character - check for NULL terminator there and if found, return NULL +as return value and in `ptr`, because a lone backslash is not +a valid PostScript character. + +Upstream: https://github.com/OpenPrinting/cups/commit/2431caddb7e6a87f04ac90b5c6366ad268b6ff31 +[Peter: drop CHANGES hunk] +Signed-off-by: Peter Korsgaard +--- + cups/raster-interpret.c | 14 +++++++++++++- + 1 file changed, 14 insertions(+), 1 deletion(-) + +diff --git a/cups/raster-interpret.c b/cups/raster-interpret.c +index 6fcf731b5..b8655c8c6 100644 +--- a/cups/raster-interpret.c ++++ b/cups/raster-interpret.c +@@ -1116,7 +1116,19 @@ scan_ps(_cups_ps_stack_t *st, /* I - Stack */ + + cur ++; + +- if (*cur == 'b') ++ /* ++ * Return NULL if we reached NULL terminator, a lone backslash ++ * is not a valid character in PostScript. ++ */ ++ ++ if (!*cur) ++ { ++ *ptr = NULL; ++ ++ return (NULL); ++ } ++ ++ if (*cur == 'b') + *valptr++ = '\b'; + else if (*cur == 'f') + *valptr++ = '\f'; +-- +2.30.2 + diff --git a/package/cups/cups.hash b/package/cups/cups.hash index ba220e903e1f..501d8c12a622 100644 --- a/package/cups/cups.hash +++ b/package/cups/cups.hash @@ -1,4 +1,4 @@ # Locally calculated: -sha256 f03ccb40b087d1e30940a40e0141dcbba263f39974c20eb9f2521066c9c6c908 cups-2.4.2-source.tar.gz +sha256 58e970cf1955e1cc87d0847c32526d9c2ccee335e5f0e3882b283138ba0e7262 cups-2.4.6-source.tar.gz sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE -sha256 7a7bd639e3a8457ae40b0dcfb74ea3cc6a8132b06c726142e993625d33eb6de5 NOTICE +sha256 5320b6e3c252423e4153eb2dd63e57e3b630afb21139f44e43b02d85fe33e279 NOTICE diff --git a/package/cups/cups.mk b/package/cups/cups.mk index fed2aa809f1c..4bc5eeedeea2 100644 --- a/package/cups/cups.mk +++ b/package/cups/cups.mk @@ -4,7 +4,7 @@ # ################################################################################ -CUPS_VERSION = 2.4.2 +CUPS_VERSION = 2.4.6 CUPS_SOURCE = cups-$(CUPS_VERSION)-source.tar.gz CUPS_SITE = https://github.com/OpenPrinting/cups/releases/download/v$(CUPS_VERSION) CUPS_LICENSE = Apache-2.0 with GPL-2.0/LGPL-2.0 exception @@ -13,6 +13,9 @@ CUPS_CPE_ID_VENDOR = openprinting CUPS_SELINUX_MODULES = cups CUPS_INSTALL_STAGING = YES +# 0005-raster-interpret.c-Fix-CVE-2023-4504.patch +CUPS_IGNORE_CVES += CVE-2023-4504 + # Using autoconf, not autoheader, so we cannot use AUTORECONF = YES. define CUPS_RUN_AUTOCONF cd $(@D); $(AUTOCONF) -f diff --git a/package/cutekeyboard/Config.in b/package/cutekeyboard/Config.in new file mode 100644 index 000000000000..bd661b0cd42e --- /dev/null +++ b/package/cutekeyboard/Config.in @@ -0,0 +1,21 @@ +config BR2_PACKAGE_CUTEKEYBOARD + bool "cutekeyboard" + depends on BR2_PACKAGE_QT5 + depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE # qt5declarative + select BR2_PACKAGE_QT5DECLARATIVE + select BR2_PACKAGE_QT5DECLARATIVE_QUICK + select BR2_PACKAGE_QT5QUICKCONTROLS2 + help + CuteKeyboard is a Qt virtual keyboard plugin for + embedded applications. + + https://amarula.github.io/cutekeyboard/ + +if BR2_PACKAGE_CUTEKEYBOARD + +config BR2_PACKAGE_CUTEKEYBOARD_EXAMPLES + bool "cutekeyboard examples" + help + Compile also application example + +endif diff --git a/package/cutekeyboard/cutekeyboard.hash b/package/cutekeyboard/cutekeyboard.hash new file mode 100644 index 000000000000..3d3ec2f85884 --- /dev/null +++ b/package/cutekeyboard/cutekeyboard.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 8cbaddc5fbf479d5e20fc88228e9af5928fa5e588052ee496c2f2efbe2afc510 cutekeyboard-afacc3210b75d7e0de27dcc4c0f2bed0212cc4c7.tar.gz +sha256 bdde6ec2ae2686623c0bb414bfb8bd731b314beff2264c602116ea60dd65964d LICENSE diff --git a/package/cutekeyboard/cutekeyboard.mk b/package/cutekeyboard/cutekeyboard.mk new file mode 100644 index 000000000000..a7b3ba7a1d0f --- /dev/null +++ b/package/cutekeyboard/cutekeyboard.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# cutekeyboard +# +################################################################################ + +CUTEKEYBOARD_VERSION = afacc3210b75d7e0de27dcc4c0f2bed0212cc4c7 +CUTEKEYBOARD_SITE = $(call github,amarula,cutekeyboard,$(CUTEKEYBOARD_VERSION)) +CUTEKEYBOARD_DEPENDENCIES = qt5declarative qt5quickcontrols2 +CUTEKEYBOARD_INSTALL_STAGING = YES +CUTEKEYBOARD_LICENSE = MIT +CUTEKEYBOARD_LICENSE_FILES = LICENSE + +ifeq ($(BR2_PACKAGE_CUTEKEYBOARD_EXAMPLES),y) +CUTEKEYBOARD_CONF_OPTS += CONFIG+=BUILD_EXAMPLES +endif + +$(eval $(qmake-package)) diff --git a/package/daemon/0001-daemon-fix-build-with-musl-libc-again.patch b/package/daemon/0001-daemon-fix-build-with-musl-libc-again.patch deleted file mode 100644 index 48d95f122fe7..000000000000 --- a/package/daemon/0001-daemon-fix-build-with-musl-libc-again.patch +++ /dev/null @@ -1,46 +0,0 @@ -From b879e6886498fdd147287bffdf5867378c7f3299 Mon Sep 17 00:00:00 2001 -From: Baruch Siach -Date: Thu, 24 Jun 2021 14:28:10 +0300 -Subject: [PATCH] daemon: fix build with musl libc (again) - -Commit 6b28c54dd95b3 added HAVE_SYS_TTYDEFAULTS_H to guard -sys/ttydefaults.h include. This breaks musl libc build because -HAVE_SYS_TTYDEFAULTS_H is not defined until config.h is included. - -Move sys/ttydefaults.h include below config.h - -Signed-off-by: Baruch Siach ---- -Upstream status: https://github.com/raforg/daemon/pull/4 - - daemon.c | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - -diff --git a/daemon.c b/daemon.c -index 5c5ef2cb86df..f88a0d49bf84 100644 ---- a/daemon.c -+++ b/daemon.c -@@ -1011,9 +1011,6 @@ I - #ifdef _RESTORE_POSIX_SOURCE - #define _POSIX_SOURCE - #endif --#ifdef HAVE_SYS_TTYDEFAULTS_H /* For CEOF in musl libc (Linux only) */ --#include --#endif - #include - #include - #include -@@ -1037,6 +1034,10 @@ I - #include - #endif - -+#ifdef HAVE_SYS_TTYDEFAULTS_H /* For CEOF in musl libc (Linux only) */ -+#include -+#endif -+ - /* Configuration file entries */ - - typedef struct Config Config; --- -2.30.2 - diff --git a/package/daemon/0002-Fix-build-with-NDEBUG-defined.patch b/package/daemon/0002-Fix-build-with-NDEBUG-defined.patch deleted file mode 100644 index e99e9d8ed73d..000000000000 --- a/package/daemon/0002-Fix-build-with-NDEBUG-defined.patch +++ /dev/null @@ -1,46 +0,0 @@ -From fc84d8d572ffcecb533fd6d6d025abea12ce027e Mon Sep 17 00:00:00 2001 -Message-Id: -From: Baruch Siach -Date: Thu, 3 Jun 2021 15:01:10 +0300 -Subject: [PATCH] Fix build with NDEBUG defined - -Build with NDEBUG fails because the debug() macro becomes empty. This -creates invalid syntax with the debug() call is the only statement in -the body of a 'for' loop. - -This fixes build failures like: - -daemon.c: In function 'show': -daemon.c:3607:2: error: expected expression before '}' token - } - ^ - -Signed-off-by: Baruch Siach ---- -Upstream status: https://github.com/raforg/daemon/pull/3 - - libslack/err.h | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/libslack/err.h b/libslack/err.h -index 106bdb01e074..7acfbe46d60a 100644 ---- a/libslack/err.h -+++ b/libslack/err.h -@@ -40,10 +40,10 @@ - #undef check - - #ifdef NDEBUG --#define debug(args) --#define vdebug(args) --#define debugsys(args) --#define vdebugsys(args) -+#define debug(args) do {} while (0); -+#define vdebug(args) do {} while (0); -+#define debugsys(args) do {} while (0); -+#define vdebugsys(args) do {} while (0); - #define check(cond, mesg) (void_cast(0)) - #else - #define debug(args) debugf args; --- -2.30.2 - diff --git a/package/daemon/daemon.hash b/package/daemon/daemon.hash index c490f715487f..f1346d269b87 100644 --- a/package/daemon/daemon.hash +++ b/package/daemon/daemon.hash @@ -1,5 +1,9 @@ # From http://www.libslack.org/daemon/ -sha256 74f12e6d4b3c85632489bd08431d3d997bc17264bf57b7202384f2e809cff596 daemon-0.8.tar.gz +sha256 fa28859ad341cb0a0b012c11c271814f870482013b49f710600321d379887cd1 daemon-0.8.4.tar.gz # Locally calculated -sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 LICENSE -sha256 91329bb9be4ae0b7800081fa054e9bb760c60005b26958c1fb8461bc66bcd998 COPYING +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE +sha256 34c8c7085e4d3920bfb8143b910d4f99194b9fc3e1cc3442c9b1b46db4382891 COPYING +sha256 8587dc1ea896f33b657d9e57bd3bf03f0c11ce07d041f09e687f87e7a0087b38 LICENSES/LicenseRef-BSD-3-Clause-Almost.txt +sha256 aaf135472f81c5b4a0dca9367e5bb5e9750032b5bebe5442b36e4c0a47430df3 LICENSES/GPL-2.0-or-later.txt +sha256 61778e80a2fd85955b626b29aa2bcf06144c714277bded65633e4a81479d9fb3 LICENSES/LGPL-2.0-or-later.txt +sha256 1aa57d2704f6783460f2750a9f3217d083ed5161eb95438ca43a5674213a7128 LICENSES/LicenseRef-Tatu-Ylonen-Permissive.txt diff --git a/package/daemon/daemon.mk b/package/daemon/daemon.mk index 96a163e597e6..d7709e03eff4 100644 --- a/package/daemon/daemon.mk +++ b/package/daemon/daemon.mk @@ -4,10 +4,14 @@ # ################################################################################ -DAEMON_VERSION = 0.8 +DAEMON_VERSION = 0.8.4 DAEMON_SITE = http://libslack.org/daemon/download -DAEMON_LICENSE = GPL-2.0+ -DAEMON_LICENSE_FILES = LICENSE COPYING +DAEMON_LICENSE = GPL-2.0+, LGPL-2.0+, BSD-3-Clause, Tatu Ylonen permissive license +DAEMON_LICENSE_FILES = LICENSE COPYING \ + LICENSES/LicenseRef-BSD-3-Clause-Almost.txt \ + LICENSES/GPL-2.0-or-later.txt \ + LICENSES/LGPL-2.0-or-later.txt \ + LICENSES/LicenseRef-Tatu-Ylonen-Permissive.txt define DAEMON_CONFIGURE_CMDS (cd $(@D); ./configure) diff --git a/package/dahdi-linux/0005-Fix-build-on-Linux-6.3.patch b/package/dahdi-linux/0005-Fix-build-on-Linux-6.3.patch new file mode 100644 index 000000000000..f2ac4d2dc3a4 --- /dev/null +++ b/package/dahdi-linux/0005-Fix-build-on-Linux-6.3.patch @@ -0,0 +1,116 @@ +From c4969d756eac041758856b99a1084158c06beb7e Mon Sep 17 00:00:00 2001 +From: Brahmajit Das +Date: Thu, 22 Jun 2023 15:52:18 +0000 +Subject: [PATCH] drivers/dahdi: fix build with clang-16 + +clang-16 enables -Werror=incompatible-pointer-types (along with buch of +other warnings) by default, thus resulting in errors such as: + +/var/tmp/portage/net-misc/dahdi-3.2.0/work/dahdi-linux-3.2.0/drivers/dahdi/dahdi-sysfs.c:272:20: error: incompatible function + pointer types initializing 'int (*)(const struct device *, struct kobj_uevent_env *)' with an expression of type + 'int (struct device *, struct kobj_uevent_env *)' [-Wincompatible-function-pointer-types] + .uevent = span_uevent, + ^~~~~~~~~~~ +/var/tmp/portage/net-misc/dahdi-3.2.0/work/dahdi-linux-3.2.0/drivers/dahdi/dahdi-sysfs.c:709:20: error: incompatible function + pointer types initializing 'int (*)(const struct device *, struct kobj_uevent_env *)' with an expression of type + 'int (struct device *, struct kobj_uevent_env *)' [-Wincompatible-function-pointer-types] + .uevent = device_uevent, + ^~~~~~~~~~~~~ +2 errors generated. + +This is due the change in bus_type strcut made in upstream commit +https://github.com/torvalds/linux/commit/2a81ada32f0e584fc0c943e0d3a8c9f4fae411d6. +Where they make uevent take a const *, as the strcut should not be +modifying the device that is passed into it. + +This patch modifes some of the fucntions parameter types, making dahdi +possible to be built with clang-16. + +Bug: https://bugs.gentoo.org/906179 +Signed-off-by: Brahmajit Das + +Upstream: https://github.com/asterisk/dahdi-linux/pull/21 + +[Bernd: updated patch for compatibility with kernel < 6.3] +Signed-off-by: Bernd Kuhls +--- + drivers/dahdi/dahdi-sysfs.c | 12 ++++++++++-- + drivers/dahdi/wctc4xxp/base.c | 2 +- + drivers/dahdi/xpp/xbus-sysfs.c | 4 ++++ + 3 files changed, 15 insertions(+), 3 deletions(-) + +diff --git a/drivers/dahdi/dahdi-sysfs.c b/drivers/dahdi/dahdi-sysfs.c +index ca29ddba..38236929 100644 +--- a/drivers/dahdi/dahdi-sysfs.c ++++ b/drivers/dahdi/dahdi-sysfs.c +@@ -47,7 +47,7 @@ static int span_match(struct device *dev, struct device_driver *driver) + return 1; + } + +-static inline struct dahdi_span *dev_to_span(struct device *dev) ++static inline struct dahdi_span *dev_to_span(const struct device *dev) + { + return dev_get_drvdata(dev); + } +@@ -68,7 +68,11 @@ static inline struct dahdi_span *dev_to_span(struct device *dev) + return err; \ + } while (0) + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 3, 0) + static int span_uevent(struct device *dev, struct kobj_uevent_env *kenv) ++#else ++static int span_uevent(const struct device *dev, struct kobj_uevent_env *kenv) ++#endif + { + struct dahdi_span *span; + +@@ -415,7 +419,7 @@ static struct { + unsigned int clean_chardev:1; + } should_cleanup; + +-static inline struct dahdi_device *to_ddev(struct device *dev) ++static inline struct dahdi_device *to_ddev(const struct device *dev) + { + return container_of(dev, struct dahdi_device, dev); + } +@@ -438,7 +442,11 @@ static inline struct dahdi_device *to_ddev(struct device *dev) + return err; \ + } while (0) + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 3, 0) + static int device_uevent(struct device *dev, struct kobj_uevent_env *kenv) ++#else ++static int device_uevent(const struct device *dev, struct kobj_uevent_env *kenv) ++#endif + { + struct dahdi_device *ddev; + +diff --git a/drivers/dahdi/wctc4xxp/base.c b/drivers/dahdi/wctc4xxp/base.c +index ec6fc436..db70ea7e 100644 +--- a/drivers/dahdi/wctc4xxp/base.c ++++ b/drivers/dahdi/wctc4xxp/base.c +@@ -643,7 +643,7 @@ wctc4xxp_net_register(struct wcdte *wc) + return -ENOMEM; + priv = netdev_priv(netdev); + priv->wc = wc; +- memcpy(netdev->dev_addr, our_mac, sizeof(our_mac)); ++ memcpy((void *)netdev->dev_addr, our_mac, sizeof(our_mac)); + + # ifdef HAVE_NET_DEVICE_OPS + netdev->netdev_ops = &wctc4xxp_netdev_ops; +diff --git a/drivers/dahdi/xpp/xbus-sysfs.c b/drivers/dahdi/xpp/xbus-sysfs.c +index d8c11dc3..11b3ed3e 100644 +--- a/drivers/dahdi/xpp/xbus-sysfs.c ++++ b/drivers/dahdi/xpp/xbus-sysfs.c +@@ -418,7 +418,11 @@ static int astribank_match(struct device *dev, struct device_driver *driver) + return err; \ + } while (0) + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 3, 0) + static int astribank_uevent(struct device *dev, struct kobj_uevent_env *kenv) ++#else ++static int astribank_uevent(const struct device *dev, struct kobj_uevent_env *kenv) ++#endif + { + xbus_t *xbus; + extern char *initdir; diff --git a/package/dahdi-linux/0006-Fix-build-on-Linux-6.4.patch b/package/dahdi-linux/0006-Fix-build-on-Linux-6.4.patch new file mode 100644 index 000000000000..992cb4d51367 --- /dev/null +++ b/package/dahdi-linux/0006-Fix-build-on-Linux-6.4.patch @@ -0,0 +1,69 @@ +From b393e59d7eb2951e2fb279fca1c4756ea165aeee Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sun, 9 Jul 2023 17:14:31 +0200 +Subject: [PATCH] Fix build on Linux 6.4 + +Needed after upstream changes in kernel 6.4: +https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/diff/include/linux/device/class.h?id=1aaba11da9aa +https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=48380368dec14859723b9e3fbd43e042638d9a76 + +Upstream: https://github.com/asterisk/dahdi-linux/pull/22 + +Signed-off-by: Bernd Kuhls +--- + drivers/dahdi/dahdi-sysfs-chan.c | 4 ++++ + drivers/dahdi/voicebus/voicebus.c | 4 ++++ + drivers/dahdi/wctdm24xxp/base.c | 4 ++++ + 3 files changed, 12 insertions(+) + +diff --git a/drivers/dahdi/dahdi-sysfs-chan.c b/drivers/dahdi/dahdi-sysfs-chan.c +index a91e6ed..b18b5f9 100644 +--- a/drivers/dahdi/dahdi-sysfs-chan.c ++++ b/drivers/dahdi/dahdi-sysfs-chan.c +@@ -482,7 +482,11 @@ int __init dahdi_sysfs_chan_init(const struct file_operations *fops) + } + should_cleanup.channel_driver = 1; + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 4, 0) + dahdi_class = class_create(THIS_MODULE, "dahdi"); ++#else ++ dahdi_class = class_create("dahdi"); ++#endif + if (IS_ERR(dahdi_class)) { + res = PTR_ERR(dahdi_class); + dahdi_err("%s: class_create(dahi_chan) failed. Error: %d\n", +diff --git a/drivers/dahdi/voicebus/voicebus.c b/drivers/dahdi/voicebus/voicebus.c +index 8a1f7a6..d141aaf 100644 +--- a/drivers/dahdi/voicebus/voicebus.c ++++ b/drivers/dahdi/voicebus/voicebus.c +@@ -1135,7 +1135,11 @@ static void vb_stop_txrx_processors(struct voicebus *vb) + */ + void voicebus_stop(struct voicebus *vb) + { ++#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 4, 0) + static DEFINE_SEMAPHORE(stop); ++#else ++ static DEFINE_SEMAPHORE(stop, 1); ++#endif + + down(&stop); + +diff --git a/drivers/dahdi/wctdm24xxp/base.c b/drivers/dahdi/wctdm24xxp/base.c +index a28e249..4392b45 100644 +--- a/drivers/dahdi/wctdm24xxp/base.c ++++ b/drivers/dahdi/wctdm24xxp/base.c +@@ -224,7 +224,11 @@ mod_hooksig(struct wctdm *wc, struct wctdm_module *mod, enum dahdi_rxsig rxsig) + } + + struct wctdm *ifaces[WC_MAX_IFACES]; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 4, 0) + DEFINE_SEMAPHORE(ifacelock); ++#else ++DEFINE_SEMAPHORE(ifacelock, 1); ++#endif + + static void wctdm_release(struct wctdm *wc); + +-- +2.39.2 + diff --git a/package/dav1d/dav1d.hash b/package/dav1d/dav1d.hash index 35d753fc27e5..0b2c53ec2120 100644 --- a/package/dav1d/dav1d.hash +++ b/package/dav1d/dav1d.hash @@ -1,4 +1,4 @@ -# From http://download.videolan.org/pub/videolan/dav1d/1.0.0/dav1d-1.0.0.tar.xz.sha256 -sha256 51737db7e4897e599684f873a4725176dd3c779e639411d7c4fce134bb5ebb82 dav1d-1.0.0.tar.xz +# From https://download.videolan.org/pub/videolan/dav1d/1.3.0/dav1d-1.3.0.tar.xz.sha256 +sha256 6d8be2741c505c47f8f1ced3c9cc427759243436553d01d1acce201f87b39e71 dav1d-1.3.0.tar.xz # Locally computed sha256 b327887de263238deaa80c34cdd2ff3e0ba1d35db585ce14a37ce3e74ee389e9 COPYING diff --git a/package/dav1d/dav1d.mk b/package/dav1d/dav1d.mk index 2d42cdcb6778..3650f28730e8 100644 --- a/package/dav1d/dav1d.mk +++ b/package/dav1d/dav1d.mk @@ -4,11 +4,12 @@ # ################################################################################ -DAV1D_VERSION = 1.0.0 +DAV1D_VERSION = 1.3.0 DAV1D_SOURCE = dav1d-$(DAV1D_VERSION).tar.xz -DAV1D_SITE = http://download.videolan.org/pub/videolan/dav1d/$(DAV1D_VERSION) +DAV1D_SITE = https://download.videolan.org/pub/videolan/dav1d/$(DAV1D_VERSION) DAV1D_LICENSE = BSD-2-Clause DAV1D_LICENSE_FILES = COPYING +DAV1D_CPE_ID_VENDOR = videolan DAV1D_INSTALL_STAGING = YES DAV1D_CONF_OPTS = \ -Denable_tests=false \ diff --git a/package/dbus-broker/dbus-broker.hash b/package/dbus-broker/dbus-broker.hash index f6c2cbe16026..06c8f229b794 100644 --- a/package/dbus-broker/dbus-broker.hash +++ b/package/dbus-broker/dbus-broker.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 bea7f653e7251063c5f427e9e3f93562d38a0d8667ae6d49fb56f113605985de dbus-broker-32.tar.xz +sha256 23713f25624749fdb274907e429080fa2d8f4dbe76acd87bb6d21a3c818c7841 dbus-broker-33.tar.xz sha256 3cda3630283eda0eab825abe5ac84d191248c6b3fe1c232a118124959b96c6a4 LICENSE sha256 20ea1f96abc15553695c6725bb3dcabff4b43b85b7ca7d675a2b8860e3b01f87 subprojects/libcdvar-1/AUTHORS sha256 8153c478102dc209b30dd4627cf5bb3596263f99692bf3eec174b1e17bbf8a3b subprojects/libcdvar-1/README.md @@ -11,7 +11,7 @@ sha256 23f24eeaaded5fedd6e7840b6f7b73838f9a4e2112ad6a12fe1ef958f73d0214 subpro sha256 05113a24aca4c537819dd0d91b95b13edb85bea4b6a77a6d9269becb397ed374 subprojects/libcrbtree-3/README.md sha256 6d63b1fb794d4c02622595ad30357c90398aa883864e5a275479139c8f03208f subprojects/libcshquote-1/AUTHORS sha256 cad109dd33062518a437ebee145ba863fe0e047d4e3db9c28b0bf3c6148f10c2 subprojects/libcshquote-1/README.md -sha256 32913ba08dc041f3f4ca361fc0d68014120e1c612772aabbcc901556df499ce5 subprojects/libcstdaux-1/AUTHORS -sha256 7c4b6c325b0bc02150089112f65132ee999b0f44500b73d1fc06d96c93161037 subprojects/libcstdaux-1/README.md +sha256 e796182869fe0892347d069f3f423774124987d6c45d016854fc51530633c177 subprojects/libcstdaux-1/AUTHORS +sha256 92006886d7f28894fef08bf97e35ef52147067bd3c4d4d6381da7c59f9901dae subprojects/libcstdaux-1/README.md sha256 7e660796fea0400a1a9a539226c345b3c656a745a334e323e33258de7864e985 subprojects/libcutf8-1/AUTHORS sha256 106099cc1c488cbf8911f56da7977a955f6b27a7bb5b815985e59d9fae0e6fe7 subprojects/libcutf8-1/README.md diff --git a/package/dbus-broker/dbus-broker.mk b/package/dbus-broker/dbus-broker.mk index e82b79220dad..c4e3679a2eb9 100644 --- a/package/dbus-broker/dbus-broker.mk +++ b/package/dbus-broker/dbus-broker.mk @@ -4,7 +4,7 @@ # ################################################################################ -DBUS_BROKER_VERSION = 32 +DBUS_BROKER_VERSION = 33 DBUS_BROKER_SOURCE = dbus-broker-$(DBUS_BROKER_VERSION).tar.xz DBUS_BROKER_SITE = https://github.com/bus1/dbus-broker/releases/download/v$(DBUS_BROKER_VERSION) diff --git a/package/dbus-broker/session.conf b/package/dbus-broker/session.conf index e4758fa21861..8e9488b1db58 100644 --- a/package/dbus-broker/session.conf +++ b/package/dbus-broker/session.conf @@ -12,6 +12,18 @@ the behavior of child processes. --> + unix:tmpdir=/tmp + + + EXTERNAL + @@ -23,6 +35,9 @@ + + /etc/dbus-1/session.conf + session.d diff --git a/package/dbus-broker/system.conf b/package/dbus-broker/system.conf index 4b17fbd90eca..272f92361e46 100644 --- a/package/dbus-broker/system.conf +++ b/package/dbus-broker/system.conf @@ -14,18 +14,33 @@ system - - - dbus + + + + + /usr/libexec/dbus-daemon-launch-helper + + + /run/messagebus.pid + + + EXTERNAL + + + unix:path=/run/dbus/system_bus_socket + @@ -54,6 +69,8 @@ send_interface="org.freedesktop.DBus.Introspectable"/> + + + /etc/dbus-1/system.conf - -This indirect include causes on MUSL redefinition of struct sysinfo when -included both and some of UAPI headers: - -In file included from x86_64-buildroot-linux-musl/sysroot/usr/include/linux/kernel.h:5, - from x86_64-buildroot-linux-musl/sysroot/usr/include/linux/netlink.h:5, - from ../include/tst_netlink.h:14, - from tst_crypto.c:13: -x86_64-buildroot-linux-musl/sysroot/usr/include/linux/sysinfo.h:8:8: error: redefinition of ‘struct sysinfo’ - struct sysinfo { - ^~~~~~~ -In file included from ../include/tst_safe_macros.h:15, - from ../include/tst_test.h:93, - from tst_crypto.c:11: -x86_64-buildroot-linux-musl/sysroot/usr/include/sys/sysinfo.h:10:8: note: originally defined here - -Signed-off-by: Petr Vorel - -[ upstream status: -https://patchwork.ozlabs.org/project/ltp/patch/20201001231256.6930-1-petr.vorel@gmail.com/, -rebased for 20220527 ] - -But this patch is not going to get upstreamed because it got fixed in Linux kernel: -a85cbe6159ff "uapi: move constants from to " - -This patch was also backported to stable and LTS versions, -which we use since buildroot 54584d233b "{linux, linux-headers}: bump -5.{4, 10}.x 4.{4, 9, 14, 19} series". -We just wait for all musl based toolchains to be rebuilt. ] - -Signed-off-by: Petr Vorel ---- - include/lapi/sysinfo.h | 22 +++++++++++++++++++ - include/tst_safe_macros.h | 2 +- - lib/safe_macros.c | 2 +- - lib/tst_memutils.c | 2 +- - testcases/kernel/mem/mtest01/mtest01.c | 2 +- - testcases/kernel/syscalls/madvise/madvise06.c | 2 +- - testcases/kernel/syscalls/sysinfo/sysinfo01.c | 2 +- - testcases/kernel/syscalls/sysinfo/sysinfo02.c | 2 +- - testcases/kernel/syscalls/sysinfo/sysinfo03.c | 2 +- - .../interfaces/pthread_cond_broadcast/1-2.c | 2 +- - 10 files changed, 31 insertions(+), 9 deletions(-) - create mode 100644 include/lapi/sysinfo.h - -diff --git a/include/lapi/sysinfo.h b/include/lapi/sysinfo.h -new file mode 100644 -index 000000000..d0e0e93d7 ---- /dev/null -+++ b/include/lapi/sysinfo.h -@@ -0,0 +1,22 @@ -+// SPDX-License-Identifier: GPL-2.0-or-later -+/* -+ * Copyright (c) 2020 Petr Vorel -+ */ -+ -+#ifndef SYSINFO_H__ -+ -+/* -+ * Don't use as it breaks build MUSL toolchain. -+ * Use instead. -+ * -+ * Some kernel UAPI headers do indirect include: -+ * or others -> -> -+ * -+ * This indirect include causes on MUSL redefinition of struct sysinfo when -+ * included both and some of UAPI headers: -+ */ -+#include -+ -+#define SYSINFO_H__ -+ -+#endif /* SYSINFO_H__ */ -diff --git a/include/tst_safe_macros.h b/include/tst_safe_macros.h -index 81c4b0844..a8c02d7df 100644 ---- a/include/tst_safe_macros.h -+++ b/include/tst_safe_macros.h -@@ -12,7 +12,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include -diff --git a/lib/safe_macros.c b/lib/safe_macros.c -index a5b6bc504..87d922a92 100644 ---- a/lib/safe_macros.c -+++ b/lib/safe_macros.c -@@ -11,7 +11,7 @@ - #include - #include - #include --#include -+#include "lapi/sysinfo.h" - #include - #include - #include -diff --git a/lib/tst_memutils.c b/lib/tst_memutils.c -index 0d20bb17c..21a3a5ba0 100644 ---- a/lib/tst_memutils.c -+++ b/lib/tst_memutils.c -@@ -6,7 +6,7 @@ - #include - #include - #include --#include -+#include "lapi/sysinfo.h" - #include - - #define TST_NO_DEFAULT_MAIN -diff --git a/testcases/kernel/mem/mtest01/mtest01.c b/testcases/kernel/mem/mtest01/mtest01.c -index fb991ce8b..0fccd5405 100644 ---- a/testcases/kernel/mem/mtest01/mtest01.c -+++ b/testcases/kernel/mem/mtest01/mtest01.c -@@ -20,7 +20,6 @@ - */ - - #include --#include - #include - #include - #include -@@ -29,6 +28,7 @@ - #include - - #include "lapi/abisize.h" -+#include "lapi/sysinfo.h" - #include "tst_test.h" - - #define FIVE_HUNDRED_MB (500ULL*1024*1024) -diff --git a/testcases/kernel/syscalls/madvise/madvise06.c b/testcases/kernel/syscalls/madvise/madvise06.c -index 6d218801c..8af11a030 100644 ---- a/testcases/kernel/syscalls/madvise/madvise06.c -+++ b/testcases/kernel/syscalls/madvise/madvise06.c -@@ -46,7 +46,7 @@ - #include - #include - #include --#include -+#include "lapi/sysinfo.h" - #include "tst_test.h" - - #define CHUNK_SZ (400*1024*1024L) -diff --git a/testcases/kernel/syscalls/sysinfo/sysinfo01.c b/testcases/kernel/syscalls/sysinfo/sysinfo01.c -index 2ea44a2be..a237345ef 100644 ---- a/testcases/kernel/syscalls/sysinfo/sysinfo01.c -+++ b/testcases/kernel/syscalls/sysinfo/sysinfo01.c -@@ -69,7 +69,7 @@ - #include - #include - #include --#include -+#include "lapi/sysinfo.h" - - #include "test.h" - -diff --git a/testcases/kernel/syscalls/sysinfo/sysinfo02.c b/testcases/kernel/syscalls/sysinfo/sysinfo02.c -index 7ad0e8bdc..61fa1ab75 100644 ---- a/testcases/kernel/syscalls/sysinfo/sysinfo02.c -+++ b/testcases/kernel/syscalls/sysinfo/sysinfo02.c -@@ -65,7 +65,7 @@ - #include - #include - #include --#include -+#include "lapi/sysinfo.h" - #include - - #include "test.h" -diff --git a/testcases/kernel/syscalls/sysinfo/sysinfo03.c b/testcases/kernel/syscalls/sysinfo/sysinfo03.c -index af7cb6421..dc5ae65e3 100644 ---- a/testcases/kernel/syscalls/sysinfo/sysinfo03.c -+++ b/testcases/kernel/syscalls/sysinfo/sysinfo03.c -@@ -13,7 +13,7 @@ - - */ - --#include -+#include "lapi/sysinfo.h" - #include "lapi/namespaces_constants.h" - #include "lapi/posix_clocks.h" - #include "tst_test.h" -diff --git a/testcases/open_posix_testsuite/conformance/interfaces/pthread_cond_broadcast/1-2.c b/testcases/open_posix_testsuite/conformance/interfaces/pthread_cond_broadcast/1-2.c -index 22e7c3638..572701f9f 100644 ---- a/testcases/open_posix_testsuite/conformance/interfaces/pthread_cond_broadcast/1-2.c -+++ b/testcases/open_posix_testsuite/conformance/interfaces/pthread_cond_broadcast/1-2.c -@@ -43,7 +43,7 @@ - #include - #include - #ifdef __linux__ --#include -+#include "lapi/sysinfo.h" - #endif - - #include "../testfrmw/testfrmw.h" --- -2.36.1 - diff --git a/package/ltp-testsuite/Config.in b/package/ltp-testsuite/Config.in index 272c2ede374f..b42082e2cc5b 100644 --- a/package/ltp-testsuite/Config.in +++ b/package/ltp-testsuite/Config.in @@ -12,6 +12,7 @@ config BR2_PACKAGE_LTP_TESTSUITE bool "ltp-testsuite" depends on BR2_USE_MMU # fork() depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on !BR2_TOOLCHAIN_USES_MUSL || BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_11 depends on BR2_PACKAGE_LTP_TESTSUITE_ARCH_SUPPORTS select BR2_PACKAGE_LIBTIRPC if !BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_PACKAGE_MUSL_FTS if !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/ltp-testsuite/ltp-testsuite.hash b/package/ltp-testsuite/ltp-testsuite.hash index 8b411a8ffe50..2e84e978d14f 100644 --- a/package/ltp-testsuite/ltp-testsuite.hash +++ b/package/ltp-testsuite/ltp-testsuite.hash @@ -1,5 +1,4 @@ -# From: https://github.com/linux-test-project/ltp/releases/download/20220527/ltp-full-20220527.tar.bz2.sha1 -sha1 c8d658cd3ab1f5a5c7b5bf56398d3a9525012c6b ltp-full-20220930.tar.xz +# From: https://github.com/linux-test-project/ltp/releases/download/20230929/ltp-full-20230929.tar.xz.sha256 +sha256 eb161ff8f1966a1f3428fd4561eb20ebb9f83b7519e35cc12fc66bcfa7983b6b ltp-full-20230929.tar.xz # Locally computed sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING -sha256 533ab63915b916640667ecce17ee4998006d80d394d4b1f1d105a7aa1df50d38 ltp-full-20220930.tar.xz diff --git a/package/ltp-testsuite/ltp-testsuite.mk b/package/ltp-testsuite/ltp-testsuite.mk index 34412d562fa4..2a8c12fc258e 100644 --- a/package/ltp-testsuite/ltp-testsuite.mk +++ b/package/ltp-testsuite/ltp-testsuite.mk @@ -4,7 +4,7 @@ # ################################################################################ -LTP_TESTSUITE_VERSION = 20220930 +LTP_TESTSUITE_VERSION = 20230929 LTP_TESTSUITE_SOURCE = ltp-full-$(LTP_TESTSUITE_VERSION).tar.xz LTP_TESTSUITE_SITE = https://github.com/linux-test-project/ltp/releases/download/$(LTP_TESTSUITE_VERSION) diff --git a/package/ltrace/Config.in b/package/ltrace/Config.in index ce5a85edcf98..21d381db7052 100644 --- a/package/ltrace/Config.in +++ b/package/ltrace/Config.in @@ -15,7 +15,6 @@ config BR2_PACKAGE_LTRACE depends on BR2_USE_WCHAR # elfutils depends on !BR2_STATIC_LIBS # elfutils depends on BR2_TOOLCHAIN_HAS_THREADS # elfutils - depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils depends on BR2_PACKAGE_LTRACE_ARCH_SUPPORTS select BR2_PACKAGE_ELFUTILS help @@ -26,8 +25,7 @@ config BR2_PACKAGE_LTRACE http://ltrace.org -comment "ltrace needs a uClibc or glibc toolchain w/ wchar, dynamic library, threads" +comment "ltrace needs a toolchain w/ wchar, dynamic library, threads" depends on BR2_PACKAGE_LTRACE_ARCH_SUPPORTS depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS \ - || !BR2_TOOLCHAIN_HAS_THREADS \ - || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) + || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/ltris/0001-fix-build-with-gcc-4.8.patch b/package/ltris/0001-fix-build-with-gcc-4.8.patch deleted file mode 100644 index d6bbf6a946b3..000000000000 --- a/package/ltris/0001-fix-build-with-gcc-4.8.patch +++ /dev/null @@ -1,20 +0,0 @@ -Fix build with gcc 4.8 - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://sourceforge.net/p/lgames/patches/28] -Index: ltris/src/bowl.c -=================================================================== ---- ltris/src/bowl.c (révision 421) -+++ ltris/src/bowl.c (copie de travail) -@@ -828,9 +828,10 @@ - */ - void bowl_init_block_masks() - { -+ int i; - int masksize = sizeof(block_masks[0].mask); // same for all - -- for (int i = 0; i < 7; i++) { -+ for (i = 0; i < 7; i++) { - block_masks[i].rx = 2; - block_masks[i].ry = 2; - memset(block_masks[i].mask, 0, masksize ); diff --git a/package/ltris/ltris.hash b/package/ltris/ltris.hash index f696e3af1728..abe6853d9b51 100644 --- a/package/ltris/ltris.hash +++ b/package/ltris/ltris.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 a7bc6c5fc6539b88505077a1b4580edc9b179ce0a6b829c58fbd9416cf456195 ltris-1.2.tar.gz +sha256 1291c6a642d06b9ee153ac0a2e7855a2c983e839c618f1a294df04d829525cb0 ltris-1.2.7.tar.gz sha256 67f82e045cf7acfef853ea0f426575a8359161a0a325e19f02b529a87c4b6c34 COPYING diff --git a/package/ltris/ltris.mk b/package/ltris/ltris.mk index 9b59613417ac..98902de44cca 100644 --- a/package/ltris/ltris.mk +++ b/package/ltris/ltris.mk @@ -5,7 +5,7 @@ ################################################################################ LTRIS_SITE = http://downloads.sourceforge.net/lgames/ltris -LTRIS_VERSION = 1.2 +LTRIS_VERSION = 1.2.7 LTRIS_LICENSE = GPL-2.0+ LTRIS_LICENSE_FILES = COPYING diff --git a/package/lttng-libust/Config.in b/package/lttng-libust/Config.in index 8472cab7bbec..88e1164f97dc 100644 --- a/package/lttng-libust/Config.in +++ b/package/lttng-libust/Config.in @@ -5,6 +5,7 @@ config BR2_PACKAGE_LTTNG_LIBUST depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS + depends on BR2_INSTALL_LIBSTDCPP # liburcu select BR2_PACKAGE_LIBURCU select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID @@ -16,6 +17,7 @@ config BR2_PACKAGE_LTTNG_LIBUST http://lttng.org -comment "lttng-libust needs a toolchain w/ dynamic library, wchar, threads" +comment "lttng-libust needs a toolchain w/ dynamic library, wchar, threads, C++" depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS - depends on BR2_STATIC_LIBS || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_STATIC_LIBS || !BR2_USE_WCHAR || \ + !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP diff --git a/package/lttng-modules/lttng-modules.hash b/package/lttng-modules/lttng-modules.hash index e685cc33679e..b14b488837c9 100644 --- a/package/lttng-modules/lttng-modules.hash +++ b/package/lttng-modules/lttng-modules.hash @@ -1,5 +1,5 @@ -# From https://lttng.org/files/lttng-modules/lttng-modules-2.13.7.tar.bz2.sha256 -sha256 5a99679df7903160cbde3918fee5af90ffafc90fc96ccdefaa57cf230492b234 lttng-modules-2.13.7.tar.bz2 +# From https://lttng.org/files/lttng-modules/lttng-modules-2.13.10.tar.bz2.sha256 +sha256 13abfb1ac870711f0d0adfa88e53b17deb2e3052173715a260a6ef14aa45b0a7 lttng-modules-2.13.10.tar.bz2 # Hash for license files sha256 d72921266bc8452a8789f8a04a82755373990d00b7e0b0f1a8edb8f854e94d1c LICENSES/LGPL-2.1 diff --git a/package/lttng-modules/lttng-modules.mk b/package/lttng-modules/lttng-modules.mk index 416833f4ef5a..d6f1e4114d0e 100644 --- a/package/lttng-modules/lttng-modules.mk +++ b/package/lttng-modules/lttng-modules.mk @@ -4,7 +4,7 @@ # ################################################################################ -LTTNG_MODULES_VERSION = 2.13.7 +LTTNG_MODULES_VERSION = 2.13.10 LTTNG_MODULES_SITE = http://lttng.org/files/lttng-modules LTTNG_MODULES_SOURCE = lttng-modules-$(LTTNG_MODULES_VERSION).tar.bz2 LTTNG_MODULES_LICENSE = LGPL-2.1/GPL-2.0 (kernel modules), MIT (lib/bitfield.h, lib/prio_heap/*) diff --git a/package/lttng-tools/Config.in b/package/lttng-tools/Config.in index 9c86cc264643..5750c5c4e0d9 100644 --- a/package/lttng-tools/Config.in +++ b/package/lttng-tools/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_LTTNG_TOOLS depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS # uses dlfcn + depends on BR2_INSTALL_LIBSTDCPP # liburcu select BR2_PACKAGE_LIBURCU select BR2_PACKAGE_LIBXML2 select BR2_PACKAGE_POPT @@ -27,6 +28,7 @@ config BR2_PACKAGE_LTTNG_TOOLS http://lttng.org -comment "lttng-tools needs a toolchain w/ threads, dynamic library" +comment "lttng-tools needs a toolchain w/ threads, dynamic library, C++" depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \ + !BR2_INSTALL_LIBSTDCPP diff --git a/package/lua-datafile/lua-datafile.hash b/package/lua-datafile/lua-datafile.hash index e3b415ad4df2..2e993bc8874f 100644 --- a/package/lua-datafile/lua-datafile.hash +++ b/package/lua-datafile/lua-datafile.hash @@ -1,3 +1,3 @@ # computed by luarocks/buildroot -sha256 b511ce5a4f4072bb6c496bd42760fa92a0576d0c77828b6a2600d68fe9d7e998 datafile-0.7-1.src.rock +sha256 13cb4816f459e71c525f256dbf197a516deb0f6b9ad98a9a0dc0aafe0d415194 datafile-0.10-1.src.rock sha256 0443ddabab14f69d4c5e2641860343784a0ccbe5ae7a3743f20de9a13991da66 datafile/LICENSE diff --git a/package/lua-datafile/lua-datafile.mk b/package/lua-datafile/lua-datafile.mk index 3b4c65d3e34e..943ed9b8bcaf 100644 --- a/package/lua-datafile/lua-datafile.mk +++ b/package/lua-datafile/lua-datafile.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUA_DATAFILE_VERSION = 0.7-1 +LUA_DATAFILE_VERSION = 0.10-1 LUA_DATAFILE_NAME_UPSTREAM = datafile LUA_DATAFILE_SUBDIR = datafile LUA_DATAFILE_LICENSE = MIT diff --git a/package/lua-dkjson/Config.in b/package/lua-dkjson/Config.in new file mode 100644 index 000000000000..9c5dff192814 --- /dev/null +++ b/package/lua-dkjson/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_LUA_DKJSON + bool "lua-dkjson" + help + David Kolf's JSON module for Lua. + + dkjson is written in Lua without any dependencies, but + when LPeg is available dkjson can use it to speed up decoding. + + http://dkolf.de/src/dkjson-lua.fsl/ diff --git a/package/lua-dkjson/lua-dkjson.hash b/package/lua-dkjson/lua-dkjson.hash new file mode 100644 index 000000000000..8f1a6f6a2f58 --- /dev/null +++ b/package/lua-dkjson/lua-dkjson.hash @@ -0,0 +1,5 @@ +# computed by luarocks/buildroot +sha256 e4ba15f2a85f84ffc7f628157a4ad16b2b04ba05eb44a2e5956fa46bd104125e dkjson-2.6-1.src.rock + +# locally computed +sha256 7fd6585e9776c1cf2930e8ce660b3116c8a9b4b676929d45078870a42f16aa65 dkjson-2.6/readme.txt diff --git a/package/lua-dkjson/lua-dkjson.mk b/package/lua-dkjson/lua-dkjson.mk new file mode 100644 index 000000000000..718c47f50e92 --- /dev/null +++ b/package/lua-dkjson/lua-dkjson.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# lua-dkjson +# +################################################################################ + +LUA_DKJSON_VERSION = 2.6-1 +LUA_DKJSON_NAME_UPSTREAM = dkjson +LUA_DKJSON_LICENSE = MIT +LUA_DKJSON_LICENSE_FILES = $(LUA_DKJSON_SUBDIR)/readme.txt + +$(eval $(luarocks-package)) diff --git a/package/lua-livr-extra/lua-livr-extra.hash b/package/lua-livr-extra/lua-livr-extra.hash index 747004cfa60e..7f8f66f05610 100644 --- a/package/lua-livr-extra/lua-livr-extra.hash +++ b/package/lua-livr-extra/lua-livr-extra.hash @@ -1,3 +1,3 @@ # computed by luarocks/buildroot -sha256 42fef357db3e05e32112ddebcd4296f040a825dfac77ff2fa03aedbdcdaac729 lua-livr-extra-0.1.1-1.src.rock -sha256 96751dc604608ecf2357d1599bc2d2e9f56382793a6c218dc98d460759adbf07 lua-LIVR-extra-0.1.1/COPYRIGHT +sha256 363e571d001b2e56eeafe2379c20aca65d67b5197199c957f9bb2a0c169aab5a lua-livr-extra-0.2.0-1.src.rock +sha256 ded97ea3e541833b9c2c9bf9b266f037a83b57e2e2847fecdfbb9397818f5623 lua-LIVR-extra-0.2.0/COPYRIGHT diff --git a/package/lua-livr-extra/lua-livr-extra.mk b/package/lua-livr-extra/lua-livr-extra.mk index 0a6378dbf5eb..ce783f519fbf 100644 --- a/package/lua-livr-extra/lua-livr-extra.mk +++ b/package/lua-livr-extra/lua-livr-extra.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUA_LIVR_EXTRA_VERSION = 0.1.1-1 +LUA_LIVR_EXTRA_VERSION = 0.2.0-1 LUA_LIVR_EXTRA_NAME_UPSTREAM = lua-LIVR-extra LUA_LIVR_EXTRA_LICENSE = MIT LUA_LIVR_EXTRA_LICENSE_FILES = $(LUA_LIVR_EXTRA_SUBDIR)/COPYRIGHT diff --git a/package/lua-livr/lua-livr.hash b/package/lua-livr/lua-livr.hash index fe9876909d1b..314f1d2bf8aa 100644 --- a/package/lua-livr/lua-livr.hash +++ b/package/lua-livr/lua-livr.hash @@ -1,3 +1,3 @@ # computed by luarocks/buildroot -sha256 e2f39316b8a1e66420c56e8ddc9ce4c0118c1a240582f2ba52d7627da6dfb76d lua-livr-0.2.2-1.src.rock -sha256 69fd426251454ea43a8068e58ac25d882922372de6b22e249bb56e00ea2cd834 lua-LIVR-0.2.2/COPYRIGHT +sha256 531c4d56e2ef7906a6075e61fafee9ea265dc1a62698b966f5fc2f3abda23084 lua-livr-0.3.0-1.src.rock +sha256 c6c2ca8e29b8e3b0558b046ffcbd4a5c31800bdca4520002ed4af76985f82d7d lua-LIVR-0.3.0/COPYRIGHT diff --git a/package/lua-livr/lua-livr.mk b/package/lua-livr/lua-livr.mk index 3f114c725ef3..fb835a1f901a 100644 --- a/package/lua-livr/lua-livr.mk +++ b/package/lua-livr/lua-livr.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUA_LIVR_VERSION = 0.2.2-1 +LUA_LIVR_VERSION = 0.3.0-1 LUA_LIVR_NAME_UPSTREAM = lua-LIVR LUA_LIVR_LICENSE = MIT LUA_LIVR_LICENSE_FILES = $(LUA_LIVR_SUBDIR)/COPYRIGHT diff --git a/package/lua-messagepack/lua-messagepack.hash b/package/lua-messagepack/lua-messagepack.hash index 5c8dd5936625..6c650ce14bab 100644 --- a/package/lua-messagepack/lua-messagepack.hash +++ b/package/lua-messagepack/lua-messagepack.hash @@ -1,4 +1,4 @@ # computed by luarocks/buildroot -sha256 cbb1b7b12834b7f49fd20621446ec4d76eff67d324b8182b7988324b10830a43 lua-messagepack-0.5.2-1.src.rock -sha256 b3b3d8c3d28a4d4f26404cdb7d7d9329e2e831ea2dd2c6b119d958ed113579b2 lua-messagepack-lua53-0.5.2-1.src.rock -sha256 709fd93a7dd6f8e941e7f0cb9e3eeba1f4de375302f1b19e14bb51aff23c5970 lua-MessagePack-0.5.2/COPYRIGHT +sha256 fe39b8ad92acf13f91d8660a04ab8fc9fb5d6370f99304d46cab8137ee9147b8 lua-messagepack-0.5.3-1.src.rock +sha256 a7c1842ab7404104c941bc71809cd41c7685b4cd5edd4f1925f9cbe434f3ed4a lua-messagepack-lua53-0.5.3-1.src.rock +sha256 1dbe8e7da2d71088d4759da33a42eda89f5be90d1a9c0b823360a270d6628ed8 lua-MessagePack-0.5.3/COPYRIGHT diff --git a/package/lua-messagepack/lua-messagepack.mk b/package/lua-messagepack/lua-messagepack.mk index 33d460b4fc7f..390f85c6e3f8 100644 --- a/package/lua-messagepack/lua-messagepack.mk +++ b/package/lua-messagepack/lua-messagepack.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUA_MESSAGEPACK_VERSION_UPSTREAM = 0.5.2 +LUA_MESSAGEPACK_VERSION_UPSTREAM = 0.5.3 LUA_MESSAGEPACK_VERSION = $(LUA_MESSAGEPACK_VERSION_UPSTREAM)-1 ifeq ($(BR2_PACKAGE_LUA_5_3)$(BR2_PACKAGE_LUA_5_4),y) LUA_MESSAGEPACK_NAME_UPSTREAM = lua-MessagePack-lua53 diff --git a/package/lua-mqtt/lua-mqtt.hash b/package/lua-mqtt/lua-mqtt.hash index 3636e9e6af50..fecd4dbbdd25 100644 --- a/package/lua-mqtt/lua-mqtt.hash +++ b/package/lua-mqtt/lua-mqtt.hash @@ -1,3 +1,3 @@ # computed by luarocks/buildroot -sha256 986ec63dd9f0761f9c5231f6e19529138602c289e13da5c71dc1449f5f247152 lua-mqtt-0.1.0-1.src.rock -sha256 e86d7c8adfabcb7c6515cc6e524bf0a76f7b3a86560a7ac47d7cabae5f8391a2 lua-mqtt-0.1.0/COPYRIGHT +sha256 0444119ab5a1230e38e35f3948db19e8dc6310991b419ca75e6660588f2d95f7 lua-mqtt-0.3.1-1.src.rock +sha256 c8d12c868b979f5b9592eec503fc3de54e9feb92163f3cfc50a141ee2bcccc25 lua-mqtt-0.3.1/COPYRIGHT diff --git a/package/lua-mqtt/lua-mqtt.mk b/package/lua-mqtt/lua-mqtt.mk index a2f17d2b2eae..a000ffdb16b5 100644 --- a/package/lua-mqtt/lua-mqtt.mk +++ b/package/lua-mqtt/lua-mqtt.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUA_MQTT_VERSION = 0.1.0-1 +LUA_MQTT_VERSION = 0.3.1-1 LUA_MQTT_LICENSE = MIT LUA_MQTT_LICENSE_FILES = $(LUA_MQTT_SUBDIR)/COPYRIGHT diff --git a/package/lua-rotas/lua-rotas.hash b/package/lua-rotas/lua-rotas.hash index 037844e9f74b..eccff4426911 100644 --- a/package/lua-rotas/lua-rotas.hash +++ b/package/lua-rotas/lua-rotas.hash @@ -1,3 +1,3 @@ # computed by luarocks/buildroot -sha256 a947026be3552cbf676a0cef36a618111712257d306cbd9d340ed8895a4cbd2b lua-rotas-0.2.1-1.src.rock -sha256 ac8bb87b7b5e803ae27510b9c6fd284f1b00e741258bc59fc78d3bc107d96fbb lua-Rotas-0.2.1/COPYRIGHT +sha256 90ed9305b68f49f2293a3a547b7ec7c290be5bcc1afbae87e2e860eb3b04f18b lua-rotas-0.3.1-1.src.rock +sha256 1112307622ef36ed8ee3e8ddb15ed294e699a9db45f6251d89343534388ec3dd lua-Rotas-0.3.1/COPYRIGHT diff --git a/package/lua-rotas/lua-rotas.mk b/package/lua-rotas/lua-rotas.mk index 84d6c9a582bb..1f99dbaf088d 100644 --- a/package/lua-rotas/lua-rotas.mk +++ b/package/lua-rotas/lua-rotas.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUA_ROTAS_VERSION = 0.2.1-1 +LUA_ROTAS_VERSION = 0.3.1-1 LUA_ROTAS_NAME_UPSTREAM = lua-Rotas LUA_ROTAS_LICENSE = MIT LUA_ROTAS_LICENSE_FILES = $(LUA_ROTAS_SUBDIR)/COPYRIGHT diff --git a/package/lua-silva/lua-silva.hash b/package/lua-silva/lua-silva.hash index 418c3e9e430d..3ceab6572bf6 100644 --- a/package/lua-silva/lua-silva.hash +++ b/package/lua-silva/lua-silva.hash @@ -1,3 +1,3 @@ # computed by luarocks/buildroot -sha256 0e656c42c71b64285d4a375fa7b8b1a910b05c4ab6d30f5b427b078fff204e1f lua-silva-0.1.8-1.src.rock -sha256 5b59ffbfc12d9d1cb907dd65b0f16d3453e1a43cc018c6128a00b00e08f6c485 lua-Silva-0.1.8/COPYRIGHT +sha256 fa838ed10b2e2c16f76fff9e47d52cde1f250efd73994865090d85218c2e5368 lua-silva-0.2.0-1.src.rock +sha256 638206532ac117ec92a04791045e274e6aa55c3d7f408cd2be993a00424c2f96 lua-Silva-0.2.0/COPYRIGHT diff --git a/package/lua-silva/lua-silva.mk b/package/lua-silva/lua-silva.mk index 91b1b7747676..809ac3dd2d77 100644 --- a/package/lua-silva/lua-silva.mk +++ b/package/lua-silva/lua-silva.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUA_SILVA_VERSION = 0.1.8-1 +LUA_SILVA_VERSION = 0.2.0-1 LUA_SILVA_NAME_UPSTREAM = lua-Silva LUA_SILVA_LICENSE = MIT LUA_SILVA_LICENSE_FILES = $(LUA_SILVA_SUBDIR)/COPYRIGHT diff --git a/package/lua/5.4.4/lua.hash b/package/lua/5.4.4/lua.hash deleted file mode 100644 index b55b17f2586c..000000000000 --- a/package/lua/5.4.4/lua.hash +++ /dev/null @@ -1,6 +0,0 @@ -# Hashes from: https://www.lua.org/ftp/ -md5 bd8ce7069ff99a400efd14cf339a727b lua-5.4.4.tar.gz -sha1 03c27684b9d5d9783fb79a7c836ba1cdc5f309cd lua-5.4.4.tar.gz - -# Locally computed -sha256 2556ac7198243f9f83130b9c81016e1904f7b30351481f1c28e02475dbd237fb doc/readme.html diff --git a/package/lua/5.4.4/0001-root-path.patch b/package/lua/5.4.6/0001-root-path.patch similarity index 95% rename from package/lua/5.4.4/0001-root-path.patch rename to package/lua/5.4.6/0001-root-path.patch index c4f6e312eb0c..5e3037b78653 100644 --- a/package/lua/5.4.4/0001-root-path.patch +++ b/package/lua/5.4.6/0001-root-path.patch @@ -6,7 +6,7 @@ Index: b/src/luaconf.h =================================================================== --- a/src/luaconf.h +++ b/src/luaconf.h -@@ -217,7 +217,7 @@ +@@ -223,7 +223,7 @@ #else /* }{ */ diff --git a/package/lua/5.4.4/0002-shared-libs-for-lua.patch b/package/lua/5.4.6/0002-shared-libs-for-lua.patch similarity index 96% rename from package/lua/5.4.4/0002-shared-libs-for-lua.patch rename to package/lua/5.4.6/0002-shared-libs-for-lua.patch index 4ff204429827..388aa9966a8e 100644 --- a/package/lua/5.4.4/0002-shared-libs-for-lua.patch +++ b/package/lua/5.4.6/0002-shared-libs-for-lua.patch @@ -31,7 +31,7 @@ Index: b/src/Makefile --- a/src/Makefile +++ b/src/Makefile @@ -33,6 +33,7 @@ - PLATS= guess aix bsd c89 freebsd generic linux linux-readline macosx mingw posix solaris + PLATS= guess aix bsd c89 freebsd generic ios linux linux-readline macosx mingw posix solaris LUA_A= liblua.a +LUA_SO= liblua.so diff --git a/package/lua/5.4.4/0011-linenoise.patch b/package/lua/5.4.6/0011-linenoise.patch similarity index 97% rename from package/lua/5.4.4/0011-linenoise.patch rename to package/lua/5.4.6/0011-linenoise.patch index 68316e108f5f..5054ae19e245 100644 --- a/package/lua/5.4.4/0011-linenoise.patch +++ b/package/lua/5.4.6/0011-linenoise.patch @@ -8,7 +8,7 @@ Index: b/src/lua.c =================================================================== --- a/src/lua.c +++ b/src/lua.c -@@ -428,6 +428,14 @@ +@@ -438,6 +438,14 @@ #define lua_saveline(L,line) ((void)L, add_history(line)) #define lua_freeline(L,b) ((void)L, free(b)) diff --git a/package/lua/5.4.6/lua.hash b/package/lua/5.4.6/lua.hash new file mode 100644 index 000000000000..0b03fd563c6b --- /dev/null +++ b/package/lua/5.4.6/lua.hash @@ -0,0 +1,5 @@ +# Hashes from: https://www.lua.org/ftp/ +sha256 7d5ea1b9cb6aa0b59ca3dde1c6adcb57ef83a1ba8e5432c0ecd06bf439b3ad88 lua-5.4.6.tar.gz + +# Locally computed +sha256 8f1bff27c5b0585ab679dbe4e37e75a1014af0f79732f42a79f86728321a0c6d doc/readme.html diff --git a/package/lua/lua.mk b/package/lua/lua.mk index 16086e7bf4cf..93d4803812a8 100644 --- a/package/lua/lua.mk +++ b/package/lua/lua.mk @@ -5,7 +5,7 @@ ################################################################################ ifeq ($(BR2_PACKAGE_LUA_5_4),y) -LUA_VERSION = 5.4.4 +LUA_VERSION = 5.4.6 else ifeq ($(BR2_PACKAGE_LUA_5_3),y) LUA_VERSION = 5.3.6 else diff --git a/package/luajit/0001-no-bin-symlink.patch b/package/luajit/0001-no-bin-symlink.patch index dc36fa58d60e..ea0e5bf8d00c 100644 --- a/package/luajit/0001-no-bin-symlink.patch +++ b/package/luajit/0001-no-bin-symlink.patch @@ -6,7 +6,7 @@ Index: b/Makefile =================================================================== --- a/Makefile +++ b/Makefile -@@ -45,8 +45,7 @@ +@@ -50,8 +50,7 @@ INSTALL_MAN= $(INSTALL_SHARE)/man/man1 INSTALL_PKGCONFIG= $(INSTALL_LIB)/pkgconfig @@ -16,7 +16,7 @@ Index: b/Makefile INSTALL_ANAME= libluajit-$(ABIVER).a INSTALL_SOSHORT1= libluajit-$(ABIVER).so INSTALL_SOSHORT2= libluajit-$(ABIVER).so.$(MAJVER) -@@ -61,7 +60,6 @@ +@@ -66,7 +65,6 @@ INSTALL_SHORT1= $(INSTALL_LIB)/$(INSTALL_SOSHORT1) INSTALL_SHORT2= $(INSTALL_LIB)/$(INSTALL_SOSHORT2) INSTALL_T= $(INSTALL_BIN)/$(INSTALL_TNAME) diff --git a/package/luajit/0002-install-inc.patch b/package/luajit/0002-install-inc.patch index 8de777dce21a..163a5d36fc7a 100644 --- a/package/luajit/0002-install-inc.patch +++ b/package/luajit/0002-install-inc.patch @@ -6,12 +6,12 @@ Index: b/Makefile =================================================================== --- a/Makefile +++ b/Makefile -@@ -33,7 +33,7 @@ +@@ -38,7 +38,7 @@ INSTALL_BIN= $(DPREFIX)/bin INSTALL_LIB= $(DPREFIX)/$(MULTILIB) INSTALL_SHARE= $(DPREFIX)/share --INSTALL_DEFINC= $(DPREFIX)/include/luajit-$(MAJVER).$(MINVER) +-INSTALL_DEFINC= $(DPREFIX)/include/luajit-$(MMVERSION) +INSTALL_DEFINC= $(DPREFIX)/include INSTALL_INC= $(INSTALL_DEFINC) - INSTALL_LJLIBD= $(INSTALL_SHARE)/luajit-$(VERSION) + INSTALL_LJLIBD= $(INSTALL_SHARE)/luajit-$(MMVERSION) diff --git a/package/luajit/luajit.hash b/package/luajit/luajit.hash index c655e9931ccc..578bb7a3e2c9 100644 --- a/package/luajit/luajit.hash +++ b/package/luajit/luajit.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 aa354d1265814db5a1ee9dfff6049e19b148e1fd818f1ecfa4fcf2b19f6e4dd9 luajit-d0e88930ddde28ff662503f9f20facf34f7265aa.tar.gz +sha256 b518721280390e4cec1af30f6819d86756ce4234d82410a55a4e121855f64e08 luajit-41fb94defa8f830ce69a8122b03f6ac3216d392a.tar.gz # Locally calculated -sha256 52fc5b15ac968ed81aabb4c1e23ab3bce50f57a5764e9cdca86b463a11072921 COPYRIGHT +sha256 1130331ac861a4b4520e9c8ad0814efdc6f1e79ea55ea9c460c73733d13ccb5f COPYRIGHT diff --git a/package/luajit/luajit.mk b/package/luajit/luajit.mk index 09bde3590f7a..06c899339126 100644 --- a/package/luajit/luajit.mk +++ b/package/luajit/luajit.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUAJIT_VERSION = d0e88930ddde28ff662503f9f20facf34f7265aa +LUAJIT_VERSION = 41fb94defa8f830ce69a8122b03f6ac3216d392a LUAJIT_SITE = $(call github,LuaJIT,LuaJIT,$(LUAJIT_VERSION)) LUAJIT_LICENSE = MIT LUAJIT_LICENSE_FILES = COPYRIGHT @@ -33,6 +33,15 @@ LUAJIT_HOST_CC = $(HOSTCC) -m32 LUAJIT_XCFLAGS += -DLUAJIT_DISABLE_GC64 endif +# emulation of git archive with .gitattributes & export-subst +# Timestamp of the $(LUAJIT_VERSION) commit, obtained in the LuaJit +# repo, with: git show -s --format=%ct $(LUAJIT_VERSION) +define LUAJIT_GEN_RELVER_FILE + echo 1693350652 >$(@D)/.relver +endef +LUAJIT_POST_EXTRACT_HOOKS = LUAJIT_GEN_RELVER_FILE +HOST_LUAJIT_POST_EXTRACT_HOOKS = LUAJIT_GEN_RELVER_FILE + # We unfortunately can't use TARGET_CONFIGURE_OPTS, because the luajit # build system uses non conventional variable names. define LUAJIT_BUILD_CMDS diff --git a/package/lualdap/lualdap.hash b/package/lualdap/lualdap.hash index 15ca840f1fa7..97aa3b570e28 100644 --- a/package/lualdap/lualdap.hash +++ b/package/lualdap/lualdap.hash @@ -1,3 +1,3 @@ # computed by luarocks/buildroot -sha256 49c253f540187c61850c856b8e70e45dca904b81720a760f6a94e4eb474958ad lualdap-1.3.0-1.src.rock +sha256 c1772077ebfd02e082e89583701ef27dd348dc76ae015247f21a2756f5fac0ae lualdap-1.3.1-1.src.rock sha256 b9b75da18d1e1147ec47bff508ffdce831da07dc371891b9057cf1c422660af4 lualdap/docs/license.md diff --git a/package/lualdap/lualdap.mk b/package/lualdap/lualdap.mk index 5dfba8b7a413..375754180f3a 100644 --- a/package/lualdap/lualdap.mk +++ b/package/lualdap/lualdap.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUALDAP_VERSION = 1.3.0-1 +LUALDAP_VERSION = 1.3.1-1 LUALDAP_SUBDIR = lualdap LUALDAP_LICENSE = MIT LUALDAP_LICENSE_FILES = $(LUALDAP_SUBDIR)/docs/license.md diff --git a/package/luaposix/luaposix.hash b/package/luaposix/luaposix.hash index 2d54a6901ef9..d54395c29b40 100644 --- a/package/luaposix/luaposix.hash +++ b/package/luaposix/luaposix.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 7944c2b4fbcef0667d407302740d87645325e751fd8d819f2b253c5d9ad0d497 luaposix-36.1.tar.gz +sha256 44e5087cd3c47058f9934b90c0017e4cf870b71619f99707dd433074622debb1 luaposix-36.2.1.tar.gz sha256 ea0fdaae50b0d31a81c2c99f4354264783c71043fd40522feaa40eecc069599b LICENSE diff --git a/package/luaposix/luaposix.mk b/package/luaposix/luaposix.mk index d17c8188b547..d09a1bcd1dfc 100644 --- a/package/luaposix/luaposix.mk +++ b/package/luaposix/luaposix.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUAPOSIX_VERSION = 36.1 +LUAPOSIX_VERSION = 36.2.1 LUAPOSIX_SITE = $(call github,luaposix,luaposix,v$(LUAPOSIX_VERSION)) LUAPOSIX_LICENSE = MIT LUAPOSIX_LICENSE_FILES = LICENSE diff --git a/package/luasec/luasec.hash b/package/luasec/luasec.hash index 3c2b7d803b46..0fb9996d3992 100644 --- a/package/luasec/luasec.hash +++ b/package/luasec/luasec.hash @@ -1,3 +1,3 @@ # computed by luarocks/buildroot -sha256 82d9ea7d11688a2b11fc1c4549a2e7b0aca00790b49e67a41dac0c81f2890f1c luasec-1.2.0-1.src.rock -sha256 bbf73e23eae7df57a4c4ff33bc23c41a2dc4f8707ba33235c2026d20b41405a7 luasec/LICENSE +sha256 f93bf9927bd34a5d4f897f4488b285a12bee89c0e7d54b3b36dfcbf43a7ad4e5 luasec-1.3.2-1.src.rock +sha256 a3eab8badfcce959ae0c50be4ce460b547785dba61e6dcc6a1dbb8f800a18563 luasec/LICENSE diff --git a/package/luasec/luasec.mk b/package/luasec/luasec.mk index c7f3a94d9a5e..6e338a7be3c5 100644 --- a/package/luasec/luasec.mk +++ b/package/luasec/luasec.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUASEC_VERSION = 1.2.0-1 +LUASEC_VERSION = 1.3.2-1 LUASEC_SUBDIR = luasec LUASEC_LICENSE = MIT LUASEC_LICENSE_FILES = $(LUASEC_SUBDIR)/LICENSE diff --git a/package/luv/Config.in b/package/luv/Config.in index 434cb3b459a3..d6aff8b6f7c8 100644 --- a/package/luv/Config.in +++ b/package/luv/Config.in @@ -4,13 +4,15 @@ config BR2_PACKAGE_LUV depends on BR2_USE_MMU # libuv depends on !BR2_STATIC_LIBS # libuv depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libuv select BR2_PACKAGE_LIBUV help libuv bindings for LuaJIT and Lua. https://github.com/luvit/luv -comment "luv needs a toolchain w/ NPTL, dynamic library" - depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS +comment "luv needs a toolchain w/ NPTL, dynamic library, gcc >= 4.9" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/luvi/Config.in b/package/luvi/Config.in index 6e96f85f32cd..3a724acebb75 100644 --- a/package/luvi/Config.in +++ b/package/luvi/Config.in @@ -5,6 +5,7 @@ config BR2_PACKAGE_LUVI depends on !BR2_STATIC_LIBS # libuv depends on BR2_PACKAGE_LUAJIT depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libuv select BR2_PACKAGE_LIBUV select BR2_PACKAGE_LUV select BR2_PACKAGE_LIBOPENSSL_ENABLE_DES if BR2_PACKAGE_LIBOPENSSL @@ -25,8 +26,9 @@ config BR2_PACKAGE_LUVI https://github.com/luvit/luvi -comment "luvi needs a toolchain w/ NPTL, dynamic library" - depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS +comment "luvi needs a toolchain w/ NPTL, dynamic library, gcc >= 4.9" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/luvi/luvi.hash b/package/luvi/luvi.hash index 9621ef4d03ab..3518a2dc8567 100644 --- a/package/luvi/luvi.hash +++ b/package/luvi/luvi.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 da25c74a30a3fe2fc75e9797a6fa0717ebb05ceb7e6ccb61301f80c7dd436b73 luvi-src-v2.13.0.tar.gz +sha256 4be4468d01657100967a9c696f503aa3c30de6f23af39050c1aae909fbf0aaf2 luvi-src-v2.14.0.tar.gz sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.txt diff --git a/package/luvi/luvi.mk b/package/luvi/luvi.mk index 5266281ffc8e..a8e645fab36b 100644 --- a/package/luvi/luvi.mk +++ b/package/luvi/luvi.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUVI_VERSION = 2.13.0 +LUVI_VERSION = 2.14.0 LUVI_SOURCE = luvi-src-v$(LUVI_VERSION).tar.gz LUVI_SITE = https://github.com/luvit/luvi/releases/download/v$(LUVI_VERSION) LUVI_LICENSE = Apache-2.0 @@ -32,14 +32,15 @@ endif # LUAJIT_VERSION and the luajit installation path may not use the # same value. Use the value from luajit.pc file. -LUVI_LUAJIT_VERSION = `$(PKG_CONFIG_HOST_BINARY) --variable=version luajit` +LUVI_LUAJIT_MAJVER = `$(PKG_CONFIG_HOST_BINARY) --variable=majver luajit` +LUVI_LUAJIT_MINVER = `$(PKG_CONFIG_HOST_BINARY) --variable=minver luajit` # Bundled lua bindings have to be linked statically into the luvi executable LUVI_CONF_OPTS = \ -DBUILD_SHARED_LIBS=OFF \ -DWithSharedLibluv=ON \ -DTARGET_ARCH=$(LUVI_TARGET_ARCH) \ - -DLUA_PATH=$(HOST_DIR)/share/luajit-$(LUVI_LUAJIT_VERSION)/?.lua + -DLUA_PATH=$(HOST_DIR)/share/luajit-$(LUVI_LUAJIT_MAJVER).$(LUVI_LUAJIT_MINVER)/?.lua # Add "rex" module (PCRE via bundled lrexlib) ifeq ($(BR2_PACKAGE_PCRE),y) diff --git a/package/lvm2/0001-clang-possible-better-compilation-with-musl-c.patch b/package/lvm2/0001-clang-possible-better-compilation-with-musl-c.patch new file mode 100644 index 000000000000..f537331a2c34 --- /dev/null +++ b/package/lvm2/0001-clang-possible-better-compilation-with-musl-c.patch @@ -0,0 +1,30 @@ +From bac596b3685520acaa404dc3ebd2131e6de96d47 Mon Sep 17 00:00:00 2001 +From: Zdenek Kabelac +Date: Wed, 16 Feb 2022 00:48:49 +0100 +Subject: [PATCH] clang: possible better compilation with musl c + +Try to help resolving reported compilation problem with +clang & musl C. +https://github.com/lvmteam/lvm2/issues/61 + +Backported from: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=4fd76de4b69f8e5e6d5afa03d54cb4b8986c4bcc +Signed-off-by: Simon Rowe +--- + libdaemon/server/daemon-server.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/libdaemon/server/daemon-server.c b/libdaemon/server/daemon-server.c +index 88905a7dd..96cfc392e 100644 +--- a/libdaemon/server/daemon-server.c ++++ b/libdaemon/server/daemon-server.c +@@ -18,6 +18,7 @@ + + #include + #include ++#include /* help musl C */ + #include + #include + #include +-- +2.22.3 + diff --git a/package/lvm2/0002-mm-preallocate-memory-only-with-glibc.patch b/package/lvm2/0002-mm-preallocate-memory-only-with-glibc.patch new file mode 100644 index 000000000000..db16d60acea2 --- /dev/null +++ b/package/lvm2/0002-mm-preallocate-memory-only-with-glibc.patch @@ -0,0 +1,34 @@ +From b668022f9b8aecf52109c9e0b7e5847054231361 Mon Sep 17 00:00:00 2001 +From: Zdenek Kabelac +Date: Fri, 19 Aug 2022 16:15:17 +0200 +Subject: [PATCH] mm: preallocate memory only with glibc + +Use mallinfo() only with glibc. + +Backported from: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=8370d117d7ef8a472c95315a3cd085696c90b3be +Signed-off-by: Simon Rowe +--- + lib/mm/memlock.c | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/lib/mm/memlock.c b/lib/mm/memlock.c +index 3d1a3927c..efcc6d91f 100644 +--- a/lib/mm/memlock.c ++++ b/lib/mm/memlock.c +@@ -160,7 +160,12 @@ static void _touch_memory(void *mem, size_t size) + + static void _allocate_memory(void) + { +-#ifndef VALGRIND_POOL ++#if defined(__GLIBC__) && !defined(VALGRIND_POOL) ++ /* Memory allocation is currently only tested with glibc ++ * for different C libraries, some other mechanisms might be needed ++ * meanwhile let users use lvm2 code without memory preallocation. ++ * Compilation for VALGRIND tracing also goes without preallocation. ++ */ + void *stack_mem; + struct rlimit limit; + int i, area = 0, missing = _size_malloc_tmp, max_areas = 32, hblks; +-- +2.22.3 + diff --git a/package/lvm2/0003-cmdline-use-freopen-to-reopen-standard-streams.patch b/package/lvm2/0003-cmdline-use-freopen-to-reopen-standard-streams.patch new file mode 100644 index 000000000000..8d0be40320ce --- /dev/null +++ b/package/lvm2/0003-cmdline-use-freopen-to-reopen-standard-streams.patch @@ -0,0 +1,68 @@ +From 7c74ad9c349e381decc84c218112ea8e7bcc0b9c Mon Sep 17 00:00:00 2001 +From: Simon Rowe +Date: Thu, 23 Mar 2023 09:57:59 +0000 +Subject: [PATCH] cmdline: use freopen() to reopen standard streams + +In glibc stdin, stdout & stderr are variables that can be assigned to +(https://www.gnu.org/software/libc/manual/html_node/Standard-Streams.html) +however this not necessarily true of other C libraries. + +The gentoo musl porting notes +(https://wiki.gentoo.org/wiki/Musl_porting_notes) +recommend the substitution of + + stdX = fopen(...) + +with + + freopen(..., stdX) + +Taken from: https://github.com/gentoo/gentoo/blob/master/sys-fs/lvm2/files/lvm2-2.03.14-r1-fopen-to-freopen.patch +Signed-off-by: Simon Rowe +--- + tools/lvmcmdline.c | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +diff --git a/tools/lvmcmdline.c b/tools/lvmcmdline.c +index 1e12bedca..534368575 100644 +--- a/tools/lvmcmdline.c ++++ b/tools/lvmcmdline.c +@@ -3384,7 +3384,11 @@ static int _check_standard_fds(void) + int err = is_valid_fd(STDERR_FILENO); + + if (!is_valid_fd(STDIN_FILENO) && ++#ifdef __GLIBC__ + !(stdin = fopen(_PATH_DEVNULL, "r"))) { ++#else ++ !freopen(_PATH_DEVNULL, "r", stdin)) { ++#endif + if (err) + perror("stdin stream open"); + else +@@ -3394,7 +3398,11 @@ static int _check_standard_fds(void) + } + + if (!is_valid_fd(STDOUT_FILENO) && ++#ifdef __GLIBC__ + !(stdout = fopen(_PATH_DEVNULL, "w"))) { ++#else ++ !freopen(_PATH_DEVNULL, "w", stdout)) { ++#endif + if (err) + perror("stdout stream open"); + /* else no stdout */ +@@ -3402,7 +3410,11 @@ static int _check_standard_fds(void) + } + + if (!is_valid_fd(STDERR_FILENO) && ++#ifdef __GLIBC__ + !(stderr = fopen(_PATH_DEVNULL, "w"))) { ++#else ++ !freopen(_PATH_DEVNULL, "w", stderr)) { ++#endif + printf("stderr stream open: %s\n", + strerror(errno)); + return 0; +-- +2.22.3 + diff --git a/package/lvm2/0004-log-use-freopen-to-reopen-standard-streams.patch b/package/lvm2/0004-log-use-freopen-to-reopen-standard-streams.patch new file mode 100644 index 000000000000..0b57fb6fd224 --- /dev/null +++ b/package/lvm2/0004-log-use-freopen-to-reopen-standard-streams.patch @@ -0,0 +1,44 @@ +From 6d6b953cf7d2b8d06e7b0363b1b06cb2e902aa0f Mon Sep 17 00:00:00 2001 +From: Simon Rowe +Date: Thu, 23 Mar 2023 10:07:02 +0000 +Subject: [PATCH] log: use freopen() to reopen standard streams + +In glibc stdin, stdout & stderr are variables that can be assigned to +(https://www.gnu.org/software/libc/manual/html_node/Standard-Streams.html) +however this not necessarily true of other C libraries. + +The gentoo musl porting notes +(https://wiki.gentoo.org/wiki/Musl_porting_notes) +recommend the substitution of + + stdX = fopen(...) + +with + + freopen(..., stdX) + +Taken from: https://github.com/gentoo/gentoo/blob/master/sys-fs/lvm2/files/lvm2-2.03.14-freopen_n2.patch +Signed-off-by: Simon Rowe +--- + lib/log/log.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/lib/log/log.c b/lib/log/log.c +index 7b4d537b3..5f62c048c 100644 +--- a/lib/log/log.c ++++ b/lib/log/log.c +@@ -208,7 +208,11 @@ int reopen_standard_stream(FILE **stream, const char *mode) + + _check_and_replace_standard_log_streams(old_stream, new_stream); + ++#ifdef __GLIBC__ + *stream = new_stream; ++#else ++ freopen(NULL, mode, *stream); ++#endif + return 1; + } + +-- +2.22.3 + diff --git a/package/lvm2/Config.in b/package/lvm2/Config.in index cc740dd40c62..577a90656af0 100644 --- a/package/lvm2/Config.in +++ b/package/lvm2/Config.in @@ -27,15 +27,10 @@ if BR2_PACKAGE_LVM2 config BR2_PACKAGE_LVM2_STANDARD_INSTALL bool "standard install instead of only dmsetup" default y - # http://lists.busybox.net/pipermail/buildroot/2016-August/170592.html - depends on !BR2_TOOLCHAIN_USES_MUSL help Install the standard suite of lvm2 programs. When this option is not set, only dmsetup is installed. -comment "lvm2 standard install needs a glibc or uClibc toolchain" - depends on BR2_TOOLCHAIN_USES_MUSL - endif comment "lvm2 needs a toolchain w/ threads, dynamic library" diff --git a/package/lxc/lxc.hash b/package/lxc/lxc.hash index 2dd983a3611c..8b3365ddfc81 100644 --- a/package/lxc/lxc.hash +++ b/package/lxc/lxc.hash @@ -1,4 +1,4 @@ # Locally calculated -sha256 bea08d2e49efcee34fa58acd2bc95c0adc64d291c07f4cfaf4ac1d8ac5a36f45 lxc-5.0.2.tar.gz +sha256 2693a4c654dcfdafb3aa95c262051d8122afa1b6f5cef1920221ebbdee934d07 lxc-5.0.3.tar.gz sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 LICENSE.GPL2 sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 LICENSE.LGPL2.1 diff --git a/package/lxc/lxc.mk b/package/lxc/lxc.mk index 4a4d3a621231..b2afb978e673 100644 --- a/package/lxc/lxc.mk +++ b/package/lxc/lxc.mk @@ -4,7 +4,7 @@ # ################################################################################ -LXC_VERSION = 5.0.2 +LXC_VERSION = 5.0.3 LXC_SITE = https://linuxcontainers.org/downloads/lxc LXC_LICENSE = GPL-2.0 (some tools), LGPL-2.1+ LXC_LICENSE_FILES = LICENSE.GPL2 LICENSE.LGPL2.1 diff --git a/package/lzop/0001-allow-overriding-modification-time.patch b/package/lzop/0001-allow-overriding-modification-time.patch new file mode 100644 index 000000000000..5ffc64cd30e3 --- /dev/null +++ b/package/lzop/0001-allow-overriding-modification-time.patch @@ -0,0 +1,42 @@ +From: =?UTF-8?q?Florian=20B=C3=A4uerle?= +Date: Thu, 25 Oct 2018 17:26:30 +0200 +Subject: [PATCH] allow overriding modification time + +This patch allows to set the mtime of the lzop archive to +$SOURCE_DATE_EPOCH, required for reproducible build. It was submitted to +pengutronix by florian Bäuerle in october 2018. + +https://git.pengutronix.de/cgit/ptxdist/tree/patches/lzop-1.04/0002-allow-overriding-modification-time.patch + +Signed-off-by: Casey Reeves +--- + src/lzop.c | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) + +diff --git a/src/lzop.c b/src/lzop.c +index a540ad9c4d33..c2f877d16f92 100644 +--- a/src/lzop.c ++++ b/src/lzop.c +@@ -712,6 +712,7 @@ void init_compress_header(header_t *h, const file_t *fip, const file_t *fop) + assert(opt_method > 0); + assert(opt_level > 0); + assert(fip->st.st_mode == 0 || S_ISREG(fip->st.st_mode)); ++ const char *source_date_epoch = getenv("SOURCE_DATE_EPOCH"); + + memset(h,0,sizeof(header_t)); + +@@ -748,7 +749,13 @@ void init_compress_header(header_t *h, const file_t *fip, const file_t *fop) + + h->mode = fix_mode_for_header(fip->st.st_mode); + +- if (fip->st.st_mtime > 0) ++ if (source_date_epoch) ++ { ++ time_t mtime = strtoul(source_date_epoch, NULL, 0); ++ h->mtime_low = (lzo_uint32) (mtime); ++ h->mtime_high = (lzo_uint32) ((mtime >> 16) >> 16); ++ } ++ else if (fip->st.st_mtime > 0) + { + h->mtime_low = (lzo_uint32) (fip->st.st_mtime); + h->mtime_high = (lzo_uint32) ((fip->st.st_mtime >> 16) >> 16); diff --git a/package/lzop/0001-build-with-gcc6.patch b/package/lzop/0001-build-with-gcc6.patch deleted file mode 100644 index 03bd887d5168..000000000000 --- a/package/lzop/0001-build-with-gcc6.patch +++ /dev/null @@ -1,37 +0,0 @@ -From: Jaap Crezee -Date: Sat, 25 june 2016 13:13:00 +0200 -Subject: [PATCH] fix compilation host-lzop with gcc-6 - -This patch allows host-lzop to be compiled with host systems containing gcc-6 - -Upstream patch found here: -https://build.opensuse.org/package/view_file/Archiving/lzop/lzop-1.03-gcc6.patch?expand=1 - -Signed-off-by: Jaap Crezee - ---- a/src/miniacc.h.orig 2016-02-10 16:09:23.247315866 +0100 -+++ b/src/miniacc.h 2016-02-10 16:12:14.973297054 +0100 -@@ -4469,12 +4469,12 @@ - #if defined(__MSDOS__) && defined(__TURBOC__) && (__TURBOC__ < 0x0150) - #elif 1 && (ACC_CC_SUNPROC) && !defined(ACCCHK_CFG_PEDANTIC) - #else -- ACCCHK_ASSERT((1 << (8*SIZEOF_INT-1)) < 0) -+ ACCCHK_ASSERT((int)(1u << (8*SIZEOF_INT-1)) < 0) - #endif - ACCCHK_ASSERT((1u << (8*SIZEOF_INT-1)) > 0) - #if 1 && (ACC_CC_SUNPROC) && !defined(ACCCHK_CFG_PEDANTIC) - #else -- ACCCHK_ASSERT((1l << (8*SIZEOF_LONG-1)) < 0) -+ ACCCHK_ASSERT((long)(1ul << (8*SIZEOF_LONG-1)) < 0) - #endif - ACCCHK_ASSERT((1ul << (8*SIZEOF_LONG-1)) > 0) - #if defined(acc_int16e_t) -@@ -4703,7 +4703,7 @@ - #elif 1 && (ACC_CC_LCC || ACC_CC_LCCWIN32) && !defined(ACCCHK_CFG_PEDANTIC) - #elif 1 && (ACC_CC_SUNPROC) && !defined(ACCCHK_CFG_PEDANTIC) - #elif !(ACC_BROKEN_INTEGRAL_PROMOTION) && (SIZEOF_INT > 1) -- ACCCHK_ASSERT( (((unsigned char)128) << (int)(8*sizeof(int)-8)) < 0) -+ ACCCHK_ASSERT( (int)((unsigned int)((unsigned char)128) << (int)(8*sizeof(int)-8)) < 0) - #endif - #if (ACC_CC_BORLANDC && (__BORLANDC__ >= 0x0530) && (__BORLANDC__ < 0x0560)) - # pragma option pop diff --git a/package/lzop/0002-use-static-inlines-as-the-external-inline-definition.patch b/package/lzop/0002-use-static-inlines-as-the-external-inline-definition.patch deleted file mode 100644 index f6d076a9f7c4..000000000000 --- a/package/lzop/0002-use-static-inlines-as-the-external-inline-definition.patch +++ /dev/null @@ -1,102 +0,0 @@ -From ecccbcf66da53779d88e38e2af7f82eff8dde7f8 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Sun, 16 Aug 2015 10:35:47 -0700 -Subject: [PATCH] use static inlines as the external inline definition has - changed with gcc5 - -[Patch from https://raw.githubusercontent.com/openembedded/openembedded-core/master/meta/recipes-support/lzop/lzop/0001-use-static-inlines-as-the-external-inline-definition.patch] -Signed-off-by: Khem Raj -Signed-off-by: Peter Korsgaard ---- -Upstream-Status: Pending - - src/miniacc.h | 24 ++++++++---------------- - 1 file changed, 8 insertions(+), 16 deletions(-) - -diff --git a/src/miniacc.h b/src/miniacc.h -index 09e6f0c..cae98d1 100644 ---- a/src/miniacc.h -+++ b/src/miniacc.h -@@ -2880,8 +2880,7 @@ typedef void (__acc_cdecl_sighandler *acc_sighandler_t)(acc_signo_t); - #if !(ACC_CFG_NO_INLINE_ASM) && (__acc_HAVE_forceinline) - #if (ACC_ARCH_POWERPC && ACC_ABI_BIG_ENDIAN) && (ACC_CC_GNUC) - #if !defined(ACC_UA_GET_LE16) --extern __acc_forceinline unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const void* pp); --extern __acc_forceinline unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const void* pp) { -+static __acc_forceinline unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const void* pp) { - __acc_ua_volatile const acc_uint16e_t* p = (__acc_ua_volatile const acc_uint16e_t*) pp; - unsigned long v; - __asm__ __volatile__("lhbrx %0,0,%1" : "=r" (v) : "r" (p), "m" (*p)); -@@ -2890,8 +2889,7 @@ extern __acc_forceinline unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const - #define ACC_UA_GET_LE16(p) __ACC_UA_GET_LE16(p) - #endif - #if !defined(ACC_UA_SET_LE16) --extern __acc_forceinline void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsigned long v); --extern __acc_forceinline void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsigned long v) { -+static __acc_forceinline void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsigned long v) { - __acc_ua_volatile acc_uint16e_t* p = (__acc_ua_volatile acc_uint16e_t*) pp; - __asm__ __volatile__("sthbrx %2,0,%1" : "=m" (*p) : "r" (p), "r" (v)); - } -@@ -2916,8 +2914,7 @@ extern __acc_forceinline void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsi - #if !(ACC_CFG_NO_INLINE_ASM) && (__acc_HAVE_forceinline) - #if (ACC_ARCH_POWERPC && ACC_ABI_BIG_ENDIAN) && (ACC_CC_GNUC) - #if !defined(ACC_UA_GET_LE32) --extern __acc_forceinline unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const void* pp); --extern __acc_forceinline unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const void* pp) { -+static __acc_forceinline unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const void* pp) { - __acc_ua_volatile const acc_uint32e_t* p = (__acc_ua_volatile const acc_uint32e_t*) pp; - unsigned long v; - __asm__ __volatile__("lwbrx %0,0,%1" : "=r" (v) : "r" (p), "m" (*p)); -@@ -2926,8 +2923,7 @@ extern __acc_forceinline unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const - #define ACC_UA_GET_LE32(p) __ACC_UA_GET_LE32(p) - #endif - #if !defined(ACC_UA_SET_LE32) --extern __acc_forceinline void __ACC_UA_SET_LE32(__acc_ua_volatile void* pp, unsigned long v); --extern __acc_forceinline void __ACC_UA_SET_LE32(__acc_ua_volatile void* pp, unsigned long v) { -+static __acc_forceinline void __ACC_UA_SET_LE32(__acc_ua_volatile void* pp, unsigned long v) { - __acc_ua_volatile acc_uint32e_t* p = (__acc_ua_volatile acc_uint32e_t*) pp; - __asm__ __volatile__("stwbrx %2,0,%1" : "=m" (*p) : "r" (p), "r" (v)); - } -@@ -3307,8 +3303,7 @@ typedef void (__acc_cdecl_sighandler *acc_sighandler_t)(acc_signo_t); - #if !(ACC_CFG_NO_INLINE_ASM) && (__acc_HAVE_forceinline) - #if (ACC_ARCH_POWERPC && ACC_ABI_BIG_ENDIAN) && (ACC_CC_GNUC) - #if !defined(ACC_UA_GET_LE16) --extern __acc_forceinline unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const void* pp); --extern __acc_forceinline unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const void* pp) { -+static __acc_forceinline unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const void* pp) { - __acc_ua_volatile const acc_uint16e_t* p = (__acc_ua_volatile const acc_uint16e_t*) pp; - unsigned long v; - __asm__ __volatile__("lhbrx %0,0,%1" : "=r" (v) : "r" (p), "m" (*p)); -@@ -3317,8 +3312,7 @@ extern __acc_forceinline unsigned long __ACC_UA_GET_LE16(__acc_ua_volatile const - #define ACC_UA_GET_LE16(p) __ACC_UA_GET_LE16(p) - #endif - #if !defined(ACC_UA_SET_LE16) --extern __acc_forceinline void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsigned long v); --extern __acc_forceinline void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsigned long v) { -+static __acc_forceinline void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsigned long v) { - __acc_ua_volatile acc_uint16e_t* p = (__acc_ua_volatile acc_uint16e_t*) pp; - __asm__ __volatile__("sthbrx %2,0,%1" : "=m" (*p) : "r" (p), "r" (v)); - } -@@ -3343,8 +3337,7 @@ extern __acc_forceinline void __ACC_UA_SET_LE16(__acc_ua_volatile void* pp, unsi - #if !(ACC_CFG_NO_INLINE_ASM) && (__acc_HAVE_forceinline) - #if (ACC_ARCH_POWERPC && ACC_ABI_BIG_ENDIAN) && (ACC_CC_GNUC) - #if !defined(ACC_UA_GET_LE32) --extern __acc_forceinline unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const void* pp); --extern __acc_forceinline unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const void* pp) { -+static __acc_forceinline unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const void* pp) { - __acc_ua_volatile const acc_uint32e_t* p = (__acc_ua_volatile const acc_uint32e_t*) pp; - unsigned long v; - __asm__ __volatile__("lwbrx %0,0,%1" : "=r" (v) : "r" (p), "m" (*p)); -@@ -3353,8 +3346,7 @@ extern __acc_forceinline unsigned long __ACC_UA_GET_LE32(__acc_ua_volatile const - #define ACC_UA_GET_LE32(p) __ACC_UA_GET_LE32(p) - #endif - #if !defined(ACC_UA_SET_LE32) --extern __acc_forceinline void __ACC_UA_SET_LE32(__acc_ua_volatile void* pp, unsigned long v); --extern __acc_forceinline void __ACC_UA_SET_LE32(__acc_ua_volatile void* pp, unsigned long v) { -+static __acc_forceinline void __ACC_UA_SET_LE32(__acc_ua_volatile void* pp, unsigned long v) { - __acc_ua_volatile acc_uint32e_t* p = (__acc_ua_volatile acc_uint32e_t*) pp; - __asm__ __volatile__("stwbrx %2,0,%1" : "=m" (*p) : "r" (p), "r" (v)); - } --- -2.5.0 - diff --git a/package/lzop/lzop.hash b/package/lzop/lzop.hash index adc20648b664..8cf31d16100d 100644 --- a/package/lzop/lzop.hash +++ b/package/lzop/lzop.hash @@ -1,3 +1,4 @@ +# From http://www.lzop.org +sha256 7e72b62a8a60aff5200a047eea0773a8fb205caf7acbe1774d95147f305a2f41 lzop-1.04.tar.gz # Locally calculated -sha256 c1425b8c77d49f5a679d5a126c90ea6ad99585a55e335a613cae59e909dbb2c9 lzop-1.03.tar.gz -sha256 70439f6e2b47057a408d2390ed6663b9875f5a08066a06a060a357ef1df89a8c COPYING +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/lzop/lzop.mk b/package/lzop/lzop.mk index 55157c4d4880..d32d2d1d3bf5 100644 --- a/package/lzop/lzop.mk +++ b/package/lzop/lzop.mk @@ -4,13 +4,26 @@ # ################################################################################ -LZOP_VERSION = 1.03 +LZOP_VERSION = 1.04 LZOP_SITE = http://www.lzop.org/download LZOP_LICENSE = GPL-2.0+ LZOP_LICENSE_FILES = COPYING LZOP_DEPENDENCIES = lzo HOST_LZOP_DEPENDENCIES = host-lzo +# lzop uses libtool 2.4.2.418, which is right between 2.4.2 and +# 2.4.4. While our patch for 2.4 is also supposed to work up to and +# including 2.4.2.x, it does not work for libtool 2.4.2.418, which +# requires the patch for 2.4.4. So we disable the libtool patching +# from autotools-package and do our own. +LZOP_LIBTOOL_PATCH = NO + +define LZOP_LIBTOOL_FIXUP + patch -i support/libtool/buildroot-libtool-v2.4.4.patch $(@D)/autoconf/ltmain.sh +endef +LZOP_POST_PATCH_HOOKS += LZOP_LIBTOOL_FIXUP +HOST_LZOP_POST_PATCH_HOOKS += LZOP_LIBTOOL_FIXUP + $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/make/0001-configure.ac-Support-GLIBC-glob-interface-version-2.patch b/package/make/0001-configure.ac-Support-GLIBC-glob-interface-version-2.patch deleted file mode 100644 index 62e67f850a2e..000000000000 --- a/package/make/0001-configure.ac-Support-GLIBC-glob-interface-version-2.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 48c8a116a914a325a0497721f5d8b58d5bba34d4 Mon Sep 17 00:00:00 2001 -From: Paul Smith -Date: Sun, 19 Nov 2017 15:09:16 -0500 -Subject: [PATCH] * configure.ac: Support GLIBC glob interface version 2 - -Signed-off-by: Baruch Siach ---- -Upstream status: commit 48c8a116a914a3 - - configure.ac | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 8c72568cf276..4710832ae568 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -404,10 +404,9 @@ AC_CACHE_CHECK([if system libc has GNU glob], [make_cv_sys_gnu_glob], - #include - #include - --#define GLOB_INTERFACE_VERSION 1 - #if !defined _LIBC && defined __GNU_LIBRARY__ && __GNU_LIBRARY__ > 1 - # include --# if _GNU_GLOB_INTERFACE_VERSION == GLOB_INTERFACE_VERSION -+# if _GNU_GLOB_INTERFACE_VERSION == 1 || _GNU_GLOB_INTERFACE_VERSION == 2 - gnu glob - # endif - #endif], --- -2.16.2 - diff --git a/package/make/0001-glob-Do-not-assume-glibc-glob-internals.patch b/package/make/0001-glob-Do-not-assume-glibc-glob-internals.patch deleted file mode 100644 index 33ded3c501d1..000000000000 --- a/package/make/0001-glob-Do-not-assume-glibc-glob-internals.patch +++ /dev/null @@ -1,70 +0,0 @@ -From 193f1e81edd6b1b56b0eb0ff8aa4b41c7b4257b4 Mon Sep 17 00:00:00 2001 -From: Paul Eggert -Date: Sun, 24 Sep 2017 09:12:58 -0400 -Subject: [PATCH] glob: Do not assume glibc glob internals. - -It has been proposed that glibc glob start using gl_lstat, -which the API allows it to do. GNU 'make' should not get in -the way of this. See: -https://sourceware.org/ml/libc-alpha/2017-09/msg00409.html - -* dir.c (local_lstat): New function, like local_stat. -(dir_setup_glob): Use it to initialize gl_lstat too, as the API -requires. - -Signed-off-by: Samuel Mendoza-Jonas -(from upstream commit 193f1e81edd6b1b56b0eb0ff8aa4b41c7b4257b4) ---- - dir.c | 29 +++++++++++++++++++++++++++-- - 1 file changed, 27 insertions(+), 2 deletions(-) - -diff --git a/dir.c b/dir.c -index adbb8a9..c343e4c 100644 ---- a/dir.c -+++ b/dir.c -@@ -1299,15 +1299,40 @@ local_stat (const char *path, struct stat *buf) - } - #endif - -+/* Similarly for lstat. */ -+#if !defined(lstat) && !defined(WINDOWS32) || defined(VMS) -+# ifndef VMS -+# ifndef HAVE_SYS_STAT_H -+int lstat (const char *path, struct stat *sbuf); -+# endif -+# else -+ /* We are done with the fake lstat. Go back to the real lstat */ -+# ifdef lstat -+# undef lstat -+# endif -+# endif -+# define local_lstat lstat -+#elif defined(WINDOWS32) -+/* Windows doesn't support lstat(). */ -+# define local_lstat local_stat -+#else -+static int -+local_lstat (const char *path, struct stat *buf) -+{ -+ int e; -+ EINTRLOOP (e, lstat (path, buf)); -+ return e; -+} -+#endif -+ - void - dir_setup_glob (glob_t *gl) - { - gl->gl_opendir = open_dirstream; - gl->gl_readdir = read_dirstream; - gl->gl_closedir = free; -+ gl->gl_lstat = local_lstat; - gl->gl_stat = local_stat; -- /* We don't bother setting gl_lstat, since glob never calls it. -- The slot is only there for compatibility with 4.4 BSD. */ - } - - void --- -2.21.0 - diff --git a/package/make/make.hash b/package/make/make.hash index 0bd0e5546f43..07d91e7baab2 100644 --- a/package/make/make.hash +++ b/package/make/make.hash @@ -1,6 +1,6 @@ -# From http://lists.gnu.org/archive/html/info-gnu/2016-06/msg00005.html -md5 15b012617e7c44c0ed482721629577ac make-4.2.1.tar.bz2 +# From https://lists.gnu.org/archive/html/info-gnu/2023-02/msg00011.html +md5 c8b13b7477e812d4213a9b88ff0ff1d6 make-4.4.1.tar.lz # Locally calculated after checking signature -sha256 d6e262bf3601b42d2b1e4ef8310029e1dcf20083c5446b4b7aa67081fdffc589 make-4.2.1.tar.bz2 +sha256 8814ba072182b605d156d7589c19a43b89fc58ea479b9355146160946f8cf6e9 make-4.4.1.tar.lz # Locally computed -sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING +sha256 e79e9c8a0c85d735ff98185918ec94ed7d175efc377012787aebcf3b80f0d90b COPYING diff --git a/package/make/make.mk b/package/make/make.mk index f289c5c3d923..e194e15873b2 100644 --- a/package/make/make.mk +++ b/package/make/make.mk @@ -4,17 +4,14 @@ # ################################################################################ -MAKE_VERSION = 4.2.1 -MAKE_SOURCE = make-$(MAKE_VERSION).tar.bz2 +MAKE_VERSION = 4.4.1 +MAKE_SOURCE = make-$(MAKE_VERSION).tar.lz MAKE_SITE = $(BR2_GNU_MIRROR)/make MAKE_DEPENDENCIES = $(TARGET_NLS_DEPENDENCIES) host-pkgconf MAKE_LICENSE = GPL-3.0+ MAKE_LICENSE_FILES = COPYING MAKE_CPE_ID_VENDOR = gnu -# Patching configure.ac -MAKE_AUTORECONF = YES - MAKE_CONF_OPTS = --without-guile # Disable the 'load' operation for static builds since it needs dlopen diff --git a/package/makedumpfile/makedumpfile.hash b/package/makedumpfile/makedumpfile.hash index f38d93c04aa4..665023d87be5 100644 --- a/package/makedumpfile/makedumpfile.hash +++ b/package/makedumpfile/makedumpfile.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 748583ea4c0b32346008aa53b313e9708f60a8481959c25c76e5c94740032d9b makedumpfile-1.7.2.tar.gz +sha256 f059dbebf5156a9ab97cd3c1f41ad5df3436c7ab4dd6dbffa234fc4e93cfa2ce makedumpfile-1.7.3.tar.gz sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/makedumpfile/makedumpfile.mk b/package/makedumpfile/makedumpfile.mk index 8dc60b043e21..6102c92bd8bb 100644 --- a/package/makedumpfile/makedumpfile.mk +++ b/package/makedumpfile/makedumpfile.mk @@ -4,7 +4,7 @@ # ################################################################################ -MAKEDUMPFILE_VERSION = 1.7.2 +MAKEDUMPFILE_VERSION = 1.7.3 MAKEDUMPFILE_SITE = https://github.com/makedumpfile/makedumpfile/releases/download/$(MAKEDUMPFILE_VERSION) MAKEDUMPFILE_DEPENDENCIES = bzip2 elfutils xz zlib MAKEDUMPFILE_LICENSE = GPL-2.0 diff --git a/package/mali-driver/mali-driver.hash b/package/mali-driver/mali-driver.hash index 5d32c1af8a5e..ddde56b55c11 100644 --- a/package/mali-driver/mali-driver.hash +++ b/package/mali-driver/mali-driver.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 761e3f000b4c546cbd35baf34f5a0d1090f048dd44ee543773674192fd95f6b3 mali-driver-87c13e6994b20b5068e3a5e4f4c1b64db666a4c8.tar.gz +sha256 3111757a411ba216a4b8e3d88c29eb3be3182a7f0d5f8b9cfe10f85ec6693bc9 mali-driver-d40c57d81c9cf4bc6fefeaf47153fde8eed19ef2.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE diff --git a/package/mali-driver/mali-driver.mk b/package/mali-driver/mali-driver.mk index bdc9fedeb4e4..fa5a8d94d968 100644 --- a/package/mali-driver/mali-driver.mk +++ b/package/mali-driver/mali-driver.mk @@ -4,7 +4,7 @@ # ################################################################################ -MALI_DRIVER_VERSION = 87c13e6994b20b5068e3a5e4f4c1b64db666a4c8 +MALI_DRIVER_VERSION = d40c57d81c9cf4bc6fefeaf47153fde8eed19ef2 MALI_DRIVER_SITE = $(call github,bootlin,mali-driver,$(MALI_DRIVER_VERSION)) MALI_DRIVER_DEPENDENCIES = linux MALI_DRIVER_LICENSE = GPL-2.0 diff --git a/package/mariadb/0002-include-ssl_compat.h-fix-build-with-libressl-3.5.0.patch b/package/mariadb/0002-include-ssl_compat.h-fix-build-with-libressl-3.5.0.patch deleted file mode 100644 index fd3e6e66079b..000000000000 --- a/package/mariadb/0002-include-ssl_compat.h-fix-build-with-libressl-3.5.0.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 79ed770a37c8669390a58a4485dd8f5565fe2497 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Sun, 15 Jan 2023 19:12:05 +0100 -Subject: [PATCH] include/ssl_compat.h: fix build with libressl >= 3.5.0 - -Fix the following build failure with libressl >= 3.5.0: - -In file included from /tmp/instance-10/output-1/build/mariadb-10.3.36/vio/viosslfactories.c:18: -/tmp/instance-10/output-1/build/mariadb-10.3.36/vio/viosslfactories.c: In function 'get_dh2048': -/tmp/instance-10/output-1/build/mariadb-10.3.36/include/ssl_compat.h:68:45: error: invalid use of incomplete typedef 'DH' {aka 'struct dh_st'} - 68 | #define DH_set0_pqg(D,P,Q,G) ((D)->p= (P), (D)->g= (G)) - | ^~ - -Fixes: - - http://autobuild.buildroot.org/results/524198344aafca58d214537af64c5961c407b0f8 - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/MariaDB/server/pull/2435] ---- - include/ssl_compat.h | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/include/ssl_compat.h b/include/ssl_compat.h -index 664f3aac87c..3678e5fa084 100644 ---- a/include/ssl_compat.h -+++ b/include/ssl_compat.h -@@ -19,7 +19,8 @@ - /* OpenSSL version specific definitions */ - #if defined(OPENSSL_VERSION_NUMBER) - --#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && \ -+ !(defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x30500000L) - #define HAVE_OPENSSL11 1 - #define SSL_LIBRARY OpenSSL_version(OPENSSL_VERSION) - #define ERR_remove_state(X) ERR_clear_error() --- -2.39.0 - diff --git a/package/mariadb/mariadb.hash b/package/mariadb/mariadb.hash index c4064cff66f4..fd73cca4f3bb 100644 --- a/package/mariadb/mariadb.hash +++ b/package/mariadb/mariadb.hash @@ -1,6 +1,6 @@ -# From https://downloads.mariadb.org/mariadb/10.3.36 -sha512 321b4c48fcea4413eb239c4904c806306de660f2844edfa1d2a2a15213db287070d0f923db976588dfe329559d565bd98bddef3aaf8f14502f8c3db2ee27757a mariadb-10.3.36.tar.gz +# From https://downloads.mariadb.org/mariadb/10.11.6 +sha512 3d77f7be4a26d5a36af56150a5f8ed5e21adeed9bc8ea1bd694e47a25a571bd73468eada7c96e0dfe5a6c81bef625abf71a56d228cf43a738e555e3c0d824a6a mariadb-10.11.6.tar.gz # Hash for license files -sha256 084aa0007efac6dda6aafffb3f3ef8b66b105862dad7ee23f6a4b52813f84464 README.md +sha256 2b278a3a2f20696113a7c57c4f3e6a5cdb9a25f2a827e72e0c089a2f805ff91a README.md sha256 240a15a1d0f34d3abca462cdb7e5fb89470967563f16b0e71169e51c1e74cf2b COPYING diff --git a/package/mariadb/mariadb.mk b/package/mariadb/mariadb.mk index 5fb88762787f..7f3755892aaa 100644 --- a/package/mariadb/mariadb.mk +++ b/package/mariadb/mariadb.mk @@ -4,7 +4,7 @@ # ################################################################################ -MARIADB_VERSION = 10.3.36 +MARIADB_VERSION = 10.11.6 MARIADB_SITE = https://downloads.mariadb.org/interstitial/mariadb-$(MARIADB_VERSION)/source MARIADB_LICENSE = GPL-2.0 (server), GPL-2.0 with FLOSS exception (GPL client library), LGPL-2.0 (LGPL client library) # Tarball no longer contains LGPL license text @@ -18,12 +18,18 @@ MARIADB_CONFIG_SCRIPTS = mysql_config MARIADB_DEPENDENCIES = \ host-mariadb \ + fmt \ ncurses \ openssl \ + pcre2 \ zlib \ libaio \ libxml2 +MARIADB_CONF_OPTS += \ + -DWITH_FMT=system \ + -DWITH_PCRE=system + # use bundled GPL-2.0+ licensed readline as package/readline is GPL-3.0+ MARIADB_CONF_OPTS += -DWITH_READLINE=ON @@ -66,6 +72,13 @@ MARIADB_CONF_OPTS += \ -DLIBRESSL_RESULT__TRYRUN_OUTPUT="LibreSSL $(LIBRESSL_VERSION)" endif +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +MARIADB_DEPENDENCIES += systemd +MARIADB_CONF_OPTS += -DWITH_SYSTEMD=yes +else +MARIADB_CONF_OPTS += -DWITH_SYSTEMD=no +endif + ifeq ($(BR2_PACKAGE_MARIADB_SERVER),y) ifeq ($(BR2_PACKAGE_MARIADB_SERVER_EMBEDDED),y) MARIADB_CONF_OPTS += -DWITH_EMBEDDED_SERVER=ON diff --git a/package/mariadb/mysqld.service b/package/mariadb/mysqld.service index 537430e9a21e..9433e14630f7 100644 --- a/package/mariadb/mysqld.service +++ b/package/mariadb/mysqld.service @@ -9,6 +9,8 @@ Restart=always User=mysql RuntimeDirectory=mysql RuntimeDirectoryMode=0755 +Type=notify +NotifyAccess=all [Install] WantedBy=multi-user.target diff --git a/package/matio/matio.mk b/package/matio/matio.mk index 5e09f4e6ceeb..2ba9c8f5689b 100644 --- a/package/matio/matio.mk +++ b/package/matio/matio.mk @@ -15,6 +15,14 @@ MATIO_INSTALL_STAGING = YES # va_copy() MATIO_CONF_ENV = ac_cv_va_copy=yes +MATIO_CFLAGS = $(TARGET_CFLAGS) + +ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_99410),y) +MATIO_CFLAGS += -O0 +endif + +MATIO_CONF_ENV += CFLAGS="$(MATIO_CFLAGS)" + # mat73 require hdf5 (not available), extented-sparse take 2KB MATIO_CONF_OPTS = --disable-mat73 --enable-extended-sparse diff --git a/package/mawk/mawk.hash b/package/mawk/mawk.hash index 69761f77df57..0a31675ac8e9 100644 --- a/package/mawk/mawk.hash +++ b/package/mawk/mawk.hash @@ -1,2 +1,2 @@ -sha256 7fd4cd1e1fae9290fe089171181bbc6291dfd9bca939ca804f0ddb851c8b8237 mawk-1.3.4-20200120.tgz +sha256 88f55a632e2736ff5c5f69944abc151734d89d8298d5005921180f39ab7ba6d0 mawk-1.3.4-20230808.tgz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/mawk/mawk.mk b/package/mawk/mawk.mk index c4a486215d5d..d747f887ce39 100644 --- a/package/mawk/mawk.mk +++ b/package/mawk/mawk.mk @@ -4,7 +4,7 @@ # ################################################################################ -MAWK_VERSION = 1.3.4-20200120 +MAWK_VERSION = 1.3.4-20230808 MAWK_SITE = https://invisible-mirror.net/archives/mawk MAWK_SOURCE = mawk-$(MAWK_VERSION).tgz MAWK_LICENSE = GPL-2.0 diff --git a/package/mbedtls/mbedtls.hash b/package/mbedtls/mbedtls.hash index 876cd7b77e4f..d0cd0b2105f6 100644 --- a/package/mbedtls/mbedtls.hash +++ b/package/mbedtls/mbedtls.hash @@ -1,4 +1,4 @@ -# From https://github.com/ARMmbed/mbedtls/releases/tag/v2.28.2: -sha256 bc55232bf71fd66045122ba9050a29ea7cb2e8f99b064a9e6334a82f715881a0 mbedtls-2.28.2.tar.gz +# From https://github.com/ARMmbed/mbedtls/releases/tag/v2.28.4: +sha256 849e86b626e42ded6bf67197b64aa771daa54e2a7e2868dc67e1e4711959e5e3 mbedtls-2.28.5.tar.gz # Locally calculated sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE diff --git a/package/mbedtls/mbedtls.mk b/package/mbedtls/mbedtls.mk index 7a605ac5b1c5..1b941e04f4ce 100644 --- a/package/mbedtls/mbedtls.mk +++ b/package/mbedtls/mbedtls.mk @@ -4,7 +4,7 @@ # ################################################################################ -MBEDTLS_VERSION = 2.28.2 +MBEDTLS_VERSION = 2.28.5 MBEDTLS_SITE = $(call github,ARMmbed,mbedtls,v$(MBEDTLS_VERSION)) MBEDTLS_CONF_OPTS = \ -DCMAKE_C_FLAGS="$(TARGET_CFLAGS) -std=c99" \ diff --git a/package/mbpfan/mbpfan.hash b/package/mbpfan/mbpfan.hash index 9195692d5202..5b67744a0004 100644 --- a/package/mbpfan/mbpfan.hash +++ b/package/mbpfan/mbpfan.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 f690e9302da4cf97e582606614d91e1ee4ac495a4939aec7c0b3468c8988eb67 mbpfan-2.3.0.tar.gz +sha256 e1cdcffaba52be215ae40a8568949190866d500d6ae2a1e96b71ab5372f3580b mbpfan-2.4.0.tar.gz sha256 589ed823e9a84c56feb95ac58e7cf384626b9cbf4fda2a907bc36e103de1bad2 COPYING diff --git a/package/mbpfan/mbpfan.mk b/package/mbpfan/mbpfan.mk index 52d823cbdc6c..0ac161b327e6 100644 --- a/package/mbpfan/mbpfan.mk +++ b/package/mbpfan/mbpfan.mk @@ -4,7 +4,7 @@ # ################################################################################ -MBPFAN_VERSION = 2.3.0 +MBPFAN_VERSION = 2.4.0 MBPFAN_SITE = $(call github,linux-on-mac,mbpfan,v$(MBPFAN_VERSION)) MBPFAN_LICENSE = GPL-3.0+ MBPFAN_LICENSE_FILES = COPYING diff --git a/package/mbpoll/0001-CMakeLists.txt-Add-LANGUAGES-option-to-project-varia.patch b/package/mbpoll/0001-CMakeLists.txt-Add-LANGUAGES-option-to-project-varia.patch new file mode 100644 index 000000000000..8c9d1a5680ae --- /dev/null +++ b/package/mbpoll/0001-CMakeLists.txt-Add-LANGUAGES-option-to-project-varia.patch @@ -0,0 +1,30 @@ +From 97a2c39fea591509ac1f8a31598b7555b63b8d55 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sun, 30 Jul 2023 08:45:58 +0200 +Subject: [PATCH] CMakeLists.txt: Add LANGUAGES option to project variable + +Fixes build with toolchains without c++. + +Upstream: https://github.com/epsilonrt/mbpoll/pull/71 + +Signed-off-by: Bernd Kuhls +--- + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 6daa039..11dcd05 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -3,7 +3,7 @@ + cmake_minimum_required(VERSION 2.9) + + # Workspace name +-project(mbpoll) ++project(mbpoll LANGUAGES C) + + # This setting is useful for providing JSON file used by CodeLite for code completion + set(CMAKE_EXPORT_COMPILE_COMMANDS 1) +-- +2.39.2 + diff --git a/package/mbpoll/Config.in b/package/mbpoll/Config.in new file mode 100644 index 000000000000..3617e9fa8825 --- /dev/null +++ b/package/mbpoll/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_MBPOLL + bool "mbpoll" + select BR2_PACKAGE_LIBMODBUS + help + mbpoll is a command line utility to communicate with ModBus + slave (RTU or TCP). + + https://github.com/epsilonrt/mbpoll diff --git a/package/mbpoll/mbpoll.hash b/package/mbpoll/mbpoll.hash new file mode 100644 index 000000000000..ad96d5ef48cd --- /dev/null +++ b/package/mbpoll/mbpoll.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 7d960cd4459b5f7c2412abc51aba93a20b6114fd75d1de412b1e540cfb63bfec mbpoll-1.5.2.tar.gz +sha256 3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986 COPYING diff --git a/package/mbpoll/mbpoll.mk b/package/mbpoll/mbpoll.mk new file mode 100644 index 000000000000..e35fbbe5f153 --- /dev/null +++ b/package/mbpoll/mbpoll.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# mbpoll +# +################################################################################ + +MBPOLL_VERSION = 1.5.2 +MBPOLL_SITE = $(call github,epsilonrt,mbpoll,v$(MBPOLL_VERSION)) +MBPOLL_DEPENDENCIES = host-pkgconf libmodbus +MBPOLL_LICENSE = GPL-3.0+ +MBPOLL_LICENSE_FILES = COPYING +MBPOLL_CONF_OPTS = -DGIT_EXECUTABLE=/bin/false + +$(eval $(cmake-package)) diff --git a/package/mbw/0001-CMakeLists.txt-fix-build-without-C.patch b/package/mbw/0001-CMakeLists.txt-fix-build-without-C.patch deleted file mode 100644 index 2c2585ebe25c..000000000000 --- a/package/mbw/0001-CMakeLists.txt-fix-build-without-C.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 059f67459912bba6d7f605b7c43519ff547f3a80 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Sun, 7 Aug 2022 11:34:19 +0200 -Subject: [PATCH] CMakeLists.txt: fix build without C++ - -Fix the following build failure without C++: - -CMake Error at CMakeLists.txt:3 (project): - No CMAKE_CXX_COMPILER could be found. - - Tell CMake where to find the compiler by setting either the environment - variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path - to the compiler, or to the compiler name if it is in the PATH. - -Fixes: - - http://autobuild.buildroot.org/results/17e2d6e6d6ddf7845a37a8bbf733faf40d9faa61 - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/raas/mbw/pull/14] ---- - CMakeLists.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index d3d4fcd..3b2cb3e 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1,6 +1,6 @@ - cmake_minimum_required(VERSION 3.10) - --project(mbw VERSION 1.5) -+project(mbw VERSION 1.5 LANGUAGES C) - - add_executable(mbw mbw.c) - install(TARGETS mbw DESTINATION bin) --- -2.35.1 - diff --git a/package/mbw/mbw.hash b/package/mbw/mbw.hash index 74e38992de06..d58d7a5d44dd 100644 --- a/package/mbw/mbw.hash +++ b/package/mbw/mbw.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 3c396ce09bb78c895e4d45e99b1ae07f80e3ea5eee59d78ed2048a7f2ae591ae mbw-1.5.tar.gz -sha256 1afb2b8258506742238b9ceb8a865d7030c5889c56ba2911a0c0c042aa1335d1 mbw.spec +sha256 557f670e13ff663086fe239e4184d8ca6154b004bd5fde2b0a748e5aa543c87f mbw-2.0.tar.gz +sha256 3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986 LICENSE diff --git a/package/mbw/mbw.mk b/package/mbw/mbw.mk index 755a9f52933f..04d6ea349401 100644 --- a/package/mbw/mbw.mk +++ b/package/mbw/mbw.mk @@ -4,9 +4,9 @@ # ################################################################################ -MBW_VERSION = 1.5 +MBW_VERSION = 2.0 MBW_SITE = $(call github,raas,mbw,v$(MBW_VERSION)) -MBW_LICENSE = LGPL-2.1 -MBW_LICENSE_FILES = mbw.spec +MBW_LICENSE = GPL-3.0+ +MBW_LICENSE_FILES = LICENSE $(eval $(cmake-package)) diff --git a/package/mc/mc.hash b/package/mc/mc.hash index b0381474ffde..93462afa60e8 100644 --- a/package/mc/mc.hash +++ b/package/mc/mc.hash @@ -1,4 +1,4 @@ -# Hash from http://ftp.midnight-commander.org/mc-4.8.28.sha256 -sha256 e994d9be9a7172e9ac4a4ad62107921f6aa312e668b056dfe5b8bcebbaf53803 mc-4.8.28.tar.xz +# Hash from http://ftp.midnight-commander.org/mc-4.8.30.sha256 +sha256 5ebc3cb2144b970c5149fda556c4ad50b78780494696cdf2d14a53204c95c7df mc-4.8.30.tar.xz # sha256 locally computed: sha256 5576bbec76296e1c8e081f7037ebd01bdada388635f58d844a2f20d37bbe4284 COPYING diff --git a/package/mc/mc.mk b/package/mc/mc.mk index 3858d6288674..2b4279c308ca 100644 --- a/package/mc/mc.mk +++ b/package/mc/mc.mk @@ -4,7 +4,7 @@ # ################################################################################ -MC_VERSION = 4.8.28 +MC_VERSION = 4.8.30 MC_SOURCE = mc-$(MC_VERSION).tar.xz MC_SITE = http://ftp.midnight-commander.org MC_LICENSE = GPL-3.0+ diff --git a/package/mcelog/mcelog.hash b/package/mcelog/mcelog.hash index 23fd4e50f386..a82d6f2ed27f 100644 --- a/package/mcelog/mcelog.hash +++ b/package/mcelog/mcelog.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 b3b2616acde7afba4752d4dc447a2c2ad5a75da65e7496e0da30f8f8d2015cfa mcelog-191.tar.gz +sha256 52ad2771a8dc8e30b44a52864620cf1be1fce81f9ae83c4652a9e2d010b1a533 mcelog-194.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE diff --git a/package/mcelog/mcelog.mk b/package/mcelog/mcelog.mk index 9f7194e376e0..5cd00cc354a0 100644 --- a/package/mcelog/mcelog.mk +++ b/package/mcelog/mcelog.mk @@ -4,7 +4,7 @@ # ################################################################################ -MCELOG_VERSION = 191 +MCELOG_VERSION = 194 MCELOG_SITE = $(call github,andikleen,mcelog,v$(MCELOG_VERSION)) MCELOG_LICENSE = GPL-2.0 MCELOG_LICENSE_FILES = LICENSE diff --git a/package/mdadm/mdadm.mk b/package/mdadm/mdadm.mk index 0a2eb4e5bd3e..ef518cd23876 100644 --- a/package/mdadm/mdadm.mk +++ b/package/mdadm/mdadm.mk @@ -9,6 +9,7 @@ MDADM_SOURCE = mdadm-$(MDADM_VERSION).tar.xz MDADM_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/raid/mdadm MDADM_LICENSE = GPL-2.0+ MDADM_LICENSE_FILES = COPYING +MDADM_CPE_ID_VENDOR = mdadm_project MDADM_CXFLAGS = $(TARGET_CFLAGS) @@ -21,12 +22,15 @@ MDADM_BUILD_OPTS = \ CPPFLAGS="$(TARGET_CPPFLAGS) -DBINDIR=\\\"/sbin\\\"" \ CHECK_RUN_DIR=0 +MDADM_INSTALL_TARGET_OPTS = install-bin + ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),) MDADM_BUILD_OPTS += USE_PTHREADS= endif ifeq ($(BR2_PACKAGE_HAS_UDEV),y) MDADM_DEPENDENCIES += udev +MDADM_INSTALL_TARGET_OPTS += install-udev else MDADM_CXFLAGS += -DNO_LIBUDEV endif @@ -36,7 +40,7 @@ define MDADM_BUILD_CMDS endef define MDADM_INSTALL_TARGET_CMDS - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install-bin + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) $(MDADM_INSTALL_TARGET_OPTS) endef $(eval $(generic-package)) diff --git a/package/mdio-tools/Config.in b/package/mdio-tools/Config.in index 237f4454cc19..790c9c534a82 100644 --- a/package/mdio-tools/Config.in +++ b/package/mdio-tools/Config.in @@ -14,4 +14,6 @@ config BR2_PACKAGE_MDIO_TOOLS depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_1 select BR2_PACKAGE_LIBMNL help - Low-level debug tools for MDIO devices + Low-level debug tools for MDIO devices. + + https://github.com/wkz/mdio-tools diff --git a/package/mdio-tools/mdio-tools.hash b/package/mdio-tools/mdio-tools.hash index 0111165f2736..1a9d598923b3 100644 --- a/package/mdio-tools/mdio-tools.hash +++ b/package/mdio-tools/mdio-tools.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 c5e17431c62392f6c1da1ba4fb0a6f5918521509a377af74485851f93ff2a106 mdio-tools-1.2.0.tar.gz +sha256 d2ab71d92173053af41d754e9c229e1ead768b9f8b7f4947b3b87b84c4c5e360 mdio-tools-1.3.0.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/mdio-tools/mdio-tools.mk b/package/mdio-tools/mdio-tools.mk index c4be54142e56..fb8ec39f3543 100644 --- a/package/mdio-tools/mdio-tools.mk +++ b/package/mdio-tools/mdio-tools.mk @@ -4,7 +4,7 @@ # ################################################################################ -MDIO_TOOLS_VERSION = 1.2.0 +MDIO_TOOLS_VERSION = 1.3.0 MDIO_TOOLS_SITE = https://github.com/wkz/mdio-tools/releases/download/$(MDIO_TOOLS_VERSION) MDIO_TOOLS_LICENSE = GPL-2.0 MDIO_TOOLS_LICENSE_FILES = COPYING diff --git a/package/mdnsd/Config.in b/package/mdnsd/Config.in new file mode 100644 index 000000000000..c83c09059516 --- /dev/null +++ b/package/mdnsd/Config.in @@ -0,0 +1,49 @@ +config BR2_PACKAGE_MDNSD + bool "mdnsd" + depends on BR2_USE_MMU # fork() + help + Small mDNS-SD daemon for advertising services and device + discovery, similar to Avahi and Bonjour. + + By default, mdnsd runs on all interfaces that support + multicast. It reads services to announce from + /etc/mdns.d/*.service, a few common services are included + below. To override the defaults, e.g., path to services, + TTL of multicast frames, or the default interface, set + MDNSD_ARGS in /etc/default/mdnsd + + Note: currently no NSS integration with GLIBC. + + https://github.com/troglobit/mdnsd + +if BR2_PACKAGE_MDNSD + +config BR2_PACKAGE_MDNSD_MQUERY + bool "mquery" + help + Scan a LAN for mDNS capable devices, or query specific + records, similar to the mdns-scan tool. Useful for + verifying multicast connectivity or locating neighbors with + link-local address. + +comment "Services to advertise" + +config BR2_PACKAGE_MDNSD_FTP_SERVICE + bool "FTP service" + +config BR2_PACKAGE_MDNSD_HTTP_SERVICE + bool "HTTP service" + +config BR2_PACKAGE_MDNSD_IPP_SERVICE + bool "IPP service" + +config BR2_PACKAGE_MDNSD_PRINTER_SERVICE + bool "Printer service" + +config BR2_PACKAGE_MDNSD_SSH_SERVICE + bool "SSH service" + default y if BR2_PACKAGE_DROPBEAR + default y if BR2_PACKAGE_OPENSSH + default y if BR2_PACKAGE_LIBSSH_SERVER + +endif diff --git a/package/mdnsd/S50mdnsd b/package/mdnsd/S50mdnsd new file mode 100644 index 000000000000..1c2b71802c77 --- /dev/null +++ b/package/mdnsd/S50mdnsd @@ -0,0 +1,51 @@ +#!/bin/sh + +DAEMON=mdnsd +MDNSD=/usr/sbin/$DAEMON +PIDFILE=/var/run/$DAEMON.pid +CFGFILE=/etc/default/$DAEMON + +MDNSD_ARGS="" + +# Read configuration variable file if it is present +# shellcheck source=/dev/null +[ -r "$CFGFILE" ] && . "$CFGFILE" + +# shellcheck disable=SC2086 +start() { + [ -n "$1" ] || printf 'Starting %s: ' "$DAEMON" + start-stop-daemon -S -q -p "$PIDFILE" -x "$MDNSD" -- $MDNSD_ARGS +} + +stop() { + [ -n "$1" ] || printf 'Stopping %s: ' "$DAEMON" + start-stop-daemon -K -q -p "$PIDFILE" -x "$MDNSD" +} + +restart() { + printf 'Restarting %s: ' "$DAEMON" + stop silent + start silent +} + +# SIGHUP reloads /etc/mdns.d/*.service +reload() { + printf 'Reloading %s: ' "$DAEMON" + start-stop-daemon -K -s HUP -q -p "$PIDFILE" -x "$MDNSD" +} + +case "$1" in + start|stop|restart|reload) + if "$1"; then + echo "OK" + else + echo "FAIL" + fi + ;; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 + ;; +esac + +exit $? diff --git a/package/mdnsd/ftp.service b/package/mdnsd/ftp.service new file mode 100644 index 000000000000..200a379efdc8 --- /dev/null +++ b/package/mdnsd/ftp.service @@ -0,0 +1,2 @@ +type _ftp._tcp +port 21 diff --git a/package/mdnsd/http.service b/package/mdnsd/http.service new file mode 100644 index 000000000000..7a40d2405f20 --- /dev/null +++ b/package/mdnsd/http.service @@ -0,0 +1,2 @@ +type _http._tcp +port 80 diff --git a/package/mdnsd/ipp.service b/package/mdnsd/ipp.service new file mode 100644 index 000000000000..0d43e780d1d8 --- /dev/null +++ b/package/mdnsd/ipp.service @@ -0,0 +1,2 @@ +type _ipp._tcp +port 631 diff --git a/package/mdnsd/mdnsd.hash b/package/mdnsd/mdnsd.hash new file mode 100644 index 000000000000..6ab0676702f5 --- /dev/null +++ b/package/mdnsd/mdnsd.hash @@ -0,0 +1,5 @@ +# Upstream sha256 from GitHub +sha256 1af8742ab82a0af88d99d0b15508358ad4305879ab039631bea889138f5c87e8 mdnsd-0.12.tar.gz + +# Locally computed +sha256 2969546227b58ce1b431cc4c36c9a9b45d604e6b94fb8b787ea5d3696f3eee3b LICENSE diff --git a/package/mdnsd/mdnsd.mk b/package/mdnsd/mdnsd.mk new file mode 100644 index 000000000000..f5a5fb93fbd7 --- /dev/null +++ b/package/mdnsd/mdnsd.mk @@ -0,0 +1,50 @@ +################################################################################ +# +# mdnsd +# +################################################################################ + +MDNSD_VERSION = 0.12 +MDNSD_SITE = https://github.com/troglobit/mdnsd/releases/download/v$(MDNSD_VERSION) +MDNSD_LICENSE = BSD-3-Clause +MDNSD_LICENSE_FILES = LICENSE +MDNSD_DEPENDENCIES = host-pkgconf + +ifeq ($(BR2_PACKAGE_MDNSD_MQUERY),y) +MDNSD_CONF_OPTS += --with-mquery +else +MDNSD_CONF_OPTS += --without-mquery +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +MDNSD_DEPENDENCIES += systemd +MDNSD_CONF_OPTS += --with-systemd +else +MDNSD_CONF_OPTS += --without-systemd +endif + +MDNSD_SERVICES_$(BR2_PACKAGE_MDNSD_FTP_SERVICE) += ftp +MDNSD_SERVICES_$(BR2_PACKAGE_MDNSD_HTTP_SERVICE) += http +MDNSD_SERVICES_$(BR2_PACKAGE_MDNSD_IPP_SERVICE) += ipp +MDNSD_SERVICES_$(BR2_PACKAGE_MDNSD_PRINTER_SERVICE) += printer +MDNSD_SERVICES_$(BR2_PACKAGE_MDNSD_SSH_SERVICE) += ssh + +define MDNSD_INSTALL_SERVICES + $(foreach service,$(MDNSD_SERVICES_y),\ + $(INSTALL) -D -m 0644 package/mdnsd/$(service).service \ + $(TARGET_DIR)/etc/mdns.d/$(service).service + ) +endef +MDNSD_POST_INSTALL_TARGET_HOOKS += MDNSD_INSTALL_SERVICES + +define MDNSD_INSTALL_INIT_SYSV + $(INSTALL) -m 755 -D package/mdnsd/S50mdnsd \ + $(TARGET_DIR)/etc/init.d/S50mdnsd +endef + +define MDNSD_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 $(@D)/mdnsd.service \ + $(TARGET_DIR)/usr/lib/systemd/system/mdnsd.service +endef + +$(eval $(autotools-package)) diff --git a/package/mdnsd/printer.service b/package/mdnsd/printer.service new file mode 100644 index 000000000000..cd322954710a --- /dev/null +++ b/package/mdnsd/printer.service @@ -0,0 +1,2 @@ +type _printer._tcp +port 515 diff --git a/package/mdnsd/ssh.service b/package/mdnsd/ssh.service new file mode 100644 index 000000000000..596d20ba17e8 --- /dev/null +++ b/package/mdnsd/ssh.service @@ -0,0 +1,2 @@ +type _ssh._tcp +port 22 diff --git a/package/memcached/0001-logger.c-initialize-rport.patch b/package/memcached/0001-logger.c-initialize-rport.patch index 5fb13d5eee45..002a6896018e 100644 --- a/package/memcached/0001-logger.c-initialize-rport.patch +++ b/package/memcached/0001-logger.c-initialize-rport.patch @@ -23,7 +23,7 @@ Fixes: - http://autobuild.buildroot.org/results/7a46ac38d10b1859034017e0294961daa8f48dd2 Signed-off-by: Fabrice Fontaine -[Upstream status: not sent yet] +Upstream: https://github.com/memcached/memcached/pull/1077 --- logger.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package/memcached/0002-check-for-sys-auxv.h.patch b/package/memcached/0002-check-for-sys-auxv.h.patch deleted file mode 100644 index a7d0dfdd0016..000000000000 --- a/package/memcached/0002-check-for-sys-auxv.h.patch +++ /dev/null @@ -1,50 +0,0 @@ -From 58b6de2135c10b64918f25c48f69f144d08a9c0d Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Fri, 3 Jun 2022 19:10:15 +0200 -Subject: [PATCH] check for sys/auxv.h - -Check for sys/auxv.h to avoid the following uclibc build failure on -aarch64: - -crc32c.c:277:10: fatal error: sys/auxv.h: No such file or directory - 277 | #include - | ^~~~~~~~~~~~ - -Fixes: - - http://autobuild.buildroot.org/results/08591fbf9677ff126492c50c15170c641bcab56a - -Signed-off-by: Fabrice Fontaine -[Upstream status: not sent yet] ---- - configure.ac | 1 + - crc32c.c | 2 +- - 2 files changed, 2 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 0985f07..3337fe7 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -516,6 +516,7 @@ AH_BOTTOM([#ifdef HAVE_INTTYPES_H - #include - #endif - ]) -+AC_CHECK_HEADERS([sys/auxv.h]) - - dnl ********************************************************************** - dnl Figure out if this system has the stupid sasl_callback_ft -diff --git a/crc32c.c b/crc32c.c -index 26df879..05e61ff 100644 ---- a/crc32c.c -+++ b/crc32c.c -@@ -273,7 +273,7 @@ void crc32c_init(void) { - } - - #elif defined(__aarch64__) && (defined(__linux__) || defined(__APPLE__)) --#if defined(__linux__) -+#if defined(__linux__) && defined(HAVE_SYS_AUX_H) - #include - #elif defined(__APPLE__) - #include --- -2.35.1 - diff --git a/package/memcached/0002-fix-build-on-uclibc-ng.patch b/package/memcached/0002-fix-build-on-uclibc-ng.patch new file mode 100644 index 000000000000..a5af7a2adbdc --- /dev/null +++ b/package/memcached/0002-fix-build-on-uclibc-ng.patch @@ -0,0 +1,64 @@ +From c84e5e55e0e9e793849f721d30979242ed6a6ee3 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sun, 1 Oct 2023 14:12:38 +0200 +Subject: [PATCH] fix build on uclibc-ng + +Fix the following build failure with uclibc-ng raised since version +1.6.18 and +https://github.com/memcached/memcached/commit/875371a75cbf1f92350de2d1fa0fae4a35ed572b: + +/home/buildroot/autobuild/instance-2/output-1/host/lib/gcc/arc-buildroot-linux-uclibc/10.2.0/../../../../arc-buildroot-linux-uclibc/bin/ld: memcached-thread.o: in function `thread_setname': +thread.c:(.text+0xea2): undefined reference to `pthread_setname_np' + +Fixes: + - http://autobuild.buildroot.org/results/e856d381f5ec7d2727f21c8bd46dacb456984416 + +Signed-off-by: Fabrice Fontaine +Upstream: unsent yet (waiting feedback on first patch) +--- + configure.ac | 1 + + extstore.c | 2 +- + thread.c | 2 +- + 3 files changed, 3 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index d94f6fb..5ec5088 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -686,6 +686,7 @@ AC_CHECK_FUNCS(clock_gettime) + AC_CHECK_FUNCS(preadv) + AC_CHECK_FUNCS(pread) + AC_CHECK_FUNCS(eventfd) ++AC_CHECK_FUNCS([pthread_setname_np],[AC_DEFINE(HAVE_PTHREAD_SETNAME_NP, 1, [Define to 1 if support pthread_setname_np])]) + AC_CHECK_FUNCS([accept4], [AC_DEFINE(HAVE_ACCEPT4, 1, [Define to 1 if support accept4])]) + AC_CHECK_FUNCS([getopt_long], [AC_DEFINE(HAVE_GETOPT_LONG, 1, [Define to 1 if support getopt_long])]) + +diff --git a/extstore.c b/extstore.c +index b079465..f6a6180 100644 +--- a/extstore.c ++++ b/extstore.c +@@ -119,7 +119,7 @@ struct store_engine { + #define THR_NAME_MAXLEN 16 + static void thread_setname(pthread_t thread, const char *name) { + assert(strlen(name) < THR_NAME_MAXLEN); +-#if defined(__linux__) ++#if defined(__linux__) && defined(HAVE_PTHREAD_SETNAME_NP) + pthread_setname_np(thread, name); + #endif + } +diff --git a/thread.c b/thread.c +index ee120fa..76651c2 100644 +--- a/thread.c ++++ b/thread.c +@@ -635,7 +635,7 @@ static void thread_libevent_process(evutil_socket_t fd, short which, void *arg) + #define THR_NAME_MAXLEN 16 + void thread_setname(pthread_t thread, const char *name) { + assert(strlen(name) < THR_NAME_MAXLEN); +-#if defined(__linux__) ++#if defined(__linux__) && defined(HAVE_PTHREAD_SETNAME_NP) + pthread_setname_np(thread, name); + #endif + } +-- +2.40.1 + diff --git a/package/memcached/0003-configure.ac-add-disable-werror.patch b/package/memcached/0003-configure.ac-add-disable-werror.patch deleted file mode 100644 index dab9b8835dcf..000000000000 --- a/package/memcached/0003-configure.ac-add-disable-werror.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 8497f7ed38146378a988bc22800b3a5eba38b0fd Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Mon, 13 Jun 2022 16:29:38 +0200 -Subject: [PATCH] configure.ac: add --disable-werror - -Allow the user to disable -Werror to avoid the following build failure: - -In file included from hash.c:7: -xxhash.h:2667:5: error: #warning is a GCC extension [-Werror] - 2667 | # warning "XXH3 is highly inefficient without ARM or Thumb-2." - | ^~~~~~~ -xxhash.h:2667:5: error: #warning "XXH3 is highly inefficient without ARM or Thumb-2." [-Werror=cpp] - -Fixes: - - http://autobuild.buildroot.org/results/3124bae73c207f1a118e57e41e222ef464ccb297 - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/memcached/memcached/pull/926] ---- - configure.ac | 11 +++++++++-- - 1 file changed, 9 insertions(+), 2 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 3337fe7..7683b8f 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -114,6 +114,9 @@ AC_ARG_ENABLE(static, - AC_ARG_ENABLE(unix_socket, - [AS_HELP_STRING([--disable-unix-socket], [Disable unix domain socket])]) - -+AC_ARG_ENABLE(werror, -+ [AS_HELP_STRING([--disable-werror], [Disable -Werror])]) -+ - dnl ********************************************************************** - dnl DETECT_SASL_CB_GETCONF - dnl -@@ -783,6 +786,10 @@ AM_CONDITIONAL([BUILD_SPECIFICATIONS], - [test "x$enable_docs" != "xno" -a "x$XML2RFC" != "xno" -a "x$XSLTPROC" != "xno"]) - - -+if test "x$enable_werror" != "xno"; then -+ CFLAGS="$CFLAGS -Werror" -+fi -+ - dnl Let the compiler be a bit more picky. Please note that you cannot - dnl specify these flags to the compiler before AC_CHECK_FUNCS, because - dnl the test program will generate a compilation warning and hence fail -@@ -790,12 +797,12 @@ dnl to detect the function ;-) - if test "$ICC" = "yes" - then - dnl ICC trying to be gcc. -- CFLAGS="$CFLAGS -diag-disable 187 -Wall -Werror" -+ CFLAGS="$CFLAGS -diag-disable 187 -Wall" - AC_DEFINE([_GNU_SOURCE],[1],[make sure IOV_MAX is defined]) - elif test "$GCC" = "yes" - then - GCC_VERSION=`$CC -dumpversion` -- CFLAGS="$CFLAGS -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls" -+ CFLAGS="$CFLAGS -Wall -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls" - if test "x$enable_asan" = "xyes"; then - CFLAGS="$CFLAGS -fsanitize=address" - fi --- -2.35.1 - diff --git a/package/memcached/memcached.hash b/package/memcached/memcached.hash index 78875dde662b..bd2072df0b87 100644 --- a/package/memcached/memcached.hash +++ b/package/memcached/memcached.hash @@ -1,6 +1,6 @@ -# From http://www.memcached.org/files/memcached-1.6.17.tar.gz.sha1 -sha1 e25639473e15f1bd9516b915fb7e03ab8209030f memcached-1.6.17.tar.gz +# From http://www.memcached.org/files/memcached-1.6.22.tar.gz.sha1 +sha1 7a691f390d59616dbebfc9e2e4942d499c39a338 memcached-1.6.22.tar.gz # Locally computed -sha256 2055e373613d8fc21529aff9f0adce3e23b9ce01ba0478d30e7941d9f2bd1224 memcached-1.6.17.tar.gz +sha256 34783a90a4ccf74c4107085fd92b688749d23b276cfdad9f04e4f725a05d1ca7 memcached-1.6.22.tar.gz sha256 bc887c4ad8051fe690ace9528fe37a2e0bb362e6d963331d82e845ca9b585a0c COPYING diff --git a/package/memcached/memcached.mk b/package/memcached/memcached.mk index 7183da6c14e6..05ae69eb3294 100644 --- a/package/memcached/memcached.mk +++ b/package/memcached/memcached.mk @@ -4,7 +4,7 @@ # ################################################################################ -MEMCACHED_VERSION = 1.6.17 +MEMCACHED_VERSION = 1.6.22 MEMCACHED_SITE = http://www.memcached.org/files MEMCACHED_DEPENDENCIES = libevent MEMCACHED_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99' diff --git a/package/mender/mender.mk b/package/mender/mender.mk index 724295f78481..ee1398244b9c 100644 --- a/package/mender/mender.mk +++ b/package/mender/mender.mk @@ -7,6 +7,7 @@ MENDER_VERSION = 3.4.0 MENDER_SITE = $(call github,mendersoftware,mender,$(MENDER_VERSION)) MENDER_LICENSE = Apache-2.0, BSD-2-Clause, BSD-3-Clause, ISC, MIT, OLDAP-2.8 +MENDER_CPE_ID_VENDOR = northern.tech # Vendor license paths generated with: # awk '{print $2}' LIC_FILES_CHKSUM.sha256 | grep vendor diff --git a/package/mesa3d-demos/0001-demos-makes-opengl-an-optional-component.patch b/package/mesa3d-demos/0001-demos-makes-opengl-an-optional-component.patch index e51b6f1a2ad3..72bf72719c96 100644 --- a/package/mesa3d-demos/0001-demos-makes-opengl-an-optional-component.patch +++ b/package/mesa3d-demos/0001-demos-makes-opengl-an-optional-component.patch @@ -1,26 +1,47 @@ -From 9ec9f7b4d0ef5e799ca4cc5103163e4630d184d8 Mon Sep 17 00:00:00 2001 +From 5b45f98255b74589015d5cb0d8ca31d7169c9f34 Mon Sep 17 00:00:00 2001 From: Julien Olivain Date: Fri, 16 Sep 2022 22:30:59 +0200 Subject: [PATCH] demos: makes opengl an optional component This patch is a port of [1] for the new meson build system. +matrix-code from es2gears has been moved to util in version 9.0.0 [2] +so now es2gears is linked with mesa3d-demo libutil (idep_util). +But at the same time the dependency on glu (dep_glu) has been added +to libutil [3]. dep_glu requires opengl (FULL_GL) to build. + +In order to keep the es2gears for egl only builds we have to +split the libutil files list to build readtex.c and showbuffer.c +only if opengl is available. + +Add back dep_glu since it's used in util's meson. + +Fixes: +https://gitlab.com/buildroot.org/buildroot/-/jobs/4936948236 +https://gitlab.com/buildroot.org/buildroot/-/jobs/4936948042 + [1]. https://git.busybox.net/buildroot/tree/package/mesa3d-demos/0001-demos-makes-opengl-an-optional-component.patch?h=2022.08 +[2] https://gitlab.freedesktop.org/mesa/demos/-/commit/c33e2f731c2eab86bbad7b6a028f8a90ea40a00c +[3] https://gitlab.freedesktop.org/mesa/demos/-/commit/ef24aae22978d4d357340074ca9a1c04d9cf81e6 Signed-off-by: Julien Olivain +[Bernd: rebased for version 9.0.0] +Signed-off-by: Bernd Kuhls +[Romain: fix egl only builds in util] +Signed-off-by: Romain Naour --- - meson.build | 19 ++++++++++++------- - meson_options.txt | 1 + - src/egl/meson.build | 5 ++++- - src/meson.build | 4 +++- - 4 files changed, 20 insertions(+), 9 deletions(-) + meson.build | 5 ++++- + meson_options.txt | 1 + + src/egl/meson.build | 5 ++++- + src/util/meson.build | 12 +++++++++--- + 4 files changed, 18 insertions(+), 5 deletions(-) diff --git a/meson.build b/meson.build -index e1968fab..a15699d6 100644 +index 3e39b5a2..f27e1a18 100644 --- a/meson.build +++ b/meson.build -@@ -38,7 +38,10 @@ add_project_arguments( +@@ -39,7 +39,10 @@ add_project_arguments( dep_m = cc.find_library('m', required : false) dep_winmm = cc.find_library('winmm', required : false) @@ -30,32 +51,10 @@ index e1968fab..a15699d6 100644 + add_project_arguments('-DEGL_NO_X11=1', language: 'c') +endif + dep_epoll = dependency('epoll-shim', required : false) dep_gles1 = dependency('glesv1_cm', required : get_option('gles1')) - dep_gles2 = dependency('glesv2', required : get_option('gles2')) -@@ -75,13 +78,15 @@ endif - - dep_threads = dependency('threads') - --dep_glu = dependency('glu', required : dep_x11.found()) --if not dep_glu.found() -- _glu_name = 'GLU' -- if host_machine.system() == 'windows' -- _glu_name = 'glu32' -+if dep_gl.found() -+ dep_glu = dependency('glu', required : dep_x11.found()) -+ if not dep_glu.found() -+ _glu_name = 'GLU' -+ if host_machine.system() == 'windows' -+ _glu_name = 'glu32' -+ endif -+ dep_glu = cc.find_library(_glu_name, has_headers: 'GL/glu.h') - endif -- dep_glu = cc.find_library(_glu_name, has_headers: 'GL/glu.h') - endif - - # GBM is needed for EGL on KMS diff --git a/meson_options.txt b/meson_options.txt -index ddadd2e3..f5405698 100644 +index 832b916a..c954a710 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -1,5 +1,6 @@ @@ -64,7 +63,7 @@ index ddadd2e3..f5405698 100644 +option('gl', type : 'feature') option('gles1', type : 'feature') option('gles2', type : 'feature') - option('osmesa', type : 'feature') + option('glut', type : 'feature') diff --git a/src/egl/meson.build b/src/egl/meson.build index d1846921..42bf8ecd 100644 --- a/src/egl/meson.build @@ -81,21 +80,33 @@ index d1846921..42bf8ecd 100644 if dep_gles1.found() subdir('opengles1') -diff --git a/src/meson.build b/src/meson.build -index 39cac78d..7607c6de 100644 ---- a/src/meson.build -+++ b/src/meson.build -@@ -20,7 +20,9 @@ +diff --git a/src/util/meson.build b/src/util/meson.build +index b4fe614f..4420f28a 100644 +--- a/src/util/meson.build ++++ b/src/util/meson.build +@@ -22,13 +22,19 @@ inc_util = include_directories('.') - subdir('glad') + files_libutil = files( + 'glinfo_common.c', +- 'readtex.c', +- 'showbuffer.c', + 'trackball.c', + 'matrix.c', + ) --subdir('util') +-_deps = [dep_glu, dep_m] ++_deps = [dep_m] +if dep_gl.found() -+ subdir('util') ++ files_libutil += files( ++ 'readtex.c', ++ 'showbuffer.c', ++ ) ++ _deps += dep_glu +endif - ++ if dep_glut.found() - subdir('demos') + files_libutil += files('shaderutil.c') + _deps += dep_glut -- -2.37.3 +2.41.0 diff --git a/package/mesa3d-demos/0002-meson-fix-glx-detection-without-glvnd.patch b/package/mesa3d-demos/0002-meson-fix-glx-detection-without-glvnd.patch new file mode 100644 index 000000000000..37a60efdd726 --- /dev/null +++ b/package/mesa3d-demos/0002-meson-fix-glx-detection-without-glvnd.patch @@ -0,0 +1,47 @@ +From e16117fc92688d76a042ad2c590c77d5a987a4ac Mon Sep 17 00:00:00 2001 +From: Erik Faye-Lund +Date: Fri, 24 Mar 2023 13:31:58 +0100 +Subject: [PATCH] meson: fix glx-detection without glvnd + +When build without GLVND, Mesa provides GLX as a part of libGL, just +like XQuartz does on MacOS. There's nothing really macOS specific about +this fallback, so let's drop the condition. + +And just for good measure, let's add in dep_gl as a dependency for +the header-check here, in case some one decides to install libGL outside +of the default include directory. + +Fixes: 34300551 ("meson: explicitly check for glx dependency") +Closes: https://gitlab.freedesktop.org/mesa/demos/-/issues/36 +Reviewed-by: Hoe Hao Cheng + +Upstream: https://gitlab.freedesktop.org/mesa/demos/-/commit/e16117fc92688d76a042ad2c590c77d5a987a4ac + +Signed-off-by: Bernd Kuhls +--- + meson.build | 9 +++++---- + 1 file changed, 5 insertions(+), 4 deletions(-) + +diff --git a/meson.build b/meson.build +index c1853f94..bc3278e1 100644 +--- a/meson.build ++++ b/meson.build +@@ -99,10 +99,11 @@ if not dep_glu.found() and host_machine.system() != 'darwin' + endif + + dep_glx = dependency('glx', required: false, disabler : true) +-if not dep_glx.found() and host_machine.system() == 'darwin' +- # xquartz doesn't have a glx.pc, but it does have the header. And all the +- # symbols reside in libGL, so let's just use that. +- if cc.check_header('GL/glx.h', dependencies: dep_x11) ++if not dep_glx.found() ++ # Both Mesa build without GLVND and XQuartz lacks a glx.pc, but does ++ # provide the header. And all the symbols reside in libGL, so let's ++ # just use that. ++ if cc.check_header('GL/glx.h', dependencies: [dep_x11, dep_gl]) + dep_glx = dep_gl + endif + endif +-- +GitLab + diff --git a/package/mesa3d-demos/Config.in b/package/mesa3d-demos/Config.in index b716cf579918..1761494c3a19 100644 --- a/package/mesa3d-demos/Config.in +++ b/package/mesa3d-demos/Config.in @@ -1,12 +1,19 @@ config BR2_PACKAGE_MESA3D_DEMOS bool "mesa3d-demos" + depends on BR2_INSTALL_LIBSTDCPP depends on BR2_PACKAGE_HAS_LIBGL || BR2_PACKAGE_HAS_LIBGLES \ || BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBOPENVG select BR2_PACKAGE_LIBGLEW if BR2_PACKAGE_XORG7 && BR2_PACKAGE_HAS_LIBGL select BR2_PACKAGE_LIBGLU if BR2_PACKAGE_XORG7 && BR2_PACKAGE_HAS_LIBGL select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7 && BR2_PACKAGE_HAS_LIBGL select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7 && BR2_PACKAGE_HAS_LIBGL + select BR2_PACKAGE_LIBXKBCOMMON if BR2_PACKAGE_WAYLAND help OpenGL demos from the Mesa 3D project. http://mesa3d.org + +comment "mesa3d-demos needs a toolchain with C++" + depends on !BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_HAS_LIBGL || BR2_PACKAGE_HAS_LIBGLES \ + || BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBOPENVG diff --git a/package/mesa3d-demos/mesa3d-demos.hash b/package/mesa3d-demos/mesa3d-demos.hash index b0cfb888165b..cdf9adb3fda4 100644 --- a/package/mesa3d-demos/mesa3d-demos.hash +++ b/package/mesa3d-demos/mesa3d-demos.hash @@ -1,3 +1,3 @@ -# From https://lists.freedesktop.org/archives/mesa-announce/2022-May/000677.html -sha256 cea2df0a80f09a30f635c4eb1a672bf90c5ddee0b8e77f4d70041668ef71aac1 mesa-demos-8.5.0.tar.bz2 -sha512 df6a7f09638ca389d6e8bc569e599dcc59c9aa280bcfb95976d83e5cd3edfe74bb3a31f0953956dc16faa540ee5b09990e3377e1341d836fc527e50ace6e60b8 mesa-demos-8.5.0.tar.bz2 +# From https://lists.freedesktop.org/archives/mesa-announce/2023-March/000711.html +sha256 3046a3d26a7b051af7ebdd257a5f23bfeb160cad6ed952329cdff1e9f1ed496b mesa-demos-9.0.0.tar.xz +sha512 af33ef72a521416e39d93370b2b4ccb768f08084c9e4c0aa62868210d9465c858e5cb8e5d23952295a3073946f609eb8723ee60b39dd9fb6696c4e45aafbb2c1 mesa-demos-9.0.0.tar.xz diff --git a/package/mesa3d-demos/mesa3d-demos.mk b/package/mesa3d-demos/mesa3d-demos.mk index 5f7fe8e24dc8..8acba9270af5 100644 --- a/package/mesa3d-demos/mesa3d-demos.mk +++ b/package/mesa3d-demos/mesa3d-demos.mk @@ -4,9 +4,9 @@ # ################################################################################ -MESA3D_DEMOS_VERSION = 8.5.0 -MESA3D_DEMOS_SOURCE = mesa-demos-$(MESA3D_DEMOS_VERSION).tar.bz2 -MESA3D_DEMOS_SITE = https://archive.mesa3d.org/demos/$(MESA3D_DEMOS_VERSION) +MESA3D_DEMOS_VERSION = 9.0.0 +MESA3D_DEMOS_SOURCE = mesa-demos-$(MESA3D_DEMOS_VERSION).tar.xz +MESA3D_DEMOS_SITE = https://archive.mesa3d.org/demos MESA3D_DEMOS_DEPENDENCIES = host-pkgconf MESA3D_DEMOS_LICENSE = MIT @@ -62,8 +62,8 @@ else MESA3D_DEMOS_CONF_OPTS += -Dosmesa=disabled endif -ifeq ($(BR2_PACKAGE_WAYLAND),y) -MESA3D_DEMOS_DEPENDENCIES += wayland +ifeq ($(BR2_PACKAGE_LIBDECOR)$(BR2_PACKAGE_WAYLAND),yy) +MESA3D_DEMOS_DEPENDENCIES += libdecor libxkbcommon wayland MESA3D_DEMOS_CONF_OPTS += -Dwayland=enabled else MESA3D_DEMOS_CONF_OPTS += -Dwayland=disabled diff --git a/package/mesa3d-headers/mesa3d-headers.mk b/package/mesa3d-headers/mesa3d-headers.mk index 9177adceda5b..3bc12ca86e57 100644 --- a/package/mesa3d-headers/mesa3d-headers.mk +++ b/package/mesa3d-headers/mesa3d-headers.mk @@ -12,7 +12,7 @@ endif # Not possible to directly refer to mesa3d variables, because of # first/second expansion trickery... -MESA3D_HEADERS_VERSION = 22.3.4 +MESA3D_HEADERS_VERSION = 23.2.1 MESA3D_HEADERS_SOURCE = mesa-$(MESA3D_HEADERS_VERSION).tar.xz MESA3D_HEADERS_SITE = https://archive.mesa3d.org MESA3D_HEADERS_DL_SUBDIR = mesa3d diff --git a/package/mesa3d/0002-vc4-add-meson-option-to-disable-optional-neon-suppor.patch b/package/mesa3d/0002-vc4-add-meson-option-to-disable-optional-neon-suppor.patch index bb5ef00a9fcb..f3919478a625 100644 --- a/package/mesa3d/0002-vc4-add-meson-option-to-disable-optional-neon-suppor.patch +++ b/package/mesa3d/0002-vc4-add-meson-option-to-disable-optional-neon-suppor.patch @@ -1,4 +1,4 @@ -From e3b47c1b84964c62b3e1fa782f1ffa4be0ae62f9 Mon Sep 17 00:00:00 2001 +From f719e942dde0a46a9ff0080001cb3466012ffcc0 Mon Sep 17 00:00:00 2001 From: Peter Seiderer Date: Mon, 9 Mar 2020 13:01:14 +0100 Subject: [PATCH] vc4: add meson option to disable optional neon support @@ -7,10 +7,12 @@ Not all toolchains are able to compile the runtime optional vc4 neon support, so add an meson option to force disabling it at compile time. -[Upstream: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4114] +Upstream: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4114 Signed-off-by: Peter Seiderer Signed-off-by: Bernd Kuhls -[rebased for 20.2.0, 20.3.0 & 21.1.0] +[rebased for 20.2.0, 20.3.0, 21.1.0, 23.1.0 & 23.2.0] +Signed-off-by: Peter Seiderer +[fix syntax error after previous rebases] --- meson_options.txt | 7 +++++++ src/gallium/drivers/vc4/meson.build | 4 ++-- @@ -18,25 +20,25 @@ Signed-off-by: Bernd Kuhls 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/meson_options.txt b/meson_options.txt -index a39596a6f19..0f6b6c62b55 100644 +index 8e0bf2a..1cf0e07 100644 --- a/meson_options.txt +++ b/meson_options.txt -@@ -123,6 +123,13 @@ option( - choices : ['auto', 'true', 'false', 'enabled', 'disabled'], +@@ -124,6 +124,13 @@ option( description : 'enable gallium va frontend.', ) + +option( + 'gallium-vc4-neon', -+ type : 'combo', -+ value : 'auto', -+ choices : ['auto', 'disabled'], ++ type : 'feature', ++ deprecated: {'true': 'enabled', 'false': 'disabled'}, + description : 'enable gallium vc4 optional neon support.', +) ++ option( 'va-libs-path', type : 'string', diff --git a/src/gallium/drivers/vc4/meson.build b/src/gallium/drivers/vc4/meson.build -index 5ce5af5f6b4..e3f7d8d62ae 100644 +index 84da951..7f950de 100644 --- a/src/gallium/drivers/vc4/meson.build +++ b/src/gallium/drivers/vc4/meson.build @@ -84,7 +84,7 @@ files_libvc4 = files( @@ -44,7 +46,7 @@ index 5ce5af5f6b4..e3f7d8d62ae 100644 libvc4_neon = [] -if host_machine.cpu_family() == 'arm' -+if host_machine.cpu_family() == 'arm' and get_option('gallium-vc4-neon') != 'disabled' ++if host_machine.cpu_family() == 'arm' and not get_option('gallium-vc4-neon').disabled() libvc4_neon = static_library( 'vc4_neon', 'vc4_tiling_lt_neon.c', @@ -58,7 +60,7 @@ index 5ce5af5f6b4..e3f7d8d62ae 100644 if dep_simpenrose.found() diff --git a/src/gallium/drivers/vc4/vc4_tiling.h b/src/gallium/drivers/vc4/vc4_tiling.h -index 66767e7f1f8..7446f1c3d0c 100644 +index 5afe329..919b299 100644 --- a/src/gallium/drivers/vc4/vc4_tiling.h +++ b/src/gallium/drivers/vc4/vc4_tiling.h @@ -89,7 +89,7 @@ vc4_load_lt_image(void *dst, uint32_t dst_stride, @@ -80,5 +82,5 @@ index 66767e7f1f8..7446f1c3d0c 100644 vc4_store_lt_image_neon(dst, dst_stride, src, src_stride, cpp, box); -- -2.25.1 +2.41.0 diff --git a/package/mesa3d/0003-src-util-rand_xor-Include-stddef.h-to-fix-build-erro.patch b/package/mesa3d/0003-src-util-rand_xor-Include-stddef.h-to-fix-build-erro.patch index 538aa74e0c1a..e30cb97a72bb 100644 --- a/package/mesa3d/0003-src-util-rand_xor-Include-stddef.h-to-fix-build-erro.patch +++ b/package/mesa3d/0003-src-util-rand_xor-Include-stddef.h-to-fix-build-erro.patch @@ -15,8 +15,7 @@ output/host/x86_64-buildroot-linux-uclibc/sysroot/usr/include/sys/random.h:27:35 seen with gcc version 8.3.0 (Buildroot 2020.02) and uClibc. -Patch sent upstream: -https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6248 +Upstream: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6248 Signed-off-by: Bernd Kuhls --- diff --git a/package/mesa3d/0004-Fix-uClibc-build.patch b/package/mesa3d/0004-Fix-uClibc-build.patch index 95ca95fd6722..faa86b0d1b08 100644 --- a/package/mesa3d/0004-Fix-uClibc-build.patch +++ b/package/mesa3d/0004-Fix-uClibc-build.patch @@ -23,10 +23,11 @@ Fixes build errors with uClibc and gcc-9.3.0: 74 | static_assert(cond, #cond); \ | ^~~~~~~~~~~~~ -Patch sent upstream: -https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13898 +Upstream: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13898 Signed-off-by: Bernd Kuhls +[rebased for 23.2.0] +Signed-off-by: Bernd Kuhls --- src/util/compiler.h | 10 ++++++++++ src/util/macros.h | 1 + @@ -36,10 +37,11 @@ diff --git a/src/util/compiler.h b/src/util/compiler.h index d184ad455af..b5c56807acc 100644 --- a/src/util/compiler.h +++ b/src/util/compiler.h -@@ -36,6 +36,16 @@ +@@ -35,6 +35,17 @@ - #include + #include ++ +/* + * C11 static_assert() macro + * assert.h only defines that name for C11 and above @@ -50,21 +52,21 @@ index d184ad455af..b5c56807acc 100644 +#endif +#endif + - #include "util/macros.h" - - + #include + #include + #include diff --git a/src/util/macros.h b/src/util/macros.h index 22b18303826..8f73ee72693 100644 --- a/src/util/macros.h +++ b/src/util/macros.h -@@ -27,6 +27,7 @@ +@@ -31,6 +31,7 @@ #include #include #include +#include "util/compiler.h" - /* Compute the size of an array */ - #ifndef ARRAY_SIZE + #ifdef _GAMING_XBOX + #define strdup _strdup -- 2.34.1 diff --git a/package/mesa3d/Config.in b/package/mesa3d/Config.in index 576068a72686..fab156178ad0 100644 --- a/package/mesa3d/Config.in +++ b/package/mesa3d/Config.in @@ -4,7 +4,7 @@ menuconfig BR2_PACKAGE_MESA3D depends on !BR2_STATIC_LIBS depends on BR2_TOOLCHAIN_HAS_SYNC_1 depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL - depends on !BR2_m68k || BR2_TOOLCHAIN_GCC_AT_LEAST_7 # m68k needs gcc >= 7.x + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 select BR2_PACKAGE_EXPAT select BR2_PACKAGE_LIBDRM select BR2_PACKAGE_WAYLAND_PROTOCOLS if BR2_PACKAGE_WAYLAND @@ -24,21 +24,21 @@ config BR2_PACKAGE_MESA3D_NEEDS_ELFUTILS config BR2_PACKAGE_MESA3D_LLVM bool "llvm support" depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::shared_future depends on !BR2_STATIC_LIBS depends on BR2_USE_WCHAR # std::wstring - depends on BR2_HOST_GCC_AT_LEAST_5 # host-llvm + depends on BR2_HOST_GCC_AT_LEAST_7 # host-llvm select BR2_PACKAGE_LLVM -comment "llvm support needs a toolchain w/ wchar, threads, C++, gcc >= 5, dynamic library, host gcc >= 5" +comment "llvm support needs a toolchain w/ wchar, threads, C++, gcc >= 7, dynamic library, host gcc >= 7" depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \ - !BR2_TOOLCHAIN_GCC_AT_LEAST_5 \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_7 \ || BR2_STATIC_LIBS || !BR2_USE_WCHAR \ - || !BR2_HOST_GCC_AT_LEAST_5 + || !BR2_HOST_GCC_AT_LEAST_7 comment "llvm support needs a toolchain not affected by GCC bug 64735" depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS @@ -201,7 +201,6 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI depends on BR2_USE_MMU # libdrm depends on BR2_i386 || BR2_x86_64 depends on BR2_PACKAGE_MESA3D_LLVM - depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER select BR2_PACKAGE_LIBDRM_AMDGPU select BR2_PACKAGE_LIBDRM_RADEON @@ -211,13 +210,6 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI help Driver for ATI/AMD Radeon HD7000/HD8000/Rx200 GPUs. -# Radeon SI needs libelf -# musl is not currently compatible with elfutils -comment "Radeon SI driver needs a uClibc or glibc toolchain" - depends on BR2_USE_MMU - depends on BR2_PACKAGE_MESA3D_LLVM - depends on !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) - config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SVGA bool "Gallium vmware svga driver" depends on BR2_i386 || BR2_x86_64 @@ -283,7 +275,6 @@ config BR2_PACKAGE_MESA3D_VDPAU bool "Gallium VDPAU state tracker" depends on BR2_PACKAGE_XORG7 depends on BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_NOUVEAU \ - || BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R300 \ || BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R600 \ || BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI select BR2_PACKAGE_MESA3D_NEEDS_X11 @@ -292,15 +283,23 @@ config BR2_PACKAGE_MESA3D_VDPAU VDPAU state tracker (needs r300, r600, radeonsi or nouveau gallium drivers). -comment "Gallium VDPAU state tracker needs X.org and gallium drivers r300, r600, radeonsi or nouveau" +comment "Gallium VDPAU state tracker needs X.org and gallium drivers r600, radeonsi or nouveau" depends on !BR2_PACKAGE_XORG7 || \ !(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_NOUVEAU \ - || BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R300 \ || BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R600 \ || BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI) comment "Vulkan drivers" +config BR2_PACKAGE_MESA3D_VULKAN_DRIVER_BROADCOM + bool "Vulkan broadcom driver" + depends on BR2_arm || BR2_aarch64 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # dri3/libxshmfence + select BR2_PACKAGE_MESA3D_DRI3 if BR2_PACKAGE_XORG7 + select BR2_PACKAGE_MESA3D_VULKAN_DRIVER + help + Vulkan broadcom driver. + config BR2_PACKAGE_MESA3D_VULKAN_DRIVER_INTEL bool "Vulkan Intel driver" depends on BR2_i386 || BR2_x86_64 @@ -318,6 +317,14 @@ comment "intel vulkan needs a glibc toolchain w/ headers >= 3.17" depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 || \ !BR2_TOOLCHAIN_USES_GLIBC +config BR2_PACKAGE_MESA3D_VULKAN_DRIVER_SWRAST + bool "Vulkan swrast driver" + depends on BR2_PACKAGE_MESA3D_LLVM + select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST + select BR2_PACKAGE_MESA3D_VULKAN_DRIVER + help + Vulkan swrast driver. + comment "Off-screen Rendering" config BR2_PACKAGE_MESA3D_OSMESA_GALLIUM @@ -398,11 +405,7 @@ config BR2_PACKAGE_PROVIDES_LIBOPENCL endif # BR2_PACKAGE_MESA3D -comment "mesa3d needs a toolchain w/ C++, NPTL, dynamic library" +comment "mesa3d needs a toolchain w/ gcc >=8, C++, NPTL, dynamic library" depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ - BR2_STATIC_LIBS + BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_8 depends on BR2_TOOLCHAIN_HAS_SYNC_1 - -comment "mesa3d needs a toolchain w/ gcc >= 7" - depends on BR2_m68k - depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_7 diff --git a/package/mesa3d/mesa3d.hash b/package/mesa3d/mesa3d.hash index e4de997f0ec4..0f4ca05831e5 100644 --- a/package/mesa3d/mesa3d.hash +++ b/package/mesa3d/mesa3d.hash @@ -1,5 +1,4 @@ -# From https://lists.freedesktop.org/archives/mesa-announce/2023-January/000703.html -sha256 37a1ddaf03f41919ee3c89c97cff41e87de96e00e9d3247959cc8279d8294593 mesa-22.3.4.tar.xz -sha512 6af340153244d3e95d0e155a45d6db134335654d62590797ae0ef6ba44c2ccfe91ebf95f70ff82c67cee108ac35536767b1f6848d6d1129f52eb9e8414ee321d mesa-22.3.4.tar.xz +# From https://gitlab.freedesktop.org/mesa/mesa/-/blob/23.2/docs/relnotes/23.2.1.rst +sha256 64de0616fc2d801f929ab1ac2a4f16b3e2783c4309a724c8a259b20df8bbc1cc mesa-23.2.1.tar.xz # License sha256 a00275a53178e2645fb65be99a785c110513446a5071ff2c698ed260ad917d75 docs/license.rst diff --git a/package/mesa3d/mesa3d.mk b/package/mesa3d/mesa3d.mk index 2b56c479ba53..e378b00ea7b7 100644 --- a/package/mesa3d/mesa3d.mk +++ b/package/mesa3d/mesa3d.mk @@ -5,7 +5,7 @@ ################################################################################ # When updating the version, please also update mesa3d-headers -MESA3D_VERSION = 22.3.4 +MESA3D_VERSION = 23.2.1 MESA3D_SOURCE = mesa-$(MESA3D_VERSION).tar.xz MESA3D_SITE = https://archive.mesa3d.org MESA3D_LICENSE = MIT, SGI, Khronos @@ -119,7 +119,9 @@ MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_V3D) += v3d MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VC4) += vc4 MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VIRGL) += virgl # Vulkan Drivers +MESA3D_VULKAN_DRIVERS-$(BR2_PACKAGE_MESA3D_VULKAN_DRIVER_BROADCOM) += broadcom MESA3D_VULKAN_DRIVERS-$(BR2_PACKAGE_MESA3D_VULKAN_DRIVER_INTEL) += intel +MESA3D_VULKAN_DRIVERS-$(BR2_PACKAGE_MESA3D_VULKAN_DRIVER_SWRAST) += swrast ifeq ($(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER),) MESA3D_CONF_OPTS += \ diff --git a/package/meson/meson.hash b/package/meson/meson.hash index 6993b756ae49..cb36b674fa83 100644 --- a/package/meson/meson.hash +++ b/package/meson/meson.hash @@ -1,4 +1,4 @@ # Locally calculated after checking pgp signature -# https://github.com/mesonbuild/meson/releases/download/1.0.0/meson-1.0.0.tar.gz.asc -sha256 aa50a4ba4557c25e7d48446abfde857957dcdf58385fffbe670ba0e8efacce05 meson-1.0.0.tar.gz +# https://github.com/mesonbuild/meson/releases/download/1.1.1/meson-1.1.1.tar.gz.asc +sha256 d04b541f97ca439fb82fab7d0d480988be4bd4e62563a5ca35fadb5400727b1c meson-1.1.1.tar.gz sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 COPYING diff --git a/package/meson/meson.mk b/package/meson/meson.mk index e417d8d62721..503aca8c250e 100644 --- a/package/meson/meson.mk +++ b/package/meson/meson.mk @@ -4,7 +4,7 @@ # ################################################################################ -MESON_VERSION = 1.0.0 +MESON_VERSION = 1.1.1 MESON_SITE = https://github.com/mesonbuild/meson/releases/download/$(MESON_VERSION) MESON_LICENSE = Apache-2.0 MESON_LICENSE_FILES = COPYING diff --git a/package/mg/mg.hash b/package/mg/mg.hash index 19cf1e29d58e..6a3e3465b8e9 100644 --- a/package/mg/mg.hash +++ b/package/mg/mg.hash @@ -1,4 +1,4 @@ -# From https://github.com/troglobit/mg/releases/tag/v3.5 -sha256 a906eab9370c0f24a5fa25923561ad933b74ad339d0b2851d2067badf0d7e4ce mg-3.5.tar.gz +# From https://github.com/troglobit/mg/releases/tag/v3.7 +sha256 05101360d2194392da0950e8b6f18d067d8af0fd2f572461ba4d4e7b4ccbb4c1 mg-3.7.tar.gz # Locally computed: sha256 7e12e5df4bae12cb21581ba157ced20e1986a0508dd10d0e8a4ab9a4cf94e85c UNLICENSE diff --git a/package/mg/mg.mk b/package/mg/mg.mk index bb3f59a14daf..59f1d1e316a2 100644 --- a/package/mg/mg.mk +++ b/package/mg/mg.mk @@ -4,7 +4,7 @@ # ################################################################################ -MG_VERSION = 3.5 +MG_VERSION = 3.7 MG_SITE = https://github.com/troglobit/mg/releases/download/v$(MG_VERSION) MG_LICENSE = Public Domain MG_LICENSE_FILES = UNLICENSE diff --git a/package/mhz/Config.in b/package/mhz/Config.in new file mode 100644 index 000000000000..2f4af5026e67 --- /dev/null +++ b/package/mhz/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_MHZ + bool "mhz" + help + CPU frequency measurement utility. + + https://github.com/wtarreau/mhz.git diff --git a/package/mhz/mhz.hash b/package/mhz/mhz.hash new file mode 100644 index 000000000000..c399c4b56f01 --- /dev/null +++ b/package/mhz/mhz.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 c4b49dc719846220b96ac6060f15dd917316189cbbd2e0896b1b5e796e063ede mhz-11aac2399780a1f7ea9f007b14af0464797d5cf1.tar.gz +sha256 9449d373cad921620bb8f1e4f7b39f957e263163ded159c1efc8de27f8997099 LICENSE diff --git a/package/mhz/mhz.mk b/package/mhz/mhz.mk new file mode 100644 index 000000000000..025a5c6b9f2a --- /dev/null +++ b/package/mhz/mhz.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# mhz +# +################################################################################ + +MHZ_VERSION = 11aac2399780a1f7ea9f007b14af0464797d5cf1 +MHZ_SITE = $(call github,wtarreau,mhz,$(MHZ_VERSION)) +MHZ_LICENSE = MIT +MHZ_LICENSE_FILES = LICENSE + +define MHZ_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) +endef + +define MHZ_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/mhz $(TARGET_DIR)/usr/bin/mhz +endef + +$(eval $(generic-package)) diff --git a/package/microchip-hss-payload-generator/Config.in.host b/package/microchip-hss-payload-generator/Config.in.host new file mode 100644 index 000000000000..38e11bd0e574 --- /dev/null +++ b/package/microchip-hss-payload-generator/Config.in.host @@ -0,0 +1,11 @@ +config BR2_PACKAGE_HOST_MICROCHIP_HSS_PAYLOAD_GENERATOR + bool "host microchip-hss-payload-generator" + help + Microchip PolarFire SoC Payload Generator. This tool creates + a formatted payload image for the HSS zero-stage bootloader + on PolarFire SoC, given a configuration file and a set of + ELF binaries. The configuration file is used to map the ELF + binaries or binary blobs to the individual application harts + (U54s). + + https://github.com/polarfire-soc/hart-software-services.git diff --git a/package/microchip-hss-payload-generator/microchip-hss-payload-generator.hash b/package/microchip-hss-payload-generator/microchip-hss-payload-generator.hash new file mode 100644 index 000000000000..b9015fc961cb --- /dev/null +++ b/package/microchip-hss-payload-generator/microchip-hss-payload-generator.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 447771d4219176acc69c6d945ff40a0f3d0c5cbe63619927bc61b9e52ab05136 microchip-hss-payload-generator-2023.09.tar.gz +sha256 0b67b1d44bcad078580fc5d8e9580a48a9466b769db58aeb1631d4c5ef97e08a tools/hss-payload-generator/LICENSE.md diff --git a/package/microchip-hss-payload-generator/microchip-hss-payload-generator.mk b/package/microchip-hss-payload-generator/microchip-hss-payload-generator.mk new file mode 100644 index 000000000000..4c3ca93dfe44 --- /dev/null +++ b/package/microchip-hss-payload-generator/microchip-hss-payload-generator.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# microchip-hss-payload-generator +# +################################################################################ + +HOST_MICROCHIP_HSS_PAYLOAD_GENERATOR_VERSION = 2023.09 +HOST_MICROCHIP_HSS_PAYLOAD_GENERATOR_SITE = $(call github,polarfire-soc,hart-software-services,v$(HOST_MICROCHIP_HSS_PAYLOAD_GENERATOR_VERSION)) +# Some parts of the repository are under different licenses, but we +# are only building/installing the code in +# tools/hss-payload-generator/. +HOST_MICROCHIP_HSS_PAYLOAD_GENERATOR_LICENSE = MIT or GPL-2.0+ +HOST_MICROCHIP_HSS_PAYLOAD_GENERATOR_LICENSE_FILES = tools/hss-payload-generator/LICENSE.md +HOST_MICROCHIP_HSS_PAYLOAD_GENERATOR_DEPENDENCIES = host-elfutils host-libyaml host-openssl + +define HOST_MICROCHIP_HSS_PAYLOAD_GENERATOR_BUILD_CMDS + $(MAKE) -C $(@D)/tools/hss-payload-generator \ + HOST_INCLUDES="$(HOST_CPPFLAGS)" \ + LDFLAGS="$(HOST_LDFLAGS)" +endef + +define HOST_MICROCHIP_HSS_PAYLOAD_GENERATOR_INSTALL_CMDS + $(INSTALL) -D -m 755 \ + $(@D)/tools/hss-payload-generator/hss-payload-generator \ + $(HOST_DIR)/bin/hss-payload-generator +endef + +$(eval $(host-generic-package)) diff --git a/package/micropython/micropython.mk b/package/micropython/micropython.mk index 51b45e5e99d7..5f687c73b9b4 100644 --- a/package/micropython/micropython.mk +++ b/package/micropython/micropython.mk @@ -36,6 +36,7 @@ MICROPYTHON_MAKE_OPTS += \ MICROPY_PY_USSL=0 \ CROSS_COMPILE=$(TARGET_CROSS) \ CFLAGS_EXTRA=$(MICROPYTHON_CFLAGS) \ + LDFLAGS_EXTRA="$(TARGET_LDFLAGS)" \ CWARN= define MICROPYTHON_BUILD_CMDS diff --git a/package/minicom/minicom.hash b/package/minicom/minicom.hash index 42a4499c85a8..dd10450262c0 100644 --- a/package/minicom/minicom.hash +++ b/package/minicom/minicom.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 38cea30913a20349326ff3f1763ee1512b7b41601c24f065f365e18e9db0beba minicom-2.8.tar.bz2 +sha256 9efbb6458140e5a0de445613f0e76bcf12cbf7a9892b2f53e075c2e7beaba86c minicom-2.9.tar.bz2 sha256 cf80a758014eefbf068afffe3d462fc34ff4f528527524d8e100329c42094e15 COPYING diff --git a/package/minicom/minicom.mk b/package/minicom/minicom.mk index 5cd1d6b8b80b..2f10fe627bf0 100644 --- a/package/minicom/minicom.mk +++ b/package/minicom/minicom.mk @@ -4,7 +4,7 @@ # ################################################################################ -MINICOM_VERSION = 2.8 +MINICOM_VERSION = 2.9 MINICOM_SOURCE = minicom-$(MINICOM_VERSION).tar.bz2 MINICOM_SITE = \ https://salsa.debian.org/minicom-team/minicom/-/archive/$(MINICOM_VERSION) diff --git a/package/minidlna/minidlna.hash b/package/minidlna/minidlna.hash index e55e5473d3d0..b78dd5b4ddab 100644 --- a/package/minidlna/minidlna.hash +++ b/package/minidlna/minidlna.hash @@ -1,6 +1,6 @@ -# From https://sourceforge.net/projects/minidlna/files/minidlna/1.3.2/ -sha1 71750adadc34490d52f0b9a930c2731a47f9772d minidlna-1.3.2.tar.gz +# From https://sourceforge.net/projects/minidlna/files/minidlna/1.3.3/ +sha1 2d42028d2ca5ae04affdb96cb414314867e179ea minidlna-1.3.3.tar.gz # Locally computed -sha256 222ce45a1a60c3ce3de17527955d38e5ff7a4592d61db39577e6bf88e0ae1cb0 minidlna-1.3.2.tar.gz +sha256 39026c6d4a139b9180192d1c37225aa3376fdf4f1a74d7debbdbb693d996afa4 minidlna-1.3.3.tar.gz sha256 79146b7f558e56510b9a714ff75318c05ab93aeccfd6597497b9bce212cf92ea COPYING sha256 94876d7886116e176e702b4902bd9f19731a6883db5f229ac2a7058a22aa6529 LICENCE.miniupnpd diff --git a/package/minidlna/minidlna.mk b/package/minidlna/minidlna.mk index 6ca72d924083..1609695ebff5 100644 --- a/package/minidlna/minidlna.mk +++ b/package/minidlna/minidlna.mk @@ -4,7 +4,7 @@ # ################################################################################ -MINIDLNA_VERSION = 1.3.2 +MINIDLNA_VERSION = 1.3.3 MINIDLNA_SITE = https://downloads.sourceforge.net/project/minidlna/minidlna/$(MINIDLNA_VERSION) MINIDLNA_LICENSE = GPL-2.0, BSD-3-Clause MINIDLNA_LICENSE_FILES = COPYING LICENCE.miniupnpd diff --git a/package/minizip-zlib/0001-Reject-overflows-of-zip-header-fields-in-minizip.patch b/package/minizip-zlib/0001-Reject-overflows-of-zip-header-fields-in-minizip.patch new file mode 100644 index 000000000000..f4eacc7fdc71 --- /dev/null +++ b/package/minizip-zlib/0001-Reject-overflows-of-zip-header-fields-in-minizip.patch @@ -0,0 +1,39 @@ +From 73331a6a0481067628f065ffe87bb1d8f787d10c Mon Sep 17 00:00:00 2001 +From: Hans Wennborg +Date: Fri, 18 Aug 2023 11:05:33 +0200 +Subject: [PATCH] Reject overflows of zip header fields in minizip. + +This checks the lengths of the file name, extra field, and comment +that would be put in the zip headers, and rejects them if they are +too long. They are each limited to 65535 bytes in length by the zip +format. This also avoids possible buffer overflows if the provided +fields are too long. + +Upstream: https://github.com/madler/zlib/commit/73331a6a0481067628f065ffe87bb1d8f787d10c +Signed-off-by: Fabrice Fontaine +--- + contrib/minizip/zip.c | 11 +++++++++++ + 1 file changed, 11 insertions(+) + +diff --git a/contrib/minizip/zip.c b/contrib/minizip/zip.c +index 3d3d4cadd..0446109b2 100644 +--- a/contrib/minizip/zip.c ++++ b/contrib/minizip/zip.c +@@ -1043,6 +1043,17 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char* filename, c + return ZIP_PARAMERROR; + #endif + ++ // The filename and comment length must fit in 16 bits. ++ if ((filename!=NULL) && (strlen(filename)>0xffff)) ++ return ZIP_PARAMERROR; ++ if ((comment!=NULL) && (strlen(comment)>0xffff)) ++ return ZIP_PARAMERROR; ++ // The extra field length must fit in 16 bits. If the member also requires ++ // a Zip64 extra block, that will also need to fit within that 16-bit ++ // length, but that will be checked for later. ++ if ((size_extrafield_local>0xffff) || (size_extrafield_global>0xffff)) ++ return ZIP_PARAMERROR; ++ + zi = (zip64_internal*)file; + + if (zi->in_opened_file_inzip == 1) diff --git a/package/minizip-zlib/minizip-zlib.hash b/package/minizip-zlib/minizip-zlib.hash index df5e8d723a12..23bfda84749f 100644 --- a/package/minizip-zlib/minizip-zlib.hash +++ b/package/minizip-zlib/minizip-zlib.hash @@ -1,4 +1,4 @@ # From http://www.zlib.net/ -sha256 d14c38e313afc35a9a8760dadf26042f51ea0f5d154b0630a31da0540107fb98 zlib-1.2.13.tar.xz +sha256 8a9ba2898e1d0d774eca6ba5b4627a11e5588ba85c8851336eb38de4683050a7 zlib-1.3.tar.xz # License files, locally calculated sha256 845efc77857d485d91fb3e0b884aaa929368c717ae8186b66fe1ed2495753243 LICENSE diff --git a/package/minizip-zlib/minizip-zlib.mk b/package/minizip-zlib/minizip-zlib.mk index 4367a2420f65..81fee3c687a6 100644 --- a/package/minizip-zlib/minizip-zlib.mk +++ b/package/minizip-zlib/minizip-zlib.mk @@ -4,7 +4,7 @@ # ################################################################################ -MINIZIP_ZLIB_VERSION = 1.2.13 +MINIZIP_ZLIB_VERSION = 1.3 MINIZIP_ZLIB_SOURCE = zlib-$(MINIZIP_ZLIB_VERSION).tar.xz MINIZIP_ZLIB_SITE = http://www.zlib.net MINIZIP_ZLIB_LICENSE = Zlib @@ -16,5 +16,7 @@ MINIZIP_ZLIB_AUTORECONF = YES MINIZIP_ZLIB_DEPENDENCIES = zlib # demos must be disabled to avoid a conflict with BR2_PACKAGE_MINIZIP_DEMOS MINIZIP_ZLIB_CONF_OPTS = --disable-demos +# 0001-Reject-overflows-of-zip-header-fields-in-minizip.patch +MINIZIP_ZLIB_IGNORE_CVES += CVE-2023-45853 $(eval $(autotools-package)) diff --git a/package/minizip/minizip.hash b/package/minizip/minizip.hash index 55fc176dbd11..5e00881ce371 100644 --- a/package/minizip/minizip.hash +++ b/package/minizip/minizip.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 39981a0db1bb6da504909bce63d7493286c5e50825c056564544c990d15c55cf minizip-3.0.7.tar.gz +sha256 63e47a2b4dbac0da501f43f4da74f118dfb3ef0dee0ffbbe89428271002260f8 minizip-4.0.1.tar.gz sha256 675181c03fc1302a1c8554c00f7be9bb420c5dbc9dcc2013433cec144413de03 LICENSE diff --git a/package/minizip/minizip.mk b/package/minizip/minizip.mk index c74c0df8d1c6..d3e539d0e952 100644 --- a/package/minizip/minizip.mk +++ b/package/minizip/minizip.mk @@ -4,7 +4,7 @@ # ################################################################################ -MINIZIP_VERSION = 3.0.7 +MINIZIP_VERSION = 4.0.1 MINIZIP_SITE = $(call github,zlib-ng,minizip-ng,$(MINIZIP_VERSION)) MINIZIP_DEPENDENCIES = host-pkgconf MINIZIP_INSTALL_STAGING = YES diff --git a/package/mmc-utils/Config.in b/package/mmc-utils/Config.in index d65988c7497c..d938b5dea34c 100644 --- a/package/mmc-utils/Config.in +++ b/package/mmc-utils/Config.in @@ -4,7 +4,7 @@ config BR2_PACKAGE_MMC_UTILS help MMC utils - https://git.kernel.org/cgit/linux/kernel/git/cjb/mmc-utils.git + https://git.kernel.org/pub/scm/utils/mmc/mmc-utils.git if BR2_PACKAGE_MMC_UTILS diff --git a/package/mmc-utils/mmc-utils.hash b/package/mmc-utils/mmc-utils.hash index 1256f63487e4..cd9d13324fcc 100644 --- a/package/mmc-utils/mmc-utils.hash +++ b/package/mmc-utils/mmc-utils.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 f6ed1cb2f02d49df4244f8872b47b22780dd634fa19d857298ce1b793752776f mmc-utils-dfc3b6ecda84d21418fb4408b39c5c71db4c6458-br1.tar.gz -sha256 f57e3c6169116aa9ff06eec95734ca000e4d0196467bb221e80e50530c768081 mmc.h +sha256 84be5003ae83b4fdb0279a693f320fd472aebd14908a1ac16bda4f675e92ad40 mmc-utils-80271e9a6fd0db9cb3a85d024664da886e94315c-br1.tar.gz +sha256 4207d81122a02555f78c5a11b61c83a331ee03dc933e1ef9dd932ef9b434d12d README diff --git a/package/mmc-utils/mmc-utils.mk b/package/mmc-utils/mmc-utils.mk index 435e6ae7f15f..ef4d97c1caae 100644 --- a/package/mmc-utils/mmc-utils.mk +++ b/package/mmc-utils/mmc-utils.mk @@ -4,11 +4,11 @@ # ################################################################################ -MMC_UTILS_VERSION = dfc3b6ecda84d21418fb4408b39c5c71db4c6458 -MMC_UTILS_SITE = https://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git +MMC_UTILS_VERSION = 80271e9a6fd0db9cb3a85d024664da886e94315c +MMC_UTILS_SITE = https://git.kernel.org/pub/scm/utils/mmc/mmc-utils.git MMC_UTILS_SITE_METHOD = git MMC_UTILS_LICENSE = GPL-2.0 -MMC_UTILS_LICENSE_FILES = mmc.h +MMC_UTILS_LICENSE_FILES = README MMC_UTILS_CFLAGS = $(TARGET_CFLAGS) @@ -19,11 +19,15 @@ endif # override AM_CFLAGS as the project Makefile uses it to pass # -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2, and the latter conflicts # with the _FORTIFY_SOURCE that we pass when hardening options are -# enabled. +# enabled. Starting from commit: +# https://git.kernel.org/pub/scm/utils/mmc/mmc-utils.git/commit/?id=958227890690290ee766aaad1b92f3413f67048c +# they use AM_CFLAGS to set VERSION to first 6 digit of git SHA1, so +# let's do this here otherwise it won't be automatically set and build +# will fail define MMC_UTILS_BUILD_CMDS $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) \ CFLAGS="$(MMC_UTILS_CFLAGS)" \ - AM_CFLAGS= + AM_CFLAGS='-DVERSION=\"$(shell echo $(MMC_UTILS_VERSION) | head -c 6)\"' endef define MMC_UTILS_INSTALL_TARGET_CMDS diff --git a/package/moarvm/Config.in b/package/moarvm/Config.in index 11d8ac7ebc19..6972a5f8a649 100644 --- a/package/moarvm/Config.in +++ b/package/moarvm/Config.in @@ -5,6 +5,7 @@ config BR2_PACKAGE_MOARVM depends on BR2_USE_MMU # libuv depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS # libatomic_ops depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libuv select BR2_PACKAGE_LIBUV select BR2_PACKAGE_LIBTOMMATH select BR2_PACKAGE_LIBATOMIC_OPS @@ -18,8 +19,9 @@ config BR2_PACKAGE_MOARVM http://moarvm.com -comment "moarvm needs a toolchain w/ NPTL, dynamic library" - depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS +comment "moarvm needs a toolchain w/ NPTL, dynamic library, gcc >= 4.9" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 depends on BR2_USE_MMU depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/moarvm/moarvm.hash b/package/moarvm/moarvm.hash index 624988215e3e..f988f9b15d5e 100644 --- a/package/moarvm/moarvm.hash +++ b/package/moarvm/moarvm.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 51c3e9c9a7a191c148f213b65ae1f4fcfe5d4b7c16c86300e9ee8e18eaa8becb MoarVM-2022.12.tar.gz +sha256 aa79d77896c312ba23e01074a53ef3d060becae2ed70b066f902f332da65a499 MoarVM-2023.10.tar.gz sha256 c53c6b96081b0a5b9b2fb4d0133d55c20e5e00e4c127ade62f03434ee7b3d2de Artistic2.txt diff --git a/package/moarvm/moarvm.mk b/package/moarvm/moarvm.mk index ef9d29d5af7e..dc833181a731 100644 --- a/package/moarvm/moarvm.mk +++ b/package/moarvm/moarvm.mk @@ -4,7 +4,7 @@ # ################################################################################ -MOARVM_VERSION = 2022.12 +MOARVM_VERSION = 2023.10 MOARVM_SITE = http://moarvm.com/releases MOARVM_SOURCE = MoarVM-$(MOARVM_VERSION).tar.gz MOARVM_LICENSE = Artistic-2.0 diff --git a/package/moby-buildkit/moby-buildkit.hash b/package/moby-buildkit/moby-buildkit.hash index ef927636d992..f7922d7e8f13 100644 --- a/package/moby-buildkit/moby-buildkit.hash +++ b/package/moby-buildkit/moby-buildkit.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 b1746575f37715a8a2f2df5bab77ea081ba8436854e241792702109fc9e3653d moby-buildkit-0.11.2.tar.gz +sha256 1efa1c54b299c463c1b039d3df8ba1c68e70fe4de608fd14653fcebf9f27837b moby-buildkit-0.11.6.tar.gz sha256 c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 LICENSE diff --git a/package/moby-buildkit/moby-buildkit.mk b/package/moby-buildkit/moby-buildkit.mk index a25f676710eb..91560c1ed1db 100644 --- a/package/moby-buildkit/moby-buildkit.mk +++ b/package/moby-buildkit/moby-buildkit.mk @@ -4,7 +4,7 @@ # ################################################################################ -MOBY_BUILDKIT_VERSION = 0.11.2 +MOBY_BUILDKIT_VERSION = 0.11.6 MOBY_BUILDKIT_SITE = $(call github,moby,buildkit,v$(MOBY_BUILDKIT_VERSION)) MOBY_BUILDKIT_LICENSE = Apache-2.0 MOBY_BUILDKIT_LICENSE_FILES = LICENSE diff --git a/package/mongoose/mongoose.hash b/package/mongoose/mongoose.hash index ffef9f446c9e..ed5db5ebf68f 100644 --- a/package/mongoose/mongoose.hash +++ b/package/mongoose/mongoose.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 55073dcd427ab9475731ad855e417884f4fbfb24b7d5694f6cabadbee1329f16 mongoose-7.8.tar.gz -sha256 b41c293820074278291813af9f181918154875c94d744a90bf4eec331be28ac5 LICENSE +sha256 91e719e164816b349be3cb71293927f3f6abbe3fb02187e2d9b5e56f542c2063 mongoose-7.12.tar.gz +sha256 4ba646f5a7012d8b52f3a74398e446f56960dde0572f7241a2215430da5dd5a2 LICENSE diff --git a/package/mongoose/mongoose.mk b/package/mongoose/mongoose.mk index 0693f7553a28..74594ff48cb9 100644 --- a/package/mongoose/mongoose.mk +++ b/package/mongoose/mongoose.mk @@ -4,7 +4,7 @@ # ################################################################################ -MONGOOSE_VERSION = 7.8 +MONGOOSE_VERSION = 7.12 MONGOOSE_SITE = $(call github,cesanta,mongoose,$(MONGOOSE_VERSION)) MONGOOSE_LICENSE = GPL-2.0 MONGOOSE_LICENSE_FILES = LICENSE diff --git a/package/monit/0002-configure.ac-fixes-missing-config-macro-dir.patch b/package/monit/0002-configure.ac-fixes-missing-config-macro-dir.patch new file mode 100644 index 000000000000..325dcc17e136 --- /dev/null +++ b/package/monit/0002-configure.ac-fixes-missing-config-macro-dir.patch @@ -0,0 +1,44 @@ +From 2c06ecdc02de75a9e7e1e30e9c3d7d3a64269b7c Mon Sep 17 00:00:00 2001 +From: Jens Maus +Date: Fri, 22 Sep 2023 21:32:18 +0200 +Subject: [PATCH] configure.ac: fixes missing config macro dir + +This adds the config dir to the AC_CONFIG_MACRO_DIRS in configure.ac +so that m4 macros are properly loaded upon autoreconf use. + +Upstream: N/A (specific to buildroot) +Signed-off-by: Jens Maus +--- + configure.ac | 2 +- + libmonit/configure.ac | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 3c3d30a2..f4c5ea07 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -8,7 +8,7 @@ AC_PREREQ([2.53]) + # Example: 5.0_beta2 + AC_INIT([monit], [5.34.0], [monit-general@nongnu.org]) + AC_CONFIG_AUX_DIR(config) +-AC_CONFIG_MACRO_DIR([m4]) ++AC_CONFIG_MACRO_DIRS([m4 config]) + AM_INIT_AUTOMAKE + AC_CONFIG_SRCDIR([src/monit.c]) + AC_CONFIG_SUBDIRS([libmonit]) +diff --git a/libmonit/configure.ac b/libmonit/configure.ac +index d4cd0789..5366444a 100644 +--- a/libmonit/configure.ac ++++ b/libmonit/configure.ac +@@ -4,7 +4,7 @@ AC_PREREQ([2.53]) + + AC_INIT([libmonit], [1.0], [monit-dev@tildeslash.com]) + AC_CONFIG_AUX_DIR(config) +-AC_CONFIG_MACRO_DIR([m4]) ++AC_CONFIG_MACRO_DIRS([m4 config]) + AM_INIT_AUTOMAKE + AC_CONFIG_SRCDIR([src]) + +-- +2.34.1 + diff --git a/package/monit/monit.hash b/package/monit/monit.hash index 26d665c0839c..1d9feca57bfa 100644 --- a/package/monit/monit.hash +++ b/package/monit/monit.hash @@ -1,4 +1,4 @@ -# From https://mmonit.com/monit/dist/monit-5.26.0.tar.gz.sha256: -sha256 87fc4568a3af9a2be89040efb169e3a2e47b262f99e78d5ddde99dd89f02f3c2 monit-5.26.0.tar.gz +# From https://mmonit.com/monit/dist/monit-5.33.0.tar.gz.sha256 +sha256 1ace889c0183473a9d70160df6533bb6e1338dc1354f5928507803e1e2a863b5 monit-5.33.0.tar.gz # Locally computed sha256 d5a4f52b1a5e1e7fe14e01a76aac8b08dc6bbea15466058f271456c97aac1ada COPYING diff --git a/package/monit/monit.mk b/package/monit/monit.mk index 6d5d4758134e..c709f903e693 100644 --- a/package/monit/monit.mk +++ b/package/monit/monit.mk @@ -4,27 +4,35 @@ # ################################################################################ -MONIT_VERSION = 5.26.0 +MONIT_VERSION = 5.33.0 MONIT_SITE = http://mmonit.com/monit/dist MONIT_LICENSE = AGPL-3.0 with OpenSSL exception MONIT_LICENSE_FILES = COPYING MONIT_CPE_ID_VENDOR = mmonit MONIT_SELINUX_MODULES = monit -# + # Touching Makefile.am: +# 0001-configure.ac-fixes-missing-config-macro-dir.patch touches configure.ac MONIT_AUTORECONF = YES MONIT_CONF_ENV = \ libmonit_cv_setjmp_available=yes \ - libmonit_cv_vsnprintf_c99_conformant=yes + libmonit_cv_vsnprintf_c99_conformant=yes \ + ax_cv_check_cflags___fstack_protector_all=$(if $(BR2_TOOLCHAIN_HAS_SSP),yes,no) \ + ac_cv_ipv6=yes MONIT_CONF_OPTS += \ --without-pam \ --with-largefiles ifeq ($(BR2_PACKAGE_OPENSSL),y) -MONIT_CONF_OPTS += --with-ssl=$(STAGING_DIR)/usr -MONIT_DEPENDENCIES += openssl +MONIT_CONF_ENV += LIBS=`$(PKG_CONFIG_HOST_BINARY) --libs openssl` +ifeq ($(BR2_STATIC_LIBS),y) +MONIT_CONF_OPTS += --with-ssl-static=$(STAGING_DIR)/usr +else +MONIT_CONF_OPTS += --with-ssl --with-ssl-dir=$(STAGING_DIR)/usr +endif +MONIT_DEPENDENCIES += host-pkgconf openssl else MONIT_CONF_OPTS += --without-ssl endif diff --git a/package/mono/Config.in b/package/mono/Config.in index 76178bcf9be7..0152df8268e5 100644 --- a/package/mono/Config.in +++ b/package/mono/Config.in @@ -5,8 +5,8 @@ config BR2_PACKAGE_HOST_MONO_ARCH_SUPPORTS config BR2_PACKAGE_MONO_ARCH_SUPPORTS bool - default y if (BR2_arm || BR2_armeb || BR2_i386 || \ - BR2_powerpc || BR2_x86_64) + default y if (BR2_aarch64 || BR2_arm || BR2_armeb || \ + BR2_i386 || BR2_powerpc || BR2_x86_64) depends on BR2_PACKAGE_HOST_MONO_ARCH_SUPPORTS depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS diff --git a/package/mono/mono.mk b/package/mono/mono.mk index b88f2b379ebe..aead85bac080 100644 --- a/package/mono/mono.mk +++ b/package/mono/mono.mk @@ -7,6 +7,7 @@ MONO_VERSION = 6.12.0.182 MONO_SITE = http://download.mono-project.com/sources/mono MONO_SOURCE = mono-$(MONO_VERSION).tar.xz +MONO_SELINUX_MODULES = mono MONO_LICENSE = GPL-2.0 or MIT (compiler, tools), MIT (libs) or commercial MONO_LICENSE_FILES = LICENSE mcs/COPYING \ external/Newtonsoft.Json/Tools/7-zip/copying.txt diff --git a/package/mosquitto/Config.in b/package/mosquitto/Config.in index 6fa5f79c6c07..8bedf2ad21cb 100644 --- a/package/mosquitto/Config.in +++ b/package/mosquitto/Config.in @@ -25,6 +25,7 @@ config BR2_PACKAGE_MOSQUITTO_BROKER depends on BR2_USE_MMU # fork() depends on !BR2_STATIC_LIBS # include depends on BR2_PACKAGE_MOSQUITTO + select BR2_PACKAGE_LIBWEBSOCKETS_EXT_POLL if BR2_PACKAGE_LIBWEBSOCKETS help Build and install the mosquitto broker onto target. diff --git a/package/mosquitto/mosquitto.hash b/package/mosquitto/mosquitto.hash index 2cfd0d94224e..453c1934dd1f 100644 --- a/package/mosquitto/mosquitto.hash +++ b/package/mosquitto/mosquitto.hash @@ -1,6 +1,6 @@ # Locally calculated after checking gpg signature -# from https://mosquitto.org/files/source/mosquitto-2.0.15.tar.gz.asc -sha256 4735b1d32e3f91c7a8896741d88a3022e89730a1ee897946decfa0df27039ac6 mosquitto-2.0.15.tar.gz +# from https://mosquitto.org/files/source/mosquitto-2.0.18.tar.gz.asc +sha256 d665fe7d0032881b1371a47f34169ee4edab67903b2cd2b4c083822823f4448a mosquitto-2.0.18.tar.gz # License files sha256 d3c4ccace4e5d3cc89d34cf2a0bc85b8596bfc0a32b815d0d77f9b7c41b5350c LICENSE.txt diff --git a/package/mosquitto/mosquitto.mk b/package/mosquitto/mosquitto.mk index a95a2cac4dc3..b847e56fec53 100644 --- a/package/mosquitto/mosquitto.mk +++ b/package/mosquitto/mosquitto.mk @@ -4,7 +4,7 @@ # ################################################################################ -MOSQUITTO_VERSION = 2.0.15 +MOSQUITTO_VERSION = 2.0.18 MOSQUITTO_SITE = https://mosquitto.org/files/source MOSQUITTO_LICENSE = EPL-2.0 or EDLv1.0 MOSQUITTO_LICENSE_FILES = LICENSE.txt epl-v20 edl-v10 diff --git a/package/motion/0001-Gettext-0-22.patch b/package/motion/0001-Gettext-0-22.patch new file mode 100644 index 000000000000..aeacd0e2ec11 --- /dev/null +++ b/package/motion/0001-Gettext-0-22.patch @@ -0,0 +1,164 @@ +From 2d8d68cfcc1cf4fc8861671e185fdf235dcf9740 Mon Sep 17 00:00:00 2001 +From: David Seifert <16636962+SoapGentoo@users.noreply.github.com> +Date: Fri, 30 Jun 2023 05:37:50 +0200 +Subject: [PATCH] Gettext 0.22 (#1681) + +* po: fix gettext 0.22 format specifier + +Bug: https://bugs.gentoo.org/908965 +Bug: https://savannah.gnu.org/bugs/index.php?64334#comment1 + +* Autotools: fix `make distcheck` + +* use correct `dist_` specifiers for including files in tarball +* do not override `docdir`, since this is a user variable +* include headers in tarball + +Upstream: https://github.com/Motion-Project/motion/commit/2d8d68cfcc1cf4fc8861671e185fdf235dcf9740 +Signed-off-by: Fabrice Fontaine +--- + Makefile.am | 11 +++++------ + configure.ac | 1 - + man/Makefile.am | 1 - + po/de.po | 2 +- + po/fi.po | 2 +- + src/Makefile.am | 52 ++++++++++++++++++++++++++++++++++++------------- + 6 files changed, 46 insertions(+), 23 deletions(-) + delete mode 100644 man/Makefile.am + +diff --git a/Makefile.am b/Makefile.am +index 3d2f968e2..5ae03cd2c 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -1,19 +1,18 @@ + ACLOCAL_AMFLAGS = -I m4 + +-SUBDIRS = src po man ++SUBDIRS = src po + +-sysconfdir = @sysconfdir@/$(PACKAGE) +-sysconf_DATA = \ ++pkgsysconfdir = $(sysconfdir)/@PACKAGE@ ++dist_pkgsysconf_DATA = \ + data/motion-dist.conf \ + data/camera1-dist.conf \ + data/camera2-dist.conf \ + data/camera3-dist.conf \ + data/camera4-dist.conf + +-man_MANS = man/motion.1 ++dist_man_MANS = man/motion.1 + +-docdir = $(datadir)/doc/@PACKAGE@ +-doc_DATA = \ ++dist_doc_DATA = \ + doc/mask1.png \ + doc/normal.jpg \ + doc/outputmotion1.jpg \ +diff --git a/configure.ac b/configure.ac +index dfcf5eae2..ce588f65b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -496,7 +496,6 @@ AC_CONFIG_FILES([ + Makefile + src/Makefile + po/Makefile.in +- man/Makefile + data/camera1-dist.conf + data/camera2-dist.conf + data/camera3-dist.conf +diff --git a/man/Makefile.am b/man/Makefile.am +deleted file mode 100644 +index 14aa069f0..000000000 +--- a/man/Makefile.am ++++ /dev/null +@@ -1 +0,0 @@ +-man_MANS = motion.1 +\ No newline at end of file +diff --git a/po/de.po b/po/de.po +index 9142c9195..ccd5f09d7 100644 +--- a/po/de.po ++++ b/po/de.po +@@ -3458,7 +3458,7 @@ msgstr "Sprache: Deutsch" + #: src/util.c + #, c-format + msgid "Could not allocate %llu bytes of memory!" +-msgstr "%Llu Bytes Speicher konnten nicht zugeordnet werden!" ++msgstr "%llu Bytes Speicher konnten nicht zugeordnet werden!" + + #: src/util.c + #, c-format +diff --git a/po/fi.po b/po/fi.po +index 1afbdb68b..d3117a922 100644 +--- a/po/fi.po ++++ b/po/fi.po +@@ -3432,7 +3432,7 @@ msgstr "Kieli: englanti" + #: src/util.c + #, c-format + msgid "Could not allocate %llu bytes of memory!" +-msgstr "%Llu-tavua muistia ei voitu varata!" ++msgstr "%llu-tavua muistia ei voitu varata!" + + #: src/util.c + #, c-format +diff --git a/src/Makefile.am b/src/Makefile.am +index f93decf55..6f9d02e6b 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -1,17 +1,43 @@ +-AM_CPPFLAGS= -Dsysconfdir=\"$(sysconfdir)/motion\" -DLOCALEDIR=\"$(DESTDIR)$(localedir)\" +- +-if INC_MMAL_SRC +-MMAL_SRC=raspicam/RaspiCamControl.c raspicam/RaspiCLI.c +-endif +- +-LIBS = @LIBINTL@ @LIBS@ ++AM_CPPFLAGS= -Dsysconfdir=\"$(sysconfdir)/motion\" -DLOCALEDIR=\"$(localedir)\" ++LDADD = $(LIBINTL) + + bin_PROGRAMS = motion + +-motion_SOURCES = motion.c logger.c conf.c draw.c jpegutils.c video_loopback.c \ +- video_v4l2.c video_common.c video_bktr.c netcam.c netcam_http.c netcam_ftp.c \ +- netcam_jpeg.c netcam_wget.c netcam_rtsp.c track.c alg.c event.c picture.c \ +- rotate.c translate.c ffmpeg.c util.c dbse.c webu_status.c \ +- webu.c webu_html.c webu_stream.c webu_text.c mmalcam.c $(MMAL_SRC) +- ++motion_SOURCES = \ ++ alg.h alg.c \ ++ conf.h conf.c \ ++ dbse.h dbse.c \ ++ draw.h draw.c \ ++ event.h event.c \ ++ ffmpeg.h ffmpeg.c \ ++ jpegutils.h jpegutils.c \ ++ logger.h logger.c \ ++ mmalcam.h mmalcam.c \ ++ motion.h motion.c \ ++ netcam.h netcam.c \ ++ netcam_ftp.h netcam_ftp.c \ ++ netcam_http.h netcam_http.c \ ++ netcam_jpeg.h netcam_jpeg.c \ ++ netcam_rtsp.h netcam_rtsp.c \ ++ netcam_wget.h netcam_wget.c \ ++ picture.h picture.c \ ++ rotate.h rotate.c \ ++ track.h track.c \ ++ translate.h translate.c \ ++ util.h util.c \ ++ video_bktr.h video_bktr.c \ ++ video_common.h video_common.c \ ++ video_loopback.h video_loopback.c \ ++ video_v4l2.h video_v4l2.c \ ++ webu.h webu.c \ ++ webu_html.h webu_html.c \ ++ webu_status.h webu_status.c \ ++ webu_stream.h webu_stream.c \ ++ webu_text.h webu_text.c \ ++ mmx.h pwc-ioctl.h + ++if INC_MMAL_SRC ++motion_SOURCES += \ ++ raspicam/RaspiCamControl.h raspicam/RaspiCamControl.c \ ++ raspicam/RaspiCLI.h raspicam/RaspiCLI.c ++endif diff --git a/package/motion/0001-configure.ac-remove-po-Makefile.in.patch b/package/motion/0001-configure.ac-remove-po-Makefile.in.patch deleted file mode 100644 index 9b514bafcd00..000000000000 --- a/package/motion/0001-configure.ac-remove-po-Makefile.in.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 0e05d4116678de3a7d913177a8fc63f10e58ad24 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Sat, 18 Jan 2020 00:00:21 +0100 -Subject: [PATCH] configure.ac: remove po/Makefile.in - -The file po/Makefile.in is automatically added to AC_OUTPUT while using -gettexize - -Signed-off-by: Fabrice Fontaine -[Upstream status: not upstreamable] ---- - configure.ac | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 3876adb..221dacf 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -471,7 +471,6 @@ LDFLAGS="$TEMP_LDFLAGS" - AC_CONFIG_FILES([ - Makefile - src/Makefile -- po/Makefile.in - man/Makefile - data/camera1-dist.conf - data/camera2-dist.conf --- -2.24.1 - diff --git a/package/motion/0002-Include-libwebp-when-WEBP-is-enabled.patch b/package/motion/0002-Include-libwebp-when-WEBP-is-enabled.patch new file mode 100644 index 000000000000..a1536a7d2f93 --- /dev/null +++ b/package/motion/0002-Include-libwebp-when-WEBP-is-enabled.patch @@ -0,0 +1,26 @@ +From 40ecd71ff361442f1579089481619dd7cae90ffd Mon Sep 17 00:00:00 2001 +From: Piotr Mionskowski +Date: Sun, 9 Jul 2023 01:44:49 +0200 +Subject: [PATCH] Include libwebp when WEBP is enabled + +Upstream: https://github.com/Motion-Project/motion/commit/40ecd71ff361442f1579089481619dd7cae90ffd +Signed-off-by: Fabrice Fontaine +--- + configure.ac | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index ce588f65..ee45ac37 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -191,8 +191,8 @@ AS_IF([test "${WEBP}" = "yes" ], [ + AS_IF([pkg-config libwebpmux ], [ + AC_MSG_RESULT(yes) + AC_DEFINE([HAVE_WEBP], [1], [Define to 1 if WEBP is around]) +- TEMP_CFLAGS="$TEMP_CFLAGS "`pkg-config --cflags libwebpmux` +- TEMP_LIBS="$TEMP_LIBS "`pkg-config --libs libwebpmux` ++ TEMP_CFLAGS="$TEMP_CFLAGS "`pkg-config --cflags libwebpmux libwebp` ++ TEMP_LIBS="$TEMP_LIBS "`pkg-config --libs libwebpmux libwebp` + ],[ + AC_MSG_RESULT(no) + ] diff --git a/package/motion/motion.mk b/package/motion/motion.mk index 4e9ccdc3f717..2cce6cd1ff74 100644 --- a/package/motion/motion.mk +++ b/package/motion/motion.mk @@ -12,7 +12,7 @@ MOTION_CPE_ID_VENDOR = motion_project MOTION_DEPENDENCIES = host-pkgconf jpeg libmicrohttpd $(TARGET_NLS_DEPENDENCIES) # From git MOTION_AUTORECONF = YES -MOTION_GETTEXTIZE = YES +MOTION_AUTOPOINT = YES MOTION_CONF_OPTS += --without-optimizecpu diff --git a/package/mpd/Config.in b/package/mpd/Config.in index 8f0af7b2d36b..902a3da77951 100644 --- a/package/mpd/Config.in +++ b/package/mpd/Config.in @@ -127,7 +127,7 @@ config BR2_PACKAGE_MPD_LIBSNDFILE config BR2_PACKAGE_MPD_MAD bool "mad" default y - select BR2_PACKAGE_LIBID3TAG + select BR2_PACKAGE_MPD_ID3TAG select BR2_PACKAGE_LIBMAD help Enable mad input support. @@ -141,7 +141,7 @@ config BR2_PACKAGE_MPD_MODPLUG config BR2_PACKAGE_MPD_MPG123 bool "mpg123" - select BR2_PACKAGE_LIBID3TAG + select BR2_PACKAGE_MPD_ID3TAG select BR2_PACKAGE_MPG123 help Enable mpg123 input support. @@ -407,6 +407,7 @@ config BR2_PACKAGE_MPD_UPNP_PUPNP config BR2_PACKAGE_MPD_UPNP_NPUPNP bool "npupnp" + select BR2_PACKAGE_EXPAT select BR2_PACKAGE_LIBNPUPNP select BR2_PACKAGE_MPD_CURL help diff --git a/package/mpd/mpd.hash b/package/mpd/mpd.hash index 2521238f64df..4ee496755668 100644 --- a/package/mpd/mpd.hash +++ b/package/mpd/mpd.hash @@ -1,3 +1,3 @@ # Locally calculated after checking pgp signature -sha256 b7fca62284ecc25a681ea6a07abc49200af5353be42cb5a31e3173be9d8702e7 mpd-0.23.12.tar.xz +sha256 85b9a67426d528ae9fb849eb3b10faf52d4b18d22b1fd71088e6d9a388b509d2 mpd-0.23.14.tar.xz sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/mpd/mpd.mk b/package/mpd/mpd.mk index 6c25c9b46f93..4dbd7a6d1dc3 100644 --- a/package/mpd/mpd.mk +++ b/package/mpd/mpd.mk @@ -5,7 +5,7 @@ ################################################################################ MPD_VERSION_MAJOR = 0.23 -MPD_VERSION = $(MPD_VERSION_MAJOR).12 +MPD_VERSION = $(MPD_VERSION_MAJOR).14 MPD_SOURCE = mpd-$(MPD_VERSION).tar.xz MPD_SITE = https://www.musicpd.org/download/mpd/$(MPD_VERSION_MAJOR) MPD_DEPENDENCIES = host-pkgconf boost fmt @@ -29,6 +29,13 @@ else MPD_CONF_OPTS += -Dzeroconf=disabled endif +ifeq ($(BR2_PACKAGE_EXPAT),y) +MPD_DEPENDENCIES += expat +MPD_CONF_OPTS += -Dexpat=enabled +else +MPD_CONF_OPTS += -Dexpat=disabled +endif + # MPD prefers libicu for utf8 collation instead of libglib2. ifeq ($(BR2_PACKAGE_ICU),y) MPD_DEPENDENCIES += icu @@ -37,6 +44,13 @@ else MPD_CONF_OPTS += -Dicu=disabled endif +ifeq ($(BR2_PACKAGE_YAJL),y) +MPD_DEPENDENCIES += yajl +MPD_CONF_OPTS += -Dyajl=enabled +else +MPD_CONF_OPTS += -Dyajl=disabled +endif + ifeq ($(BR2_PACKAGE_MPD_ALSA),y) MPD_DEPENDENCIES += alsa-lib MPD_CONF_OPTS += -Dalsa=enabled @@ -190,7 +204,7 @@ MPD_CONF_OPTS += -Dsoxr=disabled endif ifeq ($(BR2_PACKAGE_MPD_MAD),y) -MPD_DEPENDENCIES += libid3tag libmad +MPD_DEPENDENCIES += libmad MPD_CONF_OPTS += -Dmad=enabled else MPD_CONF_OPTS += -Dmad=disabled @@ -204,7 +218,7 @@ MPD_CONF_OPTS += -Dmodplug=disabled endif ifeq ($(BR2_PACKAGE_MPD_MPG123),y) -MPD_DEPENDENCIES += libid3tag mpg123 +MPD_DEPENDENCIES += mpg123 MPD_CONF_OPTS += -Dmpg123=enabled else MPD_CONF_OPTS += -Dmpg123=disabled @@ -251,7 +265,7 @@ MPD_CONF_OPTS += -Dpulse=disabled endif ifeq ($(BR2_PACKAGE_MPD_QOBUZ),y) -MPD_DEPENDENCIES += libgcrypt yajl +MPD_DEPENDENCIES += libgcrypt MPD_CONF_OPTS += -Dqobuz=enabled else MPD_CONF_OPTS += -Dqobuz=disabled @@ -272,7 +286,6 @@ MPD_CONF_OPTS += -Dsidplay=disabled endif ifeq ($(BR2_PACKAGE_MPD_SOUNDCLOUD),y) -MPD_DEPENDENCIES += yajl MPD_CONF_OPTS += -Dsoundcloud=enabled else MPD_CONF_OPTS += -Dsoundcloud=disabled @@ -285,8 +298,10 @@ else MPD_CONF_OPTS += -Dsqlite=disabled endif -ifneq ($(BR2_PACKAGE_MPD_TCP),y) +ifeq ($(BR2_PACKAGE_MPD_TCP),y) MPD_CONF_OPTS += -Dtcp=true +else +MPD_CONF_OPTS += -Dtcp=false endif ifeq ($(BR2_PACKAGE_MPD_TREMOR),y) @@ -305,7 +320,6 @@ endif ifeq ($(BR2_PACKAGE_MPD_UPNP_PUPNP),y) MPD_DEPENDENCIES += \ - expat \ libupnp MPD_CONF_OPTS += -Dupnp=pupnp else ifeq ($(BR2_PACKAGE_MPD_UPNP_NPUPNP),y) diff --git a/package/mpg123/mpg123.hash b/package/mpg123/mpg123.hash index e5fb09b46a00..0fe469960623 100644 --- a/package/mpg123/mpg123.hash +++ b/package/mpg123/mpg123.hash @@ -1,7 +1,6 @@ -# From https://sourceforge.net/projects/mpg123/files/mpg123/1.25.15/ -sha1 286fcb83afad3ecbfea60434d3ee1b6d7f41bb7c mpg123-1.25.15.tar.bz2 -md5 9a050d4b3573661c606f8095a3f34ca3 mpg123-1.25.15.tar.bz2 +# From https://sourceforge.net/projects/mpg123/files/mpg123/1.32.3/ +sha1 3a94848a620db7917c757cb21e261c711e44618f mpg123-1.32.3.tar.bz2 # Locally calculated -sha256 503a76d82d97f1a6513bbeb284e460a99fb17ef80f23a661d8fc026ce6adcbbc mpg123-1.25.15.tar.bz2 +sha256 2d9913a57d4ee8f497a182c6e82582602409782a4fb481e989feebf4435867b4 mpg123-1.32.3.tar.bz2 # License file -sha256 f40e0dd86b27b52e429b693a87b3ca63ae0a98a4d142e77207aa6bdf1db7a295 COPYING +sha256 c22482728a634a8dfdb4ff72a96d4c1ed64cd8f3e79335c401751ac591609366 COPYING diff --git a/package/mpg123/mpg123.mk b/package/mpg123/mpg123.mk index fbb011c2c2d2..4de5f99bdfc2 100644 --- a/package/mpg123/mpg123.mk +++ b/package/mpg123/mpg123.mk @@ -4,15 +4,22 @@ # ################################################################################ -MPG123_VERSION = 1.25.15 +MPG123_VERSION = 1.32.3 MPG123_SOURCE = mpg123-$(MPG123_VERSION).tar.bz2 -MPG123_SITE = http://downloads.sourceforge.net/project/mpg123/mpg123/$(MPG123_VERSION) +MPG123_SITE = https://downloads.sourceforge.net/project/mpg123/mpg123/$(MPG123_VERSION) MPG123_INSTALL_STAGING = YES MPG123_LICENSE = LGPL-2.1 MPG123_LICENSE_FILES = COPYING MPG123_CPE_ID_VENDOR = mpg123 MPG123_DEPENDENCIES = host-pkgconf +# mpg123 has some assembly function that is not present in Thumb mode: +# Error: selected processor does not support `smull r3,ip,r2,r10' in Thumb mode +# so, we desactivate Thumb mode +ifeq ($(BR2_ARM_INSTRUCTIONS_THUMB),y) +MPG123_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -marm" +endif + MPG123_CPU = $(if $(BR2_SOFT_FLOAT),generic_nofpu,generic_fpu) ifeq ($(BR2_aarch64),y) diff --git a/package/mpir/mpir.mk b/package/mpir/mpir.mk index 91f704d30cd9..5dbd760aa1f8 100644 --- a/package/mpir/mpir.mk +++ b/package/mpir/mpir.mk @@ -36,4 +36,8 @@ ifeq ($(BR2_powerpc64le),y) MPIR_CONF_ENV += MPN_PATH="generic" endif +ifeq ($(BR2_ARM_INSTRUCTIONS_THUMB),y) +MPIR_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -marm" +endif + $(eval $(autotools-package)) diff --git a/package/mpv/Config.in b/package/mpv/Config.in index 8efb353c333f..5c32f593fe70 100644 --- a/package/mpv/Config.in +++ b/package/mpv/Config.in @@ -26,6 +26,7 @@ config BR2_PACKAGE_MPV select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7 select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7 select BR2_PACKAGE_XLIB_LIBXINERAMA if BR2_PACKAGE_XORG7 + select BR2_PACKAGE_XLIB_LIBXPRESENT if BR2_PACKAGE_XORG7 select BR2_PACKAGE_XLIB_LIBXSCRNSAVER if BR2_PACKAGE_XORG7 select BR2_PACKAGE_XLIB_LIBXRANDR if BR2_PACKAGE_XORG7 help diff --git a/package/mpv/mpv.hash b/package/mpv/mpv.hash index 0c7eb5f8a5ad..a09015619d49 100644 --- a/package/mpv/mpv.hash +++ b/package/mpv/mpv.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 100a116b9f23bdcda3a596e9f26be3a69f166a4f1d00910d1789b6571c46f3a9 mpv-0.33.1.tar.gz -sha256 a99d7b0625a0566271aad6de694e52eafd566db024f9516720d526c680d3ee30 LICENSE.GPL +sha256 41df981b7b84e33a2ef4478aaf81d6f4f5c8b9cd2c0d337ac142fc20b387d1a9 mpv-0.35.1.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL diff --git a/package/mpv/mpv.mk b/package/mpv/mpv.mk index f9250070d132..cf37091186a2 100644 --- a/package/mpv/mpv.mk +++ b/package/mpv/mpv.mk @@ -4,7 +4,7 @@ # ################################################################################ -MPV_VERSION = 0.33.1 +MPV_VERSION = 0.35.1 MPV_SITE = $(call github,mpv-player,mpv,v$(MPV_VERSION)) MPV_DEPENDENCIES = \ host-pkgconf ffmpeg libass zlib \ @@ -205,7 +205,13 @@ endif # xlib_libXrandr, xlib_libXScrnSaver. ifeq ($(BR2_PACKAGE_XORG7),y) MPV_CONF_OPTS += --enable-x11 -MPV_DEPENDENCIES += xlib_libX11 xlib_libXext xlib_libXinerama xlib_libXrandr xlib_libXScrnSaver +MPV_DEPENDENCIES += \ + xlib_libX11 \ + xlib_libXext \ + xlib_libXinerama \ + xlib_libXpresent \ + xlib_libXrandr \ + xlib_libXScrnSaver # XVideo ifeq ($(BR2_PACKAGE_XLIB_LIBXV),y) MPV_CONF_OPTS += --enable-xv diff --git a/package/mrouted/mrouted.hash b/package/mrouted/mrouted.hash index affb323b4b89..7516a1329cdd 100644 --- a/package/mrouted/mrouted.hash +++ b/package/mrouted/mrouted.hash @@ -1,5 +1,5 @@ -# From https://github.com/troglobit/mrouted/releases/download/4.4/mrouted-4.4.tar.gz.sha256 -sha256 095439e544d69c91ed64fa87db7e35bc2155eef48b7f268281d80946d2c6b953 mrouted-4.4.tar.gz +# From https://github.com/troglobit/mrouted/releases/ +sha256 99e1a1ca45e4e6c05b3cf379fd59a239aeabd9512656114528ad5e172d3c8ba8 mrouted-4.5.tar.gz # Locally calculated sha256 834f45ed282fd010f354ecc0a50538af519a1cfcc4d2866de3be06982fa9ed29 LICENSE diff --git a/package/mrouted/mrouted.mk b/package/mrouted/mrouted.mk index 4014b8f896bf..0d2071c4f07b 100644 --- a/package/mrouted/mrouted.mk +++ b/package/mrouted/mrouted.mk @@ -4,7 +4,7 @@ # ################################################################################ -MROUTED_VERSION = 4.4 +MROUTED_VERSION = 4.5 MROUTED_SITE = \ https://github.com/troglobit/mrouted/releases/download/$(MROUTED_VERSION) MROUTED_DEPENDENCIES = host-bison @@ -18,6 +18,7 @@ define MROUTED_INSTALL_INIT_SYSV endef define MROUTED_INSTALL_INIT_SYSTEMD + mkdir -p $(TARGET_DIR)/var/lib/misc/ $(INSTALL) -D -m 644 $(@D)/mrouted.service \ $(TARGET_DIR)/usr/lib/systemd/system/mrouted.service endef diff --git a/package/msmtp/msmtp.hash b/package/msmtp/msmtp.hash index c5571f2fb343..c5fe9d9176b1 100644 --- a/package/msmtp/msmtp.hash +++ b/package/msmtp/msmtp.hash @@ -1,7 +1,7 @@ # Locally calculated after checking signature -# https://marlam.de/msmtp/releases/msmtp-1.8.22.tar.xz.sig +# https://marlam.de/msmtp/releases/msmtp-1.8.24.tar.xz.sig # with key 2F61B4828BBA779AECB3F32703A2A4AB1E32FD34 -sha256 1b04206286a5b82622335e4eb09e17074368b7288e53d134543cbbc6b79ea3e7 msmtp-1.8.22.tar.xz +sha256 bd6644b1aaab17d61b86647993e3efad860b23c54283b00ddc579c1f5110aa59 msmtp-1.8.24.tar.xz # Hash for license file: sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/package/msmtp/msmtp.mk b/package/msmtp/msmtp.mk index c3928ffcbb10..93c923a123b4 100644 --- a/package/msmtp/msmtp.mk +++ b/package/msmtp/msmtp.mk @@ -4,7 +4,7 @@ # ################################################################################ -MSMTP_VERSION = 1.8.22 +MSMTP_VERSION = 1.8.24 MSMTP_SITE = https://marlam.de/msmtp/releases MSMTP_SOURCE = msmtp-$(MSMTP_VERSION).tar.xz MSMTP_DEPENDENCIES = host-pkgconf diff --git a/package/mtd/mtd.hash b/package/mtd/mtd.hash index a2133e3ce236..9926a34a804a 100644 --- a/package/mtd/mtd.hash +++ b/package/mtd/mtd.hash @@ -1,4 +1,4 @@ # Locally calculated after checking pgp signature -# ftp://ftp.infradead.org/pub/mtd-utils/mtd-utils-2.1.5.tar.bz2.asc -sha256 386e27fd121699b6b729bc2e8e04dda987b31cca6b16e12fb6cc6dcf26449f46 mtd-utils-2.1.5.tar.bz2 +# https://infraroot.at/pub/mtd/mtd-utils-2.1.6.tar.bz2.asc +sha256 c1d853bc4adf83bcabd2792fc95af33bdd8643c97e8f7b3f0180af36af76f0e5 mtd-utils-2.1.6.tar.bz2 sha256 dcc100d4161cc0b7177545ab6e47216f84857cda3843847c792a25289852dcaa COPYING diff --git a/package/mtd/mtd.mk b/package/mtd/mtd.mk index db2b104586dc..998cc419b310 100644 --- a/package/mtd/mtd.mk +++ b/package/mtd/mtd.mk @@ -4,7 +4,7 @@ # ################################################################################ -MTD_VERSION = 2.1.5 +MTD_VERSION = 2.1.6 MTD_SOURCE = mtd-utils-$(MTD_VERSION).tar.bz2 MTD_SITE = ftp://ftp.infradead.org/pub/mtd-utils MTD_LICENSE = GPL-2.0 diff --git a/package/mtools/mtools.hash b/package/mtools/mtools.hash index a162bfdc95dd..412d67a328bf 100644 --- a/package/mtools/mtools.hash +++ b/package/mtools/mtools.hash @@ -1,5 +1,5 @@ # Locally calculated after checking pgp signature -sha256 7086821b399a39b8a3c5a372d064de4860f3c195b4911dd4e8b76219fcabe75c mtools-4.0.38.tar.lz +sha256 997ffe4125a19de1fd433ed63f128f7d54bc1a5915f3cdb36da6491ef917f217 mtools-4.0.43.tar.lz # Locally calculated sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/package/mtools/mtools.mk b/package/mtools/mtools.mk index c875814bc7e0..96d8e43ea219 100644 --- a/package/mtools/mtools.mk +++ b/package/mtools/mtools.mk @@ -4,7 +4,7 @@ # ################################################################################ -MTOOLS_VERSION = 4.0.38 +MTOOLS_VERSION = 4.0.43 MTOOLS_SOURCE = mtools-$(MTOOLS_VERSION).tar.lz MTOOLS_SITE = $(BR2_GNU_MIRROR)/mtools MTOOLS_LICENSE = GPL-3.0+ diff --git a/package/multipath-tools/Config.in b/package/multipath-tools/Config.in index fc4b01b2ac87..bc0f67190db4 100644 --- a/package/multipath-tools/Config.in +++ b/package/multipath-tools/Config.in @@ -1,25 +1,28 @@ -comment "multipath-tools needs udev and a uClibc or glibc toolchain w/ threads, dynamic library" +comment "multipath-tools needs udev and a toolchain w/ threads, dynamic library, C++" depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 - depends on !BR2_TOOLCHAIN_USES_MUSL depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || !BR2_PACKAGE_HAS_UDEV + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \ + !BR2_PACKAGE_HAS_UDEV || !BR2_INSTALL_LIBSTDCPP config BR2_PACKAGE_MULTIPATH_TOOLS bool "multipath-tools" depends on !BR2_STATIC_LIBS - depends on !BR2_TOOLCHAIN_USES_MUSL depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS depends on BR2_PACKAGE_HAS_UDEV + depends on BR2_INSTALL_LIBSTDCPP # liburcu select BR2_PACKAGE_JSON_C select BR2_PACKAGE_LIBURCU select BR2_PACKAGE_LIBAIO select BR2_PACKAGE_LVM2 select BR2_PACKAGE_LVM2_STANDARD_INSTALL select BR2_PACKAGE_READLINE + select BR2_PACKAGE_UTIL_LINUX + select BR2_PACKAGE_UTIL_LINUX_LIBS + select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT help This package provides the following binaries to drive the Device Mapper multipathing driver: diff --git a/package/multipath-tools/multipath-tools.hash b/package/multipath-tools/multipath-tools.hash index ecaad05e25ad..06aa5ccc809a 100644 --- a/package/multipath-tools/multipath-tools.hash +++ b/package/multipath-tools/multipath-tools.hash @@ -1,7 +1,7 @@ # Locally computed: -sha256 6ed3cf6e786da20a451d9747cbd4c5817815388b8fc8022d1074b3018479031d multipath-tools-0.9.4.tar.gz +sha256 401c6f6e8dc5d3feaaee76280716aee718579ac024ce4f2fae77c798dc7a0f9f multipath-tools-0.9.6.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSES/GPL-2.0 sha256 3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986 LICENSES/GPL-3.0 sha256 b7993225104d90ddd8024fd838faf300bea5e83d91203eab98e29512acebd69c LICENSES/LGPL-2.0 sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 LICENSES/LGPL-2.1 -sha256 b8b4369c539d6a61ad2a5a359a1ecdfb9f630a89590216d490314e19bf07aa0c README.md +sha256 5887418b2e0e595da5aca08b2dff25298f20618f9894d5e26ce852d9d1ae90c4 README.md diff --git a/package/multipath-tools/multipath-tools.mk b/package/multipath-tools/multipath-tools.mk index 23b3cc944267..7071e1fd1b33 100644 --- a/package/multipath-tools/multipath-tools.mk +++ b/package/multipath-tools/multipath-tools.mk @@ -4,7 +4,7 @@ # ################################################################################ -MULTIPATH_TOOLS_VERSION = 0.9.4 +MULTIPATH_TOOLS_VERSION = 0.9.6 MULTIPATH_TOOLS_SITE = $(call github,opensvc,multipath-tools,$(MULTIPATH_TOOLS_VERSION)) MULTIPATH_TOOLS_LICENSE = \ @@ -20,7 +20,16 @@ MULTIPATH_TOOLS_LICENSE_FILES = \ README.md MULTIPATH_TOOLS_CPE_ID_VENDOR = opensvc -MULTIPATH_TOOLS_DEPENDENCIES = lvm2 json-c readline udev liburcu libaio host-pkgconf +MULTIPATH_TOOLS_DEPENDENCIES = \ + host-pkgconf \ + json-c \ + liburcu \ + libaio \ + lvm2 \ + readline \ + udev \ + util-linux-libs + MULTIPATH_TOOLS_MAKE_OPTS = \ kernel_incdir=$(STAGING_DIR)/usr/include \ LIB="lib" \ diff --git a/package/mupdf/0001-Add-missing-limits.h-include-for-UINT_MAX.patch b/package/mupdf/0001-Add-missing-limits.h-include-for-UINT_MAX.patch new file mode 100644 index 000000000000..95f2f86666d0 --- /dev/null +++ b/package/mupdf/0001-Add-missing-limits.h-include-for-UINT_MAX.patch @@ -0,0 +1,70 @@ +From ebce9f1b129ebc8f2b17afa02a4ffcb9453c11d9 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Rapha=C3=ABl=20M=C3=A9lotte?= +Date: Mon, 24 Apr 2023 17:27:35 +0200 +Subject: [PATCH] Add missing limits.h include for UINT_MAX +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +encode-basic.c uses 'UINT_MAX', which is available in the 'limits.h' +header. + +In some configurations that build with zlib from [1], by chance +limits.h gets indirectly included when including 'z-imp.h' (the +includes are: 'z-imp.h' -> 'zlib.h' -> 'zconf.h' -> 'limits.h'), so +the build succeeds. + +When using other zlib implementations however (for example from [2]), +limits.h is not necessarily included indirectly, which leads to the +build failing in the following way: + +source/fitz/encode-basic.c: In function 'deflate_write': +source/fitz/encode-basic.c:343:27: error: 'UINT_MAX' undeclared (first use in this function) + 343 | newbufsize = n >= UINT_MAX ? UINT_MAX : deflateBound(&state->z, n); + | ^~~~~~~~ +source/fitz/encode-basic.c:26:1: note: 'UINT_MAX' is defined in header ''; did you forget to '#include '? + +Add the missing include, so that the build succeeds no matter if zlib +indirectly includes 'limit.h' or not. + +Similarly, also add it in output-ps.c where it's also missing. + +[1]: https://zlib.net/ +[2]: https://github.com/zlib-ng/zlib-ng + +Signed-off-by: Raphaël Mélotte +Upstream: https://bugs.ghostscript.com/show_bug.cgi?id=706667 +--- + source/fitz/encode-basic.c | 2 ++ + source/fitz/output-ps.c | 2 ++ + 2 files changed, 4 insertions(+) + +diff --git a/source/fitz/encode-basic.c b/source/fitz/encode-basic.c +index 03a4ff76b..84f0c35e6 100644 +--- a/source/fitz/encode-basic.c ++++ b/source/fitz/encode-basic.c +@@ -24,6 +24,8 @@ + + #include "z-imp.h" + ++#include ++ + struct ahx + { + fz_output *chain; +diff --git a/source/fitz/output-ps.c b/source/fitz/output-ps.c +index ef22c3cd6..3dc8ea17d 100644 +--- a/source/fitz/output-ps.c ++++ b/source/fitz/output-ps.c +@@ -24,6 +24,8 @@ + + #include "z-imp.h" + ++#include ++ + typedef struct ps_band_writer_s + { + fz_band_writer super; +-- +2.39.1 + diff --git a/package/mupdf/mupdf.hash b/package/mupdf/mupdf.hash index ef91abee18ac..1f636097ed88 100644 --- a/package/mupdf/mupdf.hash +++ b/package/mupdf/mupdf.hash @@ -1,8 +1,8 @@ # From https://mupdf.com/downloads/index.html: -sha1 f759d914ec6ad6a3b96f994630ff70b75823831b mupdf-1.21.1-source.tar.lz +sha1 b9907729d604f0bf3846b45cd5891e10d7a66e24 mupdf-1.22.0-source.tar.lz # Locally computed: -sha256 66a43490676c7f7c2ff74067328ef13285506fcc758d365ae27ea3668bd5e620 mupdf-1.21.1-source.tar.lz +sha256 bed78a0abf8496b30c523497292de979db633eca57e02f6cd0f3c7c042551c3e mupdf-1.22.0-source.tar.lz # Hash for license files: sha256 57c8ff33c9c0cfc3ef00e650a1cc910d7ee479a8bc509f6c9209a7c2a11399d6 COPYING diff --git a/package/mupdf/mupdf.mk b/package/mupdf/mupdf.mk index d6cc407c49fe..08894d7980ec 100644 --- a/package/mupdf/mupdf.mk +++ b/package/mupdf/mupdf.mk @@ -5,7 +5,7 @@ ################################################################################ # python-pymupdf's version must match mupdf's version -MUPDF_VERSION = 1.21.1 +MUPDF_VERSION = 1.22.0 MUPDF_SOURCE = mupdf-$(MUPDF_VERSION)-source.tar.lz MUPDF_SITE = https://mupdf.com/downloads/archive MUPDF_LICENSE = AGPL-3.0+ @@ -22,12 +22,6 @@ MUPDF_DEPENDENCIES = \ xlib_libX11 \ zlib -# 0002-Bug-703366-Fix-double-free-of-object-during-linearization.patch -MUPDF_IGNORE_CVES += CVE-2021-3407 - -# 0003-Bug-703791-Stay-within-hash-table-max-key-size-in-cached-color-converter.patch -MUPDF_IGNORE_CVES += CVE-2021-37220 - # The pkg-config name for gumbo-parser is `gumbo`. MUPDF_PKG_CONFIG_PACKAGES = \ freetype2 \ diff --git a/package/musepack/musepack.mk b/package/musepack/musepack.mk index fc66c684a522..d4dd08df3637 100644 --- a/package/musepack/musepack.mk +++ b/package/musepack/musepack.mk @@ -9,7 +9,7 @@ MUSEPACK_SITE = http://files.musepack.net/source MUSEPACK_SOURCE = musepack_src_$(MUSEPACK_VERSION).tar.gz MUSEPACK_DEPENDENCIES = libcuefile libreplaygain MUSEPACK_INSTALL_STAGING = YES -MUSEPACK_MAKE = $(MAKE1) +MUSEPACK_BUILD_OPTS = -j1 MUSEPACK_LICENSE = BSD-3-Clause (*mpcdec), LGPL-2.1+ (*mpcenc) MUSEPACK_LICENSE_FILES = libmpcdec/COPYING libmpcenc/quant.c diff --git a/package/musl/0003-fix-incorrect-parameter-name-in-internal-netlink.h-R.patch b/package/musl/0003-fix-incorrect-parameter-name-in-internal-netlink.h-R.patch deleted file mode 100644 index fa3057ff082b..000000000000 --- a/package/musl/0003-fix-incorrect-parameter-name-in-internal-netlink.h-R.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 8cf87b3027009c0acac591d9ae80262dc25daccf Mon Sep 17 00:00:00 2001 -From: Ondrej Jirman -Date: Wed, 21 Nov 2018 17:29:21 +0100 -Subject: [PATCH] fix incorrect parameter name in internal netlink.h RTA_OK - macro - -the wrong name works only by accident. - -Signed-off-by: Ondrej Jirman -Signed-off-by: Rich Felker -Signed-off-by: Petr Vorel - -[ upstream status: 8cf87b3027009c0acac591d9ae80262dc25daccf ] ---- - src/network/netlink.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/network/netlink.h b/src/network/netlink.h -index 38acb178..873fabe2 100644 ---- a/src/network/netlink.h -+++ b/src/network/netlink.h -@@ -86,7 +86,7 @@ struct ifaddrmsg { - #define RTA_DATALEN(rta) ((rta)->rta_len-sizeof(struct rtattr)) - #define RTA_DATAEND(rta) ((char*)(rta)+(rta)->rta_len) - #define RTA_NEXT(rta) (struct rtattr*)((char*)(rta)+NETLINK_ALIGN((rta)->rta_len)) --#define RTA_OK(nlh,end) ((char*)(end)-(char*)(rta) >= sizeof(struct rtattr)) -+#define RTA_OK(rta,end) ((char*)(end)-(char*)(rta) >= sizeof(struct rtattr)) - - #define NLMSG_RTA(nlh,len) ((void*)((char*)(nlh)+sizeof(struct nlmsghdr)+NETLINK_ALIGN(len))) - #define NLMSG_RTAOK(rta,nlh) RTA_OK(rta,NLMSG_DATAEND(nlh)) --- -2.36.0 - diff --git a/package/musl/Config.in b/package/musl/Config.in index c1a10bdd5832..89f41d2ff10d 100644 --- a/package/musl/Config.in +++ b/package/musl/Config.in @@ -1,9 +1,11 @@ config BR2_PACKAGE_MUSL_ARCH_SUPPORTS bool default y if BR2_aarch64 + default y if BR2_aarch64_be default y if BR2_arm default y if BR2_armeb default y if BR2_i386 + default y if BR2_m68k_m68k default y if BR2_microblaze default y if BR2_mips default y if BR2_mipsel @@ -16,7 +18,7 @@ config BR2_PACKAGE_MUSL_ARCH_SUPPORTS default y if BR2_RISCV_64 default y if BR2_sh default y if BR2_x86_64 - depends on !BR2_powerpc_SPE # not supported, build breaks + depends on !BR2_POWERPC_CPU_HAS_SPE # not supported, build breaks depends on !(BR2_powerpc64 || BR2_powerpc64le) || BR2_POWERPC_CPU_HAS_ALTIVEC # sh2 nommu is supported by musl, but we don't have support # for it in Buildroot. @@ -37,4 +39,4 @@ config BR2_PACKAGE_MUSL # Compatibility headers: cdefs.h, queue.h select BR2_PACKAGE_MUSL_COMPAT_HEADERS help - https://www.musl-libc.org/ + http://musl.libc.org/ diff --git a/package/musl/musl.hash b/package/musl/musl.hash index e093a5358e64..3b5fccc9e282 100644 --- a/package/musl/musl.hash +++ b/package/musl/musl.hash @@ -1,4 +1,4 @@ # Locally calculated after checking pgp signature from -# https://musl.libc.org/releases/musl-1.2.3.tar.gz.asc -sha256 7d5b0b6062521e4627e099e4c9dc8248d32a30285e959b7eecaa780cf8cfd4a4 musl-1.2.3.tar.gz +# http://musl.libc.org/releases/musl-1.2.4.tar.gz.asc +sha256 7a35eae33d5372a7c0da1188de798726f68825513b7ae3ebe97aaaa52114f039 musl-1.2.4.tar.gz sha256 f9bc4423732350eb0b3f7ed7e91d530298476f8fec0c6c427a1c04ade22655af COPYRIGHT diff --git a/package/musl/musl.mk b/package/musl/musl.mk index 30c3c2fbc010..08706c139ff4 100644 --- a/package/musl/musl.mk +++ b/package/musl/musl.mk @@ -4,8 +4,8 @@ # ################################################################################ -MUSL_VERSION = 1.2.3 -MUSL_SITE = http://www.musl-libc.org/releases +MUSL_VERSION = 1.2.4 +MUSL_SITE = http://musl.libc.org/releases MUSL_LICENSE = MIT MUSL_LICENSE_FILES = COPYRIGHT MUSL_CPE_ID_VENDOR = musl-libc diff --git a/package/mutt/mutt.hash b/package/mutt/mutt.hash index c475641ab528..8c4aae3c1c9e 100644 --- a/package/mutt/mutt.hash +++ b/package/mutt/mutt.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 fa531b231d58fe1f30ceda0ed626683ea9ebdfb76ce47ef8bb27c2f77422cffb mutt-2.2.9.tar.gz +sha256 043af312f64b8e56f7fd0bf77f84a205d4c498030bd9586457665c47bb18ce38 mutt-2.2.12.tar.gz sha256 732f24b69a6c71cd8e01e4672bb8e12cc1cbb88a50a4665e6ca4fd95000a57ee GPL diff --git a/package/mutt/mutt.mk b/package/mutt/mutt.mk index 5cf1b6bad22d..2fe7b92b38bc 100644 --- a/package/mutt/mutt.mk +++ b/package/mutt/mutt.mk @@ -4,7 +4,7 @@ # ################################################################################ -MUTT_VERSION = 2.2.9 +MUTT_VERSION = 2.2.12 MUTT_SITE = https://bitbucket.org/mutt/mutt/downloads MUTT_LICENSE = GPL-2.0+ MUTT_LICENSE_FILES = GPL @@ -40,7 +40,11 @@ MUTT_CONF_OPTS += \ # Force the path to "gpgrt-config" (from the libgpg-error package) to # avoid using the one on host, if present. -MUTT_CONF_ENV += GPGRT_CONFIG=$(STAGING_DIR)/usr/bin/gpgrt-config +MUTT_GPGRT_CONFIG = $(STAGING_DIR)/usr/bin/gpgrt-config +ifeq ($(BR2_STATIC_LIBS),y) +MUTT_GPGRT_CONFIG += --static +endif +MUTT_CONF_ENV += GPGRT_CONFIG="$(MUTT_GPGRT_CONFIG)" else MUTT_CONF_OPTS += --disable-gpgme endif diff --git a/package/mxsldr/mxsldr.hash b/package/mxsldr/mxsldr.hash new file mode 100644 index 000000000000..c2a7b4ad6485 --- /dev/null +++ b/package/mxsldr/mxsldr.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 8ef7b7abb8d17c879e70b2c3911df8c5ce97f38779fa65d40be7f34febba55e1 mxsldr-2793a657ab7a22487d21c1b020957806f8ae8383-br1.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/mysql/Config.in b/package/mysql/Config.in index ef4a9531a775..8942e55a455e 100644 --- a/package/mysql/Config.in +++ b/package/mysql/Config.in @@ -16,12 +16,16 @@ choice config BR2_PACKAGE_MARIADB bool "mariadb" + depends on BR2_INSTALL_LIBSTDCPP # fmt depends on !BR2_STATIC_LIBS depends on BR2_TOOLCHAIN_HAS_ATOMIC || BR2_TOOLCHAIN_HAS_SYNC_8 + depends on BR2_USE_WCHAR # fmt select BR2_PACKAGE_LIBAIO select BR2_PACKAGE_LIBXML2 + select BR2_PACKAGE_FMT select BR2_PACKAGE_NCURSES select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_PCRE2 select BR2_PACKAGE_HAS_MYSQL help MariaDB is one of the most popular database servers in the @@ -30,8 +34,9 @@ config BR2_PACKAGE_MARIADB http://www.mariadb.org/ -comment "mariadb needs a toolchain w/ dynamic library" - depends on BR2_STATIC_LIBS +comment "mariadb needs a toolchain w/ dynamic library, C++, wchar" + depends on BR2_STATIC_LIBS || !BR2_INSTALL_LIBSTDCPP \ + || !BR2_USE_WCHAR depends on BR2_TOOLCHAIN_HAS_ATOMIC || BR2_TOOLCHAIN_HAS_SYNC_8 config BR2_PACKAGE_ORACLE_MYSQL diff --git a/package/nano/nano.mk b/package/nano/nano.mk index 8a2003b92a66..8b93527becc5 100644 --- a/package/nano/nano.mk +++ b/package/nano/nano.mk @@ -34,7 +34,7 @@ ifeq ($(BR2_PACKAGE_FILE),y) NANO_DEPENDENCIES += file NANO_CONF_OPTS += --enable-libmagic --enable-color --enable-nanorc else -NANO_CONF_OPTS += --disable-libmagic --disable-libmagic --disable-color +NANO_CONF_OPTS += --disable-libmagic --disable-color --disable-nanorc endif # BR2_PACKAGE_FILE endif # BR2_PACKAGE_NANO_TINY diff --git a/package/nanomsg/nanomsg.hash b/package/nanomsg/nanomsg.hash index 04b658e8d8e8..abf117a572bc 100644 --- a/package/nanomsg/nanomsg.hash +++ b/package/nanomsg/nanomsg.hash @@ -1,5 +1,5 @@ # Locally computed -sha256 218b31ae1534ab897cb5c419973603de9ca1a5f54df2e724ab4a188eb416df5a nanomsg-1.1.5.tar.gz +sha256 6ef7282e833df6a364f3617692ef21e59d5c4878acea4f2d7d36e21c8858de67 nanomsg-1.2.tar.gz # Hash for license file: sha256 4e51f6a04312ea7c5f4f0e92d91b6415c1eeb09bdaf86a6fd11d93499457c07a COPYING diff --git a/package/nanomsg/nanomsg.mk b/package/nanomsg/nanomsg.mk index b86e8c128a32..e5c576ef2ccb 100644 --- a/package/nanomsg/nanomsg.mk +++ b/package/nanomsg/nanomsg.mk @@ -4,7 +4,7 @@ # ################################################################################ -NANOMSG_VERSION = 1.1.5 +NANOMSG_VERSION = 1.2 NANOMSG_SITE = $(call github,nanomsg,nanomsg,$(NANOMSG_VERSION)) NANOMSG_INSTALL_STAGING = YES NANOMSG_LICENSE = MIT diff --git a/package/ncurses/ncurses.hash b/package/ncurses/ncurses.hash index c96bf77bce58..b82a7b29e469 100644 --- a/package/ncurses/ncurses.hash +++ b/package/ncurses/ncurses.hash @@ -1,4 +1,4 @@ # Locally calculated -sha256 4057d800ee96623ae70d06b05b2dadb481a80c030e4968aa5d9bcea4439441da ncurses-6.3-20221224.tar.gz +sha256 b0910671694c2c8377f579eea68477a15d67bd20ddd4b29328cfe15c62c7b3fd ncurses-6.4-20230603.tar.gz # Locally computed -sha256 63de87399e9fc8860236082b6b0520e068e9eb1fad0ebd30202aa30bb6f690ac COPYING +sha256 0413b2f4ea863194c174673032f0fca84f1ea1ed4eed6476baea68c075a631ce COPYING diff --git a/package/ncurses/ncurses.mk b/package/ncurses/ncurses.mk index 73e3c3feb855..3b805cb1fd56 100644 --- a/package/ncurses/ncurses.mk +++ b/package/ncurses/ncurses.mk @@ -5,8 +5,8 @@ ################################################################################ # When there is no snapshost yet for a new version, set it to the empty string -NCURSES_VERSION_MAJOR = 6.3 -NCURSES_SNAPSHOT_DATE = 20221224 +NCURSES_VERSION_MAJOR = 6.4 +NCURSES_SNAPSHOT_DATE = 20230603 NCURSES_VERSION = $(NCURSES_VERSION_MAJOR)$(if $(NCURSES_SNAPSHOT_DATE),-$(NCURSES_SNAPSHOT_DATE)) NCURSES_VERSION_GIT = $(subst .,_,$(subst -,_,$(NCURSES_VERSION))) NCURSES_SITE = $(call github,ThomasDickey,ncurses-snapshots,v$(NCURSES_VERSION_GIT)) @@ -15,12 +15,9 @@ NCURSES_DEPENDENCIES = host-ncurses NCURSES_LICENSE = MIT with advertising clause NCURSES_LICENSE_FILES = COPYING NCURSES_CPE_ID_VENDOR = gnu -NCURSES_CPE_ID_VERSION = $(NCURSES_VERSION_MAJOR) +NCURSES_CPE_ID_VERSION = $(NCURSES_VERSION_MAJOR)$(if $(NCURSES_SNAPSHOT_DATE),.$(NCURSES_SNAPSHOT_DATE)) NCURSES_CONFIG_SCRIPTS = ncurses$(NCURSES_LIB_SUFFIX)6-config -# Fixed since snapshot 20220416 -NCURSES_IGNORE_CVES += CVE-2022-29458 - NCURSES_CONF_OPTS = \ --without-cxx \ --without-cxx-binding \ diff --git a/package/ndisc6/ndisc6.hash b/package/ndisc6/ndisc6.hash index e258382c53da..550b9fffac94 100644 --- a/package/ndisc6/ndisc6.hash +++ b/package/ndisc6/ndisc6.hash @@ -1,4 +1,4 @@ # Locally calculated after checking pgp signature -sha256 a713210e9be1f15cfa0809f4c2728b00cd5f25881d7585126986982055453cfb ndisc6-1.0.6.tar.bz2 +sha256 edc431d70510d7321a5a39d243de0d0f63846dc9145b3b549c7348cc2bc96609 ndisc6-1.0.7.tar.bz2 # Locally computed sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/ndisc6/ndisc6.mk b/package/ndisc6/ndisc6.mk index 23734ca7d7e4..d797b82e653e 100644 --- a/package/ndisc6/ndisc6.mk +++ b/package/ndisc6/ndisc6.mk @@ -4,7 +4,7 @@ # ################################################################################ -NDISC6_VERSION = 1.0.6 +NDISC6_VERSION = 1.0.7 NDISC6_SOURCE = ndisc6-$(NDISC6_VERSION).tar.bz2 NDISC6_SITE = http://www.remlab.net/files/ndisc6 NDISC6_CONF_ENV = CC="$(TARGET_CC) -std=c11" LIBS=$(TARGET_NLS_LIBS) diff --git a/package/ne10/ne10.mk b/package/ne10/ne10.mk index 39466055568f..ce0f7e7b7750 100644 --- a/package/ne10/ne10.mk +++ b/package/ne10/ne10.mk @@ -42,8 +42,10 @@ define NE10_INSTALL_STAGING_CMDS $(NE10_INSTALL_STAGING_SHARED_LIB) endef +ifeq ($(BR2_STATIC_LIBS),) define NE10_INSTALL_TARGET_CMDS cp -dpf $(@D)/modules/libNE10*.so* $(TARGET_DIR)/usr/lib/ endef +endif $(eval $(cmake-package)) diff --git a/package/neon/0001-Revert-Advertise-TS_SSL-feature-with-OpenSSL-1.1.0.patch b/package/neon/0001-Revert-Advertise-TS_SSL-feature-with-OpenSSL-1.1.0.patch deleted file mode 100644 index 02088bfe023c..000000000000 --- a/package/neon/0001-Revert-Advertise-TS_SSL-feature-with-OpenSSL-1.1.0.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 8f9e110b391f065536780d19c2257ad7afd83522 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Mon, 31 Jan 2022 23:42:13 +0100 -Subject: [PATCH] Revert "Advertise TS_SSL feature with OpenSSL >= 1.1.0." - -This reverts commit 281c84fc3996c757efdf6e9b3f906d7a1fc08b1d. - -Indeed openssl can be built on toolchains without threads support which -will result in the following build failure: - -ne_openssl.c:43:10: fatal error: pthread.h: No such file or directory - 43 | #include - | ^~~~~~~~~~~ - -Fixes: - - http://autobuild.buildroot.org/results/da995ef26001357e51a5907de9c6111b9ff89bdf - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/notroj/neon/pull/71] ---- - macros/neon.m4 | 15 ++++----------- - src/ne_openssl.c | 4 ++-- - 2 files changed, 6 insertions(+), 13 deletions(-) - -diff --git a/macros/neon.m4 b/macros/neon.m4 -index 129d4ac..5a5fb1b 100644 ---- a/macros/neon.m4 -+++ b/macros/neon.m4 -@@ -960,13 +960,9 @@ yes|openssl) - AC_CHECK_HEADERS(openssl/ssl.h openssl/opensslv.h,, - [AC_MSG_ERROR([OpenSSL headers not found, cannot enable SSL support])]) - -+ # Enable EGD support if using 0.9.7 or newer - NE_CHECK_OPENSSLVER(ne_cv_lib_ssl097, 0.9.7, 0x00907000L) -- NE_CHECK_OPENSSLVER(ne_cv_lib_ssl110, 1.1.0, 0x10100000L) -- if test "$ne_cv_lib_ssl110" = "yes"; then -- NE_ENABLE_SUPPORT(SSL, [SSL support enabled, using OpenSSL $NE_SSL_VERSION]) -- AC_DEFINE(HAVE_OPENSSL11, 1, [Enable OpenSSL 1.1 support]) -- elif test "$ne_cv_lib_ssl097" = "yes"; then -- # Enable EGD support if using 0.9.7 or newer -+ if test "$ne_cv_lib_ssl097" = "yes"; then - AC_MSG_NOTICE([OpenSSL >= 0.9.7; EGD support not needed in neon]) - NE_ENABLE_SUPPORT(SSL, [SSL support enabled, using OpenSSL $NE_SSL_VERSION]) - NE_CHECK_FUNCS(CRYPTO_set_idptr_callback SSL_SESSION_cmp) -@@ -1074,11 +1070,8 @@ CC/CFLAGS/LIBS must be used to make the POSIX library interfaces - available]),, - enable_threadsafe_ssl=no) - --case ${enable_threadsafe_ssl}X${ne_cv_lib_ssl110} in --*Xyes) -- NE_ENABLE_SUPPORT(TS_SSL, [OpenSSL is natively thread-safe]) -- ;; --posixX*|yesX*) -+case $enable_threadsafe_ssl in -+posix|yes) - ne_pthr_ok=yes - AC_CHECK_FUNCS([pthread_mutex_init pthread_mutex_lock],,[ne_pthr_ok=no]) - if test "${ne_pthr_ok}" = "no"; then -diff --git a/src/ne_openssl.c b/src/ne_openssl.c -index 41a5c05..96c768e 100644 ---- a/src/ne_openssl.c -+++ b/src/ne_openssl.c -@@ -1194,8 +1194,8 @@ char *ne_vstrhash(unsigned int flags, va_list ap) - return ne__strhash2hex(v, vlen, flags); - } - --#if defined(NE_HAVE_TS_SSL) && OPENSSL_VERSION_NUMBER < 0x10100000L --/* From OpenSSL 1.1.0 locking callbacks are no longer needed. */ -+#if defined(NE_HAVE_TS_SSL) && OPENSSL_VERSION_NUMBER < 0x10101000L -+/* For OpenSSL 1.1.1 locking callbacks are no longer need at all. */ - #define WITH_OPENSSL_LOCKING (1) - - /* Implementation of locking callbacks to make OpenSSL thread-safe. --- -2.34.1 - diff --git a/package/neon/0002-configure.ac-fix-autoreconf.patch b/package/neon/0002-configure.ac-fix-autoreconf.patch deleted file mode 100644 index cd63d1ed412c..000000000000 --- a/package/neon/0002-configure.ac-fix-autoreconf.patch +++ /dev/null @@ -1,28 +0,0 @@ -From cf779609a5dd38f0a8fdb3c4539371f13fd3a24a Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Tue, 8 Feb 2022 18:34:25 +0100 -Subject: [PATCH] configure.ac: fix autoreconf - -Add AC_CONFIG_MACRO_DIR(macros) to fix autoreconf - -Signed-off-by: Fabrice Fontaine -[Upstream status: not sent yet] ---- - configure.ac | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/configure.ac b/configure.ac -index 37b14ec..122151d 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1,5 +1,7 @@ - AC_PREREQ(2.58) dnl 2.58 required for AS_HELP_STRING - -+AC_CONFIG_MACRO_DIR(macros) -+ - dnl Extract the version (sans LF) from .version, created at release-time. - m4_define(ne_version, [m4_translit(m4_include(.version), [ - ])]) --- -2.34.1 - diff --git a/package/neon/neon.mk b/package/neon/neon.mk index 1ce8f1ff16f9..96ee6087808c 100644 --- a/package/neon/neon.mk +++ b/package/neon/neon.mk @@ -10,8 +10,6 @@ NEON_LICENSE = LGPL-2.0+ (library), GPL-2.0+ (manual and tests) NEON_LICENSE_FILES = src/COPYING.LIB test/COPYING README.md NEON_CPE_ID_VENDOR = webdav NEON_INSTALL_STAGING = YES -# We're patching configure.ac -NEON_AUTORECONF = YES NEON_CONF_OPTS = --without-gssapi --disable-rpath NEON_CONFIG_SCRIPTS = neon-config NEON_DEPENDENCIES = host-pkgconf $(TARGET_NLS_DEPENDENCIES) diff --git a/package/nerdctl/nerdctl.hash b/package/nerdctl/nerdctl.hash index 8f2c6781989d..1fb0649fb210 100644 --- a/package/nerdctl/nerdctl.hash +++ b/package/nerdctl/nerdctl.hash @@ -1,3 +1,3 @@ # Computed locally -sha256 08a84b9481b37dbd8cc6f955dbec0c18a1934bcffeb135fd5d2dc23987152b7c nerdctl-1.2.0.tar.gz +sha256 574438dd7c88e6a607c6f82932f8ada174b1133a66ee0fa0f7510e7c3bebacb4 nerdctl-1.3.1.tar.gz sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE diff --git a/package/nerdctl/nerdctl.mk b/package/nerdctl/nerdctl.mk index 7556bcc3913c..43e862f7f975 100644 --- a/package/nerdctl/nerdctl.mk +++ b/package/nerdctl/nerdctl.mk @@ -4,7 +4,7 @@ # ################################################################################ -NERDCTL_VERSION = 1.2.0 +NERDCTL_VERSION = 1.3.1 NERDCTL_SITE = $(call github,containerd,nerdctl,v$(NERDCTL_VERSION)) NERDCTL_LICENSE = Apache-2.0 diff --git a/package/netatalk/0001-Fix-setting-of-LD_LIBRARY_FLAGS-shlibpath_var.patch b/package/netatalk/0001-Fix-setting-of-LD_LIBRARY_FLAGS-shlibpath_var.patch deleted file mode 100644 index 01d577659631..000000000000 --- a/package/netatalk/0001-Fix-setting-of-LD_LIBRARY_FLAGS-shlibpath_var.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 60d100713b5289948e9cdf5b0646ff3cdd2c206b Mon Sep 17 00:00:00 2001 -From: "Arnout Vandecappelle (Essensium/Mind)" -Date: Mon, 17 Dec 2012 22:32:44 +0100 -Subject: [PATCH] Fix setting of LD_LIBRARY_FLAGS ($shlibpath_var). - -LD_LIBRARY_PATH should not be set when cross-compiling, because it -adds the cross-libraries to the build's LD-path. - -Also the restoring of LD_LIBRARY_PATH was done incorrectly: it would -set LD_LIBRARY_PATH=LD_LIBRARY_PATH. - -Signed-off-by: Arnout Vandecappelle (Essensium/Mind) ---- - macros/db3-check.m4 | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/macros/db3-check.m4 b/macros/db3-check.m4 -index 902220b..d5a5446 100644 ---- a/macros/db3-check.m4 -+++ b/macros/db3-check.m4 -@@ -94,7 +94,7 @@ if test "x$bdb_required" = "xyes"; then - savedldflags="$LDFLAGS" - savedcppflags="$CPPFLAGS" - savedlibs="$LIBS" -- saved_shlibpath_var=$shlibpath_var -+ eval saved_shlibpath_var=\$$shlibpath_var - - dnl required BDB version: 4.6, because of cursor API change - DB_MAJOR_REQ=4 -@@ -148,7 +148,7 @@ if test "x$bdb_required" = "xyes"; then - dnl -- LD_LIBRARY_PATH on many platforms. This will be fairly - dnl -- portable hopefully. Reference: - dnl -- http://lists.gnu.org/archive/html/autoconf/2009-03/msg00040.html -- eval export $shlibpath_var=$bdblibdir -+ test "$cross_compiling" = yes || eval export $shlibpath_var=$bdblibdir - NETATALK_BDB_TRY_LINK - eval export $shlibpath_var=$saved_shlibpath_var - -@@ -171,7 +171,7 @@ if test "x$bdb_required" = "xyes"; then - CPPFLAGS="-I${bdbdir}/include${subdir} $CPPFLAGS" - LDFLAGS="-L$bdblibdir $LDFLAGS" - -- eval export $shlibpath_var=$bdblibdir -+ test "$cross_compiling" = yes || eval export $shlibpath_var=$bdblibdir - NETATALK_BDB_TRY_LINK - eval export $shlibpath_var=$saved_shlibpath_var - --- diff --git a/package/netatalk/0002-etc-uams-openssl_compat.h-fix-build-with-libressl-2..patch b/package/netatalk/0002-etc-uams-openssl_compat.h-fix-build-with-libressl-2..patch deleted file mode 100644 index 05913862f663..000000000000 --- a/package/netatalk/0002-etc-uams-openssl_compat.h-fix-build-with-libressl-2..patch +++ /dev/null @@ -1,43 +0,0 @@ -From 58ddc137021a938f37c3794305a839f8df449d3f Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Tue, 5 Apr 2022 23:59:15 +0200 -Subject: [PATCH] etc/uams/openssl_compat.h: fix build with libressl >= 2.7.0 - -Fix the following build failure with libressl >= 2.7.0 which added -DH_set0_pqg with -https://github.com/libressl-portable/openbsd/commit/848e2a019c796b685fc8c5848283b86e48fbe0bf: - -In file included from uams_dhx_passwd.c:35: -openssl_compat.h:15:19: error: static declaration of 'DH_set0_pqg' follows non-static declaration - 15 | inline static int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g) - | ^~~~~~~~~~~ -In file included from uams_dhx_passwd.c:33: -/home/autobuild/autobuild/instance-2/output-1/host/mips64-buildroot-linux-uclibc/sysroot/usr/include/openssl/dh.h:195:5: note: previous declaration of 'DH_set0_pqg' was here - 195 | int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g); - | ^~~~~~~~~~~ - -Fixes: - - http://autobuild.buildroot.org/results/fc6e308f346570f8198542602bc8c1bdd0a4869e - -Signed-off-by: Fabrice Fontaine -[Upstream status: not sent yet] ---- - etc/uams/openssl_compat.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/etc/uams/openssl_compat.h b/etc/uams/openssl_compat.h -index ded377bc..5cc8de34 100644 ---- a/etc/uams/openssl_compat.h -+++ b/etc/uams/openssl_compat.h -@@ -11,7 +11,7 @@ http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt - #ifndef OPENSSL_COMPAT_H - #define OPENSSL_COMPAT_H - --#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x2070000L) - inline static int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g) - { - /* If the fields p and g in d are NULL, the corresponding input --- -2.35.1 - diff --git a/package/netatalk/netatalk.hash b/package/netatalk/netatalk.hash index 6dead5457c27..a35e6bc36c55 100644 --- a/package/netatalk/netatalk.hash +++ b/package/netatalk/netatalk.hash @@ -1,7 +1,7 @@ -# From http://sourceforge.net/projects/netatalk/files/netatalk/3.1.13/ -md5 697421623c32ee0ab9c8076191766e5f netatalk-3.1.13.tar.bz2 -sha1 16dd7fa84962a44b36b795b8c44393e728785947 netatalk-3.1.13.tar.bz2 +# From http://sourceforge.net/projects/netatalk/files/netatalk/3.1.17/ +md5 a6429a28948f85b69c9012fb437dd9c2 netatalk-3.1.17.tar.xz +sha1 bc6578d9fa874b3816fd4ddd60a30a8f3aadc71d netatalk-3.1.17.tar.xz # Locally computed -sha256 89ada6bcfe1b39ad94f58c236654d1d944f2645c3e7de98b3374e0bd37d5e05d netatalk-3.1.13.tar.bz2 -sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING +sha256 8c208e2c94bf3047db33cdbc3ce4325d2b80db61d6cc527f18f9dbd8e95b5cff netatalk-3.1.17.tar.xz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING sha256 7599ae145e53be03a08f8b558b2f2e0c828e1630f1843cc04f41981b8cefcd65 COPYRIGHT diff --git a/package/netatalk/netatalk.mk b/package/netatalk/netatalk.mk index 7cc950beb66d..a47bfa7e844d 100644 --- a/package/netatalk/netatalk.mk +++ b/package/netatalk/netatalk.mk @@ -4,11 +4,9 @@ # ################################################################################ -NETATALK_VERSION = 3.1.13 -NETATALK_SITE = http://downloads.sourceforge.net/project/netatalk/netatalk/$(NETATALK_VERSION) -NETATALK_SOURCE = netatalk-$(NETATALK_VERSION).tar.bz2 -# For 0001-Fix-setting-of-LD_LIBRARY_FLAGS-shlibpath_var.patch -NETATALK_AUTORECONF = YES +NETATALK_VERSION = 3.1.17 +NETATALK_SITE = http://downloads.sourceforge.net/project/netatalk/netatalk-$(subst .,-,$(NETATALK_VERSION)) +NETATALK_SOURCE = netatalk-$(NETATALK_VERSION).tar.xz NETATALK_CONFIG_SCRIPTS = netatalk-config NETATALK_DEPENDENCIES = host-pkgconf openssl berkeleydb libgcrypt libgpg-error \ libevent diff --git a/package/netdata/Config.in b/package/netdata/Config.in index 34d139125d7a..d17b5e89aae8 100644 --- a/package/netdata/Config.in +++ b/package/netdata/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_NETDATA depends on BR2_USE_MMU # fork() depends on !BR2_STATIC_LIBS # libuv depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libuv select BR2_PACKAGE_LIBUV select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID @@ -35,7 +36,8 @@ comment "prometheus remote write backend needs a toolchain w/ C++, gcc >= 4.8" endif -comment "netdata needs a toolchain w/ NPTL, dynamic library" - depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS +comment "netdata needs a toolchain w/ NPTL, dynamic library, gcc >= 4.9" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/netsniff-ng/Config.in b/package/netsniff-ng/Config.in index 9ad3628f1496..489d0b6f9a34 100644 --- a/package/netsniff-ng/Config.in +++ b/package/netsniff-ng/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_NETSNIFF_NG depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # pthread_spin_lock depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS + depends on BR2_INSTALL_LIBSTDCPP # liburcu select BR2_PACKAGE_LIBPCAP select BR2_PACKAGE_LIBNETFILTER_CONNTRACK select BR2_PACKAGE_LIBURCU @@ -28,7 +29,8 @@ comment "mausezahn needs glibc or musl toolchain" endif -comment "netsniff-ng needs a toolchain w/ NPTL, headers >= 3.0" +comment "netsniff-ng needs a toolchain w/ NPTL, C++, headers >= 3.0" depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ + !BR2_INSTALL_LIBSTDCPP || \ !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 diff --git a/package/netsnmp/0001-snmp_agent-disallow-SET-with-NULL-varbind.patch b/package/netsnmp/0001-snmp_agent-disallow-SET-with-NULL-varbind.patch new file mode 100644 index 000000000000..3a6321d7a7b3 --- /dev/null +++ b/package/netsnmp/0001-snmp_agent-disallow-SET-with-NULL-varbind.patch @@ -0,0 +1,72 @@ +From b07627fa67c686b07d1eab123cf3e4887a2a93aa Mon Sep 17 00:00:00 2001 +From: Bill Fenner +Date: Fri, 25 Nov 2022 08:41:24 -0800 +Subject: [PATCH] snmp_agent: disallow SET with NULL varbind + +Upstream: https://github.com/net-snmp/net-snmp/commit/4589352dac3ae111c7621298cf231742209efd9b + +[Thomas: this commit was merged as part of +https://github.com/net-snmp/net-snmp/pull/490/commits, which fixes +https://github.com/net-snmp/net-snmp/issues/474 (CVE-2022-44792) and +https://github.com/net-snmp/net-snmp/issues/475 (CVE-2022-44793). The +other two commits merged as part of this pull request are related to +adding a non-regression test for this, which is not relevant for the +security fix itself.] + +Signed-off-by: Thomas Petazzoni +--- + agent/snmp_agent.c | 32 ++++++++++++++++++++++++++++++++ + 1 file changed, 32 insertions(+) + +diff --git a/agent/snmp_agent.c b/agent/snmp_agent.c +index 867d0c166f..3f678fe2df 100644 +--- a/agent/snmp_agent.c ++++ b/agent/snmp_agent.c +@@ -3719,12 +3719,44 @@ netsnmp_handle_request(netsnmp_agent_session *asp, int status) + return 1; + } + ++static int ++check_set_pdu_for_null_varbind(netsnmp_agent_session *asp) ++{ ++ int i; ++ netsnmp_variable_list *v = NULL; ++ ++ for (i = 1, v = asp->pdu->variables; v != NULL; i++, v = v->next_variable) { ++ if (v->type == ASN_NULL) { ++ /* ++ * Protect SET implementations that do not protect themselves ++ * against wrong type. ++ */ ++ DEBUGMSGTL(("snmp_agent", "disallowing SET with NULL var for varbind %d\n", i)); ++ asp->index = i; ++ return SNMP_ERR_WRONGTYPE; ++ } ++ } ++ return SNMP_ERR_NOERROR; ++} ++ + int + handle_pdu(netsnmp_agent_session *asp) + { + int status, inclusives = 0; + netsnmp_variable_list *v = NULL; + ++#ifndef NETSNMP_NO_WRITE_SUPPORT ++ /* ++ * Check for ASN_NULL in SET request ++ */ ++ if (asp->pdu->command == SNMP_MSG_SET) { ++ status = check_set_pdu_for_null_varbind(asp); ++ if (status != SNMP_ERR_NOERROR) { ++ return status; ++ } ++ } ++#endif /* NETSNMP_NO_WRITE_SUPPORT */ ++ + /* + * for illegal requests, mark all nodes as ASN_NULL + */ +-- +2.41.0 + diff --git a/package/netsnmp/S59snmpd b/package/netsnmp/S59snmpd index 96ed8237ac09..aece89667067 100644 --- a/package/netsnmp/S59snmpd +++ b/package/netsnmp/S59snmpd @@ -17,7 +17,7 @@ export PATH=/sbin:/usr/sbin:/bin:/usr/bin # Defaults export MIBDIRS=/usr/share/snmp/mibs SNMPDRUN=yes -SNMPDOPTS='-Lsd -Lf /dev/null -p /var/run/snmpd.pid 127.0.0.1' +SNMPDOPTS='-Lsd -Lf /dev/null -p /var/run/snmpd.pid -u snmp -g snmp 127.0.0.1' TRAPDRUN=no TRAPDOPTS='-Lsd -p /var/run/snmptrapd.pid' diff --git a/package/netsnmp/netsnmp.mk b/package/netsnmp/netsnmp.mk index 15bc318e36bf..6575ff1afa7f 100644 --- a/package/netsnmp/netsnmp.mk +++ b/package/netsnmp/netsnmp.mk @@ -11,6 +11,10 @@ NETSNMP_LICENSE = Various BSD-like NETSNMP_LICENSE_FILES = COPYING NETSNMP_CPE_ID_VENDOR = net-snmp NETSNMP_CPE_ID_PRODUCT = $(NETSNMP_CPE_ID_VENDOR) +# 0001-snmp_agent-disallow-SET-with-NULL-varbind.patch +NETSNMP_IGNORE_CVES = \ + CVE-2022-44792 \ + CVE-2022-44793 NETSNMP_SELINUX_MODULES = snmp NETSNMP_INSTALL_STAGING = YES NETSNMP_CONF_ENV = \ @@ -40,6 +44,18 @@ NETSNMP_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) LIB_LDCONFIG_CMD=true inst NETSNMP_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) LIB_LDCONFIG_CMD=true install NETSNMP_MAKE = $(MAKE1) NETSNMP_CONFIG_SCRIPTS = net-snmp-config +# We're patching configure.d/config_project_types +NETSNMP_AUTORECONF = YES + +define NETSNMP_USERS + snmp -1 snmp -1 * - - - snmpd user +endef + +ifeq ($(BR2_INIT_SYSTEMD),y) +NETSNMP_CONF_OPTS += --with-systemd +else +NETSNMP_CONF_OPTS += --without-systemd +endif ifeq ($(BR2_ENDIAN),"BIG") NETSNMP_CONF_OPTS += --with-endianness=big @@ -104,6 +120,10 @@ define NETSNMP_INSTALL_INIT_SYSV $(INSTALL) -D -m 0755 package/netsnmp/S59snmpd \ $(TARGET_DIR)/etc/init.d/S59snmpd endef +define NETSNMP_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 0644 package/netsnmp/snmpd.service \ + $(TARGET_DIR)/usr/lib/systemd/system/snmpd.service +endef endif $(eval $(autotools-package)) diff --git a/package/netsnmp/snmpd.service b/package/netsnmp/snmpd.service new file mode 100644 index 000000000000..6647b10c3208 --- /dev/null +++ b/package/netsnmp/snmpd.service @@ -0,0 +1,15 @@ +[Unit] +Description=SNMP Daemon +After=network.target +ConditionPathExists=/etc/snmp/snmpd.conf + +[Service] +Type=simple +Environment=MIBDIRS=/usr/share/snmp/mibs +Environment=SNMPDOPTS='-Lsd -Lf /dev/null -p /var/run/snmpd.pid -u snmp -g snmp 127.0.0.1' +EnvironmentFile=-/etc/default/snmpd +PassEnvironment=MIBDIRS +ExecStart=/usr/sbin/snmpd -f $SNMPDOPTS + +[Install] +WantedBy=multi-user.target diff --git a/package/nettle/nettle.hash b/package/nettle/nettle.hash index d726cb94c613..6c2486e26034 100644 --- a/package/nettle/nettle.hash +++ b/package/nettle/nettle.hash @@ -1,6 +1,6 @@ # Locally calculated after checking pgp signature -# https://ftp.gnu.org/gnu/nettle/nettle-3.8.1.tar.gz.sig -sha256 364f3e2b77cd7dcde83fd7c45219c834e54b0c75e428b6f894a23d12dd41cbfe nettle-3.8.1.tar.gz +# https://ftp.gnu.org/gnu/nettle/nettle-3.9.1.tar.gz.sig +sha256 ccfeff981b0ca71bbd6fbcb054f407c60ffb644389a5be80d6716d5b550c6ce3 nettle-3.9.1.tar.gz # Locally calculated sha256 a853c2ffec17057872340eee242ae4d96cbf2b520ae27d903e1b2fef1a5f9d1c COPYING.LESSERv3 sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYINGv2 diff --git a/package/nettle/nettle.mk b/package/nettle/nettle.mk index dd4dfbbe386b..adeaf40868c2 100644 --- a/package/nettle/nettle.mk +++ b/package/nettle/nettle.mk @@ -4,9 +4,9 @@ # ################################################################################ -NETTLE_VERSION = 3.8.1 +NETTLE_VERSION = 3.9.1 NETTLE_SITE = https://ftp.gnu.org/gnu/nettle -NETTLE_DEPENDENCIES = gmp +NETTLE_DEPENDENCIES = host-m4 gmp NETTLE_INSTALL_STAGING = YES NETTLE_LICENSE = Dual GPL-2.0+/LGPL-3.0+ NETTLE_LICENSE_FILES = COPYING.LESSERv3 COPYINGv2 @@ -15,6 +15,8 @@ NETTLE_CPE_ID_VENDOR = nettle_project # with static linking NETTLE_CONF_OPTS = --disable-openssl +HOST_NETTLE_DEPENDENCIES = host-m4 host-gmp + # ARM assembly requires v6+ ISA ifeq ($(BR2_ARM_CPU_ARMV4)$(BR2_ARM_CPU_ARMV5)$(BR2_ARM_CPU_ARMV7M),y) NETTLE_CONF_OPTS += --disable-assembler diff --git a/package/network-manager/0001-build-meson-add-option-to-set-the-mobile-broadband-p.patch b/package/network-manager/0001-build-meson-add-option-to-set-the-mobile-broadband-p.patch deleted file mode 100644 index 4336472e45de..000000000000 --- a/package/network-manager/0001-build-meson-add-option-to-set-the-mobile-broadband-p.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 03ba04d4784fa4fc7ec31455070fb5ecf25ade23 Mon Sep 17 00:00:00 2001 -From: Heiko Thiery -Date: Fri, 27 Jan 2023 22:38:42 +0100 -Subject: [PATCH] build: meson: add option to set the - mobile-broadband-provider-info database - -When building network-manager in cross-compile environment meson is not able -to detect the right location of the mobile-broadband-provider-info -database by using the pkg-config module. - -By adding the option 'mobile_broadband_provider_info_database' to set the -correct path to the datafile this can be solved. - -Signed-off-by: Heiko Thiery - -https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1519 ---- - meson.build | 6 +++++- - meson_options.txt | 1 + - 2 files changed, 6 insertions(+), 1 deletion(-) - -diff --git a/meson.build b/meson.build -index 0adc42f738..84ce52c736 100644 ---- a/meson.build -+++ b/meson.build -@@ -584,7 +584,10 @@ enable_modem_manager = get_option('modem_manager') - if enable_modem_manager - mm_glib_dep = dependency('mm-glib', version: '>= 0.7.991') - -- mobile_broadband_provider_info_database = dependency('mobile-broadband-provider-info').get_pkgconfig_variable('database') -+ mobile_broadband_provider_info_database = get_option('mobile_broadband_provider_info_database') -+ if mobile_broadband_provider_info_database == '' -+ mobile_broadband_provider_info_database = dependency('mobile-broadband-provider-info').get_pkgconfig_variable('database') -+ endif - config_h.set_quoted('MOBILE_BROADBAND_PROVIDER_INFO_DATABASE', mobile_broadband_provider_info_database) - endif - -@@ -1054,6 +1057,7 @@ output += ' jansson: ' + jansson_msg + '\n' - output += ' iptables: ' + config_h.get('IPTABLES_PATH') + '\n' - output += ' nft: ' + config_h.get('NFT_PATH') + '\n' - output += ' modemmanager-1: ' + enable_modem_manager.to_string() + '\n' -+output += ' mobile-broadband-provider-info-database: ' + mobile_broadband_provider_info_database + '\n' - output += ' ofono: ' + enable_ofono.to_string() + '\n' - output += ' concheck: ' + enable_concheck.to_string() + '\n' - output += ' libteamdctl: ' + enable_teamdctl.to_string() + '\n' -diff --git a/meson_options.txt b/meson_options.txt -index 8b1d32e645..4e359f9e92 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -32,6 +32,7 @@ option('ppp', type: 'boolean', value: true, description: 'enable PPP/PPPoE suppo - option('pppd', type: 'string', value: '', description: 'path to pppd binary') - option('pppd_plugin_dir', type: 'string', value: '', description: 'path to the pppd plugins directory') - option('modem_manager', type: 'boolean', value: true, description: 'Enable new ModemManager1 interface support') -+option('mobile_broadband_provider_info_database', type: 'string', value: '', description: 'path to the mobile-broadband-provider-info database') - option('ofono', type: 'boolean', value: false, description: 'Enable oFono support (experimental)') - option('concheck', type: 'boolean', value: true, description: 'enable connectivity checking support') - option('teamdctl', type: 'boolean', value: false, description: 'enable Teamd control support') --- -2.20.1 - diff --git a/package/network-manager/0001-connectivity-make-curl-timeout-callback-non-repeating.patch b/package/network-manager/0001-connectivity-make-curl-timeout-callback-non-repeating.patch new file mode 100644 index 000000000000..8e25805d0c97 --- /dev/null +++ b/package/network-manager/0001-connectivity-make-curl-timeout-callback-non-repeating.patch @@ -0,0 +1,44 @@ +From abc6e1cf258ab332bed161036a358bbe9c2d1e90 Mon Sep 17 00:00:00 2001 +From: Tatsuyuki Ishi +Date: Fri, 13 Oct 2023 16:46:09 +0000 +Subject: [PATCH] connectivity: Make curl timeout callback non-repeating. + +This reverts commit 05c31da4d9. + +In the linked commit the callback was made repeating on the assumption +that forward progress would result in the callback getting canceled in +cb_data_complete. However, this assumption does not hold since a timeout +callback does not guarantee completion (or error out) of a request. + +curl tweaked some internals in v8.4.0 and started giving 0 timeouts, and +a repeating callback is firing back-to-back without making any progress +in doing so. + +Revert the change and make the callback non-repeating again. + +Fixes: 05c31da4d9cb ('connectivity: don't cancel curl timerfunction from timeout') +Upstream: https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/abc6e1cf258ab332bed161036a358bbe9c2d1e90 +Signed-off-by: Christian Hitz +--- + src/core/nm-connectivity.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/core/nm-connectivity.c b/src/core/nm-connectivity.c +index 92de44f17d..d8b0004c38 100644 +--- a/src/core/nm-connectivity.c ++++ b/src/core/nm-connectivity.c +@@ -406,9 +406,10 @@ _con_curl_timeout_cb(gpointer user_data) + { + NMConnectivityCheckHandle *cb_data = user_data; + ++ cb_data->concheck.curl_timer = 0; + _con_curl_check_connectivity(cb_data->concheck.curl_mhandle, CURL_SOCKET_TIMEOUT, 0); + _complete_queued(cb_data->self); +- return G_SOURCE_CONTINUE; ++ return G_SOURCE_REMOVE; + } + + static int +-- +GitLab + diff --git a/package/network-manager/0002-meson.build-fix-build-failure-with-Dmodem_manager-fa.patch b/package/network-manager/0002-meson.build-fix-build-failure-with-Dmodem_manager-fa.patch deleted file mode 100644 index 648be027e02a..000000000000 --- a/package/network-manager/0002-meson.build-fix-build-failure-with-Dmodem_manager-fa.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 736a2c356c1c4871e8c4e70be622c65c87d3bca8 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Tue, 21 Feb 2023 13:03:00 +0100 -Subject: [PATCH] meson.build: fix build failure with -Dmodem_manager=false - -Fix the following build failure with -Dmodem_manager=false raised since -https://gitlab.freedesktop.org/ffontaine/NetworkManager/-/commit/03ba04d4784fa4fc7ec31455070fb5ecf25ade23: - -../output-1/build/network-manager-1.40.10/meson.build:1060:0: ERROR: Unknown variable "mobile_broadband_provider_info_database". - -Fixes: - - http://autobuild.buildroot.org/results/896879c8e8ce022556ee834216ced2f962ff279c - -Signed-off-by: Fabrice Fontaine -[Upstream status: -https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1544] ---- - meson.build | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/meson.build b/meson.build -index 84ce52c736..b79240efc0 100644 ---- a/meson.build -+++ b/meson.build -@@ -1057,7 +1057,9 @@ output += ' jansson: ' + jansson_msg + '\n' - output += ' iptables: ' + config_h.get('IPTABLES_PATH') + '\n' - output += ' nft: ' + config_h.get('NFT_PATH') + '\n' - output += ' modemmanager-1: ' + enable_modem_manager.to_string() + '\n' --output += ' mobile-broadband-provider-info-database: ' + mobile_broadband_provider_info_database + '\n' -+if enable_modem_manager -+ output += ' mobile-broadband-provider-info-database: ' + mobile_broadband_provider_info_database + '\n' -+endif - output += ' ofono: ' + enable_ofono.to_string() + '\n' - output += ' concheck: ' + enable_concheck.to_string() + '\n' - output += ' libteamdctl: ' + enable_teamdctl.to_string() + '\n' --- -2.39.0 - diff --git a/package/network-manager/Config.in b/package/network-manager/Config.in index 37c4a79d1610..57d7543131a5 100644 --- a/package/network-manager/Config.in +++ b/package/network-manager/Config.in @@ -4,7 +4,6 @@ config BR2_PACKAGE_NETWORK_MANAGER depends on BR2_USE_MMU # dbus depends on BR2_PACKAGE_HAS_UDEV depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 - # Tested with 3.2, but may even work with earlier versions depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_6 depends on BR2_TOOLCHAIN_USES_GLIBC # CLOCK_BOOTTIME, IPTOS_CLASS_* depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 diff --git a/package/network-manager/network-manager.hash b/package/network-manager/network-manager.hash index 3895c1ffc36d..0196d68c553e 100644 --- a/package/network-manager/network-manager.hash +++ b/package/network-manager/network-manager.hash @@ -1,6 +1,6 @@ -# From https://download.gnome.org/sources/NetworkManager/1.40/NetworkManager-1.40.10.sha256sum -sha256 fa251455df3c38e2bf1e1ff806b4bc4346938dd135a3568bd250e92caa85eaf7 NetworkManager-1.40.10.tar.xz +# From https://download.gnome.org/sources/NetworkManager/1.44/NetworkManager-1.44.2.sha256sum +sha256 4b58bf3ac57e2cefb5652efd0945eb0b4bc36a63d92a61ab471d8bb2c9a420e1 NetworkManager-1.44.2.tar.xz # Locally computed sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LGPL -sha256 f3c5ae3cafa27c24590cf89e732581cbeb4d25d950fe49ce7e4042963012b105 CONTRIBUTING.md +sha256 e7cf3d92bda8e5365eaf4514d572146a19e93336f7a966493778d0d0c4476fae CONTRIBUTING.md diff --git a/package/network-manager/network-manager.mk b/package/network-manager/network-manager.mk index 87932c75e4a4..f6ef923d55a8 100644 --- a/package/network-manager/network-manager.mk +++ b/package/network-manager/network-manager.mk @@ -4,8 +4,8 @@ # ################################################################################ -NETWORK_MANAGER_VERSION_MAJOR = 1.40 -NETWORK_MANAGER_VERSION = $(NETWORK_MANAGER_VERSION_MAJOR).10 +NETWORK_MANAGER_VERSION_MAJOR = 1.44 +NETWORK_MANAGER_VERSION = $(NETWORK_MANAGER_VERSION_MAJOR).2 NETWORK_MANAGER_SOURCE = NetworkManager-$(NETWORK_MANAGER_VERSION).tar.xz NETWORK_MANAGER_SITE = https://download.gnome.org/sources/NetworkManager/$(NETWORK_MANAGER_VERSION_MAJOR) NETWORK_MANAGER_INSTALL_STAGING = YES diff --git a/package/networkd-dispatcher/networkd-dispatcher.hash b/package/networkd-dispatcher/networkd-dispatcher.hash index ffb4fa846a6b..f50dd75163dc 100644 --- a/package/networkd-dispatcher/networkd-dispatcher.hash +++ b/package/networkd-dispatcher/networkd-dispatcher.hash @@ -1,3 +1,3 @@ # locally computed -sha256 61270b4c2f39c36da4b0a62724a3cc01f6732493fed0f166ee675bafedff11df networkd-dispatcher-2.2.3.tar.bz2 +sha256 993086fa2dab11ba6b54a121adaccbd4c679ce3c8b3193cfa5c00500c28cbdf9 networkd-dispatcher-2.2.4.tar.bz2 sha256 589ed823e9a84c56feb95ac58e7cf384626b9cbf4fda2a907bc36e103de1bad2 LICENSE diff --git a/package/networkd-dispatcher/networkd-dispatcher.mk b/package/networkd-dispatcher/networkd-dispatcher.mk index 2b1aa257ce77..a3e0319c1052 100644 --- a/package/networkd-dispatcher/networkd-dispatcher.mk +++ b/package/networkd-dispatcher/networkd-dispatcher.mk @@ -4,7 +4,7 @@ # ################################################################################ -NETWORKD_DISPATCHER_VERSION = 2.2.3 +NETWORKD_DISPATCHER_VERSION = 2.2.4 NETWORKD_DISPATCHER_SOURCE = networkd-dispatcher-$(NETWORKD_DISPATCHER_VERSION).tar.bz2 NETWORKD_DISPATCHER_SITE = https://gitlab.com/craftyguy/networkd-dispatcher/-/archive/$(NETWORKD_DISPATCHER_VERSION) NETWORKD_DISPATCHER_LICENSE = GPL-3.0 diff --git a/package/newt/newt.hash b/package/newt/newt.hash index 36487d998ee9..6d5f7c3dcad3 100644 --- a/package/newt/newt.hash +++ b/package/newt/newt.hash @@ -1,5 +1,5 @@ # From https://releases.pagure.org/newt/CHECKSUMS -sha256 265eb46b55d7eaeb887fca7a1d51fe115658882dfe148164b6c49fccac5abb31 newt-0.52.21.tar.gz -sha512 d53d927996d17223e688bf54dccfabb2a3dc02bfe38ffc455964e86feaca3cd9f9ab5b19774433be430fa4d761cd9b6680b558f297acb86f80daeb6942f7d23c newt-0.52.21.tar.gz +sha256 caa372907b14ececfe298f0d512a62f41d33b290610244a58aed07bbc5ada12a newt-0.52.23.tar.gz +sha512 c845d03946f72a6b46301152d7dc308f71d17b03d255d73d02ea7deb5392e22522dc8504f941fcffe5309c6c10f1b56742dac8585a16b0dc7e0c463f18871dda newt-0.52.23.tar.gz # Locally calculated sha256 b7993225104d90ddd8024fd838faf300bea5e83d91203eab98e29512acebd69c COPYING diff --git a/package/newt/newt.mk b/package/newt/newt.mk index b39acb0fcf83..3c9efe132f3e 100644 --- a/package/newt/newt.mk +++ b/package/newt/newt.mk @@ -4,7 +4,7 @@ # ################################################################################ -NEWT_VERSION = 0.52.21 +NEWT_VERSION = 0.52.23 NEWT_SITE = https://pagure.io/releases/newt NEWT_INSTALL_STAGING = YES NEWT_DEPENDENCIES = popt slang $(TARGET_NLS_DEPENDENCIES) diff --git a/package/nfs-utils/0001-configure.ac-libevent-and-libsqlite3-checked-when-nf.patch b/package/nfs-utils/0001-configure.ac-libevent-and-libsqlite3-checked-when-nf.patch new file mode 100644 index 000000000000..a6a6d56d7f5f --- /dev/null +++ b/package/nfs-utils/0001-configure.ac-libevent-and-libsqlite3-checked-when-nf.patch @@ -0,0 +1,79 @@ +From bc4a5deef9f820c55fdac3c0070364c17cd91cca Mon Sep 17 00:00:00 2001 +From: Wiktor Jaskulski +Date: Thu, 11 May 2023 15:28:23 -0400 +Subject: [PATCH] configure.ac: libevent and libsqlite3 checked when nfsv4 is + disabled + +Upstream: https://git.linux-nfs.org/?p=steved/nfs-utils.git;a=commit;h=bc4a5deef9f820c55fdac3c0070364c17cd91cca + +Signed-off-by: Steve Dickson +Signed-off-by: Giulio Benetti +--- + configure.ac | 38 +++++++++++++++----------------------- + 1 file changed, 15 insertions(+), 23 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 9df52e9c..6fbcb974 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -338,42 +338,34 @@ CPPFLAGS="${nfsutils_save_CPPFLAGS}" + AC_CHECK_HEADER(uuid/uuid.h, , + AC_MSG_ERROR([Cannot find needed header file uuid/uuid.h. Install libuuid-devel])) + ++dnl check for libevent libraries and headers ++AC_LIBEVENT ++ ++dnl Check for sqlite3 ++AC_SQLITE3_VERS ++ ++case $libsqlite3_cv_is_recent in ++yes) ;; ++unknown) ++ dnl do not fail when cross-compiling ++ AC_MSG_WARN([assuming sqlite is at least v3.3]) ;; ++*) ++ AC_MSG_ERROR([nfsdcld requires sqlite-devel]) ;; ++esac ++ + if test "$enable_nfsv4" = yes; then +- dnl check for libevent libraries and headers +- AC_LIBEVENT + + dnl check for the keyutils libraries and headers + AC_KEYUTILS + +- dnl Check for sqlite3 +- AC_SQLITE3_VERS +- + if test "$enable_nfsdcld" = "yes"; then + AC_CHECK_HEADERS([libgen.h sys/inotify.h], , + AC_MSG_ERROR([Cannot find header needed for nfsdcld])) +- +- case $libsqlite3_cv_is_recent in +- yes) ;; +- unknown) +- dnl do not fail when cross-compiling +- AC_MSG_WARN([assuming sqlite is at least v3.3]) ;; +- *) +- AC_MSG_ERROR([nfsdcld requires sqlite-devel]) ;; +- esac + fi + + if test "$enable_nfsdcltrack" = "yes"; then + AC_CHECK_HEADERS([libgen.h sys/inotify.h], , + AC_MSG_ERROR([Cannot find header needed for nfsdcltrack])) +- +- case $libsqlite3_cv_is_recent in +- yes) ;; +- unknown) +- dnl do not fail when cross-compiling +- AC_MSG_WARN([assuming sqlite is at least v3.3]) ;; +- *) +- AC_MSG_ERROR([nfsdcltrack requires sqlite-devel]) ;; +- esac + fi + + else +-- +2.34.1 + diff --git a/package/nfs-utils/0001-nfsrahead-fix-linking-while-static-linking.patch b/package/nfs-utils/0001-nfsrahead-fix-linking-while-static-linking.patch deleted file mode 100644 index e1d57f30cf41..000000000000 --- a/package/nfs-utils/0001-nfsrahead-fix-linking-while-static-linking.patch +++ /dev/null @@ -1,49 +0,0 @@ -From d9abb221cea81dee5956bd987c6efa680c03571a Mon Sep 17 00:00:00 2001 -From: Giulio Benetti -Date: Wed, 10 Aug 2022 23:38:17 +0200 -Subject: [PATCH] nfsrahead: fix linking while static linking - --lmount must preceed -lblkid and to obtain this let's add in configure.ac: -PKG_CHECK_MODULES([LIBMOUNT], [mount]) -and in tools/nfsrahead/Makefile.am let's substitute explicit `-lmount` -with: -$(LIBMOUNT_LIBS) -This way all the required libraries will be present and in the right order -when static linking. - -Signed-off-by: Giulio Benetti -[Upstream: https://git.linux-nfs.org/?p=steved/nfs-utils.git;a=commit;h=627c95b2b853161b359095e7fdf05d3b07d51379] ---- - configure.ac | 3 +++ - tools/nfsrahead/Makefile.am | 2 +- - 2 files changed, 4 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index f1c46c5c..ff85200b 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -273,6 +273,9 @@ AC_LIBCAP - dnl Check for -lxml2 - AC_LIBXML2 - -+dnl Check for -lmount -+PKG_CHECK_MODULES([LIBMOUNT], [mount]) -+ - # Check whether user wants TCP wrappers support - AC_TCP_WRAPPERS - -diff --git a/tools/nfsrahead/Makefile.am b/tools/nfsrahead/Makefile.am -index 845ea0d5..7e08233a 100644 ---- a/tools/nfsrahead/Makefile.am -+++ b/tools/nfsrahead/Makefile.am -@@ -1,6 +1,6 @@ - libexec_PROGRAMS = nfsrahead - nfsrahead_SOURCES = main.c --nfsrahead_LDFLAGS= -lmount -+nfsrahead_LDFLAGS= $(LIBMOUNT_LIBS) - nfsrahead_LDADD = ../../support/nfs/libnfsconf.la - - man5_MANS = nfsrahead.man --- -2.34.1 - diff --git a/package/nfs-utils/0002-configure.ac-allow-to-disable-nfsrahead-tool.patch b/package/nfs-utils/0002-configure.ac-allow-to-disable-nfsrahead-tool.patch deleted file mode 100644 index ee5e3fa25156..000000000000 --- a/package/nfs-utils/0002-configure.ac-allow-to-disable-nfsrahead-tool.patch +++ /dev/null @@ -1,68 +0,0 @@ -From 9a0002978eb32b78d22f053302e012a4255dc4ef Mon Sep 17 00:00:00 2001 -From: Giulio Benetti -Date: Mon, 19 Sep 2022 23:43:28 +0200 -Subject: [PATCH] configure.ac: allow to disable nfsrahead tool - -This allows to make libmount not mandatory but depending on nfsrahead -since it only requires it. This is useful when cross-compiling because -in that case we need rpcgen only built for host but not nfsrahead that -also require libmount. So this reduces the dependencies for host -building. - -Signed-off-by: Giulio Benetti -[Upstream: https://git.linux-nfs.org/?p=steved/nfs-utils.git;a=commit;h=844d3ad5376603bc9c205a6084d38a2d25146179] ---- - configure.ac | 13 ++++++++++--- - tools/Makefile.am | 6 +++++- - 2 files changed, 15 insertions(+), 4 deletions(-) - -diff --git a/configure.ac b/configure.ac -index ff85200b..5d9cbf31 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -249,6 +249,16 @@ AC_ARG_ENABLE(nfsdcld, - enable_nfsdcld=$enableval, - enable_nfsdcld="yes") - -+AC_ARG_ENABLE(nfsrahead, -+ [AS_HELP_STRING([--disable-nfsrahead],[disable nfsrahead command @<:@default=no@:>@])], -+ enable_nfsrahead=$enableval, -+ enable_nfsrahead="yes") -+ AM_CONDITIONAL(CONFIG_NFSRAHEAD, [test "$enable_nfsrahead" = "yes" ]) -+ if test "$enable_nfsrahead" = yes; then -+ dnl Check for -lmount -+ PKG_CHECK_MODULES([LIBMOUNT], [mount]) -+ fi -+ - AC_ARG_ENABLE(nfsdcltrack, - [AS_HELP_STRING([--disable-nfsdcltrack],[disable NFSv4 clientid tracking programs @<:@default=no@:>@])], - enable_nfsdcltrack=$enableval, -@@ -273,9 +283,6 @@ AC_LIBCAP - dnl Check for -lxml2 - AC_LIBXML2 - --dnl Check for -lmount --PKG_CHECK_MODULES([LIBMOUNT], [mount]) -- - # Check whether user wants TCP wrappers support - AC_TCP_WRAPPERS - -diff --git a/tools/Makefile.am b/tools/Makefile.am -index 40c17c37..48fd0cdf 100644 ---- a/tools/Makefile.am -+++ b/tools/Makefile.am -@@ -12,6 +12,10 @@ if CONFIG_NFSDCLD - OPTDIRS += nfsdclddb - endif - --SUBDIRS = locktest rpcdebug nlmtest mountstats nfs-iostat rpcctl nfsdclnts nfsrahead $(OPTDIRS) -+if CONFIG_NFSRAHEAD -+OPTDIRS += nfsrahead -+endif -+ -+SUBDIRS = locktest rpcdebug nlmtest mountstats nfs-iostat rpcctl nfsdclnts $(OPTDIRS) - - MAINTAINERCLEANFILES = Makefile.in --- -2.34.1 - diff --git a/package/nfs-utils/0002-support-reexport-guard-dlfcn.h-include-with-HAVE_DLF.patch b/package/nfs-utils/0002-support-reexport-guard-dlfcn.h-include-with-HAVE_DLF.patch new file mode 100644 index 000000000000..6612847be7e9 --- /dev/null +++ b/package/nfs-utils/0002-support-reexport-guard-dlfcn.h-include-with-HAVE_DLF.patch @@ -0,0 +1,44 @@ +From 274e4d212c30183242e48b639889865819f3ac33 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sun, 11 Jun 2023 08:57:11 +0200 +Subject: [PATCH] support/reexport: guard dlfcn.h include with HAVE_DLFCN_H + +Upstream: http://git.linux-nfs.org/?p=steved/nfs-utils.git;a=commitdiff;h=8125c6f4ad156a9bad0dc2cc42e0243380fc478d + +Signed-off-by: Bernd Kuhls +--- + support/reexport/fsidd.c | 2 ++ + support/reexport/reexport.c | 2 ++ + 2 files changed, 4 insertions(+) + +diff --git a/support/reexport/fsidd.c b/support/reexport/fsidd.c +index 37649d06..d4b245e8 100644 +--- a/support/reexport/fsidd.c ++++ b/support/reexport/fsidd.c +@@ -3,7 +3,9 @@ + #endif + + #include ++#ifdef HAVE_DLFCN_H + #include ++#endif + #include + #include + #include +diff --git a/support/reexport/reexport.c b/support/reexport/reexport.c +index d597a2f7..d9a700af 100644 +--- a/support/reexport/reexport.c ++++ b/support/reexport/reexport.c +@@ -2,7 +2,9 @@ + #include + #endif + ++#ifdef HAVE_DLFCN_H + #include ++#endif + #include + #include + #include +-- +2.39.2 + diff --git a/package/nfs-utils/Config.in b/package/nfs-utils/Config.in index f3cb17918e1f..b4568dc6f354 100644 --- a/package/nfs-utils/Config.in +++ b/package/nfs-utils/Config.in @@ -6,7 +6,9 @@ config BR2_PACKAGE_NFS_UTILS bool "nfs-utils" depends on BR2_TOOLCHAIN_HAS_THREADS # libtirpc, rpcbind depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_LIBEVENT select BR2_PACKAGE_LIBTIRPC # IPv6 requires libtirpc + select BR2_PACKAGE_SQLITE select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBBLKID select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT @@ -24,9 +26,7 @@ config BR2_PACKAGE_NFS_UTILS_NFSV4 bool "NFSv4/NFSv4.1" depends on !BR2_STATIC_LIBS # keyutils, lvm2 select BR2_PACKAGE_KEYUTILS - select BR2_PACKAGE_LIBEVENT select BR2_PACKAGE_LVM2 - select BR2_PACKAGE_SQLITE help Enable NFSv4/NFSv4.1/NFSv4.2 support diff --git a/package/nfs-utils/nfs-utils.hash b/package/nfs-utils/nfs-utils.hash index 2efe693875df..015906553d83 100644 --- a/package/nfs-utils/nfs-utils.hash +++ b/package/nfs-utils/nfs-utils.hash @@ -1,4 +1,4 @@ -# From https://www.kernel.org/pub/linux/utils/nfs-utils/2.6.2/sha256sums.asc -sha256 5200873e81c4d610e2462fc262fe18135f2dbe78b7979f95accd159ae64d5011 nfs-utils-2.6.2.tar.xz +# From https://www.kernel.org/pub/linux/utils/nfs-utils/2.6.3/sha256sums.asc +sha256 38d89e853a71d3c560ff026af3d969d75e24f782ff68324e76261fe0344459e1 nfs-utils-2.6.3.tar.xz # Locally computed sha256 576540abf5e95029ad4ad90e32071385a5e95b2c30708c706116f3eb87b9a3de COPYING diff --git a/package/nfs-utils/nfs-utils.mk b/package/nfs-utils/nfs-utils.mk index 1a4a99f566af..3c85be0558e4 100644 --- a/package/nfs-utils/nfs-utils.mk +++ b/package/nfs-utils/nfs-utils.mk @@ -4,12 +4,12 @@ # ################################################################################ -NFS_UTILS_VERSION = 2.6.2 +NFS_UTILS_VERSION = 2.6.3 NFS_UTILS_SOURCE = nfs-utils-$(NFS_UTILS_VERSION).tar.xz NFS_UTILS_SITE = https://www.kernel.org/pub/linux/utils/nfs-utils/$(NFS_UTILS_VERSION) NFS_UTILS_LICENSE = GPL-2.0+ NFS_UTILS_LICENSE_FILES = COPYING -NFS_UTILS_DEPENDENCIES = host-nfs-utils host-pkgconf libtirpc util-linux +NFS_UTILS_DEPENDENCIES = host-nfs-utils host-pkgconf libevent libtirpc sqlite util-linux NFS_UTILS_CPE_ID_VENDOR = linux-nfs NFS_UTILS_AUTORECONF = YES @@ -22,7 +22,7 @@ NFS_UTILS_CONF_OPTS = \ --with-statedir=/run/nfs \ --with-rpcgen=$(HOST_DIR)/bin/rpcgen -HOST_NFS_UTILS_DEPENDENCIES = host-pkgconf host-libtirpc +HOST_NFS_UTILS_DEPENDENCIES = host-pkgconf host-libtirpc host-libevent host-sqlite HOST_NFS_UTILS_CONF_OPTS = \ --enable-tirpc \ @@ -47,7 +47,7 @@ NFS_UTILS_TARGETS_$(BR2_PACKAGE_NFS_UTILS_RPC_NFSD) += usr/sbin/exportfs \ ifeq ($(BR2_PACKAGE_NFS_UTILS_NFSV4),y) NFS_UTILS_CONF_OPTS += --enable-nfsv4 --enable-nfsv41 -NFS_UTILS_DEPENDENCIES += keyutils libevent lvm2 sqlite +NFS_UTILS_DEPENDENCIES += keyutils lvm2 else NFS_UTILS_CONF_OPTS += --disable-nfsv4 --disable-nfsv41 endif diff --git a/package/nftables/Config.in b/package/nftables/Config.in index 8d172b72569a..833a3a38a2c2 100644 --- a/package/nftables/Config.in +++ b/package/nftables/Config.in @@ -13,5 +13,10 @@ config BR2_PACKAGE_NFTABLES http://www.netfilter.org/projects/nftables/index.html +# Legacy: this used to be handled in nftables.mk +if BR2_PACKAGE_NFTABLES +source "package/nftables/nftables-python/Config.in" +endif + comment "nftables needs a toolchain w/ wchar, headers >= 3.12" depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 diff --git a/package/nftables/nftables-python/Config.in b/package/nftables/nftables-python/Config.in new file mode 100644 index 000000000000..b16e2d0ad114 --- /dev/null +++ b/package/nftables/nftables-python/Config.in @@ -0,0 +1,4 @@ +config BR2_PACKAGE_NFTABLES_PYTHON + bool "python bindings" + default y # legacy + depends on BR2_PACKAGE_PYTHON3 diff --git a/package/nftables/nftables-python/nftables-python.hash b/package/nftables/nftables-python/nftables-python.hash new file mode 120000 index 000000000000..9ac74580e7cc --- /dev/null +++ b/package/nftables/nftables-python/nftables-python.hash @@ -0,0 +1 @@ +../nftables.hash \ No newline at end of file diff --git a/package/nftables/nftables-python/nftables-python.mk b/package/nftables/nftables-python/nftables-python.mk new file mode 100644 index 000000000000..908bacd99a26 --- /dev/null +++ b/package/nftables/nftables-python/nftables-python.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# nftables-python +# +################################################################################ + +# The following assignments work only because nftables.mk is included before +# this file is. +NFTABLES_PYTHON_VERSION = $(NFTABLES_VERSION) +NFTABLES_PYTHON_SOURCE = $(NFTABLES_SOURCE) +NFTABLES_PYTHON_SITE = $(NFTABLES_SITE) +NFTABLES_PYTHON_LICENSE = $(NFTABLES_LICENSE) +NFTABLES_PYTHON_LICENSE_FILES = $(NFTABLES_LICENSE_FILES) + +# We share the same source code as nftables +NFTABLES_PYTHON_DL_SUBDIR = nftables + +NFTABLES_PYTHON_SUBDIR = py + +NFTABLES_PYTHON_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/nftables/nftables.hash b/package/nftables/nftables.hash index 5e5134b61d1b..c5ede1130aa9 100644 --- a/package/nftables/nftables.hash +++ b/package/nftables/nftables.hash @@ -1,3 +1,8 @@ # From https://netfilter.org/projects/nftables/downloads.html -sha256 8d1b4b18393af43698d10baa25d2b9b6397969beecac7816c35dd0714e4de50a nftables-1.0.5.tar.bz2 -sha256 c17bc4fa5b2434c6f283ffcb2312e5bf3c7cdf5787b79505f094d8de734ac53e COPYING +# Checked pgp signature: +# https://netfilter.org/projects/nftables/files/nftables-1.0.8.tar.xz.sig +# with key: +# https://netfilter.org/files/coreteam-gpg-key-0xD55D978A8A1420E4.txt +sha256 9373740de41a82dbc98818e0a46a073faeb8a8d0689fa4fa1a74399c32bf3d50 nftables-1.0.8.tar.xz +# Locally computed: +sha256 4ee1e51baf5f3166712fa0c3e01338c7257e50ddef245d28bb14ad68f6070ba5 COPYING diff --git a/package/nftables/nftables.mk b/package/nftables/nftables.mk index 9d60736d7f73..9cba24337231 100644 --- a/package/nftables/nftables.mk +++ b/package/nftables/nftables.mk @@ -4,15 +4,22 @@ # ################################################################################ -NFTABLES_VERSION = 1.0.5 -NFTABLES_SOURCE = nftables-$(NFTABLES_VERSION).tar.bz2 +NFTABLES_VERSION = 1.0.8 +NFTABLES_SOURCE = nftables-$(NFTABLES_VERSION).tar.xz NFTABLES_SITE = https://www.netfilter.org/projects/nftables/files NFTABLES_DEPENDENCIES = libmnl libnftnl host-pkgconf $(TARGET_NLS_DEPENDENCIES) NFTABLES_LICENSE = GPL-2.0 NFTABLES_LICENSE_FILES = COPYING -NFTABLES_CONF_OPTS = --disable-debug --disable-man-doc --disable-pdf-doc +NFTABLES_INSTALL_STAGING = YES NFTABLES_SELINUX_MODULES = iptables +# Python bindings are handled by package nftables-python +NFTABLES_CONF_OPTS = \ + --disable-debug \ + --disable-man-doc \ + --disable-pdf-doc \ + --disable-python + ifeq ($(BR2_PACKAGE_GMP),y) NFTABLES_DEPENDENCIES += gmp NFTABLES_CONF_OPTS += --without-mini-gmp @@ -42,13 +49,6 @@ else NFTABLES_CONF_OPTS += --without-json endif -ifeq ($(BR2_PACKAGE_PYTHON3),y) -NFTABLES_CONF_OPTS += --enable-python -NFTABLES_DEPENDENCIES += python3 -else -NFTABLES_CONF_OPTS += --disable-python -endif - NFTABLES_CONF_ENV = LIBS="$(NFTABLES_LIBS)" define NFTABLES_LINUX_CONFIG_FIXUPS @@ -58,3 +58,6 @@ define NFTABLES_LINUX_CONFIG_FIXUPS endef $(eval $(autotools-package)) + +# Legacy: we used to handle it in this .mk +include package/nftables/nftables-python/nftables-python.mk diff --git a/package/nghttp2/nghttp2.hash b/package/nghttp2/nghttp2.hash index 3702a91b5e36..18774d01d43f 100644 --- a/package/nghttp2/nghttp2.hash +++ b/package/nghttp2/nghttp2.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 eacc6f0f8543583ecd659faf0a3f906ed03826f1d4157b536b4b385fe47c5bb8 nghttp2-1.41.0.tar.gz +sha256 9210b0113109f43be526ac5835d58a701411821a4d39e155c40d67c40f47a958 nghttp2-1.57.0.tar.xz sha256 6b94f3abc1aabd0c72a7c7d92a77f79dda7c8a0cb3df839a97890b4116a2de2a COPYING diff --git a/package/nghttp2/nghttp2.mk b/package/nghttp2/nghttp2.mk index 9190fa30d60c..70a25d409cc2 100644 --- a/package/nghttp2/nghttp2.mk +++ b/package/nghttp2/nghttp2.mk @@ -4,7 +4,8 @@ # ################################################################################ -NGHTTP2_VERSION = 1.41.0 +NGHTTP2_VERSION = 1.57.0 +NGHTTP2_SOURCE = nghttp2-$(NGHTTP2_VERSION).tar.xz NGHTTP2_SITE = https://github.com/nghttp2/nghttp2/releases/download/v$(NGHTTP2_VERSION) NGHTTP2_LICENSE = MIT NGHTTP2_LICENSE_FILES = COPYING diff --git a/package/nginx-naxsi/0001-naxsi_src-naxsi_runtime.c-fix-build-without-x_forwar.patch b/package/nginx-naxsi/0001-naxsi_src-naxsi_runtime.c-fix-build-without-x_forwar.patch deleted file mode 100644 index 238a01923df9..000000000000 --- a/package/nginx-naxsi/0001-naxsi_src-naxsi_runtime.c-fix-build-without-x_forwar.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 8ea5218b07f715e9616a846bf305633ef1b3aa2a Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Sat, 14 Aug 2021 11:46:08 +0200 -Subject: [PATCH] naxsi_src/naxsi_runtime.c: fix build without x_forwarded_for - -x_forwarded_for is not available if realip, geo, geoip or proxy modules -aren't enabled resulting in the following build failure since version -1.1a and -https://github.com/nbs-system/naxsi/commit/07a056ccd36bc3c5c40dc17991db226cb8cf6241: - -/home/buildroot/autobuild/instance-3/output-1/build/nginx-naxsi-1.3/naxsi_src/naxsi_runtime.c: In function 'ngx_http_naxsi_data_parse': -/home/buildroot/autobuild/instance-3/output-1/build/nginx-naxsi-1.3/naxsi_src/naxsi_runtime.c:2846:20: error: 'ngx_http_headers_in_t' has no member named 'x_forwarded_for' - if (r->headers_in.x_forwarded_for.nelts >= 1) { - ^ - -Fixes: - - http://autobuild.buildroot.org/results/cdbc1536f6b5de3d4c836efa2f0dcaf0cdbb1462 - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/nbs-system/naxsi/pull/568] ---- - naxsi_src/naxsi_runtime.c | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/naxsi_src/naxsi_runtime.c b/naxsi_src/naxsi_runtime.c -index 28e0b29..6a723d2 100644 ---- a/naxsi_src/naxsi_runtime.c -+++ b/naxsi_src/naxsi_runtime.c -@@ -2842,10 +2842,12 @@ ngx_http_naxsi_data_parse(ngx_http_request_ctx_t* ctx, ngx_http_request_t* r) - unsigned int n = 0; - ngx_table_elt_t** h = NULL; - ngx_array_t a; -+#if (NGX_HTTP_X_FORWARDED_FOR) - if (r->headers_in.x_forwarded_for.nelts >= 1) { - a = r->headers_in.x_forwarded_for; - n = a.nelts; - } -+#endif - if (n >= 1) - h = a.elts; - if (n >= 1) { -@@ -2879,6 +2881,7 @@ ngx_http_naxsi_update_current_ctx_status(ngx_http_request_ctx_t* ctx, - - /*cr, sc, cf, ctx*/ - if (cf->check_rules && ctx->special_scores) { -+#if (NGX_HTTP_X_FORWARDED_FOR) - if (r->headers_in.x_forwarded_for.nelts >= 1) { - a = r->headers_in.x_forwarded_for; - n = a.nelts; -@@ -2896,7 +2899,9 @@ ngx_http_naxsi_update_current_ctx_status(ngx_http_request_ctx_t* ctx, - memcpy(ip.data, h[0]->value.data, ip.len); - ignore = nx_can_ignore_ip(&ip, cf) || nx_can_ignore_cidr(&ip, cf); - } -- } else { -+ } else -+#endif -+ { - ngx_str_t* ip = &r->connection->addr_text; - NX_DEBUG(_debug_whitelist_ignore, - NGX_LOG_DEBUG_HTTP, --- -2.30.2 - diff --git a/package/nginx-naxsi/0002-PCRE2-compatibility.patch b/package/nginx-naxsi/0002-PCRE2-compatibility.patch deleted file mode 100644 index aa3df4dff7d8..000000000000 --- a/package/nginx-naxsi/0002-PCRE2-compatibility.patch +++ /dev/null @@ -1,221 +0,0 @@ -From 2937c44276cba21601ade4e265d32515f570d68c Mon Sep 17 00:00:00 2001 -From: Danila Vershinin -Date: Thu, 16 Jun 2022 01:22:23 +0300 -Subject: [PATCH] PCRE2 compatibility (#587) - -* Fix: use pcre2 when building with nginx >= 1.21.5 - -I've tried to compile naxsi 1.3 as module for nginx 1.21.6, and got the error: - -error: invalid use of incomplete typedef 'ngx_regex_t' {aka 'struct pcre2_real_code_8'} - 205 | (tmp_idx < len && (match = pcre_exec(rl->br->rx->regex->code, - -I found this issue report: Ref: https://github.com/nbs-system/naxsi/issues/580 -then i tried to solve the pcre2 compatibility issue. - -I've included an helper function that is 'copied' from: https://github.com/nginx/nginx/blob/master/src/core/ngx_regex.c#L393 -that it is called in place of 'pcre_exec' when nginx_version >= 1021005 - -Not sure if this is the best solution, but I managed to build naxsi 1.3 as module for nginx 1.21.6 succesfully, and it seems to work well. - -I'm not used to develop in C anymore (since 25 years ago, at least!), but I hope that this patch I made can help anybody else. - -* Added a check for nginx_version >= 1021005 - -Added a check for nginx_version >= 1021005 to avoid helper function definition on older versions - -* Use NGX_PCRE2 conditional - -Update naxsi.h - -Don't include pcre.h in order for compilation to work both against pcre and pcre2 - -Fix pcre vs pcre2 compilation - -Co-authored-by: laluigino <99279306+laluigino@users.noreply.github.com> -[Retrieved from: -https://github.com/nbs-system/naxsi/commit/2937c44276cba21601ade4e265d32515f570d68c] -Signed-off-by: Fabrice Fontaine ---- - naxsi_src/naxsi.h | 1 - - naxsi_src/naxsi_config.c | 9 ++++- - naxsi_src/naxsi_runtime.c | 82 ++++++++++++++++++++++++++++++++++++++- - naxsi_src/naxsi_utils.c | 8 ++++ - 4 files changed, 96 insertions(+), 4 deletions(-) - -diff --git a/naxsi_src/naxsi.h b/naxsi_src/naxsi.h -index 53df1bd8..b2f5c1a5 100644 ---- a/naxsi_src/naxsi.h -+++ b/naxsi_src/naxsi.h -@@ -19,7 +19,6 @@ - #include - #include - #include --#include - - extern ngx_module_t ngx_http_naxsi_module; - -diff --git a/naxsi_src/naxsi_config.c b/naxsi_src/naxsi_config.c -index 4ea15567..6d2f0e23 100644 ---- a/naxsi_src/naxsi_config.c -+++ b/naxsi_src/naxsi_config.c -@@ -322,8 +322,11 @@ naxsi_zone(ngx_conf_t* r, ngx_str_t* tmp, ngx_http_rule_t* rule) - - custom_rule->target_rx = ngx_pcalloc(r->pool, sizeof(ngx_regex_compile_t)); - return_value_if(!custom_rule->target_rx, NGX_CONF_ERROR); -- -+#if (NGX_PCRE2) -+ custom_rule->target_rx->options = PCRE2_CASELESS | PCRE2_MULTILINE; -+#else - custom_rule->target_rx->options = PCRE_CASELESS | PCRE_MULTILINE; -+#endif - custom_rule->target_rx->pattern = custom_rule->target; - custom_rule->target_rx->pool = r->pool; - custom_rule->target_rx->err.len = 0; -@@ -442,7 +445,11 @@ naxsi_rx(ngx_conf_t* r, ngx_str_t* tmp, ngx_http_rule_t* rule) - ha.len = tmp->len - strlen(RX_T); - rgc = ngx_pcalloc(r->pool, sizeof(ngx_regex_compile_t)); - return_value_if(!rgc, NGX_CONF_ERROR); -+#if (NGX_PCRE2) -+ rgc->options = PCRE2_CASELESS | PCRE2_MULTILINE; -+#else - rgc->options = PCRE_CASELESS | PCRE_MULTILINE; -+#endif - rgc->pattern = ha; - rgc->pool = r->pool; - rgc->err.len = 0; -diff --git a/naxsi_src/naxsi_runtime.c b/naxsi_src/naxsi_runtime.c -index d548ce37..784852b0 100644 ---- a/naxsi_src/naxsi_runtime.c -+++ b/naxsi_src/naxsi_runtime.c -@@ -181,6 +181,75 @@ ngx_http_naxsi_rawbody_parse(ngx_http_request_ctx_t* ctx, - unsigned char* - ngx_utf8_check(ngx_str_t* str); - -+#if defined nginx_version && (nginx_version >= 1021005) -+/* -+ * variables to use pcre2 -+ */ -+static pcre2_match_data *ngx_pcre2_match_data; -+static ngx_uint_t ngx_pcre2_match_data_size; -+ -+/* -+ * helper function to use pcre2 -+ */ -+ngx_int_t -+ngx_pcre2_exec(ngx_regex_t *re, unsigned char* str, unsigned int len, ngx_int_t tmp_idx, int *captures, ngx_uint_t size) -+{ -+ size_t *ov; -+ ngx_int_t rc; -+ ngx_uint_t n, i; -+ -+ /* -+ * The pcre2_match() function might allocate memory for backtracking -+ * frames, typical allocations are from 40k and above. So the allocator -+ * is configured to do direct allocations from heap during matching. -+ */ -+ -+ if (ngx_pcre2_match_data == NULL -+ || size > ngx_pcre2_match_data_size) -+ { -+ /* -+ * Allocate a match data if not yet allocated or smaller than -+ * needed. -+ */ -+ -+ if (ngx_pcre2_match_data) { -+ pcre2_match_data_free(ngx_pcre2_match_data); -+ } -+ -+ ngx_pcre2_match_data_size = size; -+ ngx_pcre2_match_data = pcre2_match_data_create(size / 3, NULL); -+ -+ if (ngx_pcre2_match_data == NULL) { -+ rc = PCRE2_ERROR_NOMEMORY; -+ goto failed; -+ } -+ } -+ -+ rc = pcre2_match(re, str, len, tmp_idx, 0, ngx_pcre2_match_data, NULL); -+ -+ if (rc < 0) { -+ goto failed; -+ } -+ -+ n = pcre2_get_ovector_count(ngx_pcre2_match_data); -+ ov = pcre2_get_ovector_pointer(ngx_pcre2_match_data); -+ -+ if (n > size / 3) { -+ n = size / 3; -+ } -+ -+ for (i = 0; i < n; i++) { -+ captures[i * 2] = ov[i * 2]; -+ captures[i * 2 + 1] = ov[i * 2 + 1]; -+ } -+ -+failed: -+ -+ return rc; -+ -+} -+#endif -+ - /* - ** in : string to inspect, associated rule - ** does : apply the rule on the string, return 1 if matched, -@@ -201,7 +270,14 @@ ngx_http_process_basic_rule_buffer(ngx_str_t* str, ngx_http_rule_t* rl, ngx_int_ - tmp_idx = 0; - len = str->len; - while --#if defined nginx_version && (nginx_version >= 1002002 && nginx_version != 1003000) -+#if (NGX_PCRE2) -+ (tmp_idx < len && (match = ngx_pcre2_exec(rl->br->rx->regex, -+ str->data, -+ str->len, -+ tmp_idx, -+ captures, -+ 30)) >= 0) -+#elif defined nginx_version && (nginx_version >= 1002002 && nginx_version != 1003000) - (tmp_idx < len && (match = pcre_exec(rl->br->rx->regex->code, - 0, - (const char*)str->data, -@@ -496,7 +572,9 @@ ngx_http_naxsi_pcre_wrapper(ngx_regex_compile_t* rx, unsigned char* str, unsigne - int match; - int captures[30]; - --#if defined nginx_version && (nginx_version >= 1002002 && nginx_version != 1003000) -+#if (NGX_PCRE2) -+ match = ngx_pcre2_exec(rx->regex, str, len, 0, captures, 1); -+#elif defined nginx_version && (nginx_version >= 1002002 && nginx_version != 1003000) - match = pcre_exec(rx->regex->code, 0, (const char*)str, len, 0, 0, captures, 1); - #elif defined nginx_version && (nginx_version > 1001011) - match = pcre_exec(rx->regex->pcre, 0, (const char*)str, len, 0, 0, captures, 1); -diff --git a/naxsi_src/naxsi_utils.c b/naxsi_src/naxsi_utils.c -index e3d6f185..d2ecedec 100644 ---- a/naxsi_src/naxsi_utils.c -+++ b/naxsi_src/naxsi_utils.c -@@ -800,7 +800,11 @@ ngx_http_naxsi_create_hashtables_n(ngx_http_naxsi_loc_conf_t* dlc, ngx_conf_t* c - ngx_pcalloc(cf->pool, sizeof(ngx_regex_compile_t)); - rgc = custloc_array(curr_r->br->custom_locations->elts)[name_idx].target_rx; - if (rgc) { -+#if (NGX_PCRE2) -+ rgc->options = PCRE2_CASELESS | PCRE2_MULTILINE; -+#else - rgc->options = PCRE_CASELESS | PCRE_MULTILINE; -+#endif - rgc->pattern = custloc_array(curr_r->br->custom_locations->elts)[name_idx].target; - rgc->pool = cf->pool; - rgc->err.len = 0; -@@ -816,7 +820,11 @@ ngx_http_naxsi_create_hashtables_n(ngx_http_naxsi_loc_conf_t* dlc, ngx_conf_t* c - ngx_pcalloc(cf->pool, sizeof(ngx_regex_compile_t)); - rgc = custloc_array(curr_r->br->custom_locations->elts)[uri_idx].target_rx; - if (rgc) { -+#if (NGX_PCRE2) -+ rgc->options = PCRE2_CASELESS | PCRE2_MULTILINE; -+#else - rgc->options = PCRE_CASELESS | PCRE_MULTILINE; -+#endif - rgc->pattern = custloc_array(curr_r->br->custom_locations->elts)[uri_idx].target; - rgc->pool = cf->pool; - rgc->err.len = 0; diff --git a/package/nginx-naxsi/nginx-naxsi.hash b/package/nginx-naxsi/nginx-naxsi.hash index 4712ede2af1f..a724941b2568 100644 --- a/package/nginx-naxsi/nginx-naxsi.hash +++ b/package/nginx-naxsi/nginx-naxsi.hash @@ -1,4 +1,4 @@ # Locally calculated -sha256 439c8677372d2597b4360bbcc10bc86490de1fc75695b193ad5df154a214d628 nginx-naxsi-1.3.tar.gz +sha256 dbe2177411457f1cba98ee4673ce31876994ad06bdce5ecc0ee66384ef0e420e nginx-naxsi-d714f1636ea49a9a9f4f06dba14aee003e970834.tar.gz sha256 589ed823e9a84c56feb95ac58e7cf384626b9cbf4fda2a907bc36e103de1bad2 LICENSE sha256 d0732bc23658db5b9749e3f9cd4fe0f9b3e132b5955adccb08821845fe2a21c8 naxsi_src/ext/libinjection/COPYING diff --git a/package/nginx-naxsi/nginx-naxsi.mk b/package/nginx-naxsi/nginx-naxsi.mk index 2dba8ad5892c..84d167a663bb 100644 --- a/package/nginx-naxsi/nginx-naxsi.mk +++ b/package/nginx-naxsi/nginx-naxsi.mk @@ -4,7 +4,7 @@ # ################################################################################ -NGINX_NAXSI_VERSION = 1.3 +NGINX_NAXSI_VERSION = d714f1636ea49a9a9f4f06dba14aee003e970834 NGINX_NAXSI_SITE = $(call github,nbs-system,naxsi,$(NGINX_NAXSI_VERSION)) NGINX_NAXSI_LICENSE = GPL-3.0, BSD-3-Clause (libinjection) NGINX_NAXSI_LICENSE_FILES = LICENSE naxsi_src/ext/libinjection/COPYING diff --git a/package/nginx/Config.in b/package/nginx/Config.in index 406a1c861a61..8e888baa1c6b 100644 --- a/package/nginx/Config.in +++ b/package/nginx/Config.in @@ -6,7 +6,7 @@ menuconfig BR2_PACKAGE_NGINX nginx is an HTTP and reverse proxy server, as well as a mail proxy server. - http://nginx.org/ + https://nginx.org/ if BR2_PACKAGE_NGINX diff --git a/package/nginx/nginx.hash b/package/nginx/nginx.hash index 06454c5e320c..24bc588d855e 100644 --- a/package/nginx/nginx.hash +++ b/package/nginx/nginx.hash @@ -1,4 +1,4 @@ # Locally calculated after checking pgp signature -sha256 9ebb333a9e82b952acd3e2b4aeb1d4ff6406f72491bab6cd9fe69f0dea737f31 nginx-1.22.1.tar.gz +sha256 77a2541637b92a621e3ee76776c8b7b40cf6d707e69ba53a940283e30ff2f55d nginx-1.24.0.tar.gz # License files, locally calculated sha256 ececed0b0e7243a4766cbc62b26df4bd3513b41de3a07425da1679c836d06320 LICENSE diff --git a/package/nginx/nginx.mk b/package/nginx/nginx.mk index 10cc95d90ec1..7bd2173b4892 100644 --- a/package/nginx/nginx.mk +++ b/package/nginx/nginx.mk @@ -4,8 +4,8 @@ # ################################################################################ -NGINX_VERSION = 1.22.1 -NGINX_SITE = http://nginx.org/download +NGINX_VERSION = 1.24.0 +NGINX_SITE = https://nginx.org/download NGINX_LICENSE = BSD-2-Clause NGINX_LICENSE_FILES = LICENSE NGINX_CPE_ID_VENDOR = f5 diff --git a/package/nmap/0002-nping-Crypto.cc-fix-build-with-libressl-3.5.0.patch b/package/nmap/0002-nping-Crypto.cc-fix-build-with-libressl-3.5.0.patch new file mode 100644 index 000000000000..f2bdf5904dd3 --- /dev/null +++ b/package/nmap/0002-nping-Crypto.cc-fix-build-with-libressl-3.5.0.patch @@ -0,0 +1,39 @@ +From 4ebea5c1d1a10be0d0165da3b9c0e1fa82c3db3c Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sat, 21 May 2022 17:51:37 +0200 +Subject: [PATCH] nping/Crypto.cc: fix build with libressl >= 3.5.0 + +Fix the following build failure with libressl >= 3.5.0: + +Crypto.cc: In static member function 'static int Crypto::aes128_cbc_encrypt(u8*, size_t, u8*, u8*, size_t, u8*)': +Crypto.cc:139:26: error: aggregate 'EVP_CIPHER_CTX ctx' has incomplete type and cannot be defined + 139 | EVP_CIPHER_CTX ctx; + | ^~~ + +Fixes: + - http://autobuild.buildroot.org/results/2e6eebbe2ed8305b88047bc92c19350c1ecada16 + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/nmap/nmap/pull/2480 +--- + nping/Crypto.cc | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/nping/Crypto.cc b/nping/Crypto.cc +index 850438352..9f7c88686 100644 +--- a/nping/Crypto.cc ++++ b/nping/Crypto.cc +@@ -70,7 +70,9 @@ + #include + #include + +-#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined LIBRESSL_VERSION_NUMBER ++#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && \ ++ ((!defined LIBRESSL_VERSION_NUMBER) || \ ++ (defined LIBRESSL_VERSION_NUMBER && LIBRESSL_VERSION_NUMBER >= 0x30500000L)) + #define HAVE_OPAQUE_EVP_PKEY 1 + #define FUNC_EVP_MD_CTX_init EVP_MD_CTX_reset + #define FUNC_EVP_MD_CTX_cleanup EVP_MD_CTX_reset +-- +2.35.1 + diff --git a/package/nmap/nmap.hash b/package/nmap/nmap.hash index dc379f30d47e..99c5d5fb07d2 100644 --- a/package/nmap/nmap.hash +++ b/package/nmap/nmap.hash @@ -1,5 +1,5 @@ -# From https://nmap.org/dist/sigs/nmap-7.92.tar.bz2.digest.txt (lowercase) -sha256 a5479f2f8a6b0b2516767d2f7189c386c1dc858d997167d7ec5cfc798c7571a1 nmap-7.92.tar.bz2 +# From https://nmap.org/dist/sigs/nmap-7.94.tar.bz2.digest.txt (lowercase) +sha512 a55cddf9c1d9272243d01251eb3315b26f232d0596818857083222a385398618b428dc2bd8282c3e832527e135a74aeb020ca8609d83d8337342f5d8a04d7f2c nmap-7.94.tar.bz2 # Locally calculated -sha256 133794301a764dfe8a60e38601e56657b7113e0337b452189725bbbed58baea0 LICENSE +sha256 9d9a9a763c0e6145172cfe7d8483e23b38ce60b6c79a82e4894242917bdae6d3 LICENSE diff --git a/package/nmap/nmap.mk b/package/nmap/nmap.mk index f22a2295b182..6cd9d961198c 100644 --- a/package/nmap/nmap.mk +++ b/package/nmap/nmap.mk @@ -4,7 +4,7 @@ # ################################################################################ -NMAP_VERSION = 7.92 +NMAP_VERSION = 7.94 NMAP_SITE = https://nmap.org/dist NMAP_SOURCE = nmap-$(NMAP_VERSION).tar.bz2 NMAP_DEPENDENCIES = liblinear libpcap diff --git a/package/nmon/nmon.hash b/package/nmon/nmon.hash index 1d7226a4fe30..fdee8824a1d3 100644 --- a/package/nmon/nmon.hash +++ b/package/nmon/nmon.hash @@ -1,5 +1,5 @@ # From https://sourceforge.net/projects/nmon/files/ -md5 a8172601fdc05f3bc58455cbd3f4475e lmon16n.c -sha1 024a3b56179838f0e04bf1706cc9ba56595301a8 lmon16n.c +md5 a294567253cd49ccad66d5f56435ba9d lmon16p.c +sha1 90ec7cd38515323bc0a22ce1a34504e70e8f468f lmon16p.c # Locally computed -sha256 c0012cc2d925dee940c37ceae297abac64ba5a5c30e575e7418b04028613f5f2 lmon16n.c +sha256 5dc6045f6725e3249a969918fae69663a1d669162087720babcdb90fce9e6b2a lmon16p.c diff --git a/package/nmon/nmon.mk b/package/nmon/nmon.mk index 01371a8c74ed..4be19b1dcf76 100644 --- a/package/nmon/nmon.mk +++ b/package/nmon/nmon.mk @@ -4,7 +4,7 @@ # ################################################################################ -NMON_VERSION = 16n +NMON_VERSION = 16p NMON_SITE = https://sourceforge.net/projects/nmon/files NMON_SOURCE = lmon$(NMON_VERSION).c NMON_LICENSE = GPL-3.0+ diff --git a/package/nodejs/0001-add-qemu-wrapper-support.patch b/package/nodejs/0001-add-qemu-wrapper-support.patch deleted file mode 100644 index 184f3d19b703..000000000000 --- a/package/nodejs/0001-add-qemu-wrapper-support.patch +++ /dev/null @@ -1,97 +0,0 @@ -From 1f6c55d7318e7075169004b4314708f4766ec193 Mon Sep 17 00:00:00 2001 -From: Adam Duskett -Date: Mon, 27 Sep 2021 12:55:09 -0700 -Subject: [PATCH] add qemu-wrapper support - -V8's JIT infrastructure requires binaries such as mksnapshot and mkpeephole to -be run in the host during the build. However, these binaries must have the -same bit-width as the target (e.g. a x86_64 host targeting ARMv6 needs to -produce a 32-bit binary). To work around this issue, cross-compile the -binaries for the target and run them on the host with QEMU, much like -gobject-introspection. - -However, for the host-variant we do not want to use a -qemu-wrapper, so add @MAYBE_WRAPPER@ to the needed files and sed the path to -the qemu-wrapper on target builds, and remove @MAYBE_WRAPPER@ entirely on -host-builds. - -Signed-off-by: Adam Duskett ---- - node.gyp | 4 ++-- - tools/v8_gypfiles/v8.gyp | 10 +++++----- - 2 files changed, 7 insertions(+), 7 deletions(-) - -diff --git a/node.gyp b/node.gyp -index 97cdbb531d..db5cf51ce6 100644 ---- a/node.gyp -+++ b/node.gyp -@@ -319,7 +319,7 @@ - 'action_name': 'run_mkcodecache', - 'process_outputs_as_sources': 1, - 'inputs': [ -- '<(mkcodecache_exec)', -+ @MAYBE_WRAPPER@ '<(mkcodecache_exec)', - ], - 'outputs': [ - '<(SHARED_INTERMEDIATE_DIR)/node_code_cache.cc', -@@ -346,7 +346,7 @@ - 'action_name': 'node_mksnapshot', - 'process_outputs_as_sources': 1, - 'inputs': [ -- '<(node_mksnapshot_exec)', -+ @MAYBE_WRAPPER@ '<(node_mksnapshot_exec)', - '<(node_snapshot_main)', - ], - 'outputs': [ -diff --git a/tools/v8_gypfiles/v8.gyp b/tools/v8_gypfiles/v8.gyp -index 73099a03e4..88ca91efb4 100644 ---- a/tools/v8_gypfiles/v8.gyp -+++ b/tools/v8_gypfiles/v8.gyp -@@ -68,7 +68,7 @@ - { - 'action_name': 'run_torque_action', - 'inputs': [ # Order matters. -- '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)', -+ @MAYBE_WRAPPER@ '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)', - '<@(torque_files)', - ], - 'outputs': [ -@@ -99,7 +99,7 @@ - '<@(torque_outputs_inc)', - ], - 'action': [ -- '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)', -+ @MAYBE_WRAPPER@ '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)', - '-o', '<(SHARED_INTERMEDIATE_DIR)/torque-generated', - '-v8-root', '<(V8_ROOT)', - '<@(torque_files_without_v8_root)', -@@ -211,7 +211,7 @@ - { - 'action_name': 'generate_bytecode_builtins_list_action', - 'inputs': [ -- '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)bytecode_builtins_list_generator<(EXECUTABLE_SUFFIX)', -+ @MAYBE_WRAPPER@ '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)bytecode_builtins_list_generator<(EXECUTABLE_SUFFIX)', - ], - 'outputs': [ - '<(generate_bytecode_builtins_list_output)', -@@ -395,7 +395,7 @@ - ], - }, - 'inputs': [ -- '<(mksnapshot_exec)', -+ @MAYBE_WRAPPER@ '<(mksnapshot_exec)', - ], - 'outputs': [ - '<(INTERMEDIATE_DIR)/snapshot.cc', -@@ -1505,7 +1505,7 @@ - { - 'action_name': 'run_gen-regexp-special-case_action', - 'inputs': [ -- '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)gen-regexp-special-case<(EXECUTABLE_SUFFIX)', -+ @MAYBE_WRAPPER@ '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)gen-regexp-special-case<(EXECUTABLE_SUFFIX)', - ], - 'outputs': [ - '<(SHARED_INTERMEDIATE_DIR)/src/regexp/special-case.cc', --- -2.37.3 - diff --git a/package/nodejs/Config.in b/package/nodejs/Config.in index 1489306be09b..50d1360715e5 100644 --- a/package/nodejs/Config.in +++ b/package/nodejs/Config.in @@ -7,25 +7,26 @@ config BR2_PACKAGE_NODEJS_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_PACKAGE_HOST_QEMU_USER_ARCH_SUPPORTS -comment "nodejs needs a toolchain w/ C++, dynamic library, NPTL, gcc >= 7, wchar, host gcc >= 8" +comment "nodejs needs a toolchain w/ C++, dynamic library, NPTL, gcc >= 10, wchar, host gcc >= 10" depends on BR2_USE_MMU depends on BR2_PACKAGE_NODEJS_ARCH_SUPPORTS depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ - !BR2_HOST_GCC_AT_LEAST_8 || !BR2_TOOLCHAIN_GCC_AT_LEAST_7 || !BR2_USE_WCHAR + !BR2_HOST_GCC_AT_LEAST_10 || !BR2_TOOLCHAIN_GCC_AT_LEAST_10 || !BR2_USE_WCHAR config BR2_PACKAGE_NODEJS bool "nodejs" depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv depends on BR2_INSTALL_LIBSTDCPP depends on BR2_PACKAGE_NODEJS_ARCH_SUPPORTS - depends on BR2_HOST_GCC_AT_LEAST_8 # qemu - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 + depends on BR2_HOST_GCC_AT_LEAST_10 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_10 depends on BR2_USE_WCHAR # uses fork() depends on BR2_USE_MMU # uses dlopen(). On ARMv5, we could technically support static # linking, but that's too much of a corner case to support it. depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_NODEJS_SRC select BR2_PACKAGE_HOST_NODEJS if BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL != "" select BR2_PACKAGE_HOST_PYTHON3 select BR2_PACKAGE_HOST_PYTHON3_BZIP2 @@ -85,3 +86,5 @@ config BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL_DEPS modules. endif + +source "package/nodejs/nodejs-src/Config.in" diff --git a/package/nodejs/Config.in.host b/package/nodejs/Config.in.host index f7f2b80a9b83..a8ab89176c1b 100644 --- a/package/nodejs/Config.in.host +++ b/package/nodejs/Config.in.host @@ -1,14 +1,67 @@ +config BR2_PACKAGE_HOST_NODEJS_BIN_ARCH_SUPPORTS + bool + default y if BR2_HOSTARCH = "aarch64" + default y if BR2_HOSTARCH = "arm" + default y if BR2_HOSTARCH = "ppc64le" + default y if BR2_HOSTARCH = "x86_64" + +comment "host nodejs needs a host gcc >= 8" + depends on !BR2_PACKAGE_HOST_NODEJS_BIN_ARCH_SUPPORTS + depends on !BR2_HOST_GCC_AT_LEAST_8 + config BR2_PACKAGE_HOST_NODEJS bool "host nodejs" - depends on BR2_HOST_GCC_AT_LEAST_8 - select BR2_PACKAGE_HOST_PYTHON3 - select BR2_PACKAGE_HOST_PYTHON3_BZIP2 - select BR2_PACKAGE_HOST_PYTHON3_SSL + depends on BR2_PACKAGE_HOST_NODEJS_BIN_ARCH_SUPPORTS || \ + BR2_HOST_GCC_AT_LEAST_8 help Event-driven I/O server-side JavaScript environment based on V8. http://nodejs.org/ -comment "host nodejs needs a host gcc >= 8" +if BR2_PACKAGE_HOST_NODEJS + +choice + prompt "host nodejs variant" + default BR2_PACKAGE_HOST_NODEJS_BIN if BR2_PACKAGE_HOST_NODEJS_BIN_ARCH_SUPPORTS + default BR2_PACKAGE_HOST_NODEJS_SRC + help + Select a nodejs variant - built from source or + pre-built. + +config BR2_PACKAGE_HOST_NODEJS_BIN + bool "pre-built version" + depends on BR2_PACKAGE_HOST_NODEJS_BIN_ARCH_SUPPORTS + +config BR2_PACKAGE_HOST_NODEJS_SRC + bool "compile from source" + depends on BR2_HOST_GCC_AT_LEAST_8 + select BR2_PACKAGE_HOST_PYTHON3 + select BR2_PACKAGE_HOST_PYTHON3_BZIP2 + select BR2_PACKAGE_HOST_PYTHON3_SSL + +comment "host nodejs from source needs a host gcc >= 8" depends on !BR2_HOST_GCC_AT_LEAST_8 + +endchoice + +config BR2_PACKAGE_HOST_NODEJS_COREPACK + bool "Corepack" + help + Enable Corepack with host nodejs. + + Corepack is a zero-runtime-dependency Node.js script that + acts as a bridge between Node.js projects and the package + managers they are intended to be used with during + development. In practical terms, Corepack will let you use + Yarn and pnpm without having to install them - just like + what currently happens with npm, which is shipped by Node.js + by default. + +endif + +config BR2_PACKAGE_PROVIDES_HOST_NODEJS + string + default "host-nodejs-src" if BR2_PACKAGE_HOST_NODEJS_SRC + # default to host-nodejs-bin so it's used if nothing is set explicitly + default "host-nodejs-bin" if !BR2_PACKAGE_HOST_NODEJS_SRC diff --git a/package/nodejs/nodejs-bin/nodejs-bin.hash b/package/nodejs/nodejs-bin/nodejs-bin.hash new file mode 120000 index 000000000000..0c3ac2ce779e --- /dev/null +++ b/package/nodejs/nodejs-bin/nodejs-bin.hash @@ -0,0 +1 @@ +../nodejs.hash \ No newline at end of file diff --git a/package/nodejs/nodejs-bin/nodejs-bin.mk b/package/nodejs/nodejs-bin/nodejs-bin.mk new file mode 100644 index 000000000000..bf603e573c8f --- /dev/null +++ b/package/nodejs/nodejs-bin/nodejs-bin.mk @@ -0,0 +1,37 @@ +################################################################################ +# +# nodejs-bin +# +################################################################################ + +NODEJS_BIN_VERSION = $(NODEJS_COMMON_VERSION) +NODEJS_BIN_SITE = $(NODEJS_COMMON_SITE) +NODEJS_BIN_SOURCE = node-v$(NODEJS_BIN_VERSION)-linux-$(NODEJS_BIN_ARCH).tar.xz +HOST_NODEJS_BIN_ACTUAL_SOURCE_TARBALL = node-v$(NODEJS_BIN_VERSION).tar.xz +NODEJS_BIN_DL_SUBDIR = nodejs + +NODEJS_BIN_LICENSE = $(NODEJS_LICENSE) +NODEJS_BIN_LICENSE_FILES = $(NODEJS_LICENSE_FILES) +NODEJS_BIN_CPE_ID_VENDOR = $(NODEJS_CPE_ID_VENDOR) +NODEJS_BIN_CPE_ID_PRODUCT = $(NODEJS_CPE_ID_PRODUCT) + +HOST_NODEJS_BIN_PROVIDES = host-nodejs + +ifeq ($(HOSTARCH),aarch64) +NODEJS_BIN_ARCH = arm64 +else ifeq ($(HOSTARCH),arm) +# We assume that if someone does a build on ARM, it will be on an +# ARMv7 machine +NODEJS_BIN_ARCH = armv7l +else ifeq ($(HOSTARCH),ppc64le) +NODEJS_BIN_ARCH = ppc64le +else ifeq ($(HOSTARCH),x86_64) +NODEJS_BIN_ARCH = x64 +endif + +define HOST_NODEJS_BIN_INSTALL_CMDS + rsync -a --exclude=CHANGELOG.md --exclude=LICENSE --exclude=README.md \ + $(@D)/* $(HOST_DIR)/ +endef + +$(eval $(host-generic-package)) diff --git a/package/nodejs/nodejs-src/0001-add-qemu-wrapper-support.patch b/package/nodejs/nodejs-src/0001-add-qemu-wrapper-support.patch new file mode 100644 index 000000000000..18f320ec5dc9 --- /dev/null +++ b/package/nodejs/nodejs-src/0001-add-qemu-wrapper-support.patch @@ -0,0 +1,114 @@ +From 1f6c55d7318e7075169004b4314708f4766ec193 Mon Sep 17 00:00:00 2001 +From: Adam Duskett +Date: Mon, 27 Sep 2021 12:55:09 -0700 +Subject: [PATCH] add qemu-wrapper support + +V8's JIT infrastructure requires binaries such as mksnapshot and mkpeephole to +be run in the host during the build. However, these binaries must have the +same bit-width as the target (e.g. a x86_64 host targeting ARMv6 needs to +produce a 32-bit binary). To work around this issue, cross-compile the +binaries for the target and run them on the host with QEMU, much like +gobject-introspection. + +However, for the host-variant we do not want to use a +qemu-wrapper, so add @MAYBE_WRAPPER@ to the needed files and sed the path to +the qemu-wrapper on target builds, and remove @MAYBE_WRAPPER@ entirely on +host-builds. + +[Adam: Update for 20.9.0] +Signed-off-by: Adam Duskett +--- + node.gyp | 6 ++++-- + tools/v8_gypfiles/v8.gyp | 10 +++++----- + 2 files changed, 9 insertions(+), 7 deletions(-) + +diff --git a/node.gyp b/node.gyp +index 97cdbb531d..db5cf51ce6 100644 +--- a/node.gyp ++++ b/node.gyp +@@ -662,7 +662,7 @@ + 'action_name': 'node_mksnapshot', + 'process_outputs_as_sources': 1, + 'inputs': [ +- '<(node_mksnapshot_exec)', ++ @MAYBE_WRAPPER@ '<(node_mksnapshot_exec)', + '<(node_snapshot_main)', + ], + 'outputs': [ +@@ -682,7 +682,7 @@ + 'action_name': 'node_mksnapshot', + 'process_outputs_as_sources': 1, + 'inputs': [ +- '<(node_mksnapshot_exec)', ++ @MAYBE_WRAPPER@ '<(node_mksnapshot_exec)', + ], + 'outputs': [ + '<(SHARED_INTERMEDIATE_DIR)/node_snapshot.cc', +@@ -966,6 +966,7 @@ + 'action_name': 'node_js2c', + 'process_outputs_as_sources': 1, + 'inputs': [ ++ @MAYBE_WRAPPER@ + '<(node_js2c_exec)', + '<@(library_files)', + '<@(deps_files)', +@@ -975,6 +976,7 @@ + '<(SHARED_INTERMEDIATE_DIR)/node_javascript.cc', + ], + 'action': [ ++ @MAYBE_WRAPPER@ + '<(node_js2c_exec)', + '<@(_outputs)', + 'lib', +diff --git a/tools/v8_gypfiles/v8.gyp b/tools/v8_gypfiles/v8.gyp +index 73099a03e4..88ca91efb4 100644 +--- a/tools/v8_gypfiles/v8.gyp ++++ b/tools/v8_gypfiles/v8.gyp +@@ -81,7 +81,7 @@ + { + 'action_name': 'run_torque_action', + 'inputs': [ # Order matters. +- '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)', ++ @MAYBE_WRAPPER@ '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)', + '<@(torque_files)', + ], + 'outputs': [ +@@ -112,7 +112,7 @@ + '<@(torque_outputs_inc)', + ], + 'action': [ +- '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)', ++ @MAYBE_WRAPPER@ '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)', + '-o', '<(SHARED_INTERMEDIATE_DIR)/torque-generated', + '-v8-root', '<(V8_ROOT)', + '<@(torque_files_without_v8_root)', +@@ -224,7 +224,7 @@ + { + 'action_name': 'generate_bytecode_builtins_list_action', + 'inputs': [ +- '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)bytecode_builtins_list_generator<(EXECUTABLE_SUFFIX)', ++ @MAYBE_WRAPPER@ '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)bytecode_builtins_list_generator<(EXECUTABLE_SUFFIX)', + ], + 'outputs': [ + '<(generate_bytecode_builtins_list_output)', +@@ -401,7 +401,7 @@ + ], + }, + 'inputs': [ +- '<(mksnapshot_exec)', ++ @MAYBE_WRAPPER@ '<(mksnapshot_exec)', + ], + 'outputs': [ + '<(INTERMEDIATE_DIR)/snapshot.cc', +@@ -1660,7 +1660,7 @@ + { + 'action_name': 'run_gen-regexp-special-case_action', + 'inputs': [ +- '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)gen-regexp-special-case<(EXECUTABLE_SUFFIX)', ++ @MAYBE_WRAPPER@ '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)gen-regexp-special-case<(EXECUTABLE_SUFFIX)', + ], + 'outputs': [ + '<(SHARED_INTERMEDIATE_DIR)/src/regexp/special-case.cc', +-- +2.37.3 + diff --git a/package/nodejs/0002-check-if-uclibc-has-backtrace-support.patch b/package/nodejs/nodejs-src/0002-check-if-uclibc-has-backtrace-support.patch similarity index 100% rename from package/nodejs/0002-check-if-uclibc-has-backtrace-support.patch rename to package/nodejs/nodejs-src/0002-check-if-uclibc-has-backtrace-support.patch diff --git a/package/nodejs/0003-include-obj-name-in-shared-intermediate.patch b/package/nodejs/nodejs-src/0003-include-obj-name-in-shared-intermediate.patch similarity index 100% rename from package/nodejs/0003-include-obj-name-in-shared-intermediate.patch rename to package/nodejs/nodejs-src/0003-include-obj-name-in-shared-intermediate.patch diff --git a/package/nodejs/0004-lib-internal-modules-cjs-loader.js-adjust-default-pa.patch b/package/nodejs/nodejs-src/0004-lib-internal-modules-cjs-loader.js-adjust-default-pa.patch similarity index 96% rename from package/nodejs/0004-lib-internal-modules-cjs-loader.js-adjust-default-pa.patch rename to package/nodejs/nodejs-src/0004-lib-internal-modules-cjs-loader.js-adjust-default-pa.patch index 5b93998e5e72..25c26b43bd15 100644 --- a/package/nodejs/0004-lib-internal-modules-cjs-loader.js-adjust-default-pa.patch +++ b/package/nodejs/nodejs-src/0004-lib-internal-modules-cjs-loader.js-adjust-default-pa.patch @@ -21,7 +21,7 @@ diff --git a/lib/internal/modules/cjs/loader.js b/lib/internal/modules/cjs/loade index f1971c40a4..5fe3884156 100644 --- a/lib/internal/modules/cjs/loader.js +++ b/lib/internal/modules/cjs/loader.js -@@ -1261,7 +1261,8 @@ Module._initPaths = function() { +@@ -1378,7 +1378,8 @@ Module._initPaths = function() { path.resolve(process.execPath, '..') : path.resolve(process.execPath, '..', '..'); diff --git a/package/nodejs/nodejs-src/Config.in b/package/nodejs/nodejs-src/Config.in new file mode 100644 index 000000000000..90b061f61665 --- /dev/null +++ b/package/nodejs/nodejs-src/Config.in @@ -0,0 +1,2 @@ +config BR2_PACKAGE_NODEJS_SRC + bool diff --git a/package/nodejs/nodejs-src/nodejs-src.hash b/package/nodejs/nodejs-src/nodejs-src.hash new file mode 120000 index 000000000000..0c3ac2ce779e --- /dev/null +++ b/package/nodejs/nodejs-src/nodejs-src.hash @@ -0,0 +1 @@ +../nodejs.hash \ No newline at end of file diff --git a/package/nodejs/nodejs-src/nodejs-src.mk b/package/nodejs/nodejs-src/nodejs-src.mk new file mode 100644 index 000000000000..8f934202b075 --- /dev/null +++ b/package/nodejs/nodejs-src/nodejs-src.mk @@ -0,0 +1,269 @@ +################################################################################ +# +# nodejs-src +# +################################################################################ + +NODEJS_SRC_VERSION = $(NODEJS_COMMON_VERSION) +NODEJS_SRC_SOURCE = $(NODEJS_COMMON_SOURCE) +NODEJS_SRC_SITE = $(NODEJS_COMMON_SITE) +NODEJS_SRC_DL_SUBDIR = nodejs + +NODEJS_SRC_LICENSE = $(NODEJS_LICENSE) +NODEJS_SRC_LICENSE_FILES = $(NODEJS_LICENSE_FILES) +NODEJS_SRC_CPE_ID_VENDOR = $(NODEJS_CPE_ID_VENDOR) +NODEJS_SRC_CPE_ID_PRODUCT = $(NODEJS_CPE_ID_PRODUCT) + +HOST_NODEJS_SRC_PROVIDES = host-nodejs + +NODEJS_SRC_DEPENDENCIES = \ + host-ninja \ + host-pkgconf \ + host-python3 \ + host-qemu \ + c-ares \ + libuv \ + nghttp2 \ + zlib \ + $(call qstrip,$(BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL_DEPS)) +HOST_NODEJS_SRC_DEPENDENCIES = \ + host-icu \ + host-libopenssl \ + host-ninja \ + host-pkgconf \ + host-python3 \ + host-zlib +NODEJS_SRC_INSTALL_STAGING = YES + +NODEJS_SRC_CONF_OPTS = \ + --shared-zlib \ + --shared-cares \ + --shared-libuv \ + --shared-nghttp2 \ + --cross-compiling \ + --dest-os=linux \ + --ninja + +HOST_NODEJS_SRC_MAKE_OPTS = \ + $(HOST_CONFIGURE_OPTS) \ + CXXFLAGS="$(HOST_NODEJS_SRC_CXXFLAGS)" \ + LDFLAGS.host="$(HOST_LDFLAGS)" \ + NO_LOAD=cctest.target.mk \ + PATH=$(@D)/bin:$(BR_PATH) \ + JOBS=$(PARALLEL_JOBS) + +NODEJS_SRC_MAKE_OPTS = \ + $(TARGET_CONFIGURE_OPTS) \ + NO_LOAD=cctest.target.mk \ + PATH=$(@D)/bin:$(BR_PATH) \ + LDFLAGS="$(NODEJS_SRC_LDFLAGS)" \ + LD="$(TARGET_CXX)" \ + JOBS=$(PARALLEL_JOBS) + +# nodejs's build system uses python which can be a symlink to an unsupported +# python version (e.g. python 3.10 with nodejs 14.18.1). We work around this by +# forcing host-python3 early in the PATH, via a python->python3 symlink. +define NODEJS_SRC_PYTHON3_SYMLINK + mkdir -p $(@D)/bin + ln -sf $(HOST_DIR)/bin/python3 $(@D)/bin/python +endef +HOST_NODEJS_SRC_PRE_CONFIGURE_HOOKS += NODEJS_SRC_PYTHON3_SYMLINK +NODEJS_SRC_PRE_CONFIGURE_HOOKS += NODEJS_SRC_PYTHON3_SYMLINK + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +NODEJS_SRC_DEPENDENCIES += openssl +NODEJS_SRC_CONF_OPTS += --shared-openssl +else +NODEJS_SRC_CONF_OPTS += --without-ssl +endif + +ifeq ($(BR2_PACKAGE_ICU),y) +NODEJS_SRC_DEPENDENCIES += icu +NODEJS_SRC_CONF_OPTS += --with-intl=system-icu +else +NODEJS_SRC_CONF_OPTS += --with-intl=none +endif + +ifneq ($(BR2_PACKAGE_NODEJS_NPM),y) +NODEJS_SRC_CONF_OPTS += --without-npm +endif + +define HOST_NODEJS_SRC_CONFIGURE_CMDS + cd $(@D); \ + $(HOST_CONFIGURE_OPTS) \ + PATH=$(@D)/bin:$(BR_PATH) \ + PYTHON=$(HOST_DIR)/bin/python3 \ + $(HOST_DIR)/bin/python3 configure.py \ + --prefix=$(HOST_DIR) \ + --shared-openssl \ + --shared-openssl-includes=$(HOST_DIR)/include \ + --shared-openssl-libpath=$(HOST_DIR)/lib \ + --shared-zlib \ + --no-cross-compiling \ + --with-intl=system-icu \ + --ninja +endef + +HOST_NODEJS_SRC_CXXFLAGS = $(HOST_CXXFLAGS) + +define HOST_NODEJS_SRC_BUILD_CMDS + $(HOST_MAKE_ENV) PYTHON=$(HOST_DIR)/bin/python3 \ + $(MAKE) -C $(@D) \ + $(HOST_NODEJS_SRC_MAKE_OPTS) +endef + +ifeq ($(BR2_PACKAGE_HOST_NODEJS_COREPACK),y) +define HOST_NODEJS_SRC_ENABLE_COREPACK + $(COREPACK) enable +endef +endif + +define HOST_NODEJS_SRC_INSTALL_CMDS + $(HOST_MAKE_ENV) PYTHON=$(HOST_DIR)/bin/python3 \ + $(MAKE) -C $(@D) install \ + $(HOST_NODEJS_SRC_MAKE_OPTS) + $(HOST_NODEJS_SRC_ENABLE_COREPACK) +endef + +ifeq ($(BR2_i386),y) +NODEJS_SRC_CPU = ia32 +else ifeq ($(BR2_x86_64),y) +NODEJS_SRC_CPU = x64 +else ifeq ($(BR2_mips),y) +NODEJS_SRC_CPU = mips +else ifeq ($(BR2_mipsel),y) +NODEJS_SRC_CPU = mipsel +else ifeq ($(BR2_arm),y) +NODEJS_SRC_CPU = arm +# V8 needs to know what floating point ABI the target is using. +NODEJS_SRC_ARM_FP = $(GCC_TARGET_FLOAT_ABI) +# it also wants to know which FPU to use, but only has support for +# vfp, vfpv3, vfpv3-d16 and neon. +ifeq ($(BR2_ARM_FPU_VFPV2),y) +NODEJS_SRC_ARM_FPU = vfp +# vfpv4 is a superset of vfpv3 +else ifeq ($(BR2_ARM_FPU_VFPV3)$(BR2_ARM_FPU_VFPV4),y) +NODEJS_SRC_ARM_FPU = vfpv3 +# vfpv4-d16 is a superset of vfpv3-d16 +else ifeq ($(BR2_ARM_FPU_VFPV3D16)$(BR2_ARM_FPU_VFPV4D16),y) +NODEJS_SRC_ARM_FPU = vfpv3-d16 +else ifeq ($(BR2_ARM_FPU_NEON),y) +NODEJS_SRC_ARM_FPU = neon +endif +else ifeq ($(BR2_aarch64),y) +NODEJS_SRC_CPU = arm64 +endif + +# MIPS architecture specific options +ifeq ($(BR2_mips)$(BR2_mipsel),y) +ifeq ($(BR2_MIPS_CPU_MIPS32R6),y) +NODEJS_SRC_MIPS_ARCH_VARIANT = r6 +NODEJS_SRC_MIPS_FPU_MODE = fp64 +else ifeq ($(BR2_MIPS_CPU_MIPS32R2),y) +NODEJS_SRC_MIPS_ARCH_VARIANT = r2 +else ifeq ($(BR2_MIPS_CPU_MIPS32),y) +NODEJS_SRC_MIPS_ARCH_VARIANT = r1 +endif +endif + +NODEJS_SRC_LDFLAGS = $(TARGET_LDFLAGS) + +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +NODEJS_SRC_LDFLAGS += -latomic +endif + +# V8's JIT infrastructure requires binaries such as mksnapshot and +# mkpeephole to be run in the host during the build. However, these +# binaries must have the same bit-width as the target (e.g. a x86_64 +# host targeting ARMv6 needs to produce a 32-bit binary). To work around this +# issue, cross-compile the binaries for the target and run them on the +# host with QEMU, much like gobject-introspection. +define NODEJS_SRC_INSTALL_V8_QEMU_WRAPPER + $(INSTALL) -D -m 755 $(NODEJS_SRC_PKGDIR)/v8-qemu-wrapper.in \ + $(@D)/out/Release/v8-qemu-wrapper + $(SED) "s%@QEMU_USER@%$(QEMU_USER)%g" \ + $(@D)/out/Release/v8-qemu-wrapper + $(SED) "s%@TOOLCHAIN_HEADERS_VERSION@%$(BR2_TOOLCHAIN_HEADERS_AT_LEAST)%g" \ + $(@D)/out/Release/v8-qemu-wrapper + $(SED) "s%@QEMU_USERMODE_ARGS@%$(call qstrip,$(BR2_PACKAGE_HOST_QEMU_USER_MODE_ARGS))%g" \ + $(@D)/out/Release/v8-qemu-wrapper +endef +NODEJS_SRC_PRE_CONFIGURE_HOOKS += NODEJS_SRC_INSTALL_V8_QEMU_WRAPPER + +define NODEJS_SRC_WRAPPER_FIXUP + $(SED) "s%@MAYBE_WRAPPER@%'<(PRODUCT_DIR)/v8-qemu-wrapper',%g" $(@D)/node.gyp + $(SED) "s%@MAYBE_WRAPPER@%'<(PRODUCT_DIR)/v8-qemu-wrapper',%g" $(@D)/tools/v8_gypfiles/v8.gyp +endef +NODEJS_SRC_PRE_CONFIGURE_HOOKS += NODEJS_SRC_WRAPPER_FIXUP + +# Do not run the qemu-wrapper for the host build. +define HOST_NODEJS_SRC_WRAPPER_FIXUP + $(SED) "s%@MAYBE_WRAPPER@%%g" $(@D)/node.gyp + $(SED) "s%@MAYBE_WRAPPER@%%g" $(@D)/tools/v8_gypfiles/v8.gyp +endef +HOST_NODEJS_SRC_PRE_CONFIGURE_HOOKS += HOST_NODEJS_SRC_WRAPPER_FIXUP + +define NODEJS_SRC_CONFIGURE_CMDS + (cd $(@D); \ + $(TARGET_CONFIGURE_OPTS) \ + PATH=$(@D)/bin:$(BR_PATH) \ + LDFLAGS="$(NODEJS_SRC_LDFLAGS)" \ + LD="$(TARGET_CXX)" \ + PYTHON=$(HOST_DIR)/bin/python3 \ + $(HOST_DIR)/bin/python3 configure.py \ + --prefix=/usr \ + --dest-cpu=$(NODEJS_SRC_CPU) \ + $(if $(NODEJS_SRC_ARM_FP),--with-arm-float-abi=$(NODEJS_SRC_ARM_FP)) \ + $(if $(NODEJS_SRC_ARM_FPU),--with-arm-fpu=$(NODEJS_SRC_ARM_FPU)) \ + $(if $(NODEJS_SRC_MIPS_ARCH_VARIANT),--with-mips-arch-variant=$(NODEJS_SRC_MIPS_ARCH_VARIANT)) \ + $(if $(NODEJS_SRC_MIPS_FPU_MODE),--with-mips-fpu-mode=$(NODEJS_SRC_MIPS_FPU_MODE)) \ + $(NODEJS_SRC_CONF_OPTS) \ + ) +endef + +define NODEJS_SRC_BUILD_CMDS + $(TARGET_MAKE_ENV) PYTHON=$(HOST_DIR)/bin/python3 \ + $(MAKE) -C $(@D) \ + $(NODEJS_SRC_MAKE_OPTS) +endef + +# +# Build the list of modules to install. +# +NODEJS_SRC_MODULES_LIST= $(call qstrip,\ + $(BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL)) + +# +# We can only call NPM if there's something to install. +# +ifneq ($(NODEJS_SRC_MODULES_LIST),) +NODEJS_SRC_DEPENDENCIES += host-nodejs +define NODEJS_SRC_INSTALL_MODULES + # If you're having trouble with module installation, adding -d to the + # npm install call below and setting npm_config_rollback=false can both + # help in diagnosing the problem. + $(NPM) install -g $(NODEJS_SRC_MODULES_LIST) +endef + +# Exclude prebuilt binaries with different architectures and OS from check +NODEJS_SRC_BIN_ARCH_EXCLUDE = /usr/lib/node_modules/ +endif + +define NODEJS_SRC_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) PYTHON=$(HOST_DIR)/bin/python3 \ + $(MAKE) -C $(@D) install \ + DESTDIR=$(STAGING_DIR) \ + $(NODEJS_SRC_MAKE_OPTS) +endef + +define NODEJS_SRC_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) PYTHON=$(HOST_DIR)/bin/python3 \ + $(MAKE) -C $(@D) install \ + DESTDIR=$(TARGET_DIR) \ + $(NODEJS_SRC_MAKE_OPTS) + $(NODEJS_SRC_INSTALL_MODULES) +endef + +# node.js configure is a Python script and does not use autotools +$(eval $(generic-package)) +$(eval $(host-generic-package)) diff --git a/package/nodejs/v8-qemu-wrapper.in b/package/nodejs/nodejs-src/v8-qemu-wrapper.in similarity index 78% rename from package/nodejs/v8-qemu-wrapper.in rename to package/nodejs/nodejs-src/v8-qemu-wrapper.in index e1083f47f704..48222d089b15 100644 --- a/package/nodejs/v8-qemu-wrapper.in +++ b/package/nodejs/nodejs-src/v8-qemu-wrapper.in @@ -5,5 +5,6 @@ exec @QEMU_USER@ -r @TOOLCHAIN_HEADERS_VERSION@ \ @QEMU_USERMODE_ARGS@ \ -L "${STAGING_DIR}/" \ + -E LD_LIBRARY_PATH="${STAGING_DIR}/lib:${STAGING_DIR}/usr/lib/" \ "$@" diff --git a/package/nodejs/nodejs.hash b/package/nodejs/nodejs.hash index 4408782248ec..2d60437a7cde 100644 --- a/package/nodejs/nodejs.hash +++ b/package/nodejs/nodejs.hash @@ -1,5 +1,8 @@ -# From https://nodejs.org/dist/v16.18.1/SHASUMS256.txt -sha256 1f8051a88f86f42064f4415fe7a980e59b0a502ecc8def583f6303bc4d445238 node-v16.18.1.tar.xz - -# Hash for license file -sha256 0bec08634ba79b5404f6b7f92ea850f3c2a06e27e6f83f2267e4f5e55ae33334 LICENSE +# From https://nodejs.org/dist/v20.9.0/SHASUMS256.txt.asc +sha256 ced3ecece4b7c3a664bca3d9e34a0e3b9a31078525283a6fdb7ea2de8ca5683b node-v20.9.0-linux-arm64.tar.xz +sha256 64099d7e62bdbb8efd52c216a6759b3cdd77c38aa993096fdee9f875d95b2d8e node-v20.9.0-linux-armv7l.tar.xz +sha256 3c6cea5d614cfbb95d92de43fbc2f8ecd66e431502fe5efc4f3c02637897bd45 node-v20.9.0-linux-ppc64le.tar.xz +sha256 9033989810bf86220ae46b1381bdcdc6c83a0294869ba2ad39e1061f1e69217a node-v20.9.0-linux-x64.tar.xz +sha256 a23d96810abf0455426b349d47ce5310f33095b7bc0571b9cc510f481c3a4519 node-v20.9.0.tar.xz +# Locally calculated +sha256 93ac846282ce6c5255e00fada2fd2e7e292255239fe58d5502b0a554859e6a3e LICENSE diff --git a/package/nodejs/nodejs.mk b/package/nodejs/nodejs.mk index 367d5d20587b..9806a64d38a1 100644 --- a/package/nodejs/nodejs.mk +++ b/package/nodejs/nodejs.mk @@ -4,265 +4,36 @@ # ################################################################################ -NODEJS_VERSION = 16.18.1 -NODEJS_SOURCE = node-v$(NODEJS_VERSION).tar.xz -NODEJS_SITE = http://nodejs.org/dist/v$(NODEJS_VERSION) -NODEJS_DEPENDENCIES = \ - host-ninja \ - host-pkgconf \ - host-python3 \ - host-qemu \ - c-ares \ - libuv \ - nghttp2 \ - zlib \ - $(call qstrip,$(BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL_DEPS)) -HOST_NODEJS_DEPENDENCIES = \ - host-icu \ - host-libopenssl \ - host-ninja \ - host-pkgconf \ - host-python3 \ - host-zlib -NODEJS_INSTALL_STAGING = YES +# _VERSION, _SOURCE and _SITE must be kept empty to avoid downloading anything +NODEJS_COMMON_VERSION = 20.9.0 +NODEJS_COMMON_SOURCE = node-v$(NODEJS_COMMON_VERSION).tar.xz +NODEJS_COMMON_SITE = http://nodejs.org/dist/v$(NODEJS_COMMON_VERSION) + NODEJS_LICENSE = MIT (core code); MIT, Apache and BSD family licenses (Bundled components) NODEJS_LICENSE_FILES = LICENSE NODEJS_CPE_ID_VENDOR = nodejs NODEJS_CPE_ID_PRODUCT = node.js -NODEJS_CONF_OPTS = \ - --shared-zlib \ - --shared-cares \ - --shared-libuv \ - --shared-nghttp2 \ - --without-dtrace \ - --without-etw \ - --cross-compiling \ - --dest-os=linux \ - --ninja - -HOST_NODEJS_MAKE_OPTS = \ - $(HOST_CONFIGURE_OPTS) \ - CXXFLAGS="$(HOST_NODEJS_CXXFLAGS)" \ - LDFLAGS.host="$(HOST_LDFLAGS)" \ - NO_LOAD=cctest.target.mk \ - PATH=$(@D)/bin:$(BR_PATH) - -NODEJS_MAKE_OPTS = \ - $(TARGET_CONFIGURE_OPTS) \ - NO_LOAD=cctest.target.mk \ - PATH=$(@D)/bin:$(BR_PATH) \ - LDFLAGS="$(NODEJS_LDFLAGS)" \ - LD="$(TARGET_CXX)" - -# nodejs's build system uses python which can be a symlink to an unsupported -# python version (e.g. python 3.10 with nodejs 14.18.1). We work around this by -# forcing host-python3 early in the PATH, via a python->python3 symlink. -define NODEJS_PYTHON3_SYMLINK - mkdir -p $(@D)/bin - ln -sf $(HOST_DIR)/bin/python3 $(@D)/bin/python -endef -HOST_NODEJS_PRE_CONFIGURE_HOOKS += NODEJS_PYTHON3_SYMLINK -NODEJS_PRE_CONFIGURE_HOOKS += NODEJS_PYTHON3_SYMLINK - -ifeq ($(BR2_PACKAGE_OPENSSL),y) -NODEJS_DEPENDENCIES += openssl -NODEJS_CONF_OPTS += --shared-openssl -else -NODEJS_CONF_OPTS += --without-ssl -endif - -ifeq ($(BR2_PACKAGE_ICU),y) -NODEJS_DEPENDENCIES += icu -NODEJS_CONF_OPTS += --with-intl=system-icu -else -NODEJS_CONF_OPTS += --with-intl=none -endif - -ifneq ($(BR2_PACKAGE_NODEJS_NPM),y) -NODEJS_CONF_OPTS += --without-npm -endif - -define HOST_NODEJS_CONFIGURE_CMDS - cd $(@D); \ - $(HOST_CONFIGURE_OPTS) \ - PATH=$(@D)/bin:$(BR_PATH) \ - PYTHON=$(HOST_DIR)/bin/python3 \ - $(HOST_DIR)/bin/python3 configure.py \ - --prefix=$(HOST_DIR) \ - --without-dtrace \ - --without-etw \ - --shared-openssl \ - --shared-openssl-includes=$(HOST_DIR)/include \ - --shared-openssl-libpath=$(HOST_DIR)/lib \ - --shared-zlib \ - --no-cross-compiling \ - --with-intl=system-icu \ - --ninja -endef - -HOST_NODEJS_CXXFLAGS = $(HOST_CXXFLAGS) - -define HOST_NODEJS_BUILD_CMDS - $(HOST_MAKE_ENV) PYTHON=$(HOST_DIR)/bin/python3 \ - $(MAKE) -C $(@D) \ - $(HOST_NODEJS_MAKE_OPTS) -endef - -define HOST_NODEJS_INSTALL_CMDS - $(HOST_MAKE_ENV) PYTHON=$(HOST_DIR)/bin/python3 \ - $(MAKE) -C $(@D) install \ - $(HOST_NODEJS_MAKE_OPTS) -endef - -ifeq ($(BR2_i386),y) -NODEJS_CPU = ia32 -else ifeq ($(BR2_x86_64),y) -NODEJS_CPU = x64 -else ifeq ($(BR2_mips),y) -NODEJS_CPU = mips -else ifeq ($(BR2_mipsel),y) -NODEJS_CPU = mipsel -else ifeq ($(BR2_arm),y) -NODEJS_CPU = arm -# V8 needs to know what floating point ABI the target is using. -NODEJS_ARM_FP = $(GCC_TARGET_FLOAT_ABI) -# it also wants to know which FPU to use, but only has support for -# vfp, vfpv3, vfpv3-d16 and neon. -ifeq ($(BR2_ARM_FPU_VFPV2),y) -NODEJS_ARM_FPU = vfp -# vfpv4 is a superset of vfpv3 -else ifeq ($(BR2_ARM_FPU_VFPV3)$(BR2_ARM_FPU_VFPV4),y) -NODEJS_ARM_FPU = vfpv3 -# vfpv4-d16 is a superset of vfpv3-d16 -else ifeq ($(BR2_ARM_FPU_VFPV3D16)$(BR2_ARM_FPU_VFPV4D16),y) -NODEJS_ARM_FPU = vfpv3-d16 -else ifeq ($(BR2_ARM_FPU_NEON),y) -NODEJS_ARM_FPU = neon -endif -else ifeq ($(BR2_aarch64),y) -NODEJS_CPU = arm64 -endif - -# MIPS architecture specific options -ifeq ($(BR2_mips)$(BR2_mipsel),y) -ifeq ($(BR2_MIPS_CPU_MIPS32R6),y) -NODEJS_MIPS_ARCH_VARIANT = r6 -NODEJS_MIPS_FPU_MODE = fp64 -else ifeq ($(BR2_MIPS_CPU_MIPS32R2),y) -NODEJS_MIPS_ARCH_VARIANT = r2 -else ifeq ($(BR2_MIPS_CPU_MIPS32),y) -NODEJS_MIPS_ARCH_VARIANT = r1 -endif -endif - -NODEJS_LDFLAGS = $(TARGET_LDFLAGS) - -ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) -NODEJS_LDFLAGS += -latomic -endif - -# V8's JIT infrastructure requires binaries such as mksnapshot and -# mkpeephole to be run in the host during the build. However, these -# binaries must have the same bit-width as the target (e.g. a x86_64 -# host targeting ARMv6 needs to produce a 32-bit binary). To work around this -# issue, cross-compile the binaries for the target and run them on the -# host with QEMU, much like gobject-introspection. -define NODEJS_INSTALL_V8_QEMU_WRAPPER - $(INSTALL) -D -m 755 $(NODEJS_PKGDIR)/v8-qemu-wrapper.in \ - $(@D)/out/Release/v8-qemu-wrapper - $(SED) "s%@QEMU_USER@%$(QEMU_USER)%g" \ - $(@D)/out/Release/v8-qemu-wrapper - $(SED) "s%@TOOLCHAIN_HEADERS_VERSION@%$(BR2_TOOLCHAIN_HEADERS_AT_LEAST)%g" \ - $(@D)/out/Release/v8-qemu-wrapper - $(SED) "s%@QEMU_USERMODE_ARGS@%$(call qstrip,$(BR2_PACKAGE_HOST_QEMU_USER_MODE_ARGS))%g" \ - $(@D)/out/Release/v8-qemu-wrapper -endef -NODEJS_PRE_CONFIGURE_HOOKS += NODEJS_INSTALL_V8_QEMU_WRAPPER - -define NODEJS_WRAPPER_FIXUP - $(SED) "s%@MAYBE_WRAPPER@%'<(PRODUCT_DIR)/v8-qemu-wrapper',%g" $(@D)/node.gyp - $(SED) "s%@MAYBE_WRAPPER@%'<(PRODUCT_DIR)/v8-qemu-wrapper',%g" $(@D)/tools/v8_gypfiles/v8.gyp -endef -NODEJS_PRE_CONFIGURE_HOOKS += NODEJS_WRAPPER_FIXUP - -# Do not run the qemu-wrapper for the host build. -define HOST_NODEJS_WRAPPER_FIXUP - $(SED) "s%@MAYBE_WRAPPER@%%g" $(@D)/node.gyp - $(SED) "s%@MAYBE_WRAPPER@%%g" $(@D)/tools/v8_gypfiles/v8.gyp -endef -HOST_NODEJS_PRE_CONFIGURE_HOOKS += HOST_NODEJS_WRAPPER_FIXUP - -define NODEJS_CONFIGURE_CMDS - (cd $(@D); \ - $(TARGET_CONFIGURE_OPTS) \ - PATH=$(@D)/bin:$(BR_PATH) \ - LDFLAGS="$(NODEJS_LDFLAGS)" \ - LD="$(TARGET_CXX)" \ - PYTHON=$(HOST_DIR)/bin/python3 \ - $(HOST_DIR)/bin/python3 configure.py \ - --prefix=/usr \ - --dest-cpu=$(NODEJS_CPU) \ - $(if $(NODEJS_ARM_FP),--with-arm-float-abi=$(NODEJS_ARM_FP)) \ - $(if $(NODEJS_ARM_FPU),--with-arm-fpu=$(NODEJS_ARM_FPU)) \ - $(if $(NODEJS_MIPS_ARCH_VARIANT),--with-mips-arch-variant=$(NODEJS_MIPS_ARCH_VARIANT)) \ - $(if $(NODEJS_MIPS_FPU_MODE),--with-mips-fpu-mode=$(NODEJS_MIPS_FPU_MODE)) \ - $(NODEJS_CONF_OPTS) \ - ) -endef - -define NODEJS_BUILD_CMDS - $(TARGET_MAKE_ENV) PYTHON=$(HOST_DIR)/bin/python3 \ - $(MAKE) -C $(@D) \ - $(NODEJS_MAKE_OPTS) -endef - -# -# Build the list of modules to install. -# -NODEJS_MODULES_LIST= $(call qstrip,\ - $(BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL)) - -# Define NPM for other packages to use -NPM = $(TARGET_CONFIGURE_OPTS) \ +NODEJS_BIN_ENV = $(TARGET_CONFIGURE_OPTS) \ LDFLAGS="$(NODEJS_LDFLAGS)" \ LD="$(TARGET_CXX)" \ npm_config_arch=$(NODEJS_CPU) \ npm_config_target_arch=$(NODEJS_CPU) \ npm_config_build_from_source=true \ - npm_config_nodedir=$(BUILD_DIR)/nodejs-$(NODEJS_VERSION) \ + npm_config_nodedir=$(STAGING_DIR)/usr \ npm_config_prefix=$(TARGET_DIR)/usr \ - npm_config_cache=$(BUILD_DIR)/.npm-cache \ - $(HOST_DIR)/bin/npm + npm_config_cache=$(BUILD_DIR)/.npm-cache -# -# We can only call NPM if there's something to install. -# -ifneq ($(NODEJS_MODULES_LIST),) -NODEJS_DEPENDENCIES += host-nodejs -define NODEJS_INSTALL_MODULES - # If you're having trouble with module installation, adding -d to the - # npm install call below and setting npm_config_rollback=false can both - # help in diagnosing the problem. - $(NPM) install -g $(NODEJS_MODULES_LIST) -endef +# Define various packaging tools for other packages to use +NPM = $(NODEJS_BIN_ENV) $(HOST_DIR)/bin/npm +ifeq ($(BR2_PACKAGE_HOST_NODEJS_COREPACK),y) +COREPACK = $(NODEJS_BIN_ENV) $(HOST_DIR)/bin/corepack +PNPM = $(NODEJS_BIN_ENV) $(HOST_DIR)/bin/pnpm +YARN = $(NODEJS_BIN_ENV) $(HOST_DIR)/bin/yarn endif -define NODEJS_INSTALL_STAGING_CMDS - $(TARGET_MAKE_ENV) PYTHON=$(HOST_DIR)/bin/python3 \ - $(MAKE) -C $(@D) install \ - DESTDIR=$(STAGING_DIR) \ - $(NODEJS_MAKE_OPTS) -endef - -define NODEJS_INSTALL_TARGET_CMDS - $(TARGET_MAKE_ENV) PYTHON=$(HOST_DIR)/bin/python3 \ - $(MAKE) -C $(@D) install \ - DESTDIR=$(TARGET_DIR) \ - $(NODEJS_MAKE_OPTS) - $(NODEJS_INSTALL_MODULES) -endef - -# node.js configure is a Python script and does not use autotools +NODEJS_DEPENDENCIES = nodejs-src $(eval $(generic-package)) -$(eval $(host-generic-package)) +$(eval $(host-virtual-package)) + +include $(sort $(wildcard package/nodejs/*/*.mk)) diff --git a/package/nodm/Config.in b/package/nodm/Config.in index 2dd6f1e1cff5..52fd031b9baf 100644 --- a/package/nodm/Config.in +++ b/package/nodm/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_NODM depends on (BR2_ENABLE_LOCALE && BR2_USE_WCHAR) # linux-pam depends on !BR2_STATIC_LIBS # linux-pam depends on BR2_USE_MMU # linux-pam + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # linux-pam select BR2_PACKAGE_XLIB_LIBX11 select BR2_PACKAGE_LINUX_PAM help @@ -17,7 +18,7 @@ config BR2_PACKAGE_NODM https://github.com/spanezz/nodm/ -comment "nodm needs a toolchain w/ wchar, locale, dynamic library" +comment "nodm needs a toolchain w/ wchar, locale, dynamic library, gcc >= 4.9" depends on BR2_PACKAGE_XORG7 depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \ - || BR2_STATIC_LIBS + || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 diff --git a/package/ntp/0003-override-shell.patch b/package/ntp/0003-override-shell.patch deleted file mode 100644 index 0161e6520a0a..000000000000 --- a/package/ntp/0003-override-shell.patch +++ /dev/null @@ -1,20 +0,0 @@ -sntp/libopts/m4/libopts.m4: allow override shell with POSIX_SHELL - -Pull in fix from upstream AutoGen [1] to accept POSIX_SHELL from the -environment during the configure step. - -[1] http://git.savannah.gnu.org/cgit/autogen.git/commit/?id=db064b9a252f3ef3d8db25411ea0edb0ff8ea758 - -Signed-off-by: James Byrne - -diff --git a/sntp/libopts/m4/libopts.m4 b/sntp/libopts/m4/libopts.m4 ---- a/sntp/libopts/m4/libopts.m4 -+++ b/sntp/libopts/m4/libopts.m4 -@@ -114,6 +114,7 @@ - AC_PROG_SED - [while : - do -+ test -x "$POSIX_SHELL" && break - POSIX_SHELL=`which bash` - test -x "$POSIX_SHELL" && break - POSIX_SHELL=`which dash` diff --git a/package/ntp/0004-libntp-Do-not-use-PTHREAD_STACK_MIN-on-glibc.patch b/package/ntp/0004-libntp-Do-not-use-PTHREAD_STACK_MIN-on-glibc.patch deleted file mode 100644 index da03ad4aacce..000000000000 --- a/package/ntp/0004-libntp-Do-not-use-PTHREAD_STACK_MIN-on-glibc.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 082a504cfcc046c3d8adaae1164268bc94e5108a Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Sat, 31 Jul 2021 10:51:41 -0700 -Subject: [PATCH] libntp: Do not use PTHREAD_STACK_MIN on glibc - -In glibc 2.34+ PTHREAD_STACK_MIN is not a compile-time constant which -could mean different stack sizes at runtime on different architectures -and it also causes compile failure. Default glibc thread stack size -or 64Kb set by ntp should be good in glibc these days. - -Signed-off-by: Khem Raj -[Copied from https://github.com/openembedded/meta-openembedded/blob/master/meta-networking/recipes-support/ntp/ntp/0001-libntp-Do-not-use-PTHREAD_STACK_MIN-on-glibc.patch] -Signed-off-by: Alexey Brodkin ---- - libntp/work_thread.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libntp/work_thread.c b/libntp/work_thread.c -index 03a5647..3ddd751 100644 ---- a/libntp/work_thread.c -+++ b/libntp/work_thread.c -@@ -41,7 +41,7 @@ - #ifndef THREAD_MINSTACKSIZE - # define THREAD_MINSTACKSIZE (64U * 1024) - #endif --#ifndef __sun -+#if !defined(__sun) && !defined(__GLIBC__) - #if defined(PTHREAD_STACK_MIN) && THREAD_MINSTACKSIZE < PTHREAD_STACK_MIN - # undef THREAD_MINSTACKSIZE - # define THREAD_MINSTACKSIZE PTHREAD_STACK_MIN --- -2.32.0 - diff --git a/package/ntp/Config.in b/package/ntp/Config.in index 97d933b5a856..78f008a4b817 100644 --- a/package/ntp/Config.in +++ b/package/ntp/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_NTP bool "ntp" + depends on BR2_USE_MMU || BR2_TOOLCHAIN_HAS_THREADS select BR2_PACKAGE_LIBEVENT help Network Time Protocol suite/programs. diff --git a/package/ntp/ntp.hash b/package/ntp/ntp.hash index 3c2f6a95a798..96e21bf2df76 100644 --- a/package/ntp/ntp.hash +++ b/package/ntp/ntp.hash @@ -1,5 +1,4 @@ -# From http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-4.2.8p15.tar.gz.md5 -md5 e1e6b23d2fc75cced41801dbcd6c2561 ntp-4.2.8p15.tar.gz -# Calculated based on the hash above -sha256 f65840deab68614d5d7ceb2d0bb9304ff70dcdedd09abb79754a87536b849c19 ntp-4.2.8p15.tar.gz -sha256 957e6a13445cc61ab1ca3dc80d8c269cf9b0a6d9eaec20f9f39639b0b3e66ee8 COPYRIGHT +# From https://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2.8p17.tar.gz.sha256 +sha256 103dd272e6a66c5b8df07dce5e9a02555fcd6f1397bdfb782237328e89d3a866 ntp-4.2.8p17.tar.gz +# Locally computed +sha256 06246b8c15ccc1a1873c78525c810f0802e68f383e79ee041e06d1ab9cbf80a4 COPYRIGHT diff --git a/package/ntp/ntp.mk b/package/ntp/ntp.mk index 96b099d5b18e..e64f6308ecea 100644 --- a/package/ntp/ntp.mk +++ b/package/ntp/ntp.mk @@ -6,7 +6,7 @@ NTP_VERSION_MAJOR = 4.2 NTP_VERSION_MINOR = 8 -NTP_VERSION_POINT = 15 +NTP_VERSION_POINT = 17 NTP_VERSION = $(NTP_VERSION_MAJOR).$(NTP_VERSION_MINOR)p$(NTP_VERSION_POINT) NTP_SITE = https://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-$(NTP_VERSION_MAJOR) NTP_DEPENDENCIES = host-pkgconf libevent diff --git a/package/ntpsec/ntpsec.hash b/package/ntpsec/ntpsec.hash index 44e04b240351..8d98b5c4115f 100644 --- a/package/ntpsec/ntpsec.hash +++ b/package/ntpsec/ntpsec.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 ad45f5b88d08a159bc9f44ecb79e08358d26d3d22bb6c96ab7aaa3734de130e6 ntpsec-NTPsec_1_2_2.tar.bz2 +sha256 ef901df5a05d486563db22f4d0dad3840a3bf5d0a9aceb8c3ecaeb396c67a805 ntpsec-NTPsec_1_2_2a.tar.bz2 sha256 899261d6eb6c922cf8f051225411f27b738ba0014be18c2eaf6afbf30d421bb1 LICENSES/BSD-2 sha256 5fe38d8724c53ff4e69f0a3492a368b4a6719700ac16f706efeb01a45c62f2b5 LICENSES/BSD-3 sha256 9ba9550ad48438d0836ddab3da480b3b69ffa0aac7b7878b5a0039e7ab429411 LICENSES/CC-BY-4.0 diff --git a/package/ntpsec/ntpsec.mk b/package/ntpsec/ntpsec.mk index e612e982ecb4..f6262cdaca92 100644 --- a/package/ntpsec/ntpsec.mk +++ b/package/ntpsec/ntpsec.mk @@ -4,7 +4,7 @@ # ################################################################################ -NTPSEC_VERSION = 1.2.2 +NTPSEC_VERSION = 1.2.2a NTPSEC_SOURCE = ntpsec-NTPsec_$(subst .,_,$(NTPSEC_VERSION)).tar.bz2 NTPSEC_SITE = https://gitlab.com/NTPsec/ntpsec/-/archive/NTPsec_$(subst .,_,$(NTPSEC_VERSION)) NTPSEC_LICENSE = BSD-2-Clause, NTP, BSD-3-Clause, MIT, CC-BY-4.0 (docs) diff --git a/package/nushell/Config.in b/package/nushell/Config.in new file mode 100644 index 000000000000..edb01d2f72bc --- /dev/null +++ b/package/nushell/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_NUSHELL + bool "nushell" + depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS + select BR2_PACKAGE_HOST_RUSTC + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_HOST_PKGCONF + select BR2_PACKAGE_NCURSES + select BR2_PACKAGE_NCURSES_TARGET_PROGS + help + A new type of shell. + + https://github.com/nushell/nushell diff --git a/package/nushell/nushell.hash b/package/nushell/nushell.hash new file mode 100644 index 000000000000..02fc8214b6a3 --- /dev/null +++ b/package/nushell/nushell.hash @@ -0,0 +1,3 @@ +# Locally generated +sha256 94af22278f584b59c7c4b2390e2d15d9934d5207a756309259d1c4b92f5af7ef nushell-0.85.0.tar.gz +sha256 2dc1f03f729c21902d869b4d8f8dc528fc730f4c6ad83fc128672bda0ad69196 LICENSE diff --git a/package/nushell/nushell.mk b/package/nushell/nushell.mk new file mode 100644 index 000000000000..779a3c4393c0 --- /dev/null +++ b/package/nushell/nushell.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# nushell +# +################################################################################ + +NUSHELL_VERSION = 0.85.0 +NUSHELL_SITE = $(call github,nushell,nushell,$(NUSHELL_VERSION)) +NUSHELL_LICENSE = MIT +NUSHELL_LICENSE_FILES = LICENSE +NUSHELL_DEPENDENCIES = host-pkgconf openssl ncurses + +# Add /usr/bin/nu to /etc/shells as in package/bash/bash.mk +define NUSHELL_ADD_NU_TO_SHELLS + grep -qsE '^/usr/bin/nu$$' $(TARGET_DIR)/etc/shells \ + || echo "/usr/bin/nu" >> $(TARGET_DIR)/etc/shells +endef +NUSHELL_TARGET_FINALIZE_HOOKS += NUSHELL_ADD_NU_TO_SHELLS + +$(eval $(cargo-package)) diff --git a/package/nut/0001-clients-upsclient-h-ensure-time_t-is-defined.patch b/package/nut/0001-clients-upsclient-h-ensure-time_t-is-defined.patch deleted file mode 100644 index c9fb04b8cd6f..000000000000 --- a/package/nut/0001-clients-upsclient-h-ensure-time_t-is-defined.patch +++ /dev/null @@ -1,35 +0,0 @@ -From cafd77993ec5e16634b774b65bf6da9b34a21fc5 Mon Sep 17 00:00:00 2001 -From: Jim Klimov -Date: Wed, 31 Aug 2022 11:24:19 +0200 -Subject: [PATCH] clients/upsclient.h: ensure time_t is defined - -[Retrieved from: -https://github.com/networkupstools/nut/commit/cafd77993ec5e16634b774b65bf6da9b34a21fc5] -Signed-off-by: Fabrice Fontaine ---- - clients/upsclient.h | 12 ++++++++++++ - 1 file changed, 12 insertions(+) - -diff --git a/clients/upsclient.h b/clients/upsclient.h -index 08574b8f8b..e346d8f519 100644 ---- a/clients/upsclient.h -+++ b/clients/upsclient.h -@@ -41,6 +41,18 @@ - #include - #endif - -+/* Not including NUT timehead.h because this is part of end-user API */ -+#ifdef TIME_WITH_SYS_TIME -+# include -+# include -+#else -+# ifdef HAVE_SYS_TIME_H -+# include -+# else -+# include -+# endif -+#endif -+ - #ifdef __cplusplus - /* *INDENT-OFF* */ - extern "C" { diff --git a/package/nut/0001-m4-nut_compiler_family.m4-fix-cross-compilation.patch b/package/nut/0001-m4-nut_compiler_family.m4-fix-cross-compilation.patch new file mode 100644 index 000000000000..6356990749c2 --- /dev/null +++ b/package/nut/0001-m4-nut_compiler_family.m4-fix-cross-compilation.patch @@ -0,0 +1,55 @@ +From a743617099ea50fcce333a8a074751434d25b7ac Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Fri, 3 Nov 2023 18:29:29 +0100 +Subject: [PATCH] m4/nut_compiler_family.m4: fix cross-compilation + +Do not use isystem with host paths when cross-compiling + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/networkupstools/nut/pull/2146 +--- + m4/nut_compiler_family.m4 | 28 +++++++++++++++------------- + 1 file changed, 15 insertions(+), 13 deletions(-) + +diff --git a/m4/nut_compiler_family.m4 b/m4/nut_compiler_family.m4 +index f47b1ae9..99608bab 100644 +--- a/m4/nut_compiler_family.m4 ++++ b/m4/nut_compiler_family.m4 +@@ -178,19 +178,21 @@ dnl # confuse the compiler assumptions - along with its provided headers)... + dnl # ideally; in practice however cppunit, net-snmp and some system include + dnl # files do cause grief to picky compiler settings (more so from third + dnl # party packages shipped via /usr/local/... namespace): +- AS_IF([test "x$CLANGCC" = xyes -o "x$GCC" = xyes], [ +-dnl # CFLAGS="-isystem /usr/include $CFLAGS" +- AS_IF([test -d /usr/local/include], +- [CFLAGS="-isystem /usr/local/include $CFLAGS"]) +- AS_IF([test -d /usr/pkg/include], +- [CFLAGS="-isystem /usr/pkg/include $CFLAGS"]) +- ]) +- AS_IF([test "x$CLANGXX" = xyes -o "x$GXX" = xyes], [ +-dnl # CXXFLAGS="-isystem /usr/include $CXXFLAGS" +- AS_IF([test -d /usr/local/include], +- [CXXFLAGS="-isystem /usr/local/include $CXXFLAGS"]) +- AS_IF([test -d /usr/pkg/include], +- [CXXFLAGS="-isystem /usr/pkg/include $CXXFLAGS"]) ++ AS_IF([test "x$cross_compiling" != xyes], [ ++ AS_IF([test "x$CLANGCC" = xyes -o "x$GCC" = xyes], [ ++dnl # CFLAGS="-isystem /usr/include $CFLAGS" ++ AS_IF([test -d /usr/local/include], ++ [CFLAGS="-isystem /usr/local/include $CFLAGS"]) ++ AS_IF([test -d /usr/pkg/include], ++ [CFLAGS="-isystem /usr/pkg/include $CFLAGS"]) ++ ]) ++ AS_IF([test "x$CLANGXX" = xyes -o "x$GXX" = xyes], [ ++dnl # CXXFLAGS="-isystem /usr/include $CXXFLAGS" ++ AS_IF([test -d /usr/local/include], ++ [CXXFLAGS="-isystem /usr/local/include $CXXFLAGS"]) ++ AS_IF([test -d /usr/pkg/include], ++ [CXXFLAGS="-isystem /usr/pkg/include $CXXFLAGS"]) ++ ]) + ]) + + dnl # Default to avoid noisy warnings on older compilers +-- +2.42.0 + diff --git a/package/nut/0002-m4-nut_check_python.m4-allow-overriding-of-PYTHON-2-.patch b/package/nut/0002-m4-nut_check_python.m4-allow-overriding-of-PYTHON-2-.patch new file mode 100644 index 000000000000..d2571cf438f6 --- /dev/null +++ b/package/nut/0002-m4-nut_check_python.m4-allow-overriding-of-PYTHON-2-.patch @@ -0,0 +1,106 @@ +From 511ee899ee687216fa8fcf2231a60941b9e4cf81 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Fri, 3 Nov 2023 14:34:54 +0100 +Subject: [PATCH] m4/nut_check_python.m4: allow overriding of + PYTHON{2,3}_SITE_PACKAGES + +Allow the end-user to override PYTHON{2,3}_SITE_PACKAGES as this can be +useful when cross-compiling + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/networkupstools/nut/pull/2147 +--- + m4/nut_check_python.m4 | 60 +++++++++++++++++++++--------------------- + 1 file changed, 30 insertions(+), 30 deletions(-) + +diff --git a/m4/nut_check_python.m4 b/m4/nut_check_python.m4 +index 995a3e7c..7f29558e 100644 +--- a/m4/nut_check_python.m4 ++++ b/m4/nut_check_python.m4 +@@ -116,17 +116,17 @@ AC_DEFUN([NUT_CHECK_PYTHON], + AM_CONDITIONAL([HAVE_PYTHON], [test -n "${PYTHON}" && test "${PYTHON}" != "no"]) + AS_IF([test -n "${PYTHON}" && test "${PYTHON}" != "no"], [ + export PYTHON +- AC_MSG_CHECKING([python site-packages location]) +- PYTHON_SITE_PACKAGES="`${PYTHON} -c 'import site; print(site.getsitepackages().pop(0))'`" +- AS_CASE(["$PYTHON_SITE_PACKAGES"], +- [*:*], [ +- dnl Note: on Windows MSYS2 this embeds "C:/msys64/mingw..." into the string [nut#1584] +- PYTHON_SITE_PACKAGES="`cd "$PYTHON_SITE_PACKAGES" && pwd`" +- ] +- ) +- AC_MSG_RESULT([${PYTHON_SITE_PACKAGES}]) ++ AC_CACHE_CHECK([python site-packages location], [nut_cv_PYTHON_SITE_PACKAGES], [ ++ nut_cv_PYTHON_SITE_PACKAGES="`${PYTHON} -c 'import site; print(site.getsitepackages().pop(0))'`" ++ AS_CASE(["$nut_cv_PYTHON_SITE_PACKAGES"], ++ [*:*], [ ++ dnl Note: on Windows MSYS2 this embeds "C:/msys64/mingw..." into the string [nut#1584] ++ nut_cv_PYTHON_SITE_PACKAGES="`cd "$nut_cv_PYTHON_SITE_PACKAGES" && pwd`" ++ ] ++ ) ++ ]) + ]) +- AC_SUBST([PYTHON_SITE_PACKAGES], [${PYTHON_SITE_PACKAGES}]) ++ AC_SUBST([PYTHON_SITE_PACKAGES], [${nut_cv_PYTHON_SITE_PACKAGES}]) + AM_CONDITIONAL([HAVE_PYTHON_SITE_PACKAGES], [test x"${PYTHON_SITE_PACKAGES}" != "x"]) + ]) + ]) +@@ -228,17 +228,17 @@ AC_DEFUN([NUT_CHECK_PYTHON2], + AM_CONDITIONAL([HAVE_PYTHON2], [test -n "${PYTHON2}" && test "${PYTHON2}" != "no"]) + AS_IF([test -n "${PYTHON2}" && test "${PYTHON2}" != "no"], [ + export PYTHON2 +- AC_MSG_CHECKING([python2 site-packages location]) +- PYTHON2_SITE_PACKAGES="`${PYTHON2} -c 'import site; print(site.getsitepackages().pop(0))'`" +- AS_CASE(["$PYTHON2_SITE_PACKAGES"], +- [*:*], [ +- dnl Note: on Windows MSYS2 this embeds "C:/msys64/mingw..." into the string [nut#1584] +- PYTHON2_SITE_PACKAGES="`cd "$PYTHON2_SITE_PACKAGES" && pwd`" +- ] +- ) +- AC_MSG_RESULT([${PYTHON2_SITE_PACKAGES}]) ++ AC_CACHE_CHECK([python2 site-packages location], [nut_cv_PYTHON2_SITE_PACKAGES], [ ++ nut_cv_PYTHON2_SITE_PACKAGES="`${PYTHON2} -c 'import site; print(site.getsitepackages().pop(0))'`" ++ AS_CASE(["$nut_cv_PYTHON2_SITE_PACKAGES"], ++ [*:*], [ ++ dnl Note: on Windows MSYS2 this embeds "C:/msys64/mingw..." into the string [nut#1584] ++ nut_cv_PYTHON2_SITE_PACKAGES="`cd "$nut_cv_PYTHON2_SITE_PACKAGES" && pwd`" ++ ] ++ ) ++ ]) + ]) +- AC_SUBST([PYTHON2_SITE_PACKAGES], [${PYTHON2_SITE_PACKAGES}]) ++ AC_SUBST([PYTHON2_SITE_PACKAGES], [${nut_cv_PYTHON2_SITE_PACKAGES}]) + AM_CONDITIONAL([HAVE_PYTHON2_SITE_PACKAGES], [test x"${PYTHON2_SITE_PACKAGES}" != "x"]) + ]) + ]) +@@ -340,17 +340,17 @@ AC_DEFUN([NUT_CHECK_PYTHON3], + AM_CONDITIONAL([HAVE_PYTHON3], [test -n "${PYTHON3}" && test "${PYTHON3}" != "no"]) + AS_IF([test -n "${PYTHON3}" && test "${PYTHON3}" != "no"], [ + export PYTHON3 +- AC_MSG_CHECKING([python3 site-packages location]) +- PYTHON3_SITE_PACKAGES="`${PYTHON3} -c 'import site; print(site.getsitepackages().pop(0))'`" +- AS_CASE(["$PYTHON3_SITE_PACKAGES"], +- [*:*], [ +- dnl Note: on Windows MSYS2 this embeds "C:/msys64/mingw..." into the string [nut#1584] +- PYTHON3_SITE_PACKAGES="`cd "$PYTHON3_SITE_PACKAGES" && pwd`" +- ] +- ) +- AC_MSG_RESULT([${PYTHON3_SITE_PACKAGES}]) ++ AC_CACHE_CHECK([python3 site-packages location], [nut_cv_PYTHON3_SITE_PACKAGES], [ ++ nut_cv_PYTHON3_SITE_PACKAGES="`${PYTHON3} -c 'import site; print(site.getsitepackages().pop(0))'`" ++ AS_CASE(["$nut_cv_PYTHON3_SITE_PACKAGES"], ++ [*:*], [ ++ dnl Note: on Windows MSYS2 this embeds "C:/msys64/mingw..." into the string [nut#1584] ++ nut_cv_PYTHON3_SITE_PACKAGES="`cd "$nut_cv_PYTHON3_SITE_PACKAGES" && pwd`" ++ ] ++ ) ++ ]) + ]) +- AC_SUBST([PYTHON3_SITE_PACKAGES], [${PYTHON3_SITE_PACKAGES}]) ++ AC_SUBST([PYTHON3_SITE_PACKAGES], [${nut_cv_PYTHON3_SITE_PACKAGES}]) + AM_CONDITIONAL([HAVE_PYTHON3_SITE_PACKAGES], [test x"${PYTHON3_SITE_PACKAGES}" != "x"]) + ]) + ]) +-- +2.42.0 + diff --git a/package/nut/nut.hash b/package/nut/nut.hash index 3dda340a1b2a..9cd5fcc8dec9 100644 --- a/package/nut/nut.hash +++ b/package/nut/nut.hash @@ -1,5 +1,5 @@ # Locally computed -sha256 c3e5a708da797b7c70b653d37b1206a000fcb503b85519fe4cdf6353f792bfe5 nut-2.8.0.tar.gz -sha256 9f562d0e6be5108a06684dd249686d378abe1653df14b1944e971e084f6751f0 COPYING +sha256 7da48ee23b1f0d8d72560bb0af84f5c5ae4dbe35452b84cb49840132e47f099c nut-2.8.1.tar.gz +sha256 8a3de48b86daffcbe822dd94e514c8a77fe70f77c9005ffd9dcf1709dbdc80c7 COPYING sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 LICENSE-GPL2 sha256 fc82ca8b6fdb18d4e3e85cfd8ab58d1bcd3f1b29abe782895abd91d64763f8e7 LICENSE-GPL3 diff --git a/package/nut/nut.mk b/package/nut/nut.mk index fb98ba04f032..371c78378302 100644 --- a/package/nut/nut.mk +++ b/package/nut/nut.mk @@ -4,27 +4,27 @@ # ################################################################################ -NUT_VERSION = 2.8.0 +NUT_VERSION = 2.8.1 NUT_SITE = https://github.com/networkupstools/nut/releases/download/v$(NUT_VERSION) NUT_LICENSE = GPL-2.0+, GPL-3.0+ (python scripts), GPL/Artistic (perl client) NUT_LICENSE_FILES = COPYING LICENSE-GPL2 LICENSE-GPL3 NUT_SELINUX_MODULES = apache nut NUT_INSTALL_STAGING = YES NUT_DEPENDENCIES = host-pkgconf - -# prevent usage of unsafe paths -define NUT_FIX_CONFIGURE - $(SED) 's%CFLAGS="-isystem /usr/local/include%_UNUSED_CFLAGS="-isystem /usr/local/include%' $(@D)/configure - $(SED) 's%CXXFLAGS="-isystem /usr/local/include%_UNUSED_CXXFLAGS="-isystem /usr/local/include%' $(@D)/configure -endef -NUT_POST_PATCH_HOOKS += NUT_FIX_CONFIGURE +# We're patching m4/nut_compiler_family.m4 +# We're patching m4/nut_check_python.m4 +NUT_AUTORECONF = YES # Put the PID files in a read-write place (/var/run is a tmpfs) # since the default location (/var/state/ups) maybe readonly. NUT_CONF_OPTS = \ --with-altpidpath=/var/run/upsd \ --with-dev \ - --without-doc + --without-doc \ + --without-python \ + --without-python2 \ + --with-user=nut \ + --with-group=nut NUT_CONF_ENV = \ ax_cv_check_cflags__Werror__Wno_unknown_warning_option=no \ @@ -34,6 +34,10 @@ NUT_CONF_ENV = \ ac_cv_func_strncasecmp=yes \ ax_cv__printf_string_null=yes +define NUT_USERS + nut -1 nut -1 * - - - NUT user +endef + ifeq ($(call qstrip,$(BR2_PACKAGE_NUT_DRIVERS)),) NUT_CONF_OPTS += --with-drivers=auto else @@ -106,4 +110,16 @@ else NUT_CONF_OPTS += --without-ssl endif +ifeq ($(BR2_PACKAGE_PYTHON3),y) +NUT_DEPENDENCIES += python3 +NUT_CONF_ENV += nut_cv_PYTHON3_SITE_PACKAGES=/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages +NUT_CONF_OPTS += \ + --with-pynut \ + --with-python3 +else +NUT_CONF_OPTS += \ + --without-pynut \ + --without-python3 +endif + $(eval $(autotools-package)) diff --git a/package/nvidia-persistenced/Config.in b/package/nvidia-persistenced/Config.in new file mode 100644 index 000000000000..82303d006e32 --- /dev/null +++ b/package/nvidia-persistenced/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_NVIDIA_PERSISTENCED + bool "nvidia-persistenced" + depends on BR2_USE_MMU # fork() + depends on !BR2_STATIC_LIBS # dlfcn.h + depends on BR2_TOOLCHAIN_HAS_THREADS # libtirpc + select BR2_PACKAGE_LIBTIRPC if !BR2_TOOLCHAIN_HAS_NATIVE_RPC + help + NVIDIA driver persistence daemon. + + https://github.com/NVIDIA/nvidia-persistenced + +comment "nvidia-persistenced needs a toolchain w/ threads, dynamic libs" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/nvidia-persistenced/nvidia-persistenced.conf b/package/nvidia-persistenced/nvidia-persistenced.conf new file mode 100644 index 000000000000..48f24cfb1d63 --- /dev/null +++ b/package/nvidia-persistenced/nvidia-persistenced.conf @@ -0,0 +1 @@ +u nvidia-persistenced - 'NVIDIA Persistence Daemon' diff --git a/package/nvidia-persistenced/nvidia-persistenced.hash b/package/nvidia-persistenced/nvidia-persistenced.hash new file mode 100644 index 000000000000..06c71b35f59a --- /dev/null +++ b/package/nvidia-persistenced/nvidia-persistenced.hash @@ -0,0 +1,3 @@ +# Locally computed: +sha256 b84fb8eb86127a725d0134a2c64a64e7844e125dece137e7fe8adf8a33cbe817 nvidia-persistenced-515.48.07.tar.gz +sha256 279d814320adc07ca5a4ee101a0b428ddf22a6f3513b8c051f9eb7be47b2e797 COPYING diff --git a/package/nvidia-persistenced/nvidia-persistenced.mk b/package/nvidia-persistenced/nvidia-persistenced.mk new file mode 100644 index 000000000000..662d4d434914 --- /dev/null +++ b/package/nvidia-persistenced/nvidia-persistenced.mk @@ -0,0 +1,47 @@ +################################################################################ +# +# nvidia-persistenced +# +################################################################################ + +NVIDIA_PERSISTENCED_VERSION = 515.48.07 +NVIDIA_PERSISTENCED_SITE = $(call github,NVIDIA,nvidia-persistenced,$(NVIDIA_PERSISTENCED_VERSION)) +NVIDIA_PERSISTENCED_LICENSE = MIT +NVIDIA_PERSISTENCED_LICENSE_FILES = COPYING + +NVIDIA_PERSISTENCED_DEPENDENCIES = host-pkgconf + +ifeq ($(BR2_PACKAGE_LIBTIRPC),y) +NVIDIA_PERSISTENCED_DEPENDENCIES += libtirpc +endif + +define NVIDIA_PERSISTENCED_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + OUTPUTDIR=. ./nvidia-persistenced.unstripped +endef + +define NVIDIA_PERSISTENCED_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/nvidia-persistenced.unstripped \ + $(TARGET_DIR)/usr/bin/nvidia-persistenced +endef + +ifeq ($(BR2_PACKAGE_SYSTEMD_SYSUSERS),y) +define NVIDIA_PERSISTENCED_INSTALL_SYSTEMD_SYSUSERS + $(INSTALL) -D -m 0644 $(NVIDIA_PERSISTENCED_PKGDIR)/nvidia-persistenced.conf \ + $(TARGET_DIR)/usr/lib/sysusers.d/nvidia-persistenced.conf +endef +else +define NVIDIA_PERSISTENCED_USERS + nvidia-persistenced -1 nvidia-persistenced -1 * - - - NVIDIA Persistence Daemon +endef +endif + +define NVIDIA_PERSISTENCED_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 0644 $(@D)/init/systemd/nvidia-persistenced.service.template \ + $(TARGET_DIR)/usr/lib/systemd/system/nvidia-persistenced.service + $(SED) 's/__USER__/nvidia-persistenced/g' \ + $(TARGET_DIR)/usr/lib/systemd/system/nvidia-persistenced.service + $(NVIDIA_PERSISTENCED_INSTALL_SYSTEMD_SYSUSERS) +endef + +$(eval $(generic-package)) diff --git a/package/oatpp/0001-src-oatpp-core-base-Environment.hpp-include-cstdarg.patch b/package/oatpp/0001-src-oatpp-core-base-Environment.hpp-include-cstdarg.patch new file mode 100644 index 000000000000..e9b78328375f --- /dev/null +++ b/package/oatpp/0001-src-oatpp-core-base-Environment.hpp-include-cstdarg.patch @@ -0,0 +1,37 @@ +From b3e8930ccbaeeb77a4cd8b0fffbe52a208aa9a29 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Thu, 23 Nov 2023 22:45:56 +0100 +Subject: [PATCH] src/oatpp/core/base/Environment.hpp: include cstdarg + +Include cstdarg to fix the following build failure with uclibc-ng: + +In file included from /home/autobuild/autobuild/instance-4/output-1/build/oatpp-1.3.0/src/oatpp/algorithm/CRC.hpp:28, + from /home/autobuild/autobuild/instance-4/output-1/build/oatpp-1.3.0/src/oatpp/algorithm/CRC.cpp:25: +/home/autobuild/autobuild/instance-4/output-1/build/oatpp-1.3.0/src/oatpp/core/base/Environment.hpp:359:93: error: 'va_list' has not been declared + 359 | static void vlogFormatted(v_uint32 priority, const std::string& tag, const char* message, va_list args); + | ^~~~~~~ + +Fixes: + - http://autobuild.buildroot.org/results/bcdf7548ff752f936defd111d13c63245ea70cbe + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/oatpp/oatpp/commit/1d11558e2cbbabc0db02a233bf00d651ce5ea758 +--- + src/oatpp/core/base/Environment.hpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/oatpp/core/base/Environment.hpp b/src/oatpp/core/base/Environment.hpp +index fd77a5c6..05d5c949 100644 +--- a/src/oatpp/core/base/Environment.hpp ++++ b/src/oatpp/core/base/Environment.hpp +@@ -29,6 +29,7 @@ + #include "./Compiler.hpp" + #include "./Config.hpp" + ++#include + #include + #include + #include +-- +2.42.0 + diff --git a/package/oatpp/Config.in b/package/oatpp/Config.in new file mode 100644 index 000000000000..a4009e8744e3 --- /dev/null +++ b/package/oatpp/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_OATPP + bool "oatpp" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + help + Oat++ is an open-source C++ web framework for highly scalable + and resource-efficient web applications. It provides all the + necessary components for production-grade development. + + https://oatpp.io/docs/start + +comment "oatpp needs a toolchain w/ C++, threads" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/oatpp/oatpp.hash b/package/oatpp/oatpp.hash new file mode 100644 index 000000000000..e6b35d8d51e3 --- /dev/null +++ b/package/oatpp/oatpp.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 e1f80fa8fd7a74da6737e7fee1a4db68b4d7085a3f40e7d550752d6ff5714583 oatpp-1.3.0.tar.gz +sha256 c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 LICENSE diff --git a/package/oatpp/oatpp.mk b/package/oatpp/oatpp.mk new file mode 100644 index 000000000000..c8b0c9694ab2 --- /dev/null +++ b/package/oatpp/oatpp.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# oatpp +# +################################################################################ + +OATPP_VERSION = 1.3.0 +OATPP_SITE = $(call github,oatpp,oatpp,$(OATPP_VERSION)) +OATPP_LICENSE = Apache-2.0 +OATPP_LICENSE_FILES = LICENSE +OATPP_CONF_OPTS = -DBUILD_SHARED_LIBS=OFF +OATPP_INSTALL_STAGING = YES +# Only builds a static lib and headers +OATPP_INSTALL_TARGET = NO + +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS_NPTL),y) +OATPP_CONF_OPTS += -DOATPP_COMPAT_BUILD_NO_SET_AFFINITY=OFF +else +OATPP_CONF_OPTS += -DOATPP_COMPAT_BUILD_NO_SET_AFFINITY=ON +endif + +$(eval $(cmake-package)) diff --git a/package/ocf-linux/ocf-linux.hash b/package/ocf-linux/ocf-linux.hash deleted file mode 100644 index 747bbcab56cf..000000000000 --- a/package/ocf-linux/ocf-linux.hash +++ /dev/null @@ -1,2 +0,0 @@ -# Locally computed: -sha256 3d7984754d58ced5695889744caf1e18a53f5d2e35ed40cc04d3595e59b7431f ocf-linux-20171122.tar.gz diff --git a/package/ocf-linux/ocf-linux.mk b/package/ocf-linux/ocf-linux.mk deleted file mode 100644 index 52169eda4ffa..000000000000 --- a/package/ocf-linux/ocf-linux.mk +++ /dev/null @@ -1,26 +0,0 @@ -################################################################################ -# -# ocf-linux -# -################################################################################ - -OCF_LINUX_VERSION = 20171122 -OCF_LINUX_SITE = http://downloads.sourceforge.net/project/ocf-linux/ocf-linux/$(OCF_LINUX_VERSION) -OCF_LINUX_INSTALL_STAGING = YES - -OCF_LINUX_PROVIDES = cryptodev - -OCF_LINUX_MODULE_SUBDIRS = ocf -OCF_LINUX_MODULE_MAKE_OPTS = \ - CONFIG_OCF_OCF=m \ - CONFIG_OCF_CRYPTOSOFT=m \ - CONFIG_OCF_BENCH=m \ - CONFIG_OCF_OCFNULL=m - -define OCF_LINUX_INSTALL_STAGING_CMDS - $(INSTALL) -D -m 644 $(@D)/ocf/cryptodev.h \ - $(STAGING_DIR)/usr/include/crypto/cryptodev.h -endef - -$(eval $(kernel-module)) -$(eval $(generic-package)) diff --git a/package/octave/0001-Fix-BLAS-library-integer-size-detection.patch b/package/octave/0001-Fix-BLAS-library-integer-size-detection.patch index 3fb609de07c0..6603295e03c6 100644 --- a/package/octave/0001-Fix-BLAS-library-integer-size-detection.patch +++ b/package/octave/0001-Fix-BLAS-library-integer-size-detection.patch @@ -1,4 +1,4 @@ -From e4dcfefac4215ee66c3dda5b067dd6d06066b0a2 Mon Sep 17 00:00:00 2001 +From 75b973373ed2e9a7a30f62dfe330299306ecff75 Mon Sep 17 00:00:00 2001 From: Julien Olivain Date: Sat, 5 Mar 2022 12:36:09 +0100 Subject: [PATCH] Fix BLAS library integer size detection @@ -19,22 +19,22 @@ Signed-off-by: Julien Olivain 1 file changed, 6 insertions(+) diff --git a/configure.ac b/configure.ac -index de7a00a330..383ce27b06 100644 +index 4092e5915d..f4ea2c1987 100644 --- a/configure.ac +++ b/configure.ac -@@ -781,6 +781,12 @@ if test $ax_blas_ok = no || test $ax_lapack_ok = no; then +@@ -757,6 +757,12 @@ if test $ax_blas_ok = no || test $ax_lapack_ok = no; then AC_MSG_ERROR([BLAS and LAPACK libraries are required]) fi +if ac_fn_f77_try_run "$LINENO"; then : -+ ax_blas_integer_size=8 ++ ax_cv_blas_integer_size=8 +else -+ ax_blas_integer_size=4 ++ ax_cv_blas_integer_size=4 +fi + - case $ax_blas_integer_size in + case $ax_cv_blas_integer_size in 4) HAVE_64_BIT_BLAS=no -- -2.36.0 +2.39.2 diff --git a/package/octave/Config.in b/package/octave/Config.in index 171bdfa156d5..73e27f65e871 100644 --- a/package/octave/Config.in +++ b/package/octave/Config.in @@ -13,8 +13,7 @@ config BR2_PACKAGE_OCTAVE # used by the "utils/test-pkg" script. depends on !BR2_TOOLCHAIN_EXTERNAL_BOOTLIN || !BR2_x86_64 select BR2_PACKAGE_OPENBLAS - select BR2_PACKAGE_PCRE - select BR2_PACKAGE_PCRE_UTF + select BR2_PACKAGE_PCRE2 help GNU Octave is a high-level language, primarily intended for numerical computations. It provides a convenient command diff --git a/package/octave/octave.hash b/package/octave/octave.hash index 9696f2a00aab..a655f82849e0 100644 --- a/package/octave/octave.hash +++ b/package/octave/octave.hash @@ -1,3 +1,5 @@ -# Locally computed -sha256 fdb32602252289e068431329add2eed146e6f26301cbb5fc4412f9d972db9475 octave-7.3.0.tar.lz +# Locally computed after checking signature +# https://ftp.gnu.org/gnu/octave/octave-8.3.0.tar.lz.sig +# using key DBD9C84E39FE1AAE99F04446B05F05B75D36644B +sha256 4dbd5da711b20ce640d75471895172b60e0bb9f45b75a0daa5ddf3050488d639 octave-8.3.0.tar.lz sha256 3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986 COPYING diff --git a/package/octave/octave.mk b/package/octave/octave.mk index 647f988a3f0a..86f5564c02a5 100644 --- a/package/octave/octave.mk +++ b/package/octave/octave.mk @@ -4,7 +4,7 @@ # ################################################################################ -OCTAVE_VERSION = 7.3.0 +OCTAVE_VERSION = 8.3.0 OCTAVE_SITE = https://ftp.gnu.org/gnu/octave OCTAVE_SOURCE = octave-$(OCTAVE_VERSION).tar.lz OCTAVE_LICENSE = GPL-3.0+ @@ -15,8 +15,9 @@ OCTAVE_CONF_OPTS = --disable-java OCTAVE_DEPENDENCIES = \ host-gperf \ + host-pkgconf \ openblas \ - pcre + pcre2 ifeq ($(BR2_PACKAGE_READLINE),y) OCTAVE_CONF_OPTS += --enable-readline diff --git a/package/ofono/0002-fix-musl-compile.patch b/package/ofono/0002-fix-musl-compile.patch deleted file mode 100644 index 369fb7179175..000000000000 --- a/package/ofono/0002-fix-musl-compile.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 4a1d114fa3a5d6bef1f71222787c1f6c3a952284 Mon Sep 17 00:00:00 2001 -From: Nicolas Serafini -Date: Thu, 24 Jan 2019 10:11:42 +0100 -Subject: [PATCH] mbim: add optional copy of TEMP_FAILURE_RETRY macro (fix musl - compile) - -TEMP_FAILURE_RETRY is not available on musl. - -Signed-off-by: Nicolas Serafini ---- - drivers/mbimmodem/mbim.c | 10 ++++++++++ - 1 file changed, 10 insertions(+) - -diff --git a/drivers/mbimmodem/mbim.c b/drivers/mbimmodem/mbim.c -index 54b18acf..4b040528 100644 ---- a/drivers/mbimmodem/mbim.c -+++ b/drivers/mbimmodem/mbim.c -@@ -37,6 +37,16 @@ - #include "mbim-message.h" - #include "mbim-private.h" - -+/* taken from glibc unistd.h for musl support */ -+#ifndef TEMP_FAILURE_RETRY -+#define TEMP_FAILURE_RETRY(expression) \ -+ (__extension__ \ -+ ({ long int __result; \ -+ do __result = (long int) (expression); \ -+ while (__result == -1L && errno == EINTR); \ -+ __result; })) -+#endif -+ - #define MAX_CONTROL_TRANSFER 4096 - #define HEADER_SIZE (sizeof(struct mbim_message_header) + \ - sizeof(struct mbim_fragment_header)) --- -2.20.1 - diff --git a/package/ofono/ofono.hash b/package/ofono/ofono.hash index 7edef0eb80b1..f1760d6f13ac 100644 --- a/package/ofono/ofono.hash +++ b/package/ofono/ofono.hash @@ -1,4 +1,4 @@ # From https://www.kernel.org/pub/linux/network/ofono/sha256sums.asc -sha256 c0b96d3013447ec2bcb74579bef90e4e59c68dbfa4b9c6fbce5d12401a43aac7 ofono-1.34.tar.xz +sha256 92913dcce9a15cac2174daca249457716a0ec036878d22035e83af0e19e79c52 ofono-2.1.tar.xz # Locally computed sha256 e6d6a009505e345fe949e1310334fcb0747f28dae2856759de102ab66b722cb4 COPYING diff --git a/package/ofono/ofono.mk b/package/ofono/ofono.mk index b7a2a923f9dd..5f91e4985df3 100644 --- a/package/ofono/ofono.mk +++ b/package/ofono/ofono.mk @@ -4,7 +4,7 @@ # ################################################################################ -OFONO_VERSION = 1.34 +OFONO_VERSION = 2.1 OFONO_SOURCE = ofono-$(OFONO_VERSION).tar.xz OFONO_SITE = $(BR2_KERNEL_MIRROR)/linux/network/ofono OFONO_LICENSE = GPL-2.0 diff --git a/package/ola/Config.in b/package/ola/Config.in index 701083b5d3bf..dd0be6f35ee1 100644 --- a/package/ola/Config.in +++ b/package/ola/Config.in @@ -53,14 +53,16 @@ config BR2_PACKAGE_OLA_RDM_TESTS depends on BR2_PACKAGE_OLA_PYTHON_BINDINGS depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL # python-numpy + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_9 # python-numpy select BR2_PACKAGE_PYTHON_NUMPY help Build OLA RDM tests. -comment "rdm tests needs a toolchain w/ glibc or musl" +comment "rdm tests needs a glibc or musl toolchain w/ gcc >= 9" depends on BR2_PACKAGE_OLA_PYTHON_BINDINGS depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS - depends on !BR2_TOOLCHAIN_USES_GLIBC && !BR2_TOOLCHAIN_USES_MUSL + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_9 || \ + !BR2_TOOLCHAIN_USES_GLIBC && !BR2_TOOLCHAIN_USES_MUSL comment "plugin selections" diff --git a/package/ola/ola.hash b/package/ola/ola.hash index 7565adabde0b..a1a5577ed3ef 100644 --- a/package/ola/ola.hash +++ b/package/ola/ola.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 102aa3114562a2a71dbf7f77d2a0fb9fc47acc35d6248a70b6e831365ca71b13 ola-0.10.8.tar.gz +sha256 44073698c147fe641507398253c2e52ff8dc7eac8606cbf286c29f37939a4ebf ola-0.10.9.tar.gz # License files (locally computed) sha256 e6b95dd336a57abb343e2988ac22b7e21b35c5b86003e6eb9e066ffbeeff9da7 COPYING diff --git a/package/ola/ola.mk b/package/ola/ola.mk index 82615e8155d4..efaa5b6e3e4a 100644 --- a/package/ola/ola.mk +++ b/package/ola/ola.mk @@ -4,7 +4,7 @@ # ################################################################################ -OLA_VERSION = 0.10.8 +OLA_VERSION = 0.10.9 OLA_SITE = https://github.com/OpenLightingProject/ola/releases/download/$(OLA_VERSION) OLA_LICENSE = LGPL-2.1+ (libola, libolacommon, Python bindings), GPL-2.0+ (libolaserver, olad, Python examples and tests) OLA_LICENSE_FILES = COPYING GPL LGPL LICENCE diff --git a/package/olsr/0006-build-patch-for-gpsd-3-25.patch b/package/olsr/0006-build-patch-for-gpsd-3-25.patch new file mode 100644 index 000000000000..c82bc1bb2896 --- /dev/null +++ b/package/olsr/0006-build-patch-for-gpsd-3-25.patch @@ -0,0 +1,31 @@ +From 17d583258969c1d182361e0e168b3cad79ef64e6 Mon Sep 17 00:00:00 2001 +From: Rui Chen +Date: Mon, 16 Jan 2023 18:35:32 -0500 +Subject: [PATCH] build: patch for gpsd 3.25 + +Signed-off-by: Rui Chen +[Retrieved from: https://github.com/OLSR/olsrd/pull/119] +Signed-off-by: Fabrice Fontaine +--- + lib/pud/src/gpsdclient.h | 8 -------- + 1 file changed, 8 deletions(-) + +diff --git a/lib/pud/src/gpsdclient.h b/lib/pud/src/gpsdclient.h +index 061056b12..a51dd2211 100644 +--- a/lib/pud/src/gpsdclient.h ++++ b/lib/pud/src/gpsdclient.h +@@ -60,14 +60,6 @@ struct GpsdConnectionState { + struct devconfig_t dev[MAXUSERDEVS]; + }; + +-/* describe a data source */ +-struct fixsource_t { +- char spec[PATH_MAX]; /* working space, will be modified */ +- char *server; /* pointer into spec field */ +- char *port; /* pointer into spec field */ +- char *device; /* pointer into spec field */ +-}; +- + /** + * The gpsd daemon spec + */ diff --git a/package/omniorb/omniorb.hash b/package/omniorb/omniorb.hash index f522c1ef67df..36db67191d30 100644 --- a/package/omniorb/omniorb.hash +++ b/package/omniorb/omniorb.hash @@ -1,8 +1,8 @@ -# From https://sourceforge.net/projects/omniorb/files/omniORB/omniORB-4.3.0/ -sha1 c3f12c2278f8c4603910c02c8fe892c1dde7217e omniORB-4.3.0.tar.bz2 -md5 8889ab13b444b495ca2c2b48ea6a6bd7 omniORB-4.3.0.tar.bz2 +# From https://sourceforge.net/projects/omniorb/files/omniORB/omniORB-4.3.1/ +sha1 b6581c9b6a956c1d442c442767b5a58899a09513 omniORB-4.3.1.tar.bz2 +md5 dc3e4467ef3f457025fedcc6403f8f13 omniORB-4.3.1.tar.bz2 # Locally generated -sha256 976045a2341f4e9a85068b21f4bd928993292933eeecefea372db09e0219eadd omniORB-4.3.0.tar.bz2 +sha256 0f42bc3eb737cae680dafa85b3ae3958e9f56a37912c5fb6b875933f8fb7390d omniORB-4.3.1.tar.bz2 sha256 126647a6ee062fe46f8f3766965dc62e031c0a31238a347e4bc07aab2ac1e2a7 COPYING sha256 eaf5b13ffd5355da7c0b83074e4b798152ff7086c95c4f3045122a06e2673eb9 COPYING.LIB diff --git a/package/omniorb/omniorb.mk b/package/omniorb/omniorb.mk index d6434735cf09..8235fac79705 100644 --- a/package/omniorb/omniorb.mk +++ b/package/omniorb/omniorb.mk @@ -4,7 +4,7 @@ # ################################################################################ -OMNIORB_VERSION = 4.3.0 +OMNIORB_VERSION = 4.3.1 OMNIORB_SITE = http://downloads.sourceforge.net/project/omniorb/omniORB/omniORB-$(OMNIORB_VERSION) OMNIORB_SOURCE = omniORB-$(OMNIORB_VERSION).tar.bz2 OMNIORB_INSTALL_STAGING = YES diff --git a/package/onevpl-intel-gpu/Config.in b/package/onevpl-intel-gpu/Config.in new file mode 100644 index 000000000000..11a1c60a0f87 --- /dev/null +++ b/package/onevpl-intel-gpu/Config.in @@ -0,0 +1,23 @@ +config BR2_PACKAGE_ONEVPL_INTEL_GPU + bool "onevpl-intel-gpu" + depends on BR2_PACKAGE_ONEVPL_ARCH_SUPPORTS # onevpl + depends on BR2_INSTALL_LIBSTDCPP # onevpl + depends on !BR2_STATIC_LIBS # onevpl + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 # onevpl + depends on BR2_TOOLCHAIN_HAS_SYNC_1 # intel-mediadriver + depends on BR2_TOOLCHAIN_HAS_THREADS # onevpl + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # intel-mediadriver + select BR2_PACKAGE_INTEL_MEDIADRIVER # runtime + select BR2_PACKAGE_LIBVA + select BR2_PACKAGE_ONEVPL + help + Intel® oneVPL GPU Runtime is a Runtime implementation of + oneVPL API for Intel Gen GPUs, starting with Tiger Lake. + + https://github.com/oneapi-src/oneVPL-intel-gpu + +comment "onevpl-intel-gpu needs a toolchain w/ dynamic library, gcc >= 7, C++, NPTL" + depends on BR2_PACKAGE_ONEVPL_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_SYNC_1 + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_7 || \ + !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/onevpl-intel-gpu/onevpl-intel-gpu.hash b/package/onevpl-intel-gpu/onevpl-intel-gpu.hash new file mode 100644 index 000000000000..5f7728e5f91c --- /dev/null +++ b/package/onevpl-intel-gpu/onevpl-intel-gpu.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 0939232daa2ef3e35b453e4aa0d25674a9b2376b4ef814fb64712cf587654787 onevpl-intel-gpu-23.4.0.tar.gz +sha256 c31c3cc5fd66d1250dbca1c3d9011a9f874537442ac71c8de80f2f0fed13f297 LICENSE diff --git a/package/onevpl-intel-gpu/onevpl-intel-gpu.mk b/package/onevpl-intel-gpu/onevpl-intel-gpu.mk new file mode 100644 index 000000000000..8c9275fe7516 --- /dev/null +++ b/package/onevpl-intel-gpu/onevpl-intel-gpu.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# onevpl-intel-gpu +# +################################################################################ + +ONEVPL_INTEL_GPU_VERSION = 23.4.0 +ONEVPL_INTEL_GPU_SITE = $(call github,oneapi-src,oneVPL-intel-gpu,intel-onevpl-$(ONEVPL_INTEL_GPU_VERSION)) +ONEVPL_INTEL_GPU_LICENSE = MIT +ONEVPL_INTEL_GPU_LICENSE_FILES = LICENSE +ONEVPL_INTEL_GPU_DEPENDENCIES = libva onevpl + +$(eval $(cmake-package)) diff --git a/package/onevpl/0001-Don-t-force-fstack-protector.patch b/package/onevpl/0001-Don-t-force-fstack-protector.patch new file mode 100644 index 000000000000..14948e28cc89 --- /dev/null +++ b/package/onevpl/0001-Don-t-force-fstack-protector.patch @@ -0,0 +1,32 @@ +From 682a9eabc71c2e33ebbbba2e75d0ba7caa08c7c8 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Mon, 8 May 2023 20:03:22 +0200 +Subject: [PATCH] Don't force -fstack-protector + +This allows the environment to decide whether SSP should be used or +not, for example to support toolchains that don't have SSP support. + +Upstream: Not applicable + +Signed-off-by: Bernd Kuhls +--- + cmake/CompileOptions.cmake | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/cmake/CompileOptions.cmake b/cmake/CompileOptions.cmake +index 9923f1c..5b24622 100644 +--- a/cmake/CompileOptions.cmake ++++ b/cmake/CompileOptions.cmake +@@ -54,9 +54,6 @@ else() + add_definitions("-D_FORTIFY_SOURCE=2") + endif() + endif() +- if(NOT MINGW) +- add_compile_options("-fstack-protector-strong") +- endif() + if(NOT MINGW) + add_link_options("-Wl,-z,relro,-z,now,-z,noexecstack") + endif() +-- +2.39.2 + diff --git a/package/onevpl/Config.in b/package/onevpl/Config.in new file mode 100644 index 000000000000..a750e54d5255 --- /dev/null +++ b/package/onevpl/Config.in @@ -0,0 +1,27 @@ +config BR2_PACKAGE_ONEVPL_ARCH_SUPPORTS + bool + default y if BR2_ARCH_IS_64 + default y if BR2_arm + +config BR2_PACKAGE_ONEVPL + bool "onevpl" + depends on BR2_PACKAGE_ONEVPL_ARCH_SUPPORTS + depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_STATIC_LIBS # dlfcn.h + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_WAYLAND_PROTOCOLS if BR2_PACKAGE_WAYLAND + # libva support needs a libdrm with intel driver + select BR2_PACKAGE_LIBDRM_INTEL if BR2_PACKAGE_LIBVA + select BR2_PACKAGE_LIBXCB if BR2_PACKAGE_XORG7 + select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7 + help + oneAPI Video Processing Library (oneVPL) dispatcher, + tools, and examples + + https://github.com/oneapi-src/oneVPL + +comment "onevpl needs a toolchain w/ dynamic library, gcc >= 7, C++, threads" + depends on BR2_PACKAGE_ONEVPL_ARCH_SUPPORTS + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_7 || \ + !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/onevpl/onevpl.hash b/package/onevpl/onevpl.hash new file mode 100644 index 000000000000..c9ca1e6c04a4 --- /dev/null +++ b/package/onevpl/onevpl.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 4411543519486a2450f6f5af06a077596e7888a551768594e9dfa2a46b23b6f5 onevpl-2023.3.1.tar.gz +sha256 bf1cfac2e2792b6e1e995ce103d70796aecaf2ec7e4c5fe5474f7acec7b4a677 LICENSE diff --git a/package/onevpl/onevpl.mk b/package/onevpl/onevpl.mk new file mode 100644 index 000000000000..601e121a5570 --- /dev/null +++ b/package/onevpl/onevpl.mk @@ -0,0 +1,44 @@ +################################################################################ +# +# onevpl +# +################################################################################ + +ONEVPL_VERSION = 2023.3.1 +ONEVPL_SITE = $(call github,oneapi-src,oneVPL,v$(ONEVPL_VERSION)) +ONEVPL_LICENSE = MIT +ONEVPL_LICENSE_FILES = LICENSE +ONEVPL_INSTALL_STAGING = YES +ONEVPL_DEPENDENCIES = host-pkgconf + +ONEVPL_CONF_OPTS = \ + -DBUILD_TOOLS=OFF \ + -DINSTALL_EXAMPLE_CODE=OFF + +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +ONEVPL_CONF_OPTS += \ + -DCMAKE_CXX_FLAGS="-latomic" +endif + +ifeq ($(BR2_PACKAGE_LIBVA),y) +ONEVPL_CONF_OPTS += -DENABLE_VA=ON +ONEVPL_DEPENDENCIES += libva +else +ONEVPL_CONF_OPTS += -DENABLE_VA=OFF +endif + +ifeq ($(BR2_PACKAGE_WAYLAND),y) +ONEVPL_CONF_OPTS += -DENABLE_WAYLAND=ON +ONEVPL_DEPENDENCIES += wayland wayland-protocols +else +ONEVPL_CONF_OPTS += -DENABLE_WAYLAND=OFF +endif + +ifeq ($(BR2_PACKAGE_XORG7),y) +ONEVPL_CONF_OPTS += -DENABLE_X11=ON +ONEVPL_DEPENDENCIES += libxcb xlib_libX11 +else +ONEVPL_CONF_OPTS += -DENABLE_X11=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/oniguruma/oniguruma.hash b/package/oniguruma/oniguruma.hash index 89befe7dbf3c..ac1d375b7a39 100644 --- a/package/oniguruma/oniguruma.hash +++ b/package/oniguruma/oniguruma.hash @@ -1,4 +1,4 @@ -# From https://github.com/kkos/oniguruma/releases/download/v6.9.8/onig-6.9.8.tar.gz.sha256 -sha256 28cd62c1464623c7910565fb1ccaaa0104b2fe8b12bcd646e81f73b47535213e onig-6.9.8.tar.gz +# From https://github.com/kkos/oniguruma/releases/download/v6.9.9/onig-6.9.9.tar.gz.sha256 +sha256 60162bd3b9fc6f4886d4c7a07925ffd374167732f55dce8c491bfd9cd818a6cf onig-6.9.9.tar.gz # Hash for license file sha256 70ba5469ea0bab6e18a32d7009068f996503168d27be57747e08da34337ff26f COPYING diff --git a/package/oniguruma/oniguruma.mk b/package/oniguruma/oniguruma.mk index f5ac810c10e2..1e8a119cf167 100644 --- a/package/oniguruma/oniguruma.mk +++ b/package/oniguruma/oniguruma.mk @@ -4,7 +4,7 @@ # ################################################################################ -ONIGURUMA_VERSION = 6.9.8 +ONIGURUMA_VERSION = 6.9.9 ONIGURUMA_SITE = \ https://github.com/kkos/oniguruma/releases/download/v$(ONIGURUMA_VERSION) ONIGURUMA_SOURCE = onig-$(ONIGURUMA_VERSION).tar.gz @@ -14,3 +14,4 @@ ONIGURUMA_CPE_ID_VENDOR = oniguruma_project ONIGURUMA_INSTALL_STAGING = YES $(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/open-iscsi/0001-SHA3-is-not-supported-by-libressl.patch b/package/open-iscsi/0001-SHA3-is-not-supported-by-libressl.patch deleted file mode 100644 index 0423179d9375..000000000000 --- a/package/open-iscsi/0001-SHA3-is-not-supported-by-libressl.patch +++ /dev/null @@ -1,144 +0,0 @@ -From 29a4c3a518d13bfc0a07915e7e87fbec2b66597c Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Mon, 13 Feb 2023 08:55:11 +0100 -Subject: [PATCH] SHA3 is not supported by libressl - -Disable SHA3 with libressl as it is not supported resulting in the -following build failure: - -/home/buildroot/autobuild/instance-3/output-1/host/lib/gcc/or1k-buildroot-linux-gnu/11.3.0/../../../../or1k-buildroot-linux-gnu/bin/ld: iscsid.p/usr_auth.c.o: in function `auth_hash_init': -auth.c:(.text+0x7bc): undefined reference to `EVP_sha3_256' - -Fixes: - - http://autobuild.buildroot.org/results/48a4bddc355956733d712214797350cca8e111d9 - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/open-iscsi/open-iscsi/pull/396] ---- - libopeniscsiusr/idbm.h | 2 ++ - usr/auth.c | 13 ++++++++++++- - usr/auth.h | 4 ++++ - usr/idbm.c | 2 ++ - 4 files changed, 20 insertions(+), 1 deletion(-) - -diff --git a/libopeniscsiusr/idbm.h b/libopeniscsiusr/idbm.h -index be5986f..1043b27 100644 ---- a/libopeniscsiusr/idbm.h -+++ b/libopeniscsiusr/idbm.h -@@ -56,7 +56,9 @@ enum iscsi_chap_algs { - ISCSI_AUTH_CHAP_ALG_MD5 = 5, - ISCSI_AUTH_CHAP_ALG_SHA1 = 6, - ISCSI_AUTH_CHAP_ALG_SHA256 = 7, -+#ifndef LIBRESSL_VERSION_NUMBER - ISCSI_AUTH_CHAP_ALG_SHA3_256 = 8, -+#endif - AUTH_CHAP_ALG_MAX_COUNT = 5, - }; - -diff --git a/usr/auth.c b/usr/auth.c -index 46c328e..5f50e26 100644 ---- a/usr/auth.c -+++ b/usr/auth.c -@@ -181,9 +181,11 @@ static int auth_hash_init(EVP_MD_CTX **context, int chap_alg) { - case AUTH_CHAP_ALG_SHA256: - digest = EVP_sha256(); - break; -+#ifndef LIBRESSL_VERSION_NUMBER - case AUTH_CHAP_ALG_SHA3_256: - digest = EVP_sha3_256(); - break; -+#endif - } - - if (*context == NULL) -@@ -298,7 +300,9 @@ static int - acl_chk_chap_alg_optn(int chap_algorithm) - { - if (chap_algorithm == AUTH_OPTION_NONE || -+#ifndef LIBRESSL_VERSION_NUMBER - chap_algorithm == AUTH_CHAP_ALG_SHA3_256 || -+#endif - chap_algorithm == AUTH_CHAP_ALG_SHA256 || - chap_algorithm == AUTH_CHAP_ALG_SHA1 || - chap_algorithm == AUTH_CHAP_ALG_MD5) -@@ -711,9 +715,11 @@ acl_chk_chap_alg_key(struct iscsi_acl *client) - case AUTH_CHAP_ALG_SHA256: - client->chap_challenge_len = AUTH_CHAP_SHA256_RSP_LEN; - break; -+#ifndef LIBRESSL_VERSION_NUMBER - case AUTH_CHAP_ALG_SHA3_256: - client->chap_challenge_len = AUTH_CHAP_SHA3_256_RSP_LEN; - break; -+#endif - } - return; - } -@@ -862,7 +868,10 @@ acl_local_auth(struct iscsi_acl *client) - client->local_state = AUTH_LOCAL_STATE_ERROR; - client->dbg_status = AUTH_DBG_STATUS_CHAP_ALG_REJECT; - break; -- } else if ((client->negotiated_chap_alg != AUTH_CHAP_ALG_SHA3_256) && -+ } else if ( -+#ifndef LIBRESSL_VERSION_NUMBER -+ (client->negotiated_chap_alg != AUTH_CHAP_ALG_SHA3_256) && -+#endif - (client->negotiated_chap_alg != AUTH_CHAP_ALG_SHA256) && - (client->negotiated_chap_alg != AUTH_CHAP_ALG_SHA1) && - (client->negotiated_chap_alg != AUTH_CHAP_ALG_MD5)) { -@@ -1824,6 +1833,7 @@ acl_init_chap_digests(int *value_list, unsigned *chap_algs, int conf_count) { - "SHA256 due to crypto lib configuration"); - } - break; -+#ifndef LIBRESSL_VERSION_NUMBER - case AUTH_CHAP_ALG_SHA3_256: - if (EVP_DigestInit_ex(context, EVP_sha3_256(), NULL)) { - value_list[i++] = AUTH_CHAP_ALG_SHA3_256; -@@ -1832,6 +1842,7 @@ acl_init_chap_digests(int *value_list, unsigned *chap_algs, int conf_count) { - "SHA3-256 due to crypto lib configuration"); - } - break; -+#endif - case ~0: - /* unset value in array, just ignore */ - break; -diff --git a/usr/auth.h b/usr/auth.h -index 16cdb24..9357772 100644 ---- a/usr/auth.h -+++ b/usr/auth.h -@@ -32,7 +32,9 @@ enum { - AUTH_CHAP_MD5_RSP_LEN = 16, - AUTH_CHAP_SHA1_RSP_LEN = 20, - AUTH_CHAP_SHA256_RSP_LEN = 32, -+#ifndef LIBRESSL_VERSION_NUMBER - AUTH_CHAP_SHA3_256_RSP_LEN = 32, -+#endif - AUTH_CHAP_RSP_MAX = 32, - }; - -@@ -67,7 +69,9 @@ enum { - AUTH_CHAP_ALG_MD5 = 5, - AUTH_CHAP_ALG_SHA1 = 6, - AUTH_CHAP_ALG_SHA256 = 7, -+#ifndef LIBRESSL_VERSION_NUMBER - AUTH_CHAP_ALG_SHA3_256 = 8, -+#endif - AUTH_CHAP_ALG_MAX_COUNT = 5 - }; - -diff --git a/usr/idbm.c b/usr/idbm.c -index 90bc142..082e1c6 100644 ---- a/usr/idbm.c -+++ b/usr/idbm.c -@@ -200,7 +200,9 @@ static struct int_list_tbl { - { "MD5", AUTH_CHAP_ALG_MD5 }, - { "SHA1", AUTH_CHAP_ALG_SHA1 }, - { "SHA256", AUTH_CHAP_ALG_SHA256 }, -+#ifndef LIBRESSL_VERSION_NUMBER - { "SHA3-256", AUTH_CHAP_ALG_SHA3_256 }, -+#endif - }; - - static void --- -2.39.0 - diff --git a/package/open-iscsi/0001-usr-idbm.c-fix-musl-build.patch b/package/open-iscsi/0001-usr-idbm.c-fix-musl-build.patch new file mode 100644 index 000000000000..5470f3057063 --- /dev/null +++ b/package/open-iscsi/0001-usr-idbm.c-fix-musl-build.patch @@ -0,0 +1,40 @@ +From dbe342545b7bee42107e09d0da59bb42c50903cb Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sat, 30 Sep 2023 14:54:15 +0200 +Subject: [PATCH] usr/idbm.c: fix musl build + +Fix the following musl build failure raised since version 2.1.9 and +https://github.com/open-iscsi/open-iscsi/commit/7b571d76d6937a78c141630fc38c3c57c532466c: + +../usr/idbm.c: In function 'idbm_rec_write_old': +../usr/idbm.c:2230:27: error: 'GLOB_ONLYDIR' undeclared (first use in this function) + 2230 | rc = glob(portal, GLOB_ONLYDIR, NULL, &globbuf); + | ^~~~~~~~~~~~ + +Fixes: + - http://autobuild.buildroot.org/results/14fc1c139f055b5b1eaa6e04e327863c06176a7b + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/open-iscsi/open-iscsi/commit/11bdc17938ba648c81a853355a6bbddad69a9fc7 +--- + usr/idbm.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/usr/idbm.c b/usr/idbm.c +index ca4a4ec..fbaa132 100644 +--- a/usr/idbm.c ++++ b/usr/idbm.c +@@ -45,6 +45,10 @@ + #include "fw_context.h" + #include "iscsi_err.h" + ++#ifndef GLOB_ONLYDIR ++#define GLOB_ONLYDIR 0x100 ++#endif ++ + #define IDBM_HIDE 0 /* Hide parameter when print. */ + #define IDBM_SHOW 1 /* Show parameter when print. */ + #define IDBM_MASKED 2 /* Show "stars" instead of real value when print */ +-- +2.40.1 + diff --git a/package/open-iscsi/open-iscsi.hash b/package/open-iscsi/open-iscsi.hash index 9fd651cae8d9..de75cbf1e9aa 100644 --- a/package/open-iscsi/open-iscsi.hash +++ b/package/open-iscsi/open-iscsi.hash @@ -1,3 +1,5 @@ # Locally calculated -sha256 9565bdf6b68b223e1e0d455d9a04d7536724a3f5b5a254e9398d06b2a0c6b6d2 open-iscsi-2.1.8.tar.gz +sha256 60e2a1e3058a8af7f702e86a5a0511b05b8754d29d3d2df4e0e301399b5cf70a open-iscsi-2.1.9.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING +sha256 7e6580de9d99b680697d51ec0c5e88acd9ed329139d181472cc5a592d0684fa5 README +sha256 e3a994d82e644b03a792a930f574002658412f62407f5fee083f2555c5f23118 libopeniscsiusr/COPYING diff --git a/package/open-iscsi/open-iscsi.mk b/package/open-iscsi/open-iscsi.mk index e5b965b80da0..00370a339ae2 100644 --- a/package/open-iscsi/open-iscsi.mk +++ b/package/open-iscsi/open-iscsi.mk @@ -4,12 +4,10 @@ # ################################################################################ -OPEN_ISCSI_VERSION = 2.1.8 +OPEN_ISCSI_VERSION = 2.1.9 OPEN_ISCSI_SITE = $(call github,open-iscsi,open-iscsi,$(OPEN_ISCSI_VERSION)) -# The COPYING file says GPL-2.0, but there is some GPL-3.0+ code as -# well. See https://github.com/open-iscsi/open-iscsi/issues/379 -OPEN_ISCSI_LICENSE = GPL-2.0+, GPL-3.0+ -OPEN_ISCSI_LICENSE_FILES = COPYING +OPEN_ISCSI_LICENSE = GPL-2.0+, GPL-3.0+, LGPL-3.0+ +OPEN_ISCSI_LICENSE_FILES = COPYING README libopeniscsiusr/COPYING OPEN_ISCSI_CPE_ID_VENDOR = open-iscsi_project OPEN_ISCSI_DEPENDENCIES = kmod open-isns openssl util-linux diff --git a/package/open-plc-utils/0002-plc-plc.h-fix-build-with-gcc-10.patch b/package/open-plc-utils/0002-plc-plc.h-fix-build-with-gcc-10.patch deleted file mode 100644 index 063bfc536cf8..000000000000 --- a/package/open-plc-utils/0002-plc-plc.h-fix-build-with-gcc-10.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 27222be0b8db59cae30a5fcca93255daea147bb6 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Wed, 23 Sep 2020 19:05:23 +0200 -Subject: [PATCH] plc/plc.h: fix build with gcc 10 - -Drop plcproperty from plc/plc.h to avoid the following build failure -with gcc 10 (which defaults to -fno-common): - -/home/buildroot/autobuild/run/instance-3/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/10.2.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: rules.o:(.bss+0x0): multiple definition of `plcproperty'; pibruin.o:(.bss+0x0): first defined here - -Fixes: - - http://autobuild.buildroot.org/results/6b3064b64dea3d4aaf219f787429c25918101483 - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/qca/open-plc-utils/pull/141] ---- - plc/plc.h | 4 +--- - 1 file changed, 1 insertion(+), 3 deletions(-) - -diff --git a/plc/plc.h b/plc/plc.h -index 1fa32b53..208cf91a 100644 ---- a/plc/plc.h -+++ b/plc/plc.h -@@ -496,9 +496,7 @@ struct __packed plcproperty - uint8_t DATA_FORMAT; - uint32_t DATA_LENGTH; - uint8_t DATA_BUFFER [128]; --} -- --plcproperty; -+}; - - #ifndef __GNUC__ - #pragma pack (pop) --- -2.28.0 - diff --git a/package/open-plc-utils/open-plc-utils.hash b/package/open-plc-utils/open-plc-utils.hash index 1788b42fc0e9..0ab661231a44 100644 --- a/package/open-plc-utils/open-plc-utils.hash +++ b/package/open-plc-utils/open-plc-utils.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 b0156567a71c608cc1a0b18bbb1c5a97dd0ad9180097435f7e99119712bb299b open-plc-utils-32408520fcebe785983a68e39ec83830a3005779.tar.gz +sha256 4b1b55896939f178321ffe1ec2dc6937ea688d577b3671a5f0edb5c3326dfa3d open-plc-utils-1ba7d5a042e4e8ff6858b08e113eec5dc4e89cf2.tar.gz sha256 3137c632bbcec5e88b72dc13f4fe06ee184eea364fec8f7494bdfa57672ef921 LICENSE diff --git a/package/open-plc-utils/open-plc-utils.mk b/package/open-plc-utils/open-plc-utils.mk index d2ac39aca47f..086552e09b24 100644 --- a/package/open-plc-utils/open-plc-utils.mk +++ b/package/open-plc-utils/open-plc-utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPEN_PLC_UTILS_VERSION = 32408520fcebe785983a68e39ec83830a3005779 +OPEN_PLC_UTILS_VERSION = 1ba7d5a042e4e8ff6858b08e113eec5dc4e89cf2 OPEN_PLC_UTILS_SITE = $(call github,qca,open-plc-utils,$(OPEN_PLC_UTILS_VERSION)) OPEN_PLC_UTILS_LICENSE = BSD-3-Clause OPEN_PLC_UTILS_LICENSE_FILES = LICENSE diff --git a/package/open62541/open62541.hash b/package/open62541/open62541.hash index 09002436e9de..941aadf4eb25 100644 --- a/package/open62541/open62541.hash +++ b/package/open62541/open62541.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 9a7955ba01e12dbd327e534c25288f4918d275031394c804943a7e45ba903621 open62541-v1.3.4-br1.tar.gz +sha256 410603b0e567970d7148c6e9c91ccabeedeb4f32780be859cd2a4aac08cb5b9e open62541-v1.3.7-br1.tar.gz sha256 fab3dd6bdab226f1c08630b1dd917e11fcb4ec5e1e020e2c16f83a0a13863e85 LICENSE diff --git a/package/open62541/open62541.mk b/package/open62541/open62541.mk index 2c0e3b17fe67..43e1ad6b6137 100644 --- a/package/open62541/open62541.mk +++ b/package/open62541/open62541.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPEN62541_VERSION = v1.3.4 +OPEN62541_VERSION = v1.3.7 OPEN62541_SITE_METHOD = git OPEN62541_SITE = https://github.com/open62541/open62541.git OPEN62541_GIT_SUBMODULES = YES diff --git a/package/openblas/0001-Makefile.system-don-t-specify-optimization-level-bui.patch b/package/openblas/0001-Makefile.system-don-t-specify-optimization-level-bui.patch index e0c738748a1f..ed3cae82ef4c 100644 --- a/package/openblas/0001-Makefile.system-don-t-specify-optimization-level-bui.patch +++ b/package/openblas/0001-Makefile.system-don-t-specify-optimization-level-bui.patch @@ -1,4 +1,4 @@ -From d8ec4e4c6ef69165179f376e365034de10e6fee3 Mon Sep 17 00:00:00 2001 +From 89648b76e35dc4657942c861ed9dbfbfe5a3df28 Mon Sep 17 00:00:00 2001 From: Thomas De Schampheleire Date: Fri, 5 Mar 2021 14:09:23 +0100 Subject: [PATCH] Makefile.system: don't specify optimization level @@ -11,16 +11,17 @@ The CFLAGS/FFLAGS would e.g. contain '-Os -O2' in which -O2 survives. Remove the optimization level specified in openblas itself. +Upstream: N/A, not upstreamable Signed-off-by: Thomas De Schampheleire --- Makefile.system | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile.system b/Makefile.system -index 438a8148..9de1bbd5 100644 +index 343b94bb3..c355ca5d9 100644 --- a/Makefile.system +++ b/Makefile.system -@@ -1519,11 +1519,11 @@ FCOMMON_OPT += -g +@@ -1585,11 +1585,11 @@ FCOMMON_OPT += -g endif ifndef COMMON_OPT @@ -35,5 +36,5 @@ index 438a8148..9de1bbd5 100644 override CFLAGS += $(COMMON_OPT) $(CCOMMON_OPT) -I$(TOPDIR) -- -2.35.1 +2.40.1 diff --git a/package/openblas/Config.in b/package/openblas/Config.in index 0144e93a3faf..26a76d29fbfb 100644 --- a/package/openblas/Config.in +++ b/package/openblas/Config.in @@ -1,55 +1,56 @@ config BR2_PACKAGE_OPENBLAS_DEFAULT_TARGET string - default "P2" if BR2_x86_pentium2 - default "KATMAI" if BR2_x86_pentium3 - default "NORTHWOOD" if BR2_x86_pentium4 - default "PRESCOTT" if BR2_x86_prescott || BR2_x86_nocona - default "BANIAS" if BR2_x86_pentium_m - default "CORE2" if BR2_x86_core2 - default "NEHALEM" if BR2_x86_corei7 || BR2_x86_silvermont || BR2_x86_westmere - default "SANDYBRIDGE" if BR2_x86_corei7_avx - default "HASWELL" if BR2_x86_core_avx2 - default "ATOM" if BR2_x86_atom - default "ATHLON" if BR2_x86_athlon || BR2_x86_athlon_4 - default "OPTERON" if BR2_x86_opteron - default "OPTERON_SSE3" if BR2_x86_opteron_sse3 - default "BARCELONA" if BR2_x86_barcelona - default "BOBCAT" if BR2_x86_jaguar - default "STEAMROLLER" if BR2_x86_steamroller - default "VIAC3" if BR2_x86_c3 || BR2_x86_c32 - default "POWER4" if BR2_powerpc_power4 - default "POWER5" if BR2_powerpc_power5 - default "POWER6" if BR2_powerpc_power6 - default "POWER7" if BR2_powerpc_power7 - default "POWER8" if BR2_powerpc_power8 - default "PPCG4" if BR2_powerpc_7400 || BR2_powerpc_7450 - default "PPC970" if BR2_powerpc_970 - default "PPC440" if BR2_powerpc_440 - default "PPC440FP2" if BR2_powerpc_440fp + default "P2" if BR2_x86_pentium2 + default "KATMAI" if BR2_x86_pentium3 + default "NORTHWOOD" if BR2_x86_pentium4 + default "PRESCOTT" if BR2_x86_prescott || BR2_x86_nocona + default "BANIAS" if BR2_x86_pentium_m + default "CORE2" if BR2_x86_core2 + default "NEHALEM" if BR2_x86_corei7 || BR2_x86_silvermont || BR2_x86_westmere + default "SANDYBRIDGE" if BR2_x86_corei7_avx + default "HASWELL" if BR2_x86_core_avx2 + default "ATOM" if BR2_x86_atom + default "ATHLON" if BR2_x86_athlon || BR2_x86_athlon_4 + default "OPTERON" if BR2_x86_opteron + default "OPTERON_SSE3" if BR2_x86_opteron_sse3 + default "BARCELONA" if BR2_x86_barcelona + default "BOBCAT" if BR2_x86_jaguar + default "STEAMROLLER" if BR2_x86_steamroller + default "VIAC3" if BR2_x86_c3 || BR2_x86_c32 + default "POWER4" if BR2_powerpc_power4 + default "POWER5" if BR2_powerpc_power5 + default "POWER6" if BR2_powerpc_power6 + default "POWER7" if BR2_powerpc_power7 + default "POWER8" if BR2_powerpc_power8 + default "PPCG4" if BR2_powerpc_7400 || BR2_powerpc_7450 + default "PPC970" if BR2_powerpc_970 + default "PPC440" if BR2_powerpc_440 + default "PPC440FP2" if BR2_powerpc_440fp # P5600 is built with MSA support which is only available in Codescape toolchains - default "P5600" if BR2_mips_p5600 && BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS - default "SICORTEX" if BR2_MIPS_CPU_MIPS64 + default "P5600" if BR2_mips_p5600 && BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS + default "SICORTEX" if BR2_MIPS_CPU_MIPS64 # I6400 is built with MSA support which is only available in Codescape toolchains - default "I6400" if BR2_mips_i6400 && BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS + default "I6400" if BR2_mips_i6400 && BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS # OpenBLAS assumes SPARC=Sparc v9 - default "SPARC" if BR2_sparc_v9 + default "SPARC" if BR2_sparc_v9 # Cortex-A15 always have a VFPv4 - default "CORTEXA15" if (BR2_cortex_a15 && BR2_ARM_EABIHF) + default "CORTEXA15" if (BR2_cortex_a15 && BR2_ARM_EABIHF) # Cortex-A9 have an optional VFPv3, so we need to make sure it # is available - default "CORTEXA9" if (BR2_cortex_a9 && BR2_ARM_EABIHF && \ + default "CORTEXA9" if (BR2_cortex_a9 && BR2_ARM_EABIHF && \ BR2_ARM_CPU_HAS_VFPV3) - default "ARMV5" if BR2_ARM_CPU_ARMV5 + default "ARMV5" if BR2_ARM_CPU_ARMV5 # On ARMv6, OpenBLAS assumes that a VFP is available, and # EABIhf is used - default "ARMV6" if (BR2_ARM_CPU_ARMV6 && BR2_ARM_EABIHF && \ + default "ARMV6" if (BR2_ARM_CPU_ARMV6 && BR2_ARM_EABIHF && \ BR2_ARM_CPU_HAS_VFPV2) # On ARMv7, OpenBLAS assumes that a full VFPv3+ is available # (and not the more limited D16 variant), and that EABIhf is # used. - default "ARMV7" if (BR2_ARM_CPU_ARMV7A && BR2_ARM_EABIHF && \ + default "ARMV7" if (BR2_ARM_CPU_ARMV7A && BR2_ARM_EABIHF && \ BR2_ARM_CPU_HAS_VFPV3) - default "ARMV8" if BR2_aarch64 || BR2_aarch64_be + default "ARMV8" if BR2_aarch64 || BR2_aarch64_be + default "RISCV64_GENERIC" if BR2_RISCV_64 help OpenBLAS target CPU. See TargetList.txt in the source tree for the possible target strings. A possible value is set @@ -94,4 +95,9 @@ config BR2_PACKAGE_OPENBLAS_USE_LOCKING function calls from multiple threads, then locking is mandatory for correct operation. +config BR2_PACKAGE_OPENBLAS_INSTALL_TESTS + bool "install tests" + help + Install C test programs on target. + endif diff --git a/package/openblas/openblas.hash b/package/openblas/openblas.hash index 3a52600056c8..8e416f98f6c0 100644 --- a/package/openblas/openblas.hash +++ b/package/openblas/openblas.hash @@ -1,3 +1,5 @@ +# From https://github.com/xianyi/OpenBLAS/releases/tag/v0.3.24 +md5 23599a30e4ce887590957d94896789c8 openblas-0.3.24.tar.gz # Locally calculated -sha256 f36ba3d7a60e7c8bcc54cd9aaa9b1223dd42eaf02c811791c37e8ca707c241ca openblas-0.3.21.tar.gz +sha256 ceadc5065da97bd92404cac7254da66cc6eb192679cf1002098688978d4d5132 openblas-0.3.24.tar.gz sha256 190b5a9c8d9723fe958ad33916bd7346d96fab3c5ea90832bb02d854f620fcff LICENSE diff --git a/package/openblas/openblas.mk b/package/openblas/openblas.mk index ac40c57afb31..aacfc74b5389 100644 --- a/package/openblas/openblas.mk +++ b/package/openblas/openblas.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENBLAS_VERSION = 0.3.21 +OPENBLAS_VERSION = 0.3.24 OPENBLAS_SITE = https://github.com/xianyi/OpenBLAS/releases/download/v$(OPENBLAS_VERSION) OPENBLAS_LICENSE = BSD-3-Clause OPENBLAS_LICENSE_FILES = LICENSE @@ -49,6 +49,12 @@ ifeq ($(BR2_STATIC_LIBS),y) OPENBLAS_MAKE_OPTS += NO_SHARED=1 endif +ifeq ($(BR2_ARCH_IS_64),y) +OPENBLAS_MAKE_OPTS += BINARY=64 +else +OPENBLAS_MAKE_OPTS += BINARY=32 +endif + # binutils version <= 2.23.2 has a bug # (https://sourceware.org/bugzilla/show_bug.cgi?id=14887) where # whitespaces in ARM register specifications such as [ r1, #12 ] or [ @@ -77,4 +83,23 @@ define OPENBLAS_INSTALL_TARGET_CMDS -C $(@D) install PREFIX=$(TARGET_DIR)/usr endef +ifeq ($(BR2_PACKAGE_OPENBLAS_INSTALL_TESTS),y) +# Tests are always built, but are not installed, so we need to install +# them manually. The set of available tests may fluctuate depending on +# the architecture and other options, so only install whatever gets +# built. +define OPENBLAS_INSTALL_TESTS + mkdir -p $(TARGET_DIR)/usr/libexec/openblas/tests + find $(@D)/ctest \ + -type f -name "x[sdcz]cblat[123]" -perm -0100 \ + -exec $(INSTALL) -m 0755 {} \ + $(TARGET_DIR)/usr/libexec/openblas/tests \; + find $(@D)/ctest \ + -type f -name "[sdcz]in[123]" \ + -exec $(INSTALL) -m 0644 {} \ + $(TARGET_DIR)/usr/libexec/openblas/tests \; +endef +OPENBLAS_POST_INSTALL_TARGET_HOOKS += OPENBLAS_INSTALL_TESTS +endif + $(eval $(generic-package)) diff --git a/package/opencsd/Config.in b/package/opencsd/Config.in new file mode 100644 index 000000000000..6e400cc2aebb --- /dev/null +++ b/package/opencsd/Config.in @@ -0,0 +1,27 @@ +config BR2_PACKAGE_OPENCSD_ARCH_SUPPORTS + bool + default y if BR2_arm + default y if BR2_armeb + default y if BR2_aarch64 + default y if BR2_aarch64_be + +config BR2_PACKAGE_OPENCSD + bool "opencsd" + depends on BR2_PACKAGE_OPENCSD_ARCH_SUPPORTS + depends on !BR2_STATIC_LIBS + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + help + This library provides an API suitable for the decode of + ARM(r) CoreSight(tm) trace streams. + + OpenCSD is for example an optional dependency in the Linux + "perf" tool, starting from kernel version 5.1. + + https://github.com/Linaro/OpenCSD + +comment "opencsd needs a toolchain w/ C++11, gcc >= 4.8, dynamic library" + depends on BR2_PACKAGE_OPENCSD_ARCH_SUPPORTS + depends on BR2_STATIC_LIBS \ + || !BR2_INSTALL_LIBSTDCPP \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 diff --git a/package/opencsd/opencsd.hash b/package/opencsd/opencsd.hash new file mode 100644 index 000000000000..a3534976b515 --- /dev/null +++ b/package/opencsd/opencsd.hash @@ -0,0 +1,3 @@ +# Locally Computed: +sha256 159a611535fd7d3bf179bcbdab3791852c6e7199401a6e59cdeef3ba2072edc4 opencsd-1.4.1.tar.gz +sha256 980eef4b0744e63834e3ec0d50c2a4ff6d81d7ec62dd8ba8c66acae0ec5a2e88 LICENSE diff --git a/package/opencsd/opencsd.mk b/package/opencsd/opencsd.mk new file mode 100644 index 000000000000..76135bf0b00d --- /dev/null +++ b/package/opencsd/opencsd.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# opencsd +# +################################################################################ + +OPENCSD_VERSION = 1.4.1 +OPENCSD_SITE = $(call github,Linaro,OpenCSD,v$(OPENCSD_VERSION)) +OPENCSD_LICENSE = BSD-3-Clause +OPENCSD_LICENSE_FILES = LICENSE +OPENCSD_INSTALL_STAGING = YES + +OPENCSD_MAKE_OPTS = \ + CROSS_COMPILE="$(TARGET_CROSS)" + +define OPENCSD_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)/decoder/build/linux \ + $(OPENCSD_MAKE_OPTS) all +endef + +define OPENCSD_INSTALL_TARGET_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)/decoder/build/linux \ + $(OPENCSD_MAKE_OPTS) DESTDIR=$(TARGET_DIR) install +endef + +define OPENCSD_INSTALL_STAGING_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)/decoder/build/linux \ + $(OPENCSD_MAKE_OPTS) DESTDIR=$(STAGING_DIR) install +endef + +$(eval $(generic-package)) diff --git a/package/opencv3/Config.in b/package/opencv3/Config.in index b9ea033f1330..be0680084b22 100644 --- a/package/opencv3/Config.in +++ b/package/opencv3/Config.in @@ -157,15 +157,17 @@ config BR2_PACKAGE_OPENCV3_LIB_PYTHON depends on BR2_PACKAGE_PYTHON3 depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL # python-numpy + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_9 # python-numpy select BR2_PACKAGE_PYTHON_NUMPY help Include opencv_python module into the OpenCV build. No python example is installed. -comment "python support needs glibc or musl" +comment "python support needs a glibc or musl toolchain w/ gcc >= 9" depends on BR2_PACKAGE_PYTHON3 depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS - depends on !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_9 || \ + !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) config BR2_PACKAGE_OPENCV3_LIB_SHAPE bool "shape" diff --git a/package/opencv4-contrib/Config.in b/package/opencv4-contrib/Config.in index 98003330352c..851241ce5e23 100644 --- a/package/opencv4-contrib/Config.in +++ b/package/opencv4-contrib/Config.in @@ -17,6 +17,7 @@ config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_ALPHAMAT config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_ARUCO bool "aruco" + select BR2_PACKAGE_OPENCV4_LIB_CALIB3D help ArUco and ChArUco Markers -- Augmented reality ArUco marker and "ChARUco" markers where ArUco markers embedded inside the @@ -29,6 +30,7 @@ config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_BARCODE config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_BGSEGM bool "bgsegm" + select BR2_PACKAGE_OPENCV4_LIB_VIDEO help Background segmentation algorithm combining statistical background image estimation and per-pixel Bayesian @@ -43,6 +45,7 @@ config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_BIOINSPIRED config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_CCALIB bool "ccalib" + select BR2_PACKAGE_OPENCV4_LIB_HIGHGUI help Custom Calibration -- Patterns for 3D reconstruction, omnidirectional camera calibration, random pattern calibration @@ -71,6 +74,7 @@ config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_DATASETS config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_DNN_OBJDETECT bool "dnn_objdetect" + select BR2_PACKAGE_OPENCV4_LIB_DNN help Object Detection using CNNs -- Implements compact CNN Model for object detection. Trained using Caffe but uses @@ -78,6 +82,7 @@ config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_DNN_OBJDETECT config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_DNN_SUPERRES bool "dnn_superres" + select BR2_PACKAGE_OPENCV4_LIB_DNN help Superresolution using CNNs -- Contains four trained convolutional neural networks to upscale images. @@ -90,12 +95,14 @@ config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_DNNS_EASILY_FOOLED config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_DPM bool "dpm" + select BR2_PACKAGE_OPENCV4_LIB_OBJDETECT help Deformable Part Model -- Felzenszwalb's Cascade with deformable parts object recognition code. config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_FACE bool "face" + select BR2_PACKAGE_OPENCV4_LIB_OBJDETECT help Face Recognition -- Face recognition techniques: Eigen, Fisher and Local Binary Pattern Histograms LBPH methods. @@ -165,6 +172,7 @@ config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_MCC config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_OPTFLOW bool "optflow" + select BR2_PACKAGE_OPENCV4_LIB_VIDEO help Optical Flow -- Algorithms for running and evaluating deepflow, simpleflow, sparsetodenseflow and motion @@ -219,6 +227,11 @@ config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_SALIENCY config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_SFM bool "sfm" + select BR2_PACKAGE_OPENCV4_LIB_IMGPROC + select BR2_PACKAGE_OPENCV4_LIB_IMGCODECS + select BR2_PACKAGE_EIGEN + select BR2_PACKAGE_GLOG + select BR2_PACKAGE_GFLAGS help Structure from Motion -- This module contains algorithms to perform 3d reconstruction from 2d images. The core of @@ -231,6 +244,7 @@ config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_SHAPE config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_STEREO bool "stereo" + select BR2_PACKAGE_OPENCV4_CONTRIB_LIB_TRACKING help Stereo Correspondence -- Stereo matching done with different descriptors: Census / CS-Census / MCT / BRIEF / MV and dense @@ -244,6 +258,7 @@ config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_STRUCTURED_LIGHT config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_SUPERRES bool "superres" + select BR2_PACKAGE_OPENCV4_LIB_VIDEO help Super Resolution @@ -262,12 +277,15 @@ config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_TEXT config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_TRACKING bool "tracking" + select BR2_PACKAGE_OPENCV4_LIB_VIDEO help Vision Based Object Tracking -- Use and/or evaluate different visual object tracking techniques. config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_VIDEOSTAB bool "videostab" + select BR2_PACKAGE_OPENCV4_LIB_VIDEO + select BR2_PACKAGE_OPENCV4_LIB_PHOTO help Video Stabilization @@ -299,6 +317,7 @@ config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_XIMGPROC config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_XOBJDETECT bool "xobjdetect" + select BR2_PACKAGE_OPENCV4_LIB_OBJDETECT help Boosted 2D Object Detection -- Uses a Waldboost cascade and local binary patterns computed as integral features for 2D @@ -306,6 +325,7 @@ config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_XOBJDETECT config BR2_PACKAGE_OPENCV4_CONTRIB_LIB_XPHOTO bool "xphoto" + select BR2_PACKAGE_OPENCV4_LIB_PHOTO help Extra Computational Photography -- Additional photo processing algorithms: Color balance / Denoising / Inpainting. diff --git a/package/opencv4-contrib/opencv4-contrib.hash b/package/opencv4-contrib/opencv4-contrib.hash index 4f15162e5075..954a0c2beb97 100644 --- a/package/opencv4-contrib/opencv4-contrib.hash +++ b/package/opencv4-contrib/opencv4-contrib.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 1777d5fd2b59029cf537e5fd6f8aa68d707075822f90bde683fcde086f85f7a7 opencv4-contrib-4.6.0.tar.gz +sha256 0c082a0b29b3118f2a0a1856b403bb098643af7b994a0080f402a12159a99c6e opencv4-contrib-4.8.1.tar.gz sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE diff --git a/package/opencv4-contrib/opencv4-contrib.mk b/package/opencv4-contrib/opencv4-contrib.mk index 81c45c6e02c8..52d2682b2615 100644 --- a/package/opencv4-contrib/opencv4-contrib.mk +++ b/package/opencv4-contrib/opencv4-contrib.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENCV4_CONTRIB_VERSION = 4.6.0 +OPENCV4_CONTRIB_VERSION = 4.8.1 OPENCV4_CONTRIB_SITE = $(call github,opencv,opencv_contrib,$(OPENCV4_CONTRIB_VERSION)) OPENCV4_CONTRIB_INSTALL_TARGET = FALSE OPENCV4_CONTRIB_LICENSE = Apache-2.0 diff --git a/package/opencv4/Config.in b/package/opencv4/Config.in index 286a7ebf9d97..78ec7c2e41da 100644 --- a/package/opencv4/Config.in +++ b/package/opencv4/Config.in @@ -180,15 +180,17 @@ config BR2_PACKAGE_OPENCV4_LIB_PYTHON depends on BR2_PACKAGE_PYTHON3 depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL # python-numpy + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_9 # python-numpy select BR2_PACKAGE_PYTHON_NUMPY help Include opencv_python module into the OpenCV build. No python example is installed. -comment "python support needs glibc or musl" +comment "python support needs a glibc or musl toolchain w/ gcc >= 9" depends on BR2_PACKAGE_PYTHON3 depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS - depends on !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_9 ||\ + !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) config BR2_PACKAGE_OPENCV4_LIB_SHAPE bool "shape" diff --git a/package/opencv4/opencv4.hash b/package/opencv4/opencv4.hash index 419b420917f3..273675263353 100644 --- a/package/opencv4/opencv4.hash +++ b/package/opencv4/opencv4.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 1ec1cba65f9f20fe5a41fda1586e01c70ea0c9a6d7b67c9e13edf0cfe2239277 opencv4-4.6.0.tar.gz +sha256 62f650467a60a38794d681ae7e66e3e8cfba38f445e0bf87867e2f2cdc8be9d5 opencv4-4.8.1.tar.gz sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE diff --git a/package/opencv4/opencv4.mk b/package/opencv4/opencv4.mk index a665793ad9b1..74cec511a91d 100644 --- a/package/opencv4/opencv4.mk +++ b/package/opencv4/opencv4.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENCV4_VERSION = 4.6.0 +OPENCV4_VERSION = 4.8.1 OPENCV4_SITE = $(call github,opencv,opencv,$(OPENCV4_VERSION)) OPENCV4_INSTALL_STAGING = YES OPENCV4_LICENSE = Apache-2.0 @@ -203,12 +203,10 @@ OPENCV4_CONF_OPTS += \ -DINSTALL_PYTHON_EXAMPLES=OFF \ -DINSTALL_TO_MANGLED_PATHS=OFF -# Disabled features (mostly because they are not available in Buildroot), but -# - eigen: OpenCV does not use it, not take any benefit from it. +# Disabled features (mostly because they are not available in Buildroot) OPENCV4_CONF_OPTS += \ -DWITH_1394=OFF \ -DWITH_CLP=OFF \ - -DWITH_EIGEN=OFF \ -DWITH_GDAL=OFF \ -DWITH_GPHOTO2=OFF \ -DWITH_GSTREAMER_0_10=OFF \ @@ -284,6 +282,11 @@ OPENCV4_CONF_OPTS += \ -DBUILD_opencv_xphoto=$(if $(BR2_PACKAGE_OPENCV4_CONTRIB_LIB_XPHOTO),ON,OFF) endif +ifeq ($(BR2_PACKAGE_OPENCV4_CONTRIB_LIB_SFM),y) +OPENCV4_DEPENDENCIES += eigen glog gflags +OPENCV4_CONF_OPTS += -DWITH_EIGEN=ON +endif + ifeq ($(BR2_PACKAGE_OPENCV4_JPEG2000_WITH_JASPER),y) OPENCV4_CONF_OPTS += -DWITH_JASPER=ON OPENCV4_DEPENDENCIES += jasper diff --git a/package/openfpgaloader/Config.in b/package/openfpgaloader/Config.in index 054278c256d6..bd83ad415ba6 100644 --- a/package/openfpgaloader/Config.in +++ b/package/openfpgaloader/Config.in @@ -12,7 +12,7 @@ config BR2_PACKAGE_OPENFPGALOADER if BR2_PACKAGE_OPENFPGALOADER -config BR2_PACAKGE_OPENFPGALOADER_CMSIS +config BR2_PACKAGE_OPENFPGALOADER_CMSIS bool "CMSIS-DAP support" depends on BR2_PACKAGE_HAS_UDEV # hidapi depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # hidapi @@ -24,6 +24,16 @@ config BR2_PACAKGE_OPENFPGALOADER_CMSIS comment "openfpgaloader CMSIS-DAP needs udev /dev management and a toolchain w/ NPTL threads" depends on !BR2_PACKAGE_HAS_UDEV || !BR2_TOOLCHAIN_HAS_THREADS_NPTL +config BR2_PACKAGE_OPENFPGALOADER_LIBGPIOD + bool "libgpiod support" + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_8 # libgpiod + select BR2_PACKAGE_LIBGPIOD + help + openfpgaloader libgpiod support + +comment "openfpgaloader libgpiod needs kernel headers >= 4.8" + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_8 + endif comment "openfpgaloader needs a toolchain w/ threads, C++, gcc >= 4.9" diff --git a/package/openfpgaloader/openfpgaloader.hash b/package/openfpgaloader/openfpgaloader.hash index 6c9d8a2b9135..6fa81a98a22b 100644 --- a/package/openfpgaloader/openfpgaloader.hash +++ b/package/openfpgaloader/openfpgaloader.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 a862a209d696becff915a77512e6a8c22f92d73480a45cc12273d9ad1db60d23 openfpgaloader-0.6.1.tar.gz +sha256 a463690358d2510919472c2f460039a304d016a08a45970821e667eea1c48cc8 openfpgaloader-0.11.0.tar.gz sha256 c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 LICENSE diff --git a/package/openfpgaloader/openfpgaloader.mk b/package/openfpgaloader/openfpgaloader.mk index 0c39aad68717..0fd172b5326d 100644 --- a/package/openfpgaloader/openfpgaloader.mk +++ b/package/openfpgaloader/openfpgaloader.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENFPGALOADER_VERSION = 0.6.1 +OPENFPGALOADER_VERSION = 0.11.0 OPENFPGALOADER_SITE = $(call github,trabucayre,openFPGALoader,v$(OPENFPGALOADER_VERSION)) OPENFPGALOADER_LICENSE = Apache-2.0 OPENFPGALOADER_LICENSE_FILES = LICENSE @@ -17,11 +17,18 @@ else OPENFPGALOADER_CONF_OPTS += -DENABLE_UDEV=OFF endif -ifeq ($(BR2_PACAKGE_OPENFPGALOADER_CMSIS),y) +ifeq ($(BR2_PACKAGE_OPENFPGALOADER_CMSIS),y) OPENFPGALOADER_DEPENDENCIES += hidapi OPENFPGALOADER_CONF_OPTS += -DENABLE_CMSISDAP=ON else OPENFPGALOADER_CONF_OPTS += -DENABLE_CMSISDAP=OFF endif +ifeq ($(BR2_PACKAGE_OPENFPGALOADER_LIBGPIOD),y) +OPENFPGALOADER_DEPENDENCIES += libgpiod +OPENFPGALOADER_CONF_OPTS += -DENABLE_LIBGPIOD=ON +else +OPENFPGALOADER_CONF_OPTS += -DENABLE_LIBGPIOD=OFF +endif + $(eval $(cmake-package)) diff --git a/package/openipmi/openipmi.hash b/package/openipmi/openipmi.hash index fc3cf1a5206f..fdba9518c78b 100644 --- a/package/openipmi/openipmi.hash +++ b/package/openipmi/openipmi.hash @@ -1,8 +1,8 @@ # From http://sourceforge.net/projects/openipmi/files/OpenIPMI%202.0%20Library/ -sha1 4387f227aad92756e296d1c9421e83231d355dbd OpenIPMI-2.0.33.tar.gz -md5 923d2914dbbc3307712f8c58401bab0f OpenIPMI-2.0.33.tar.gz +sha1 bc910d5d682710e9ff290c33e0780a71edba29d4 OpenIPMI-2.0.34.tar.gz +md5 9d27cc86b95a29251009db96452e7213 OpenIPMI-2.0.34.tar.gz # Locally computed -sha256 fb53e9ea5e2681cf8af7cda024b1a0044c675f84116ca27ae9616c8b7ad95b49 OpenIPMI-2.0.33.tar.gz +sha256 93227e43c72b5c3bd5949323e0669aa5527d1a971473a3a365af03fb8284a95f OpenIPMI-2.0.34.tar.gz sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING sha256 185323a62589e7ee80f86bf2ea29caad9a09fdda0ea3f1c00db8b778c7edf60e COPYING.BSD sha256 5bbcbb737e60fe9deba08ecbd00920cfcc3403ba2e534c64fdeea49d6bb87509 COPYING.LIB diff --git a/package/openipmi/openipmi.mk b/package/openipmi/openipmi.mk index ccf86f93cd6f..1c406879e381 100644 --- a/package/openipmi/openipmi.mk +++ b/package/openipmi/openipmi.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENIPMI_VERSION = 2.0.33 +OPENIPMI_VERSION = 2.0.34 OPENIPMI_SITE = https://sourceforge.net/projects/openipmi/files/OpenIPMI%202.0%20Library OPENIPMI_SOURCE = OpenIPMI-$(OPENIPMI_VERSION).tar.gz OPENIPMI_LICENSE = LGPL-2.0+, GPL-2.0+, BSD-3-Clause diff --git a/package/openjdk-bin/17.0.9_9/openjdk-bin.hash b/package/openjdk-bin/17.0.9_9/openjdk-bin.hash new file mode 100644 index 000000000000..29f39c5d3647 --- /dev/null +++ b/package/openjdk-bin/17.0.9_9/openjdk-bin.hash @@ -0,0 +1,7 @@ +# https://github.com/adoptium/temurin17-binaries/releases +sha256 7b175dbe0d6e3c9c23b6ed96449b018308d8fc94a5ecd9c0df8b8bc376c3c18a OpenJDK17U-jdk_x64_linux_hotspot_17.0.9_9.tar.gz +sha256 e2c5e26f8572544b201bc22a9b28f2b1a3147ab69be111cea07c7f52af252e75 OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.9_9.tar.gz + +# Locally calculated +sha256 4b9abebc4338048a7c2dc184e9f800deb349366bdf28eb23c2677a77b4c87726 legal/java.prefs/LICENSE +sha256 a44eb7b5caf5534c6ef536b21edb40b4d6babf91bf97d9d45596868618b2c6fb legal/java.prefs/ASSEMBLY_EXCEPTION diff --git a/package/openjdk-bin/21.0.1_12/openjdk-bin.hash b/package/openjdk-bin/21.0.1_12/openjdk-bin.hash new file mode 100644 index 000000000000..35be28bb4f14 --- /dev/null +++ b/package/openjdk-bin/21.0.1_12/openjdk-bin.hash @@ -0,0 +1,7 @@ +# From https://github.com/adoptium/temurin21-binaries/releases +sha256 1a6fa8abda4c5caed915cfbeeb176e7fbd12eb6b222f26e290ee45808b529aa1 OpenJDK21U-jdk_x64_linux_hotspot_21.0.1_12.tar.gz +sha256 e184dc29a6712c1f78754ab36fb48866583665fa345324f1a79e569c064f95e9 OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.1_12.tar.gz + +# Locally calculated +sha256 4b9abebc4338048a7c2dc184e9f800deb349366bdf28eb23c2677a77b4c87726 legal/java.prefs/LICENSE +sha256 75292f03bf23d3db7c985aecc191029b93883200721ed23ed34a2e601463df33 legal/java.prefs/ASSEMBLY_EXCEPTION diff --git a/package/openjdk-bin/openjdk-bin.hash b/package/openjdk-bin/openjdk-bin.hash deleted file mode 100644 index 4d3942125f61..000000000000 --- a/package/openjdk-bin/openjdk-bin.hash +++ /dev/null @@ -1,11 +0,0 @@ -# https://github.com/adoptium/temurin17-binaries/releases -sha256 288f34e3ba8a4838605636485d0365ce23e57d5f2f68997ac4c2e4c01967cd48 OpenJDK17U-jdk_x64_linux_hotspot_17.0.2_8.tar.gz -sha256 302caf29f73481b2b914ba2b89705036010c65eb9bc8d7712b27d6e9bedf6200 OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.2_8.tar.gz - -# From https://github.com/adoptium/temurin11-binaries/releases -sha256 43fb84f8063ad9bf6b6d694a67b8f64c8827552b920ec5ce794dfe5602edffe7 OpenJDK11U-jdk_x64_linux_hotspot_11.0.14.1_1.tar.gz -sha256 79572f5172c6a040591d34632f98a20ed148702bbce2f57649e8ac01c0d2e3db OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.14.1_1.tar.gz - -# Locally calculated -sha256 4b9abebc4338048a7c2dc184e9f800deb349366bdf28eb23c2677a77b4c87726 legal/java.prefs/LICENSE -sha256 a44eb7b5caf5534c6ef536b21edb40b4d6babf91bf97d9d45596868618b2c6fb legal/java.prefs/ASSEMBLY_EXCEPTION diff --git a/package/openjdk-bin/openjdk-bin.mk b/package/openjdk-bin/openjdk-bin.mk index 608a0bc3ac1f..0280151fba1b 100644 --- a/package/openjdk-bin/openjdk-bin.mk +++ b/package/openjdk-bin/openjdk-bin.mk @@ -4,12 +4,12 @@ # ################################################################################ -ifeq ($(BR2_PACKAGE_OPENJDK_VERSION_17),y) -HOST_OPENJDK_BIN_VERSION_MAJOR = 17 -HOST_OPENJDK_BIN_VERSION_MINOR = 0.2_8 +ifeq ($(BR2_PACKAGE_OPENJDK_VERSION_21),y) +HOST_OPENJDK_BIN_VERSION_MAJOR = 21 +HOST_OPENJDK_BIN_VERSION_MINOR = 0.1_12 else -HOST_OPENJDK_BIN_VERSION_MAJOR = 11 -HOST_OPENJDK_BIN_VERSION_MINOR = 0.14.1_1 +HOST_OPENJDK_BIN_VERSION_MAJOR = 17 +HOST_OPENJDK_BIN_VERSION_MINOR = 0.9_9 endif ifeq ($(HOSTARCH),x86_64) diff --git a/package/openjdk/17.0.1+12/0001-Add-ARCv2-ISA-processors-support-to-Zero.patch b/package/openjdk/17.0.1+12/0001-Add-ARCv2-ISA-processors-support-to-Zero.patch deleted file mode 100644 index 1ef523a41962..000000000000 --- a/package/openjdk/17.0.1+12/0001-Add-ARCv2-ISA-processors-support-to-Zero.patch +++ /dev/null @@ -1,109 +0,0 @@ -From 9a3c2a0714420186ae8d5159d5416c6fa2009ad9 Mon Sep 17 00:00:00 2001 -From: Alexey Brodkin -Date: Mon, 18 Oct 2021 05:20:05 -0700 -Subject: [PATCH] Add ARCv2 ISA processors support to Zero - -This adds ARCv2 processors support in OpenJDK via -"Zero Assembly Project" (see https://openjdk.java.net/projects/zero). - -That' a purely interpretive mode, so likely not that fast -as JIT'ed version, but for starters it's much better than nothing. - -Once all the logistical problems are solved hopefully this -change will be accepted upstream. - -Signed-off-by: Alexey Brodkin ---- - make/autoconf/libraries.m4 | 8 ++++++++ - make/autoconf/platform.m4 | 8 ++++++++ - src/hotspot/os/linux/os_linux.cpp | 8 +++++++- - 3 files changed, 23 insertions(+), 1 deletion(-) - -diff --git a/make/autoconf/libraries.m4 b/make/autoconf/libraries.m4 -index 5120918aed2..f7a99955874 100644 ---- a/make/autoconf/libraries.m4 -+++ b/make/autoconf/libraries.m4 -@@ -122,6 +122,14 @@ AC_DEFUN_ONCE([LIB_SETUP_LIBRARIES], - BASIC_JVM_LIBS="$BASIC_JVM_LIBS -lpthread" - fi - -+ # Libatomic library -+ # 32-bit ARC needs fallback library for 8-byte atomic ops -+ # Inspired by a fix for MIPS, see https://github.com/openjdk/jdk/commit/1b3aa3af -+ if test "x$OPENJDK_TARGET_OS" = xlinux && -+ (test "x$OPENJDK_TARGET_CPU" = xarc); then -+ BASIC_JVM_LIBS="$BASIC_JVM_LIBS -latomic" -+ fi -+ - # perfstat lib - if test "x$OPENJDK_TARGET_OS" = xaix; then - BASIC_JVM_LIBS="$BASIC_JVM_LIBS -lperfstat" -diff --git a/make/autoconf/platform.m4 b/make/autoconf/platform.m4 -index c0f2446dbd7..dc416ece885 100644 ---- a/make/autoconf/platform.m4 -+++ b/make/autoconf/platform.m4 -@@ -54,6 +54,12 @@ AC_DEFUN([PLATFORM_EXTRACT_VARS_FROM_CPU], - VAR_CPU_BITS=64 - VAR_CPU_ENDIAN=little - ;; -+ arc) -+ VAR_CPU=arc -+ VAR_CPU_ARCH=arc -+ VAR_CPU_BITS=32 -+ VAR_CPU_ENDIAN=little -+ ;; - arm*) - VAR_CPU=arm - VAR_CPU_ARCH=arm -@@ -478,6 +484,8 @@ AC_DEFUN([PLATFORM_SETUP_LEGACY_VARS_HELPER], - HOTSPOT_$1_CPU_DEFINE=PPC64 - - # The cpu defines below are for zero, we don't support them directly. -+ elif test "x$OPENJDK_$1_CPU" = xarc; then -+ HOTSPOT_$1_CPU_DEFINE=ARC - elif test "x$OPENJDK_$1_CPU" = xsparc; then - HOTSPOT_$1_CPU_DEFINE=SPARC - elif test "x$OPENJDK_$1_CPU" = xppc; then -diff --git a/src/hotspot/os/linux/os_linux.cpp b/src/hotspot/os/linux/os_linux.cpp -index b08caf4d5d3..2bf084895ba 100644 ---- a/src/hotspot/os/linux/os_linux.cpp -+++ b/src/hotspot/os/linux/os_linux.cpp -@@ -1858,6 +1858,9 @@ void * os::dll_load(const char *filename, char *ebuf, int ebuflen) { - #ifndef EM_AARCH64 - #define EM_AARCH64 183 /* ARM AARCH64 */ - #endif -+#ifndef EM_ARC_COMPACT2 -+ #define EM_ARC_COMPACT2 195 /* ARC ARCv2 ISA */ -+#endif - #ifndef EM_RISCV - #define EM_RISCV 243 /* RISC-V */ - #endif -@@ -1879,6 +1882,7 @@ void * os::dll_load(const char *filename, char *ebuf, int ebuflen) { - {EM_SH, EM_SH, ELFCLASS32, ELFDATA2MSB, (char*)"SuperH BE"}, - #endif - {EM_ARM, EM_ARM, ELFCLASS32, ELFDATA2LSB, (char*)"ARM"}, -+ {EM_ARC_COMPACT2, EM_ARC_COMPACT2, ELFCLASS32, ELFDATA2LSB, (char*)"ARC"}, - // we only support 64 bit z architecture - {EM_S390, EM_S390, ELFCLASS64, ELFDATA2MSB, (char*)"IBM System/390"}, - {EM_ALPHA, EM_ALPHA, ELFCLASS64, ELFDATA2LSB, (char*)"Alpha"}, -@@ -1906,6 +1910,8 @@ void * os::dll_load(const char *filename, char *ebuf, int ebuflen) { - static Elf32_Half running_arch_code=EM_PPC; - #elif (defined AARCH64) - static Elf32_Half running_arch_code=EM_AARCH64; -+#elif (defined ARC) -+ static Elf32_Half running_arch_code=EM_ARC_COMPACT2; - #elif (defined ARM) - static Elf32_Half running_arch_code=EM_ARM; - #elif (defined S390) -@@ -1926,7 +1932,7 @@ void * os::dll_load(const char *filename, char *ebuf, int ebuflen) { - static Elf32_Half running_arch_code=EM_RISCV; - #else - #error Method os::dll_load requires that one of following is defined:\ -- AARCH64, ALPHA, ARM, AMD64, IA32, IA64, M68K, MIPS, MIPSEL, PARISC, __powerpc__, __powerpc64__, RISCV, S390, SH, __sparc -+ AARCH64, ALPHA, ARC, ARM, AMD64, IA32, IA64, M68K, MIPS, MIPSEL, PARISC, __powerpc__, __powerpc64__, RISCV, S390, SH, __sparc - #endif - - // Identify compatibility class for VM's architecture and library's architecture --- -2.16.2 - diff --git a/package/openjdk/17.0.9+9/0001-Add-ARCv2-ISA-processors-support-to-Zero.patch b/package/openjdk/17.0.9+9/0001-Add-ARCv2-ISA-processors-support-to-Zero.patch new file mode 100644 index 000000000000..afec2772c090 --- /dev/null +++ b/package/openjdk/17.0.9+9/0001-Add-ARCv2-ISA-processors-support-to-Zero.patch @@ -0,0 +1,109 @@ +From 9a3c2a0714420186ae8d5159d5416c6fa2009ad9 Mon Sep 17 00:00:00 2001 +From: Alexey Brodkin +Date: Mon, 18 Oct 2021 05:20:05 -0700 +Subject: [PATCH] Add ARCv2 ISA processors support to Zero + +This adds ARCv2 processors support in OpenJDK via +"Zero Assembly Project" (see https://openjdk.java.net/projects/zero). + +That' a purely interpretive mode, so likely not that fast +as JIT'ed version, but for starters it's much better than nothing. + +Once all the logistical problems are solved hopefully this +change will be accepted upstream. + +Signed-off-by: Alexey Brodkin +--- + make/autoconf/libraries.m4 | 8 ++++++++ + make/autoconf/platform.m4 | 8 ++++++++ + src/hotspot/os/linux/os_linux.cpp | 8 +++++++- + 3 files changed, 23 insertions(+), 1 deletion(-) + +diff --git a/make/autoconf/libraries.m4 b/make/autoconf/libraries.m4 +index 5120918aed2..f7a99955874 100644 +--- a/make/autoconf/libraries.m4 ++++ b/make/autoconf/libraries.m4 +@@ -152,6 +152,14 @@ AC_DEFUN_ONCE([LIB_SETUP_LIBRARIES], + BASIC_JVM_LIBS="$BASIC_JVM_LIBS -latomic" + fi + ++ # Libatomic library ++ # 32-bit ARC needs fallback library for 8-byte atomic ops ++ # Inspired by a fix for MIPS, see https://github.com/openjdk/jdk/commit/1b3aa3af ++ if test "x$OPENJDK_TARGET_OS" = xlinux && ++ (test "x$OPENJDK_TARGET_CPU" = xarc); then ++ BASIC_JVM_LIBS="$BASIC_JVM_LIBS -latomic" ++ fi ++ + # perfstat lib + if test "x$OPENJDK_TARGET_OS" = xaix; then + BASIC_JVM_LIBS="$BASIC_JVM_LIBS -lperfstat" +diff --git a/make/autoconf/platform.m4 b/make/autoconf/platform.m4 +index c0f2446dbd7..dc416ece885 100644 +--- a/make/autoconf/platform.m4 ++++ b/make/autoconf/platform.m4 +@@ -54,6 +54,12 @@ AC_DEFUN([PLATFORM_EXTRACT_VARS_FROM_CPU], + VAR_CPU_BITS=64 + VAR_CPU_ENDIAN=little + ;; ++ arc) ++ VAR_CPU=arc ++ VAR_CPU_ARCH=arc ++ VAR_CPU_BITS=32 ++ VAR_CPU_ENDIAN=little ++ ;; + arm*) + VAR_CPU=arm + VAR_CPU_ARCH=arm +@@ -565,6 +571,8 @@ AC_DEFUN([PLATFORM_SETUP_LEGACY_VARS_HELPER], + HOTSPOT_$1_CPU_DEFINE=RISCV64 + + # The cpu defines below are for zero, we don't support them directly. ++ elif test "x$OPENJDK_$1_CPU" = xarc; then ++ HOTSPOT_$1_CPU_DEFINE=ARC + elif test "x$OPENJDK_$1_CPU" = xsparc; then + HOTSPOT_$1_CPU_DEFINE=SPARC + elif test "x$OPENJDK_$1_CPU" = xppc; then +diff --git a/src/hotspot/os/linux/os_linux.cpp b/src/hotspot/os/linux/os_linux.cpp +index b08caf4d5d3..2bf084895ba 100644 +--- a/src/hotspot/os/linux/os_linux.cpp ++++ b/src/hotspot/os/linux/os_linux.cpp +@@ -1721,6 +1721,9 @@ void * os::dll_load(const char *filename, char *ebuf, int ebuflen) { + #ifndef EM_AARCH64 + #define EM_AARCH64 183 /* ARM AARCH64 */ + #endif ++#ifndef EM_ARC_COMPACT2 ++ #define EM_ARC_COMPACT2 195 /* ARC ARCv2 ISA */ ++#endif + #ifndef EM_RISCV + #define EM_RISCV 243 /* RISC-V */ + #endif +@@ -1745,6 +1748,7 @@ void * os::dll_load(const char *filename, char *ebuf, int ebuflen) { + {EM_SH, EM_SH, ELFCLASS32, ELFDATA2MSB, (char*)"SuperH BE"}, + #endif + {EM_ARM, EM_ARM, ELFCLASS32, ELFDATA2LSB, (char*)"ARM"}, ++ {EM_ARC_COMPACT2, EM_ARC_COMPACT2, ELFCLASS32, ELFDATA2LSB, (char*)"ARC"}, + // we only support 64 bit z architecture + {EM_S390, EM_S390, ELFCLASS64, ELFDATA2MSB, (char*)"IBM System/390"}, + {EM_ALPHA, EM_ALPHA, ELFCLASS64, ELFDATA2LSB, (char*)"Alpha"}, +@@ -1773,6 +1777,8 @@ void * os::dll_load(const char *filename, char *ebuf, int ebuflen) { + static Elf32_Half running_arch_code=EM_PPC; + #elif (defined AARCH64) + static Elf32_Half running_arch_code=EM_AARCH64; ++#elif (defined ARC) ++ static Elf32_Half running_arch_code=EM_ARC_COMPACT2; + #elif (defined ARM) + static Elf32_Half running_arch_code=EM_ARM; + #elif (defined S390) +@@ -1795,7 +1801,7 @@ void * os::dll_load(const char *filename, char *ebuf, int ebuflen) { + static Elf32_Half running_arch_code=EM_LOONGARCH; + #else + #error Method os::dll_load requires that one of following is defined:\ +- AARCH64, ALPHA, ARM, AMD64, IA32, IA64, LOONGARCH, M68K, MIPS, MIPSEL, PARISC, __powerpc__, __powerpc64__, RISCV, S390, SH, __sparc ++ AARCH64, ALPHA, ARC, ARM, AMD64, IA32, IA64, LOONGARCH, M68K, MIPS, MIPSEL, PARISC, __powerpc__, __powerpc64__, RISCV, S390, SH, __sparc + #endif + + // Identify compatibility class for VM's architecture and library's architecture +-- +2.16.2 + diff --git a/package/openjdk/21.0.1+12/0001-Add-ARCv2-ISA-processors-support-to-Zero.patch b/package/openjdk/21.0.1+12/0001-Add-ARCv2-ISA-processors-support-to-Zero.patch new file mode 100644 index 000000000000..6c46ec7b428d --- /dev/null +++ b/package/openjdk/21.0.1+12/0001-Add-ARCv2-ISA-processors-support-to-Zero.patch @@ -0,0 +1,109 @@ +From 9a3c2a0714420186ae8d5159d5416c6fa2009ad9 Mon Sep 17 00:00:00 2001 +From: Alexey Brodkin +Date: Mon, 18 Oct 2021 05:20:05 -0700 +Subject: [PATCH] Add ARCv2 ISA processors support to Zero + +This adds ARCv2 processors support in OpenJDK via +"Zero Assembly Project" (see https://openjdk.java.net/projects/zero). + +That' a purely interpretive mode, so likely not that fast +as JIT'ed version, but for starters it's much better than nothing. + +Once all the logistical problems are solved hopefully this +change will be accepted upstream. + +Signed-off-by: Alexey Brodkin +--- + make/autoconf/libraries.m4 | 8 ++++++++ + make/autoconf/platform.m4 | 8 ++++++++ + src/hotspot/os/linux/os_linux.cpp | 8 +++++++- + 3 files changed, 23 insertions(+), 1 deletion(-) + +diff --git a/make/autoconf/libraries.m4 b/make/autoconf/libraries.m4 +index 5120918aed2..f7a99955874 100644 +--- a/make/autoconf/libraries.m4 ++++ b/make/autoconf/libraries.m4 +@@ -163,6 +163,14 @@ AC_DEFUN_ONCE([LIB_SETUP_LIBRARIES], + BASIC_JVM_LIBS="$BASIC_JVM_LIBS -lrt" + fi + ++ # Libatomic library ++ # 32-bit ARC needs fallback library for 8-byte atomic ops ++ # Inspired by a fix for MIPS, see https://github.com/openjdk/jdk/commit/1b3aa3af ++ if test "x$OPENJDK_TARGET_OS" = xlinux && ++ (test "x$OPENJDK_TARGET_CPU" = xarc); then ++ BASIC_JVM_LIBS="$BASIC_JVM_LIBS -latomic" ++ fi ++ + # perfstat lib + if test "x$OPENJDK_TARGET_OS" = xaix; then + BASIC_JVM_LIBS="$BASIC_JVM_LIBS -lperfstat" +diff --git a/make/autoconf/platform.m4 b/make/autoconf/platform.m4 +index c0f2446dbd7..dc416ece885 100644 +--- a/make/autoconf/platform.m4 ++++ b/make/autoconf/platform.m4 +@@ -54,6 +54,12 @@ AC_DEFUN([PLATFORM_EXTRACT_VARS_FROM_CPU], + VAR_CPU_BITS=64 + VAR_CPU_ENDIAN=little + ;; ++ arc) ++ VAR_CPU=arc ++ VAR_CPU_ARCH=arc ++ VAR_CPU_BITS=32 ++ VAR_CPU_ENDIAN=little ++ ;; + arm*) + VAR_CPU=arm + VAR_CPU_ARCH=arm +@@ -571,6 +577,8 @@ AC_DEFUN([PLATFORM_SETUP_LEGACY_VARS_HELPER], + HOTSPOT_$1_CPU_DEFINE=RISCV64 + + # The cpu defines below are for zero, we don't support them directly. ++ elif test "x$OPENJDK_$1_CPU" = xarc; then ++ HOTSPOT_$1_CPU_DEFINE=ARC + elif test "x$OPENJDK_$1_CPU" = xsparc; then + HOTSPOT_$1_CPU_DEFINE=SPARC + elif test "x$OPENJDK_$1_CPU" = xppc; then +diff --git a/src/hotspot/os/linux/os_linux.cpp b/src/hotspot/os/linux/os_linux.cpp +index b08caf4d5d3..2bf084895ba 100644 +--- a/src/hotspot/os/linux/os_linux.cpp ++++ b/src/hotspot/os/linux/os_linux.cpp +@@ -1653,6 +1653,9 @@ void * os::dll_load(const char *filename, char *ebuf, int ebuflen) { + #ifndef EM_AARCH64 + #define EM_AARCH64 183 /* ARM AARCH64 */ + #endif ++#ifndef EM_ARC_COMPACT2 ++ #define EM_ARC_COMPACT2 195 /* ARC ARCv2 ISA */ ++#endif + #ifndef EM_RISCV + #define EM_RISCV 243 /* RISC-V */ + #endif +@@ -1677,6 +1680,7 @@ void * os::dll_load(const char *filename, char *ebuf, int ebuflen) { + {EM_SH, EM_SH, ELFCLASS32, ELFDATA2MSB, (char*)"SuperH BE"}, + #endif + {EM_ARM, EM_ARM, ELFCLASS32, ELFDATA2LSB, (char*)"ARM"}, ++ {EM_ARC_COMPACT2, EM_ARC_COMPACT2, ELFCLASS32, ELFDATA2LSB, (char*)"ARC"}, + // we only support 64 bit z architecture + {EM_S390, EM_S390, ELFCLASS64, ELFDATA2MSB, (char*)"IBM System/390"}, + {EM_ALPHA, EM_ALPHA, ELFCLASS64, ELFDATA2LSB, (char*)"Alpha"}, +@@ -1709,6 +1713,8 @@ void * os::dll_load(const char *filename, char *ebuf, int ebuflen) { + static Elf32_Half running_arch_code=EM_PPC; + #elif (defined AARCH64) + static Elf32_Half running_arch_code=EM_AARCH64; ++#elif (defined ARC) ++ static Elf32_Half running_arch_code=EM_ARC_COMPACT2; + #elif (defined ARM) + static Elf32_Half running_arch_code=EM_ARM; + #elif (defined S390) +@@ -1731,7 +1737,7 @@ void * os::dll_load(const char *filename, char *ebuf, int ebuflen) { + static Elf32_Half running_arch_code=EM_LOONGARCH; + #else + #error Method os::dll_load requires that one of following is defined:\ +- AARCH64, ALPHA, ARM, AMD64, IA32, IA64, LOONGARCH64, M68K, MIPS, MIPSEL, PARISC, __powerpc__, __powerpc64__, RISCV, S390, SH, __sparc ++ AARCH64, ALPHA, ARC, ARM, AMD64, IA32, IA64, LOONGARCH64, M68K, MIPS, MIPSEL, PARISC, __powerpc__, __powerpc64__, RISCV, S390, SH, __sparc + #endif + + // Identify compatibility class for VM's architecture and library's architecture +-- +2.16.2 + diff --git a/package/openjdk/Config.in b/package/openjdk/Config.in index 24a56e6b845b..25d6960ecf13 100644 --- a/package/openjdk/Config.in +++ b/package/openjdk/Config.in @@ -57,20 +57,18 @@ if BR2_PACKAGE_OPENJDK choice prompt "openjdk version" - default BR2_PACKAGE_OPENJDK_VERSION_11 if BR2_OPENJDK_VERSION_LTS # legacy - default BR2_PACKAGE_OPENJDK_VERSION_17 if BR2_OPENJDK_VERSION_LATEST # legacy - default BR2_PACKAGE_OPENJDK_VERSION_17 + default BR2_PACKAGE_OPENJDK_VERSION_17 if BR2_OPENJDK_VERSION_LTS # legacy + default BR2_PACKAGE_OPENJDK_VERSION_21 if BR2_OPENJDK_VERSION_LATEST # legacy + default BR2_PACKAGE_OPENJDK_VERSION_21 help Select the version of OpenJDK you wish to use. -config BR2_PACKAGE_OPENJDK_VERSION_11 - bool "OpenJDK 11" - # The ARC-specific OpenJDK patch only applies to OpenJDK 17. - depends on !BR2_arc - config BR2_PACKAGE_OPENJDK_VERSION_17 bool "OpenJDK 17" +config BR2_PACKAGE_OPENJDK_VERSION_21 + bool "OpenJDK 21" + endchoice config BR2_PACKAGE_OPENJDK_FULL_JDK diff --git a/package/openjdk/openjdk.hash b/package/openjdk/openjdk.hash index 293787792d73..949a62e52758 100644 --- a/package/openjdk/openjdk.hash +++ b/package/openjdk/openjdk.hash @@ -1,4 +1,4 @@ # Locally computed -sha256 2fdd23261526362d4aaf58323441d4c31d29de2e374ba94bbf2727a00adc0ea7 openjdk-17.0.2+8.tar.gz -sha256 0e859cc03378439023e17ee82aecee5a52265fb38906a8bebf16027aa2b2bcf5 openjdk-11.0.14.1+1.tar.gz +sha256 9943e3814d3c1a31f1449f09a8b67df54841944f855a1d372be892c5e6b19217 openjdk-21.0.1+12.tar.gz +sha256 836adb5fec5a58ce2f49a0faeaf9e69a3cb89865f4d855c6098f0264843672ad openjdk-17.0.9+9.tar.gz sha256 4b9abebc4338048a7c2dc184e9f800deb349366bdf28eb23c2677a77b4c87726 LICENSE diff --git a/package/openjdk/openjdk.mk b/package/openjdk/openjdk.mk index 42d52d57c479..f4e1920e6c8a 100644 --- a/package/openjdk/openjdk.mk +++ b/package/openjdk/openjdk.mk @@ -4,12 +4,12 @@ # ################################################################################ -ifeq ($(BR2_PACKAGE_OPENJDK_VERSION_17),y) -OPENJDK_VERSION_MAJOR = 17 -OPENJDK_VERSION_MINOR = 0.2+8 +ifeq ($(BR2_PACKAGE_OPENJDK_VERSION_21),y) +OPENJDK_VERSION_MAJOR = 21 +OPENJDK_VERSION_MINOR = 0.1+12 else -OPENJDK_VERSION_MAJOR = 11 -OPENJDK_VERSION_MINOR = 0.14.1+1 +OPENJDK_VERSION_MAJOR = 17 +OPENJDK_VERSION_MINOR = 0.9+9 endif OPENJDK_VERSION = $(OPENJDK_VERSION_MAJOR).$(OPENJDK_VERSION_MINOR) OPENJDK_SITE = $(call github,openjdk,jdk$(OPENJDK_VERSION_MAJOR)u,jdk-$(OPENJDK_VERSION)) @@ -83,7 +83,6 @@ OPENJDK_CONF_ENV = \ OPENJDK_CONF_OPTS = \ --disable-full-docs \ - --disable-hotspot-gtest \ --disable-manpages \ --disable-warnings-as-errors \ --enable-headless-only \ diff --git a/package/openlayers/openlayers.hash b/package/openlayers/openlayers.hash index 7e33716f78ba..af9087ede26e 100644 --- a/package/openlayers/openlayers.hash +++ b/package/openlayers/openlayers.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 31b848cc55967c7de63fece8cd1699fc51152421d04653b859103c7391ad5bbe v7.2.2-package.zip +sha256 867778afdd66cd29fe0f14ac4ed316a0ab393f5dccfd2219450848cd0347f1d6 v8.1.0-package.zip sha256 6c4347b83a8c9feef18d57b18e3b6c44cf901b3c344a4a1fbd837e421555ab8e LICENSE.md diff --git a/package/openlayers/openlayers.mk b/package/openlayers/openlayers.mk index 852f5f1dcfd6..fde83d6e8445 100644 --- a/package/openlayers/openlayers.mk +++ b/package/openlayers/openlayers.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENLAYERS_VERSION = 7.2.2 +OPENLAYERS_VERSION = 8.1.0 OPENLAYERS_SOURCE = v$(OPENLAYERS_VERSION)-package.zip OPENLAYERS_SITE = https://github.com/openlayers/openlayers/releases/download/v$(OPENLAYERS_VERSION) OPENLAYERS_LICENSE = BSD-2-Clause diff --git a/package/openldap/0001-fix-bignum.patch b/package/openldap/0001-fix-bignum.patch new file mode 100644 index 000000000000..ec38ee3df053 --- /dev/null +++ b/package/openldap/0001-fix-bignum.patch @@ -0,0 +1,37 @@ +configure: correctly detect bignum + +Building with bignum is currently not possible, since we're checking +ol_with_tls against a value it is never assigned in any case. + +Since bignum is from openssl, and openssl is the preferred TLS +implementation, if the bignum headers are found, it means we do have +TLS and it is opensl. + +So, keep the check for the bignum header, but check against ol_link_tls +which means that openssl is enabled when we find the bignum headers. + +Signed-off-by: "Yann E. MORIN" + +diff -durN openldap-2.4.40.orig/configure openldap-2.4.40/configure +--- openldap-2.4.40.orig/configure 2014-09-19 03:48:49.000000000 +0200 ++++ openldap-2.4.40/configure 2015-01-25 18:44:54.216879362 +0100 +@@ -23431,7 +23431,7 @@ + + if test "$ac_cv_header_openssl_bn_h" = "yes" && + test "$ac_cv_header_openssl_crypto_h" = "yes" && +- test "$ol_with_tls" = "found" ; then ++ test "$ol_link_tls" = "yes" ; then + ol_with_mp=bignum + + $as_echo "#define USE_MP_BIGNUM 1" >>confdefs.h +--- openldap-2.5.15.orig/configure.ac 2023-10-23 11:03:46.292215101 +0200 ++++ openldap-2.5.16/configure.ac 2023-10-23 11:05:07.245355497 +0200 +@@ -2323,7 +2323,7 @@ + AC_CHECK_HEADERS(openssl/crypto.h) + if test "$ac_cv_header_openssl_bn_h" = "yes" && + test "$ac_cv_header_openssl_crypto_h" = "yes" && +- test "$ol_with_tls" = "found" ; then ++ test "$ol_link_tls" = "yes" ; then + ol_with_mp=bignum + AC_DEFINE(USE_MP_BIGNUM,1,[define to use OpenSSL BIGNUM for MP]) + elif test $ol_with_mp = bignum ; then diff --git a/package/openldap/0001-fix_cross_strip.patch b/package/openldap/0001-fix_cross_strip.patch deleted file mode 100644 index d9d6f9d5051f..000000000000 --- a/package/openldap/0001-fix_cross_strip.patch +++ /dev/null @@ -1,74 +0,0 @@ -Fix stripping when cross-compiling - -Probably-Signed-off-by: Dave Bender -[yann.morin.1998@free.fr: patch was made by Dave, but he - forgot his SoB line, so I added it] -Signed-off-by: "Yann E. MORIN" - -diff -rupN openldap-2.4.40/build/shtool openldap-2.4.40-br/build/shtool ---- openldap-2.4.40/build/shtool 2014-09-18 21:48:49.000000000 -0400 -+++ openldap-2.4.40-br/build/shtool 2015-01-21 13:21:35.689829372 -0500 -@@ -981,7 +981,7 @@ install ) - if [ ".$opt_t" = .yes ]; then - echo "strip $dsttmp" 1>&2 - fi -- strip $dsttmp || shtool_exit $? -+ $STRIP $dsttmp || shtool_exit $? - fi - if [ ".$opt_o" != . ]; then - if [ ".$opt_t" = .yes ]; then -diff -rupN openldap-2.4.40/build/top.mk openldap-2.4.40-br/build/top.mk ---- openldap-2.4.40/build/top.mk 2014-09-18 21:48:49.000000000 -0400 -+++ openldap-2.4.40-br/build/top.mk 2015-01-21 13:23:41.027810097 -0500 -@@ -59,7 +59,7 @@ INSTALL_PROGRAM = $(INSTALL) - INSTALL_DATA = $(INSTALL) -m 644 - INSTALL_SCRIPT = $(INSTALL) - --STRIP = -s -+STRIP_OPTS = -s - - LINT = lint - 5LINT = 5lint -diff -rupN openldap-2.4.40/clients/tools/Makefile.in openldap-2.4.40-br/clients/tools/Makefile.in ---- openldap-2.4.40/clients/tools/Makefile.in 2014-09-18 21:48:49.000000000 -0400 -+++ openldap-2.4.40-br/clients/tools/Makefile.in 2015-01-21 13:23:35.827727946 -0500 -@@ -120,7 +120,7 @@ install-local: FORCE - -$(MKDIR) $(DESTDIR)$(bindir) - @( \ - for prg in $(PROGRAMS); do \ -- $(LTINSTALL) $(INSTALLFLAGS) $(STRIP) -m 755 $$prg$(EXEEXT) \ -+ $(LTINSTALL) $(INSTALLFLAGS) $(STRIP_OPTS) -m 755 $$prg$(EXEEXT) \ - $(DESTDIR)$(bindir); \ - done \ - ) -diff -rupN openldap-2.4.40/configure.in openldap-2.4.40-br/configure.in ---- openldap-2.4.40/configure.in 2014-09-18 21:48:49.000000000 -0400 -+++ openldap-2.4.40-br/configure.in 2015-01-16 15:50:48.874816786 -0500 -@@ -668,6 +668,15 @@ if test -z "${AR}"; then - fi - fi - -+if test -z "${STRIP}"; then -+ AC_CHECK_PROGS(STRIP,strip,missing) -+ -+ if test "${STRIP}" = "missing" ; then -+ AC_MSG_ERROR([Unable to locate strip(1) or suitable replacement. Check PATH or set STRIP.]) -+ fi -+fi -+ -+ - AC_LIBTOOL_WIN32_DLL - AC_LIBTOOL_DLOPEN - AC_PROG_LIBTOOL -diff -rupN openldap-2.4.40/servers/slapd/Makefile.in openldap-2.4.40-br/servers/slapd/Makefile.in ---- openldap-2.4.40/servers/slapd/Makefile.in 2015-01-16 15:04:52.507473256 -0500 -+++ openldap-2.4.40-br/servers/slapd/Makefile.in 2015-01-16 15:05:02.299627229 -0500 -@@ -378,7 +378,7 @@ install-local-srv: install-slapd install - install-slapd: FORCE - -$(MKDIR) $(DESTDIR)$(libexecdir) - -$(MKDIR) $(DESTDIR)$(localstatedir)/run -- $(LTINSTALL) $(INSTALLFLAGS) $(STRIP) -m 755 \ -+ $(LTINSTALL) $(INSTALLFLAGS) $(STRIP_OPTS) -m 755 \ - slapd$(EXEEXT) $(DESTDIR)$(libexecdir) - @for i in $(SUBDIRS); do \ - if test -d $$i && test -f $$i/Makefile ; then \ diff --git a/package/openldap/0003-disable-docs.patch b/package/openldap/0002-disable-docs.patch similarity index 100% rename from package/openldap/0003-disable-docs.patch rename to package/openldap/0002-disable-docs.patch diff --git a/package/openldap/0002-fix-bignum.patch b/package/openldap/0002-fix-bignum.patch deleted file mode 100644 index 159ea8e22819..000000000000 --- a/package/openldap/0002-fix-bignum.patch +++ /dev/null @@ -1,38 +0,0 @@ -configure: correctly detect bignum - -Building with bignum is currently not possible, since we're checking -ol_with_tls against a value it is never assigned in any case. - -Since bignum is from openssl, and openssl is the preferred TLS -implementation, if the bignum headers are found, it means we do have -TLS and it is opensl. - -So, keep the check for the bignum header, but check against ol_link_tls -which means that openssl is enabled when we find the bignum headers. - -Signed-off-by: "Yann E. MORIN" - -diff -durN openldap-2.4.40.orig/configure openldap-2.4.40/configure ---- openldap-2.4.40.orig/configure 2014-09-19 03:48:49.000000000 +0200 -+++ openldap-2.4.40/configure 2015-01-25 18:44:54.216879362 +0100 -@@ -23431,7 +23431,7 @@ - - if test "$ac_cv_header_openssl_bn_h" = "yes" && - test "$ac_cv_header_openssl_crypto_h" = "yes" && -- test "$ol_with_tls" = "found" ; then -+ test "$ol_link_tls" = "yes" ; then - ol_with_mp=bignum - - $as_echo "#define USE_MP_BIGNUM 1" >>confdefs.h -diff -durN openldap-2.4.40.orig/configure.in openldap-2.4.40/configure.in ---- openldap-2.4.40.orig/configure.in 2014-09-19 03:48:49.000000000 +0200 -+++ openldap-2.4.40/configure.in 2015-01-25 18:44:37.628676446 +0100 -@@ -2383,7 +2383,7 @@ - AC_CHECK_HEADERS(openssl/crypto.h) - if test "$ac_cv_header_openssl_bn_h" = "yes" && - test "$ac_cv_header_openssl_crypto_h" = "yes" && -- test "$ol_with_tls" = "found" ; then -+ test "$ol_link_tls" = "yes" ; then - ol_with_mp=bignum - AC_DEFINE(USE_MP_BIGNUM,1,[define to use OpenSSL BIGNUM for MP]) - elif test $ol_with_mp = bignum ; then diff --git a/package/openldap/0004-revert-ITS-3977-fix-libtool-static-behavior-to-match.patch b/package/openldap/0004-revert-ITS-3977-fix-libtool-static-behavior-to-match.patch deleted file mode 100644 index 3a901c910d39..000000000000 --- a/package/openldap/0004-revert-ITS-3977-fix-libtool-static-behavior-to-match.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 88a0442a0f01076914af80db40571fd52914ffa3 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Thu, 28 Mar 2019 23:52:38 +0100 -Subject: [PATCH] revert ITS#3977, fix libtool -static behavior to match docs - -Revert -https://github.com/openldap/openldap/commit/7b6a088a2590fdad10286d10050b769e48554e13 -as this patch does not work with our buildroot patches - -Fixes: - - http://autobuild.buildroot.org/results/ab4f85fd21cacfaef6b0b43a38da6a4a1d32ecb6 - -Signed-off-by: Fabrice Fontaine -[Upstream status: Not upstreamable] ---- - build/ltmain.sh | 9 ++------- - 1 file changed, 2 insertions(+), 7 deletions(-) - -diff --git a/build/ltmain.sh b/build/ltmain.sh -index 1d079b91e..996dc7dad 100755 ---- a/build/ltmain.sh -+++ b/build/ltmain.sh -@@ -1190,15 +1190,14 @@ EOF - if test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi -- prefer_static_libs=yes - else - if test -z "$pic_flag" && test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi -- prefer_static_libs=built - fi - build_libtool_libs=no - build_old_libs=yes -+ prefer_static_libs=yes - break - ;; - esac -@@ -2602,12 +2601,8 @@ EOF - fi - - link_static=no # Whether the deplib will be linked statically -- use_static_libs=$prefer_static_libs -- if test "$use_static_libs" = built && test "$installed" = yes ; then -- use_static_libs=no -- fi - if test -n "$library_names" && -- { test "$use_static_libs" = no || test -z "$old_library"; }; then -+ { test "$prefer_static_libs" = no || test -z "$old_library"; }; then - if test "$installed" = no; then - notinst_deplibs="$notinst_deplibs $lib" - need_relink=yes --- -2.14.1 - diff --git a/package/openldap/openldap.hash b/package/openldap/openldap.hash index 71092c93d001..1383c6aef88d 100644 --- a/package/openldap/openldap.hash +++ b/package/openldap/openldap.hash @@ -1,7 +1,5 @@ -# From https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.4.59.md5 -md5 6036a03b3a67b4a1fe1246e0a2c7265a openldap-2.4.59.tgz -# From https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.4.59.sha1 -sha1 b154d06bbf40fafafb34fffc4b116946d931efef openldap-2.4.59.tgz +# Verified by locally checking against the SHA3-512 hash available in +# https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.5.16.sha3-512 # Locally computed -sha256 99f37d6747d88206c470067eda624d5e48c1011e943ec0ab217bae8712e22f34 openldap-2.4.59.tgz +sha256 546ba591822e8bb0e467d40c4d4a30f89d937c3a507fe83a578f582f6a211327 openldap-2.5.16.tgz sha256 310fe25c858a9515fc8c8d7d1f24a67c9496f84a91e0a0e41ea9975b1371e569 LICENSE diff --git a/package/openldap/openldap.mk b/package/openldap/openldap.mk index b5373544ab69..9cebff99dcbb 100644 --- a/package/openldap/openldap.mk +++ b/package/openldap/openldap.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENLDAP_VERSION = 2.4.59 +OPENLDAP_VERSION = 2.5.16 OPENLDAP_SOURCE = openldap-$(OPENLDAP_VERSION).tgz OPENLDAP_SITE = https://www.openldap.org/software/download/OpenLDAP/openldap-release OPENLDAP_LICENSE = OpenLDAP Public License diff --git a/package/openmpi/Config.in b/package/openmpi/Config.in index 4413c55f9c55..e64eb81c3e36 100644 --- a/package/openmpi/Config.in +++ b/package/openmpi/Config.in @@ -1,5 +1,6 @@ comment "openmpi needs a toolchain w/ dynamic library, NPTL, wchar, C++" depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_ATOMIC depends on !BR2_sparc depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS_NPTL \ || !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP @@ -8,6 +9,7 @@ config BR2_PACKAGE_OPENMPI bool "openmpi" depends on BR2_USE_MMU # fork() depends on BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_HAS_ATOMIC depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_STATIC_LIBS # dlfcn.h diff --git a/package/openmpi/openmpi.hash b/package/openmpi/openmpi.hash index a399adc75870..567ffe483331 100644 --- a/package/openmpi/openmpi.hash +++ b/package/openmpi/openmpi.hash @@ -1,6 +1,6 @@ -# From: https://www.open-mpi.org/software/ompi/v4.0/ -md5 e3da67df1e968c8798827e0e5fe9a510 openmpi-4.0.0.tar.bz2 -sha1 fee1d0287abfb150bae16957de342752c9bdd4e8 openmpi-4.0.0.tar.bz2 +# From: https://www.open-mpi.org/software/ompi/v4.1/ +md5 bb045df2d600744c2231c78b31a20da3 openmpi-4.1.5.tar.bz2 +sha1 eba2e6f9ee0c39fbca0a8cf53a79c9ed29643284 openmpi-4.1.5.tar.bz2 +sha256 a640986bc257389dd379886fdae6264c8cfa56bc98b71ce3ae3dfbd8ce61dbe3 openmpi-4.1.5.tar.bz2 # Locally computed -sha256 2f0b8a36cfeb7354b45dda3c5425ef8393c9b04115570b615213faaa3f97366b openmpi-4.0.0.tar.bz2 -sha256 8298a80ed5f09cfd007bae1c0e7d67d1c2810c6389876778dad070c31a691dac LICENSE +sha256 2db71de9577ebfe15c186605844c470dcecd3717f4ef0118c9440d801c0f58f8 LICENSE diff --git a/package/openmpi/openmpi.mk b/package/openmpi/openmpi.mk index 8bdc3fa188fb..82a4b3eb1cad 100644 --- a/package/openmpi/openmpi.mk +++ b/package/openmpi/openmpi.mk @@ -4,14 +4,21 @@ # ################################################################################ -OPENMPI_VERSION_MAJOR = 4.0 -OPENMPI_VERSION = $(OPENMPI_VERSION_MAJOR).0 +OPENMPI_VERSION_MAJOR = 4.1 +OPENMPI_VERSION = $(OPENMPI_VERSION_MAJOR).5 OPENMPI_SITE = https://www.open-mpi.org/software/ompi/v$(OPENMPI_VERSION_MAJOR)/downloads OPENMPI_SOURCE = openmpi-$(OPENMPI_VERSION).tar.bz2 OPENMPI_LICENSE = BSD-3-Clause OPENMPI_LICENSE_FILES = LICENSE OPENMPI_INSTALL_STAGING = YES +# The macro searching for IME (Infinite Memory Engine) filesystem +# brings "-I/usr/local/include" in the CPPFLAGS, even if not +# found. This makes the configuration fail. See: +# https://github.com/open-mpi/ompi/blob/v4.1.5/config/ompi_check_ime.m4#L35 +# Disable explicitly to avoid the issue. +OPENMPI_CONF_OPTS = --without-ime + # Enabling Fortran support requires pre-seeding the configure script # with various values that cannot be guessed, so we provide cache # files for various architectures. @@ -43,6 +50,10 @@ ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_68485),y) OPENMPI_CFLAGS += -O0 endif -OPENMPI_CONF_ENV = CFLAGS="$(OPENMPI_CFLAGS)" +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +OPENMPI_LIBS += -latomic +endif + +OPENMPI_CONF_ENV = CFLAGS="$(OPENMPI_CFLAGS)" LIBS="$(OPENMPI_LIBS)" $(eval $(autotools-package)) diff --git a/package/openocd/0002-configure.ac-fix-autoreconf-with-autoconf-2.70.patch b/package/openocd/0002-configure.ac-fix-autoreconf-with-autoconf-2.70.patch deleted file mode 100644 index ecb716b6fa0f..000000000000 --- a/package/openocd/0002-configure.ac-fix-autoreconf-with-autoconf-2.70.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 3106d16bbc45de52bc0a8b638a84aa9d7c9abc46 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Wed, 6 Oct 2021 17:43:16 +0200 -Subject: [PATCH] configure.ac: fix autoreconf with autoconf >= 2.70 - -Fix the following build failure raised with openocd and autoconf >= 2.70 -due to -http://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commit;h=aba75f6d4a9c875a9d5d90a07c6b3678db66a4bf: - ->>> openocd 0.11.0 Autoreconfiguring -autoreconf: error: configure.ac: AC_INIT not found; not an autoconf script? - -Fixes: - - http://autobuild.buildroot.org/results/5fb7aa28703aff61ba850eac11bd35c8804528ae - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/msteveb/jimtcl/pull/209] ---- - configure.ac | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/jimtcl/configure.ac b/jimtcl/configure.ac -index b70b5d8..8c45114 100644 ---- a/jimtcl/configure.ac -+++ b/jimtcl/configure.ac -@@ -1 +1,3 @@ - # Dummy configure.ac to make automake happy -+AC_INIT([jimtcl], [0.80]) -+AC_OUTPUT --- -2.33.0 - diff --git a/package/openocd/0003-stlink-fix-SIGSEGV-with-libusb-v1.0.24-33-g32a2206-1.patch b/package/openocd/0003-stlink-fix-SIGSEGV-with-libusb-v1.0.24-33-g32a2206-1.patch deleted file mode 100644 index 776816892b30..000000000000 --- a/package/openocd/0003-stlink-fix-SIGSEGV-with-libusb-v1.0.24-33-g32a2206-1.patch +++ /dev/null @@ -1,89 +0,0 @@ -From cff0e417da58adef1ceef9a63a99412c2cc87ff3 Mon Sep 17 00:00:00 2001 -From: Antonio Borneo -Date: Wed, 23 Jun 2021 16:52:16 +0200 -Subject: [PATCH] stlink: fix SIGSEGV with libusb v1.0.24-33-g32a2206 (11618) -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The stlink driver incorrectly uses a NULL pointer for libusb's -struct libusb_context. -The correct value to be used is local in libusb_helper.c. - -Move in the helper file, in a wrapper function, the only call that -requires the above value, and let stlink driver to use this -wrapper. - -This issue has not triggered any visible problem until a code -refactoring [1] in libusb has made OpenOCD crashing on Windows and -on MacOS. - -Change-Id: Id1818c8af7cf0d4d17dfa1d22aad079da01ef740 -Signed-off-by: Antonio Borneo -Fixes: https://sourceforge.net/p/openocd/tickets/308/ -Fixes: https://github.com/libusb/libusb/issues/928/ -Fixes: 42d8fa899c6a ("stlink_usb: Submit multiple USB URBs at once to improve performance") -Link: [1] https://github.com/libusb/libusb/commit/32a22069428c -Reported-by: Andrzej Sierżęga -Co-developed-by: Andrzej Sierżęga -Co-developed-by: Xiaofan Chen -Reviewed-on: http://openocd.zylin.com/6331 -Tested-by: jenkins -Reviewed-by: Marc Schink -Reviewed-by: Xiaofan -Reviewed-by: Andrzej Sierżęga -Reviewed-by: Oleksij Rempel -Reviewed-by: Andreas Fritiofson -Signed-off-by: Yannick Brosseau ---- - src/jtag/drivers/libusb_helper.c | 5 +++++ - src/jtag/drivers/libusb_helper.h | 1 + - src/jtag/drivers/stlink_usb.c | 7 +------ - 3 files changed, 7 insertions(+), 6 deletions(-) - -diff --git a/src/jtag/drivers/libusb_helper.c b/src/jtag/drivers/libusb_helper.c -index f0122d534..18fe4bad4 100644 ---- a/src/jtag/drivers/libusb_helper.c -+++ b/src/jtag/drivers/libusb_helper.c -@@ -363,3 +363,8 @@ int jtag_libusb_get_pid(struct libusb_device *dev, uint16_t *pid) - - return ERROR_FAIL; - } -+ -+int jtag_libusb_handle_events_completed(int *completed) -+{ -+ return libusb_handle_events_completed(jtag_libusb_context, completed); -+} -diff --git a/src/jtag/drivers/libusb_helper.h b/src/jtag/drivers/libusb_helper.h -index fa7d06e28..3e77865d6 100644 ---- a/src/jtag/drivers/libusb_helper.h -+++ b/src/jtag/drivers/libusb_helper.h -@@ -60,5 +60,6 @@ int jtag_libusb_choose_interface(struct libusb_device_handle *devh, - unsigned int *usb_write_ep, - int bclass, int subclass, int protocol, int trans_type); - int jtag_libusb_get_pid(struct libusb_device *dev, uint16_t *pid); -+int jtag_libusb_handle_events_completed(int *completed); - - #endif /* OPENOCD_JTAG_DRIVERS_LIBUSB_HELPER_H */ -diff --git a/src/jtag/drivers/stlink_usb.c b/src/jtag/drivers/stlink_usb.c -index c68bbb3ca..7b1932b9f 100644 ---- a/src/jtag/drivers/stlink_usb.c -+++ b/src/jtag/drivers/stlink_usb.c -@@ -497,13 +497,8 @@ static void sync_transfer_wait_for_completion(struct libusb_transfer *transfer) - { - int r, *completed = transfer->user_data; - -- /* Assuming a single libusb context exists. There no existing interface into this -- * module to pass a libusb context. -- */ -- struct libusb_context *ctx = NULL; -- - while (!*completed) { -- r = libusb_handle_events_completed(ctx, completed); -+ r = jtag_libusb_handle_events_completed(completed); - if (r < 0) { - if (r == LIBUSB_ERROR_INTERRUPTED) - continue; --- -2.35.1 - diff --git a/package/openocd/openocd.hash b/package/openocd/openocd.hash index 91eb56d930ea..938711d86c0f 100644 --- a/package/openocd/openocd.hash +++ b/package/openocd/openocd.hash @@ -1,3 +1,15 @@ -# From http://sourceforge.net/projects/openocd/files/openocd/0.11.0/ -sha256 43a3ce734aff1d3706ad87793a9f3a5371cb0e357f0ffd0a151656b06b3d1e7d openocd-0.11.0.tar.bz2 -sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING +# From http://sourceforge.net/projects/openocd/files/openocd/0.12.0/ +sha256 af254788be98861f2bd9103fe6e60a774ec96a8c374744eef9197f6043075afa openocd-0.12.0.tar.bz2 +sha256 1b8f7e37ee5afbbf95c2a4d62b12b25232e29538692663b434318503a9a88419 COPYING +sha256 034da732b4f3079b8783fff756613c1cff89dec5ac80c5cdd90532b7539922a1 LICENSES/exceptions/eCos-exception-2.0 +sha256 0a37155eb8bc0cb94477a0cae4f030e39da9317374e8a9f597e9229fd09aff78 LICENSES/license-rules.txt +sha256 f3ba76203a7b6993db31f987559cc4c621ae1ff78119ced2a669756c2c5fd3b1 LICENSES/preferred/BSD-1-Clause +sha256 6313108c23efffa36948f8b2cff1560a5935373b527b0e1a837cc77e6ed1bacd LICENSES/preferred/BSD-2-Clause +sha256 1483f15e9fddc73b5df0acab1c42d21ecd0bf6ade8a79179fb90c09f13d03dcd LICENSES/preferred/BSD-2-Clause-Views +sha256 7a83b1aeb460458db9a4bd521d7f237c45b1650f6e60ea5ffc71e49472454de3 LICENSES/preferred/BSD-3-Clause +sha256 5cf024f6e3611d5c6fb98748d1a0ad99b8cf9ffe46f2d60fa10c299cd29e0a75 LICENSES/preferred/BSD-Source-Code +sha256 f35396f4095619f986736ca5e2976b313d381463a35c921c9ae677cc7eb83e28 LICENSES/preferred/GFDL-1.2 +sha256 76515be2d7334a1a038f775238c9a4c2b37e19514248e5eea0434cdfee526f9d LICENSES/preferred/gfdl-1.2.texi.readme +sha256 7d35bc44da7bb763022e3c2c32cfc0125dd222060bc50992420599d8e65f6c0a LICENSES/preferred/GPL-2.0 +sha256 323c587d0ccf10e376f8bf9a7f31fb4ca6078105194b42e0b1e0ee2bc9bde71f LICENSES/preferred/MIT +sha256 9a41b56594cd89743ca72f188318c9871661847074dd16497ae0c695fe3ab9c9 LICENSES/stand-alone/GPL-3.0 diff --git a/package/openocd/openocd.mk b/package/openocd/openocd.mk index 37a06ca848b7..78c6e10c58e4 100644 --- a/package/openocd/openocd.mk +++ b/package/openocd/openocd.mk @@ -4,12 +4,36 @@ # ################################################################################ -OPENOCD_VERSION = 0.11.0 +OPENOCD_VERSION = 0.12.0 OPENOCD_SOURCE = openocd-$(OPENOCD_VERSION).tar.bz2 OPENOCD_SITE = http://sourceforge.net/projects/openocd/files/openocd/$(OPENOCD_VERSION) -OPENOCD_LICENSE = GPL-2.0+ -OPENOCD_LICENSE_FILES = COPYING -# 0002-configure-enable-build-on-uclinux.patch patches configure.ac +OPENOCD_LICENSE = \ + BSD-1-clause, \ + BSD-2-clause, \ + BSD-2-Clause-Views, \ + BSD-3-clause, \ + BSD-Source-Code, \ + GFDL-1.2-no-invariants-or-later (docs), \ + GPL-2.0+ with eCos-exception-2.0 (code), \ + GPL-3.0+ (stand-alone code), \ + MIT + +OPENOCD_LICENSE_FILES = \ + COPYING \ + LICENSES/license-rules.txt \ + LICENSES/exceptions/eCos-exception-2.0 \ + LICENSES/preferred/BSD-1-Clause \ + LICENSES/preferred/BSD-2-Clause \ + LICENSES/preferred/BSD-2-Clause-Views \ + LICENSES/preferred/BSD-3-Clause \ + LICENSES/preferred/BSD-Source-Code \ + LICENSES/preferred/GFDL-1.2 \ + LICENSES/preferred/gfdl-1.2.texi.readme \ + LICENSES/preferred/GPL-2.0 \ + LICENSES/preferred/MIT \ + LICENSES/stand-alone/GPL-3.0 + +# 0001-configure-enable-build-on-uclinux.patch patches configure.ac OPENOCD_AUTORECONF = YES OPENOCD_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -std=gnu99" diff --git a/package/openpowerlink/openpowerlink.hash b/package/openpowerlink/openpowerlink.hash index 2d8683f09c42..b6ae8edcd8e3 100644 --- a/package/openpowerlink/openpowerlink.hash +++ b/package/openpowerlink/openpowerlink.hash @@ -1,6 +1,6 @@ -# From https://sourceforge.net/projects/openpowerlink/files/openPOWERLINK/V2.7.1/ -md5 04524d1b1f9946176dce0ccb0eecf537 openPOWERLINK_V2.7.1.tar.gz -sha1 4ee9c6e26bbc729fdbbb272155b093ffa0d9cefd openPOWERLINK_V2.7.1.tar.gz +# From https://sourceforge.net/projects/openpowerlink/files/openPOWERLINK/V2.7.2/ +md5 80a64b0a2c2dec1e7aff22a06000b3d6 openPOWERLINK_V2.7.2.tar.gz +sha1 09dcb5bd7cb9d59cb9e60230ae09c558996be25b openPOWERLINK_V2.7.2.tar.gz # sha256 locally computed -sha256 d0d65f4fb8f2ad209cf9575714f88f33168a1cf71e8f1801e1e1ac4df6a37ffd openPOWERLINK_V2.7.1.tar.gz +sha256 2cc660e0f8a939bd65c9f46176d18882dbe1017cbb2567b414a8a7c9af41a356 openPOWERLINK_V2.7.2.tar.gz sha256 348e31e9e5094104463d58d33abd31049fdf209afbc12ea7abb7fd4b4a147429 license.md diff --git a/package/openpowerlink/openpowerlink.mk b/package/openpowerlink/openpowerlink.mk index 46dc3d10cdef..c8dbb66d052d 100644 --- a/package/openpowerlink/openpowerlink.mk +++ b/package/openpowerlink/openpowerlink.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENPOWERLINK_VERSION = 2.7.1 +OPENPOWERLINK_VERSION = 2.7.2 OPENPOWERLINK_SITE = https://downloads.sourceforge.net/project/openpowerlink/openPOWERLINK/V$(OPENPOWERLINK_VERSION) OPENPOWERLINK_SOURCE = openPOWERLINK_V$(OPENPOWERLINK_VERSION).tar.gz OPENPOWERLINK_LICENSE = BSD-2-Clause, GPL-2.0 diff --git a/package/openrc/0002-sh-init.sh.Linux.in-change-run-lock-from-root-uucp-t.patch b/package/openrc/0002-sh-init.sh.Linux.in-change-run-lock-from-root-uucp-t.patch index 457fbacb5bd7..2f0a81bbd365 100644 --- a/package/openrc/0002-sh-init.sh.Linux.in-change-run-lock-from-root-uucp-t.patch +++ b/package/openrc/0002-sh-init.sh.Linux.in-change-run-lock-from-root-uucp-t.patch @@ -22,7 +22,7 @@ diff --git a/sh/init.sh.Linux.in b/sh/init.sh.Linux.in index 222bbd3b..7f1a88db 100644 --- a/sh/init.sh.Linux.in +++ b/sh/init.sh.Linux.in -@@ -85,7 +85,7 @@ fi +@@ -83,7 +83,7 @@ fi fi checkpath -d "$RC_SVCDIR" diff --git a/package/openrc/0005-runlevels-do-not-add-agetty.tty-1-6-if-MKSYSVINIT-ye.patch b/package/openrc/0005-runlevels-do-not-add-agetty.tty-1-6-if-MKSYSVINIT-ye.patch index 733506ada9b5..42f77ffdea60 100644 --- a/package/openrc/0005-runlevels-do-not-add-agetty.tty-1-6-if-MKSYSVINIT-ye.patch +++ b/package/openrc/0005-runlevels-do-not-add-agetty.tty-1-6-if-MKSYSVINIT-ye.patch @@ -8,27 +8,28 @@ Also tty[1-6] may not exist (e.g. embedded devices with serial consoles only). Signed-off-by: Carlos Santos +[Adam: update for 0.50] +Signed-off-by: Adam Duskett --- - runlevels/Makefile | 6 ------ + tools/meson_runlevels.sh | 6 ------ 1 file changed, 6 deletions(-) -diff --git a/runlevels/Makefile b/runlevels/Makefile -index 73843d8b..dbfb59ca 100644 ---- a/runlevels/Makefile -+++ b/runlevels/Makefile -@@ -90,12 +90,6 @@ install: - fi; \ - ln -snf ${INITDIR}/"$$x" ${SHUTDOWNDIR}/"$$x" || exit $$?; done \ - fi -- if test "${MKSYSVINIT}" = yes && test "${OS}" = Linux; then \ -- for x in tty1 tty2 tty3 tty4 tty5 tty6; do \ -- ln -snf ${INITDIR}/agetty ${DESTDIR}/${INITDIR}/"agetty.$$x" || exit $$?; \ -- ln -snf ${INITDIR}/agetty.$$x ${DEFAULTDIR}/"agetty.$$x" || exit $$?; \ -- done; \ -- fi - - check test:: +diff --git a/tools/meson_runlevels.sh b/tools/meson_runlevels.sh +index 1473d4e..eee256b 100755 +--- a/tools/meson_runlevels.sh ++++ b/tools/meson_runlevels.sh +@@ -91,11 +91,5 @@ if ! test -d "${DESTDIR}${shutdowndir}"; then + ln -snf "${init_d_dir}/$x" "${DESTDIR}${shutdowndir}/$x" + done + fi +-if test "${sysvinit}" = yes && test "${os}" = Linux; then \ +- for x in tty1 tty2 tty3 tty4 tty5 tty6; do +- ln -snf "${init_d_dir}/agetty" "${DESTDIR}/${init_d_dir}/agetty.$x" +- ln -snf "${init_d_dir}/agetty.$x" "${DESTDIR}/${defaultdir}/agetty.$x" +- done; +-fi + ln -snf "${rc_libexecdir}"/sh/functions.sh "${DESTDIR}/${init_d_dir}" -- 2.18.2 diff --git a/package/openrc/0006-Also-create-run-lock-subsys-directory.patch b/package/openrc/0006-Also-create-run-lock-subsys-directory.patch index cf592a88b066..ad78a4b8f7e1 100644 --- a/package/openrc/0006-Also-create-run-lock-subsys-directory.patch +++ b/package/openrc/0006-Also-create-run-lock-subsys-directory.patch @@ -15,7 +15,7 @@ diff --git a/sh/init.sh.Linux.in b/sh/init.sh.Linux.in index e8afc1fb..662ab223 100644 --- a/sh/init.sh.Linux.in +++ b/sh/init.sh.Linux.in -@@ -82,7 +82,7 @@ elif ! mountinfo -q /run; then +@@ -83,7 +83,7 @@ elif ! mountinfo -q /run; then fi checkpath -d "$RC_SVCDIR" diff --git a/package/openrc/0007-allow-setting-rc_libexecdir-path.patch b/package/openrc/0007-allow-setting-rc_libexecdir-path.patch new file mode 100644 index 000000000000..a11c78927541 --- /dev/null +++ b/package/openrc/0007-allow-setting-rc_libexecdir-path.patch @@ -0,0 +1,44 @@ +From 89c42e7e0d8d5913789a76b007ed6a0c43078c63 Mon Sep 17 00:00:00 2001 +From: artoo +Date: Wed, 8 Sep 2021 22:41:58 +0200 +Subject: [PATCH] allow setting rc_libexecdir path + + - Allow to change the rc dir name of the rc_libexecdir path + - Introduce a librcdir option for override with value 'rc' + +Upstream: https://github.com/OpenRC/openrc/pull/443 + +Signed-off-by: artoo +[Adam: update for 0.50] +Signed-off-by: Adam Duskett +--- + meson.build | 2 +- + meson_options.txt | 2 ++ + 2 files changed, 3 insertions(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index 5b3f8fa..40d4be1 100644 +--- a/meson.build ++++ b/meson.build +@@ -102,7 +102,7 @@ if os == 'Linux' and libexecdir == 'libexec' + libexecdir = 'lib' + endif + libexecdir = rootprefix / libexecdir +-rc_libexecdir = libexecdir / 'rc' ++rc_libexecdir = libexecdir / get_option('librcdir') + rc_bindir = rc_libexecdir / 'bin' + rc_sbindir = rc_libexecdir / 'sbin' + rc_shdir = rc_libexecdir / 'sh' +diff --git a/meson_options.txt b/meson_options.txt +index 2c74152..d2f67e4 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -37,3 +37,5 @@ option('termcap', type : 'combo', + description : 'the termcap library to use') + option('zsh-completions', type : 'boolean', + description : 'install zsh completions') ++option('librcdir', type : 'string', value : 'rc', ++ description : 'default location of rc libexec dir') +-- +2.41.0 + diff --git a/package/openrc/Config.in b/package/openrc/Config.in index 4691be63a286..adc61d2546fb 100644 --- a/package/openrc/Config.in +++ b/package/openrc/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_OPENRC bool "openrc" depends on BR2_USE_MMU # fork() depends on !BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_USES_UCLIBC depends on BR2_INIT_OPENRC select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # kmod tools select BR2_PACKAGE_KMOD # runtime @@ -23,7 +24,7 @@ config BR2_PACKAGE_OPENRC https://github.com/OpenRC/openrc -comment "openrc needs a toolchain w/ dynamic library" +comment "openrc needs a glibc or musl toolchain w/ dynamic library" depends on BR2_USE_MMU depends on BR2_INIT_OPENRC - depends on BR2_STATIC_LIBS + depends on BR2_STATIC_LIBS && BR2_TOOLCHAIN_USES_UCLIBC diff --git a/package/openrc/openrc.hash b/package/openrc/openrc.hash index 4fcfa9132f15..698acf49786d 100644 --- a/package/openrc/openrc.hash +++ b/package/openrc/openrc.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 968e81743a1de7a2348590b3b3286d6af5baf96da28fa1e6364e24f8203fc3b6 openrc-0.43.3.tar.gz -sha256 96862463f4e77e2508e4fc2c83773fd24807cb699368b63fd93a5e2b466dd624 LICENSE +sha256 4ec46f2729c77c4387146b491c4d121f5cba48bff2f0aeaff99895dcda5cea85 openrc-0.51.tar.gz +sha256 6ac2bf77510808fbec7dc86cbfbca98dfc4c6b47dc99e4ca77b5370e097d8e70 LICENSE diff --git a/package/openrc/openrc.mk b/package/openrc/openrc.mk index 1d4e70f71247..63aec7615efd 100644 --- a/package/openrc/openrc.mk +++ b/package/openrc/openrc.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENRC_VERSION = 0.43.3 +OPENRC_VERSION = 0.51 OPENRC_SITE = $(call github,OpenRC,openrc,$(OPENRC_VERSION)) OPENRC_LICENSE = BSD-2-Clause OPENRC_LICENSE_FILES = LICENSE @@ -12,39 +12,45 @@ OPENRC_CPE_ID_VENDOR = openrc_project OPENRC_DEPENDENCIES = ncurses -# set LIBNAME so openrc puts files in proper directories and sets proper -# paths in installed files. Since in buildroot /lib64 and /lib32 always -# points to /lib, it's safe to hardcode it to "lib" -OPENRC_MAKE_OPTS = \ - LIBNAME=lib \ - LIBEXECDIR=/usr/libexec/rc \ - MKPKGCONFIG=no \ - MKSYSVINIT=yes \ - BRANDING="Buildroot $(BR2_VERSION_FULL)" \ - CC=$(TARGET_CC) +OPENRC_CONF_OPTS = \ + -Dos=Linux \ + -Dlibrcdir=/usr/libexec/rc \ + -Dpkgconfig=false \ + -Dsysvinit=true \ + -Drootprefix=/ \ + -Dbranding="\"Buildroot $(BR2_VERSION_FULL)\"" -ifeq ($(BR2_SHARED_LIBS),y) -OPENRC_MAKE_OPTS += MKSTATICLIBS=no +ifeq ($(BR2_PACKAGE_BASH_COMPLETION),y) +OPENRC_CONF_OPTS += -Dbash-completions=true else -OPENRC_MAKE_OPTS += MKSTATICLIBS=yes +OPENRC_CONF_OPTS += -Dbash-completions=false endif ifeq ($(BR2_PACKAGE_LIBSELINUX),y) -OPENRC_MAKE_OPTS += MKSELINUX=yes +OPENRC_CONF_OPTS += -Dselinux=enabled OPENRC_DEPENDENCIES += libselinux else -OPENRC_MAKE_OPTS += MKSELINUX=no +OPENRC_CONF_OPTS += -Dselinux=disabled endif -define OPENRC_BUILD_CMDS - $(MAKE) $(OPENRC_MAKE_OPTS) -C $(@D) -endef +ifeq ($(BR2_PACKAGE_LINUX_PAM),y) +OPENRC_CONF_OPTS += -Dpam=true +OPENRC_DEPENDENCIES += linux-pam +else +OPENRC_CONF_OPTS += -Dpam=false +endif + +ifeq ($(BR2_ROOTFS_MERGED_USR),y) +OPENRC_CONF_OPTS += -Dsplit-usr=false +else +OPENRC_CONF_OPTS += -Dsplit-usr=true +endif -define OPENRC_INSTALL_TARGET_CMDS - $(MAKE) $(OPENRC_MAKE_OPTS) DESTDIR=$(TARGET_DIR) -C $(@D) install +define OPENRC_INSTALL_SYSV_RCS_SCRIPT $(INSTALL) -D -m 0755 $(OPENRC_PKGDIR)/sysv-rcs \ $(TARGET_DIR)/etc/init.d/sysv-rcs endef +OPENRC_POST_INSTALL_TARGET_HOOKS += OPENRC_INSTALL_SYSV_RCS_SCRIPT ifeq ($(BR2_PACKAGE_KBD),) # keymaps and save-keymaps require kbd_mode and dumpkeys, respectively, so @@ -90,4 +96,4 @@ endef OPENRC_TARGET_FINALIZE_HOOKS += OPENRC_SET_GETTY endif # BR2_TARGET_GENERIC_GETTY -$(eval $(generic-package)) +$(eval $(meson-package)) diff --git a/package/openresolv/openresolv.hash b/package/openresolv/openresolv.hash index 7a5fb0e1407b..c32b856de91e 100644 --- a/package/openresolv/openresolv.hash +++ b/package/openresolv/openresolv.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 96b573e26d145f208d3758c2cd6fbf824b01005fc4cb7cedbdae29b3a3c8cb02 openresolv-3.12.0.tar.gz +sha256 36b5bcbe257a940c884f0d74321a47407baabab9e265e38859851c8311f6f0b0 openresolv-3.13.2.tar.xz sha256 384740bf5e19e7628d20f4dcc22925062fdc6020e9a6f074e567d4d797be57a0 LICENSE diff --git a/package/openresolv/openresolv.mk b/package/openresolv/openresolv.mk index 3857ab833dbb..176f6dab3ad8 100644 --- a/package/openresolv/openresolv.mk +++ b/package/openresolv/openresolv.mk @@ -4,8 +4,9 @@ # ################################################################################ -OPENRESOLV_VERSION = 3.12.0 -OPENRESOLV_SITE = $(call github,rsmarples,openresolv,openresolv-$(OPENRESOLV_VERSION)) +OPENRESOLV_VERSION = 3.13.2 +OPENRESOLV_SITE = https://github.com/rsmarples/openresolv/releases/download/v$(OPENRESOLV_VERSION) +OPENRESOLV_SOURCE = openresolv-$(OPENRESOLV_VERSION).tar.xz OPENRESOLV_LICENSE = BSD-2-Clause OPENRESOLV_LICENSE_FILES = LICENSE OPENRESOLV_CPE_ID_VENDOR = openresolv_project diff --git a/package/opensc/0001-Fix-maybe-uninitialized-errors.patch b/package/opensc/0001-Fix-maybe-uninitialized-errors.patch deleted file mode 100644 index 671d92c150db..000000000000 --- a/package/opensc/0001-Fix-maybe-uninitialized-errors.patch +++ /dev/null @@ -1,82 +0,0 @@ -From bcb39d6f4d2dee6beb035cb2f3618174ec1cb2b0 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Jos=C3=A9=20Pekkarinen?= -Date: Fri, 10 Dec 2021 13:54:26 +0200 -Subject: [PATCH] Fix maybe uninitialized errors -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: José Pekkarinen -Upstream: https://github.com/OpenSC/OpenSC/commit/05ec8c7fe785a2b9aeaac1164adb349df42b7f80 ---- - src/libopensc/pkcs15-coolkey.c | 12 ++++++------ - src/pkcs15init/pkcs15-asepcos.c | 2 +- - src/tools/opensc-explorer.c | 2 +- - 3 files changed, 8 insertions(+), 8 deletions(-) - -diff --git a/src/libopensc/pkcs15-coolkey.c b/src/libopensc/pkcs15-coolkey.c -index 586475dd..15684cef 100644 ---- a/src/libopensc/pkcs15-coolkey.c -+++ b/src/libopensc/pkcs15-coolkey.c -@@ -147,9 +147,9 @@ coolkey_find_matching_cert(sc_card_t *card, sc_cardctl_coolkey_object_t *in_obj, - static int - coolkey_get_attribute_ulong(sc_card_t *card, sc_cardctl_coolkey_object_t *obj, CK_ATTRIBUTE_TYPE type, CK_ULONG *value) - { -- const u8 *val; -- size_t val_len; -- u8 data_type; -+ const u8 *val = NULL; -+ size_t val_len = 0; -+ u8 data_type = 0; - int r; - - r = coolkey_get_attribute(card, obj, type, &val, &val_len, &data_type); -@@ -168,8 +168,8 @@ static int - coolkey_get_attribute_boolean(sc_card_t *card, sc_cardctl_coolkey_object_t *obj, CK_ATTRIBUTE_TYPE attr_type) - { - int r; -- const u8 *val; -- size_t val_len; -+ const u8 *val = NULL; -+ size_t val_len = 0; - - r = coolkey_get_attribute(card, obj, attr_type, &val, &val_len, NULL); - if (r < 0) { -@@ -186,7 +186,7 @@ static int - coolkey_get_attribute_bytes(sc_card_t *card, sc_cardctl_coolkey_object_t *obj, CK_ATTRIBUTE_TYPE type, u8 *data, size_t *data_len, size_t max_data_len) - { - const u8 *val; -- size_t val_len; -+ size_t val_len = 0; - int r; - - r = coolkey_get_attribute(card, obj, type, &val, &val_len, NULL); -diff --git a/src/pkcs15init/pkcs15-asepcos.c b/src/pkcs15init/pkcs15-asepcos.c -index d7122012..bc0efb5c 100644 ---- a/src/pkcs15init/pkcs15-asepcos.c -+++ b/src/pkcs15init/pkcs15-asepcos.c -@@ -221,7 +221,7 @@ static int asepcos_do_store_pin(sc_profile_t *profile, sc_card_t *card, - { - sc_file_t *nfile = NULL; - u8 buf[64], sbuf[64], *p = buf, *q = sbuf; -- int r, akn; -+ int r, akn = 0; - - if (auth_info->auth_type != SC_PKCS15_PIN_AUTH_TYPE_PIN) - return SC_ERROR_OBJECT_NOT_VALID; -diff --git a/src/tools/opensc-explorer.c b/src/tools/opensc-explorer.c -index 9ec4daa1..04efdf8f 100644 ---- a/src/tools/opensc-explorer.c -+++ b/src/tools/opensc-explorer.c -@@ -2472,7 +2472,7 @@ int main(int argc, char *argv[]) - char *line; - int cargc; - char *cargv[260]; -- int multiple; -+ int multiple = 0; - struct command *cmd; - char prompt[3*SC_MAX_PATH_STRING_SIZE]; - --- -2.25.1 - diff --git a/package/opensc/0001-fixed-compatibility-with-LibreSSL-3.5.0.patch b/package/opensc/0001-fixed-compatibility-with-LibreSSL-3.5.0.patch new file mode 100644 index 000000000000..0daf75d5ba8a --- /dev/null +++ b/package/opensc/0001-fixed-compatibility-with-LibreSSL-3.5.0.patch @@ -0,0 +1,54 @@ +From da01e5fab9be9865db1aac203e574e0edbfd6584 Mon Sep 17 00:00:00 2001 +From: Frank Morgner +Date: Wed, 14 Dec 2022 09:31:29 +0100 +Subject: [PATCH] fixed compatibility with LibreSSL >= 3.5.0 + +fixes https://github.com/OpenSC/OpenSC/issues/2664 + +Upstream: https://github.com/OpenSC/OpenSC/commit/da01e5fab9be9865db1aac203e574e0edbfd6584 + +Signed-off-by: Bernd Kuhls +--- + src/libopensc/card-iasecc.c | 12 +----------- + src/libopensc/sc-ossl-compat.h | 1 + + 2 files changed, 2 insertions(+), 11 deletions(-) + +diff --git a/src/libopensc/card-iasecc.c b/src/libopensc/card-iasecc.c +index 480c1cf87b..1347ed2393 100644 +--- a/src/libopensc/card-iasecc.c ++++ b/src/libopensc/card-iasecc.c +@@ -38,21 +38,11 @@ + #include + #include + +-/* +- * OpenSSL-3.0.0 does not allow access to the SHA data +- * so this driver can not produces signatures +- * OpenSSL 1.1.1 uses EVP_MD_CTX_md_data +- * LibreSSL +- */ +- +-#if defined(LIBRESSL_VERSION_NUMBER) +-# define EVP_MD_CTX_md_data(x) (x->md_data) +-#endif +- + #include "internal.h" + #include "asn1.h" + #include "cardctl.h" + #include "opensc.h" ++#include "sc-ossl-compat.h" + /* #include "sm.h" */ + #include "pkcs15.h" + /* #include "hash-strings.h" */ +diff --git a/src/libopensc/sc-ossl-compat.h b/src/libopensc/sc-ossl-compat.h +index da53ca8cee..8c0f96701c 100644 +--- a/src/libopensc/sc-ossl-compat.h ++++ b/src/libopensc/sc-ossl-compat.h +@@ -42,6 +42,7 @@ extern "C" { + #define X509_get_extension_flags(x) (x->ex_flags) + #define X509_get_key_usage(x) (x->ex_kusage) + #define X509_get_extended_key_usage(x) (x->ex_xkusage) ++#define EVP_MD_CTX_md_data(x) (x->md_data) + #endif + + #if defined(LIBRESSL_VERSION_NUMBER) diff --git a/package/opensc/0002-added-compatibility-with-LibreSSL.patch b/package/opensc/0002-added-compatibility-with-LibreSSL.patch deleted file mode 100644 index 86a17448f85f..000000000000 --- a/package/opensc/0002-added-compatibility-with-LibreSSL.patch +++ /dev/null @@ -1,173 +0,0 @@ -From 302ad70471efa279b033d4d5511d979ec5d965fe Mon Sep 17 00:00:00 2001 -From: Frank Morgner -Date: Thu, 20 Jan 2022 17:01:46 +0100 -Subject: [PATCH] added compatibility with LibreSSL - -[Retrieved (and backported) from: -https://github.com/OpenSC/OpenSC/commit/302ad70471efa279b033d4d5511d979ec5d965fe] -Signed-off-by: Fabrice Fontaine ---- - src/libopensc/sc-ossl-compat.h | 7 +++++++ - src/tests/p11test/p11test_case_common.c | 14 ++++++++++++++ - src/tests/p11test/p11test_case_ec_derive.c | 4 ++++ - src/tests/p11test/p11test_case_readonly.c | 9 +++++++-- - 4 files changed, 32 insertions(+), 2 deletions(-) - -diff --git a/src/libopensc/sc-ossl-compat.h b/src/libopensc/sc-ossl-compat.h -index f885f85bb9..ec694ad48d 100644 ---- a/src/libopensc/sc-ossl-compat.h -+++ b/src/libopensc/sc-ossl-compat.h -@@ -105,6 +105,13 @@ extern "C" { - /* workaround unused value warning for a macro that does nothing */ - #if defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x20700000L - #define OPENSSL_malloc_init() -+#define FIPS_mode() (0) -+#define EVP_sha3_224() (NULL) -+#define EVP_sha3_256() (NULL) -+#define EVP_sha3_384() (NULL) -+#define EVP_sha3_512() (NULL) -+#define EVP_PKEY_new_raw_public_key(t, e, p, l) (NULL) -+#define EVP_PKEY_get_raw_public_key(p, pu, l) (0) - #endif - - #if OPENSSL_VERSION_NUMBER >= 0x30000000L -diff --git a/src/tests/p11test/p11test_case_common.c b/src/tests/p11test/p11test_case_common.c -index e432f8f4ed..f091dbcc10 100644 ---- a/src/tests/p11test/p11test_case_common.c -+++ b/src/tests/p11test/p11test_case_common.c -@@ -164,6 +164,7 @@ add_supported_mechs(test_cert_t *o) - o->mechs[0].result_flags = 0; - o->mechs[0].usage_flags = CKF_SIGN | CKF_VERIFY; - } -+#ifdef EVP_PKEY_ED25519 - } else if (o->type == EVP_PKEY_ED25519) { - if (token.num_ed_mechs > 0 ) { - o->num_mechs = token.num_ed_mechs; -@@ -184,6 +185,8 @@ add_supported_mechs(test_cert_t *o) - o->mechs[0].result_flags = 0; - o->mechs[0].usage_flags = CKF_SIGN | CKF_VERIFY; - } -+#endif -+#ifdef EVP_PKEY_X25519 - } else if (o->type == EVP_PKEY_X25519) { - if (token.num_montgomery_mechs > 0 ) { - o->num_mechs = token.num_montgomery_mechs; -@@ -204,6 +207,7 @@ add_supported_mechs(test_cert_t *o) - o->mechs[0].result_flags = 0; - o->mechs[0].usage_flags = CKF_DERIVE; - } -+#endif - } - } - -@@ -601,6 +605,7 @@ int callback_public_keys(test_certs_t *objects, - a = template[6].pValue; - if (d2i_ASN1_PRINTABLESTRING(&curve, &a, (long)template[6].ulValueLen) != NULL) { - switch (o->key_type) { -+#ifdef EVP_PKEY_ED25519 - case CKK_EC_EDWARDS: - if (strcmp((char *)curve->data, "edwards25519")) { - debug_print(" [WARN %s ] Unknown curve name. " -@@ -608,6 +613,8 @@ int callback_public_keys(test_certs_t *objects, - } - evp_type = EVP_PKEY_ED25519; - break; -+#endif -+#ifdef EVP_PKEY_X25519 - case CKK_EC_MONTGOMERY: - if (strcmp((char *)curve->data, "curve25519")) { - debug_print(" [WARN %s ] Unknown curve name. " -@@ -615,16 +622,20 @@ int callback_public_keys(test_certs_t *objects, - } - evp_type = EVP_PKEY_X25519; - break; -+#endif - default: - debug_print(" [WARN %s ] Unknown key type %lu", o->id_str, o->key_type); - return -1; - } - ASN1_PRINTABLESTRING_free(curve); - } else if (d2i_ASN1_OBJECT(&obj, &a, (long)template[6].ulValueLen) != NULL) { -+#if defined(EVP_PKEY_ED25519) || defined (EVP_PKEY_X25519) - int nid = OBJ_obj2nid(obj); -+#endif - ASN1_OBJECT_free(obj); - - switch (o->key_type) { -+#ifdef EVP_PKEY_ED25519 - case CKK_EC_EDWARDS: - if (nid != NID_ED25519) { - debug_print(" [WARN %s ] Unknown OID. " -@@ -632,6 +643,8 @@ int callback_public_keys(test_certs_t *objects, - } - evp_type = EVP_PKEY_ED25519; - break; -+#endif -+#ifdef EVP_PKEY_X25519 - case CKK_EC_MONTGOMERY: - if (nid != NID_X25519) { - debug_print(" [WARN %s ] Unknown OID. " -@@ -639,6 +652,7 @@ int callback_public_keys(test_certs_t *objects, - } - evp_type = EVP_PKEY_X25519; - break; -+#endif - default: - debug_print(" [WARN %s ] Unknown key type %lu", o->id_str, o->key_type); - return -1; -diff --git a/src/tests/p11test/p11test_case_ec_derive.c b/src/tests/p11test/p11test_case_ec_derive.c -index 9f13b3e9d6..f7a5f92f9e 100644 ---- a/src/tests/p11test/p11test_case_ec_derive.c -+++ b/src/tests/p11test/p11test_case_ec_derive.c -@@ -89,6 +89,7 @@ pkcs11_derive(test_cert_t *o, token_info_t * info, - - int test_derive_x25519(test_cert_t *o, token_info_t *info, test_mech_t *mech) - { -+#ifdef EVP_PKEY_X25519 - unsigned char *secret = NULL, *pkcs11_secret = NULL; - EVP_PKEY_CTX *pctx = NULL; - EVP_PKEY *pkey = NULL; /* This is peer key */ -@@ -210,6 +211,9 @@ int test_derive_x25519(test_cert_t *o, token_info_t *info, test_mech_t *mech) - free(secret); - free(pkcs11_secret); - return 1; -+#else -+ return 0; -+#endif - } - - int test_derive(test_cert_t *o, token_info_t *info, test_mech_t *mech) -diff --git a/src/tests/p11test/p11test_case_readonly.c b/src/tests/p11test/p11test_case_readonly.c -index 624bd6a54d..2aefdc7a70 100644 ---- a/src/tests/p11test/p11test_case_readonly.c -+++ b/src/tests/p11test/p11test_case_readonly.c -@@ -522,6 +522,7 @@ int verify_message_openssl(test_cert_t *o, token_info_t *info, CK_BYTE *message, - rv, ERR_error_string(ERR_peek_last_error(), NULL)); - return -1; - } -+#ifdef EVP_PKEY_ED25519 - } else if (o->type == EVP_PKEY_ED25519) { - /* need to be created even though we do not do any MD */ - EVP_MD_CTX *ctx = EVP_MD_CTX_create(); -@@ -547,7 +548,7 @@ int verify_message_openssl(test_cert_t *o, token_info_t *info, CK_BYTE *message, - EVP_MD_CTX_free(ctx); - return -1; - } -- -+#endif - } else { - fprintf(stderr, " [ KEY %s ] Unknown type. Not verifying\n", o->id_str); - } -@@ -641,7 +642,11 @@ int sign_verify_test(test_cert_t *o, token_info_t *info, test_mech_t *mech, - return 0; - } - -- if (o->type != EVP_PK_EC && o->type != EVP_PK_RSA && o->type != EVP_PKEY_ED25519) { -+ if (o->type != EVP_PK_EC && o->type != EVP_PK_RSA -+#ifdef EVP_PKEY_ED25519 -+ && o->type != EVP_PKEY_ED25519 -+#endif -+ ) { - debug_print(" [SKIP %s ] Skip non-RSA and non-EC key", o->id_str); - return 0; - } diff --git a/package/opensc/0002-fixed-compatibility-with-LibreSSL-3.7.0.patch b/package/opensc/0002-fixed-compatibility-with-LibreSSL-3.7.0.patch new file mode 100644 index 000000000000..6bbbea6ce610 --- /dev/null +++ b/package/opensc/0002-fixed-compatibility-with-LibreSSL-3.7.0.patch @@ -0,0 +1,28 @@ +From 98ad0f93b0a7673cdce82e1b3faa7dc314c64dd6 Mon Sep 17 00:00:00 2001 +From: Frank Morgner +Date: Fri, 16 Dec 2022 11:56:28 +0100 +Subject: [PATCH] fixed compatibility with LibreSSL 3.7.0 + +Upstream: https://github.com/OpenSC/OpenSC/commit/98ad0f93b0a7673cdce82e1b3faa7dc314c64dd6 + +Signed-off-by: Bernd Kuhls +--- + src/libopensc/sc-ossl-compat.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/libopensc/sc-ossl-compat.h b/src/libopensc/sc-ossl-compat.h +index 8c0f96701c..4425da93f3 100644 +--- a/src/libopensc/sc-ossl-compat.h ++++ b/src/libopensc/sc-ossl-compat.h +@@ -54,9 +54,11 @@ extern "C" { + #define EVP_sha3_256() (NULL) + #define EVP_sha3_384() (NULL) + #define EVP_sha3_512() (NULL) ++#if LIBRESSL_VERSION_NUMBER < 0x3070000fL + #define EVP_PKEY_new_raw_public_key(t, e, p, l) (NULL) + #define EVP_PKEY_get_raw_public_key(p, pu, l) (0) + #endif ++#endif + + /* OpenSSL 1.1.1 has FIPS_mode function */ + #if OPENSSL_VERSION_NUMBER >= 0x30000000L diff --git a/package/opensc/0003-Fix-build-with-libressl-3.5.0.patch b/package/opensc/0003-Fix-build-with-libressl-3.5.0.patch deleted file mode 100644 index 1d262362d66f..000000000000 --- a/package/opensc/0003-Fix-build-with-libressl-3.5.0.patch +++ /dev/null @@ -1,47 +0,0 @@ -From d13059d1ec2bbb8fe7068db0d66d521daa4b71ce Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Sat, 13 Aug 2022 14:27:22 +0200 -Subject: [PATCH] Fix build with libressl >= 3.5.0 - -libressl added back FIPS_mode since version 3.5.0 and -https://github.com/libressl-portable/openbsd/commit/a97eabc90d7647e374c1c6da686aeec63c49ff14 - -libressl provides X509_get_extension_flags since version 3.5.0 and -https://github.com/libressl-portable/openbsd/commit/3180723224c1b2c7856a110b8213e4966995d7e0 - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/OpenSC/OpenSC/pull/2593 & - https://github.com/OpenSC/OpenSC/pull/2595 (merged)] ---- - src/libopensc/sc-ossl-compat.h | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/src/libopensc/sc-ossl-compat.h b/src/libopensc/sc-ossl-compat.h -index f0d55279..2c42794c 100644 ---- a/src/libopensc/sc-ossl-compat.h -+++ b/src/libopensc/sc-ossl-compat.h -@@ -86,9 +86,11 @@ extern "C" { - #if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - #define RSA_PKCS1_OpenSSL RSA_PKCS1_SSLeay - -+#if defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x30500000L - #define X509_get_extension_flags(x) (x->ex_flags) - #define X509_get_key_usage(x) (x->ex_kusage) - #define X509_get_extended_key_usage(x) (x->ex_xkusage) -+#endif - #if !defined(LIBRESSL_VERSION_NUMBER) || LIBRESSL_VERSION_NUMBER < 0x2050300fL - #define X509_up_ref(cert) CRYPTO_add(&cert->references, 1, CRYPTO_LOCK_X509) - #endif -@@ -104,7 +106,9 @@ extern "C" { - /* workaround unused value warning for a macro that does nothing */ - #if defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER >= 0x20700000L - #define OPENSSL_malloc_init() -+#if LIBRESSL_VERSION_NUMBER < 0x30500000L - #define FIPS_mode() (0) -+#endif - #define EVP_sha3_224() (NULL) - #define EVP_sha3_256() (NULL) - #define EVP_sha3_384() (NULL) --- -2.35.1 - diff --git a/package/opensc/0003-configure-add-option-to-disable-tests.patch b/package/opensc/0003-configure-add-option-to-disable-tests.patch new file mode 100644 index 000000000000..29342026c1e6 --- /dev/null +++ b/package/opensc/0003-configure-add-option-to-disable-tests.patch @@ -0,0 +1,67 @@ +From 3c3ed2ecbf31d41b6e5406da55971b9d9eaa3388 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Mon, 24 Jul 2023 22:28:11 +0200 +Subject: [PATCH] configure: add option to disable tests + +Upstream: https://github.com/OpenSC/OpenSC/pull/2822 + +Signed-off-by: Bernd Kuhls +--- + configure.ac | 9 +++++++++ + src/Makefile.am | 6 +++++- + 2 files changed, 14 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 0a90445b..9b7543da 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -272,6 +272,13 @@ AC_ARG_ENABLE( + [enable_doc="no"] + ) + ++AC_ARG_ENABLE( ++ [tests], ++ [AS_HELP_STRING([--enable-tests],[enable tests @<:@enabled@:>@])], ++ , ++ [enable_tests="yes"] ++) ++ + AC_ARG_ENABLE( + [dnie-ui], + [AS_HELP_STRING([--enable-dnie-ui],[enable use of external user interface program to request DNIe pin@<:@disabled@:>@])], +@@ -1119,6 +1126,7 @@ AM_CONDITIONAL([ENABLE_NOTIFY], [test "${enable_notify}" = "yes"]) + AM_CONDITIONAL([ENABLE_CRYPTOTOKENKIT], [test "${enable_cryptotokenkit}" = "yes"]) + AM_CONDITIONAL([ENABLE_OPENCT], [test "${enable_openct}" = "yes"]) + AM_CONDITIONAL([ENABLE_DOC], [test "${enable_doc}" = "yes"]) ++AM_CONDITIONAL([ENABLE_TESTS], [test "${enable_tests}" = "yes"]) + AM_CONDITIONAL([WIN32], [test "${WIN32}" = "yes"]) + AM_CONDITIONAL([CYGWIN], [test "${CYGWIN}" = "yes"]) + AM_CONDITIONAL([ENABLE_MINIDRIVER], [test "${enable_minidriver}" = "yes"]) +@@ -1213,6 +1221,7 @@ XSL stylesheets: ${xslstylesheetsdir} + + man support: ${enable_man} + doc support: ${enable_doc} ++tests: ${enable_tests} + thread locking support: ${enable_thread_locking} + zlib support: ${enable_zlib} + readline support: ${enable_readline} +diff --git a/src/Makefile.am b/src/Makefile.am +index 3ce465bf..bf71b61f 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -3,7 +3,11 @@ EXTRA_DIST = Makefile.mak + + # Order IS important + SUBDIRS = common scconf ui pkcs15init sm \ +- libopensc pkcs11 tools minidriver tests ++ libopensc pkcs11 tools minidriver ++ ++if ENABLE_TESTS ++SUBDIRS += tests ++endif + + if ENABLE_SM + SUBDIRS += smm +-- +2.39.2 + diff --git a/package/opensc/0004-pkcs15init-correct-left-length-calculation-to-fix-buffer-overrun-bug.patch b/package/opensc/0004-pkcs15init-correct-left-length-calculation-to-fix-buffer-overrun-bug.patch new file mode 100644 index 000000000000..079f960b59ae --- /dev/null +++ b/package/opensc/0004-pkcs15init-correct-left-length-calculation-to-fix-buffer-overrun-bug.patch @@ -0,0 +1,51 @@ +From 81944d1529202bd28359bede57c0a15deb65ba8a Mon Sep 17 00:00:00 2001 +From: fullwaywang +Date: Mon, 29 May 2023 10:38:48 +0800 +Subject: [PATCH] pkcs15init: correct left length calculation to fix buffer + overrun bug. Fixes #2785 + +Upstream: https://github.com/OpenSC/OpenSC/commit/81944d1529202bd28359bede57c0a15deb65ba8a +Signed-off-by: Fabrice Fontaine +--- + src/pkcs15init/pkcs15-cardos.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/src/pkcs15init/pkcs15-cardos.c b/src/pkcs15init/pkcs15-cardos.c +index 9715cf390f..f41f73c349 100644 +--- a/src/pkcs15init/pkcs15-cardos.c ++++ b/src/pkcs15init/pkcs15-cardos.c +@@ -872,7 +872,7 @@ static int cardos_have_verifyrc_package(sc_card_t *card) + sc_apdu_t apdu; + u8 rbuf[SC_MAX_APDU_BUFFER_SIZE]; + int r; +- const u8 *p = rbuf, *q; ++ const u8 *p = rbuf, *q, *pp; + size_t len, tlen = 0, ilen = 0; + + sc_format_apdu(card, &apdu, SC_APDU_CASE_2_SHORT, 0xca, 0x01, 0x88); +@@ -888,13 +888,13 @@ static int cardos_have_verifyrc_package(sc_card_t *card) + return 0; + + while (len != 0) { +- p = sc_asn1_find_tag(card->ctx, p, len, 0xe1, &tlen); +- if (p == NULL) ++ pp = sc_asn1_find_tag(card->ctx, p, len, 0xe1, &tlen); ++ if (pp == NULL) + return 0; + if (card->type == SC_CARD_TYPE_CARDOS_M4_3) { + /* the verifyRC package on CardOS 4.3B use Manufacturer ID 0x01 */ + /* and Package Number 0x07 */ +- q = sc_asn1_find_tag(card->ctx, p, tlen, 0x01, &ilen); ++ q = sc_asn1_find_tag(card->ctx, pp, tlen, 0x01, &ilen); + if (q == NULL || ilen != 4) + return 0; + if (q[0] == 0x07) +@@ -902,7 +902,7 @@ static int cardos_have_verifyrc_package(sc_card_t *card) + } else if (card->type == SC_CARD_TYPE_CARDOS_M4_4) { + /* the verifyRC package on CardOS 4.4 use Manufacturer ID 0x03 */ + /* and Package Number 0x02 */ +- q = sc_asn1_find_tag(card->ctx, p, tlen, 0x03, &ilen); ++ q = sc_asn1_find_tag(card->ctx, pp, tlen, 0x03, &ilen); + if (q == NULL || ilen != 4) + return 0; + if (q[0] == 0x02) diff --git a/package/opensc/0005-LibreSSL-does-provide-EVP_sha3_-after-3-7-3.patch b/package/opensc/0005-LibreSSL-does-provide-EVP_sha3_-after-3-7-3.patch new file mode 100644 index 000000000000..80c19a3f5fa9 --- /dev/null +++ b/package/opensc/0005-LibreSSL-does-provide-EVP_sha3_-after-3-7-3.patch @@ -0,0 +1,32 @@ +From e015242590ad9131e124232cc5a2fd02d525ef2c Mon Sep 17 00:00:00 2001 +From: Klemens Nanni +Date: Thu, 29 Jun 2023 02:41:43 +0300 +Subject: [PATCH] LibreSSL does provide EVP_sha3_*() after 3.7.3 + +Support was added in 16.04.2023. + +Compile- and run-tested on OpenBSD/amd64 7.3-current. + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/OpenSC/OpenSC/commit/e015242590ad9131e124232cc5a2fd02d525ef2c +--- + src/libopensc/sc-ossl-compat.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/libopensc/sc-ossl-compat.h b/src/libopensc/sc-ossl-compat.h +index df0cebbce2..8012cd4c0f 100644 +--- a/src/libopensc/sc-ossl-compat.h ++++ b/src/libopensc/sc-ossl-compat.h +@@ -50,10 +50,12 @@ extern "C" { + #if LIBRESSL_VERSION_NUMBER < 0x30500000L + #define FIPS_mode() (0) + #endif ++#ifndef EVP_sha3_224 + #define EVP_sha3_224() (NULL) + #define EVP_sha3_256() (NULL) + #define EVP_sha3_384() (NULL) + #define EVP_sha3_512() (NULL) ++#endif + #if LIBRESSL_VERSION_NUMBER < 0x3070000fL + #define EVP_PKEY_new_raw_public_key(t, e, p, l) (NULL) + #define EVP_PKEY_get_raw_public_key(p, pu, l) (0) diff --git a/package/opensc/0006-fixed-detection-of-SHA3-compatibility.patch b/package/opensc/0006-fixed-detection-of-SHA3-compatibility.patch new file mode 100644 index 000000000000..3d8aa7e4ef47 --- /dev/null +++ b/package/opensc/0006-fixed-detection-of-SHA3-compatibility.patch @@ -0,0 +1,27 @@ +From 33351d91aa22fa8077847ba3f19abb5a00b04600 Mon Sep 17 00:00:00 2001 +From: Frank Morgner +Date: Tue, 15 Aug 2023 17:58:21 +0200 +Subject: [PATCH] fixed detection of SHA3 compatibility + +fixes https://github.com/OpenSC/OpenSC/issues/2836 + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/OpenSC/OpenSC/commit/33351d91aa22fa8077847ba3f19abb5a00b04600 +--- + src/libopensc/sc-ossl-compat.h | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/libopensc/sc-ossl-compat.h b/src/libopensc/sc-ossl-compat.h +index 8012cd4c0f..96ec4bd736 100644 +--- a/src/libopensc/sc-ossl-compat.h ++++ b/src/libopensc/sc-ossl-compat.h +@@ -50,7 +50,8 @@ extern "C" { + #if LIBRESSL_VERSION_NUMBER < 0x30500000L + #define FIPS_mode() (0) + #endif +-#ifndef EVP_sha3_224 ++/* OpenSSL 1.1.1 has EVP_sha3_* */ ++#if defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x30800000L + #define EVP_sha3_224() (NULL) + #define EVP_sha3_256() (NULL) + #define EVP_sha3_384() (NULL) diff --git a/package/opensc/opensc.hash b/package/opensc/opensc.hash index 517cfe503a35..e8e675667e25 100644 --- a/package/opensc/opensc.hash +++ b/package/opensc/opensc.hash @@ -1,5 +1,5 @@ # Computed locally from https://https://github.com/OpenSC/OpenSC/releases/ -sha256 8d4e5347195ebea332be585df61dcc470331c26969e4b0447c851fb0844c7186 opensc-0.22.0.tar.gz +sha256 a4844a6ea03a522ecf35e49659716dacb6be03f7c010a1a583aaf3eb915ed2e0 opensc-0.23.0.tar.gz # Computed locally sha256 376b54d4c5f4aa99421823fa4da93e3ab73096fce2400e89858632aa7da24a14 COPYING diff --git a/package/opensc/opensc.mk b/package/opensc/opensc.mk index f9e2f5083e5c..823bc5010282 100644 --- a/package/opensc/opensc.mk +++ b/package/opensc/opensc.mk @@ -4,13 +4,18 @@ # ################################################################################ -OPENSC_VERSION = 0.22.0 +OPENSC_VERSION = 0.23.0 OPENSC_SITE = https://github.com/OpenSC/OpenSC/releases/download/$(OPENSC_VERSION) OPENSC_LICENSE = LGPL-2.1+ OPENSC_LICENSE_FILES = COPYING OPENSC_CPE_ID_VENDOR = opensc_project +# 0003-configure-add-option-to-disable-tests.patch +OPENSC_AUTORECONF = YES OPENSC_DEPENDENCIES = openssl pcsc-lite OPENSC_INSTALL_STAGING = YES -OPENSC_CONF_OPTS = --disable-cmocka --disable-strict +OPENSC_CONF_OPTS = --disable-cmocka --disable-strict --disable-tests + +# 0004-pkcs15init-correct-left-length-calculation-to-fix-buffer-overrun-bug.patch +OPENSC_IGNORE_CVES += CVE-2023-2977 $(eval $(autotools-package)) diff --git a/package/openssh/Config.in b/package/openssh/Config.in index 08d3c7d391e1..a3038ba01ffd 100644 --- a/package/openssh/Config.in +++ b/package/openssh/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_OPENSSH bool "openssh" depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_LINUX_PAM if BR2_PACKAGE_REFPOLICY_UPSTREAM_VERSION select BR2_PACKAGE_OPENSSL select BR2_PACKAGE_ZLIB help diff --git a/package/openssh/openssh.hash b/package/openssh/openssh.hash index eefb11ec15e6..4060b95e9bf8 100644 --- a/package/openssh/openssh.hash +++ b/package/openssh/openssh.hash @@ -1,4 +1,4 @@ -# From https://www.openssh.com/txt/release-9.1 (base64 encoded) -sha256 19f85009c7e3e23787f0236fbb1578392ab4d4bf9f8ec5fe6bc1cd7e8bfdd288 openssh-9.1p1.tar.gz +# From https://www.openssh.com/txt/release-9.4p1 +sha256 3608fd9088db2163ceb3e600c85ab79d0de3d221e59192ea1923e23263866a85 openssh-9.4p1.tar.gz # Locally calculated sha256 05c30446ba738934b3f1efa965b454c122ca26cc4b268e5ae6843f58ccd1b16d LICENCE diff --git a/package/openssh/openssh.mk b/package/openssh/openssh.mk index b70e327620a0..358ef42b6ecb 100644 --- a/package/openssh/openssh.mk +++ b/package/openssh/openssh.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENSSH_VERSION_MAJOR = 9.1 +OPENSSH_VERSION_MAJOR = 9.4 OPENSSH_VERSION_MINOR = p1 OPENSSH_VERSION = $(OPENSSH_VERSION_MAJOR)$(OPENSSH_VERSION_MINOR) OPENSSH_CPE_ID_VERSION = $(OPENSSH_VERSION_MAJOR) @@ -35,6 +35,10 @@ define OPENSSH_PERMISSIONS /var/empty d 755 root root - - - - - endef +ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_110934),y) +OPENSSH_CONF_OPTS += --without-hardening +endif + ifeq ($(BR2_TOOLCHAIN_SUPPORTS_PIE),) OPENSSH_CONF_OPTS += --without-pie endif diff --git a/package/openswan/openswan.mk b/package/openswan/openswan.mk index bb56e4516c76..4c6a779f0da5 100644 --- a/package/openswan/openswan.mk +++ b/package/openswan/openswan.mk @@ -25,9 +25,6 @@ endif ifeq ($(BR2_PACKAGE_OPENSSL),y) OPENSWAN_DEPENDENCIES += openssl OPENSWAN_MAKE_OPTS += HAVE_OPENSSL=true -ifeq ($(BR2_PACKAGE_OCF_LINUX),y) -OPENSWAN_MAKE_OPTS += HAVE_OCF=true -endif endif define OPENSWAN_BUILD_CMDS diff --git a/package/openvmtools/Config.in b/package/openvmtools/Config.in index 67855f50e0b3..066a7a47365d 100644 --- a/package/openvmtools/Config.in +++ b/package/openvmtools/Config.in @@ -32,13 +32,14 @@ config BR2_PACKAGE_OPENVMTOOLS_PAM bool "PAM support" # linux-pam needs locale and wchar, but we already have this # dependency on the main symbol, above. + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # linux-pam depends on !BR2_STATIC_LIBS select BR2_PACKAGE_LINUX_PAM help Support for PAM in openvmtools -comment "PAM support needs a toolchain w/ dynamic library" - depends on BR2_STATIC_LIBS +comment "PAM support needs a toolchain w/ dynamic library, gcc >= 4.9" + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 config BR2_PACKAGE_OPENVMTOOLS_RESOLUTIONKMS bool "resolutionkms support" diff --git a/package/openvpn/Config.in b/package/openvpn/Config.in index cd8b1db99664..5aa2386d362c 100644 --- a/package/openvpn/Config.in +++ b/package/openvpn/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_OPENVPN bool "openvpn" depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_LIBCAP_NG select BR2_PACKAGE_OPENSSL if !BR2_PACKAGE_MBEDTLS select BR2_PACKAGE_LIBOPENSSL_ENABLE_DES if BR2_PACKAGE_LIBOPENSSL help diff --git a/package/openvpn/openvpn.hash b/package/openvpn/openvpn.hash index 0959b7f83809..f4b39bfbc920 100644 --- a/package/openvpn/openvpn.hash +++ b/package/openvpn/openvpn.hash @@ -1,3 +1,3 @@ # Locally calculated after checking signature -sha256 08340a389905c84196b6cd750add1bc0fa2d46a1afebfd589c24120946c13e68 openvpn-2.5.7.tar.gz +sha256 ee9877340b1d8de47eb5b52712c3366855fa6a4a1955bf950c68577bd2039913 openvpn-2.6.7.tar.gz sha256 1fcb78d7e478bb8a9408010bdc91b36e213b1facfad093df3f7ce7e28af19043 COPYRIGHT.GPL diff --git a/package/openvpn/openvpn.mk b/package/openvpn/openvpn.mk index 5c602e0448fc..f8fc7e074419 100644 --- a/package/openvpn/openvpn.mk +++ b/package/openvpn/openvpn.mk @@ -4,9 +4,9 @@ # ################################################################################ -OPENVPN_VERSION = 2.5.7 +OPENVPN_VERSION = 2.6.7 OPENVPN_SITE = https://swupdate.openvpn.net/community/releases -OPENVPN_DEPENDENCIES = host-pkgconf +OPENVPN_DEPENDENCIES = host-pkgconf libcap-ng OPENVPN_LICENSE = GPL-2.0 OPENVPN_LICENSE_FILES = COPYRIGHT.GPL OPENVPN_CPE_ID_VENDOR = openvpn @@ -16,6 +16,13 @@ OPENVPN_CONF_OPTS = \ $(if $(BR2_STATIC_LIBS),--disable-plugins) OPENVPN_CONF_ENV = NETSTAT=/bin/netstat +ifeq ($(BR2_PACKAGE_LIBNL)$(BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_16),yy) +OPENVPN_CONF_OPTS += --enable-dco +OPENVPN_DEPENDENCIES += libnl +else +OPENVPN_CONF_OPTS += --disable-dco +endif + ifeq ($(BR2_PACKAGE_OPENVPN_SMALL),y) OPENVPN_CONF_OPTS += \ --enable-small \ diff --git a/package/opkg-utils/opkg-utils.hash b/package/opkg-utils/opkg-utils.hash index 29671f9609c8..7aabe4d1a18c 100644 --- a/package/opkg-utils/opkg-utils.hash +++ b/package/opkg-utils/opkg-utils.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 e0fcaab51bff2149bd6560fb4238319d502dd99b581f66763d702e75c224736d opkg-utils-0.4.5-br1.tar.gz +sha256 ad4fb6d01f2f18e986c556cca1ade584b109c277794af15977c354d2ecef9b52 opkg-utils-0.6.2-br1.tar.gz sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING diff --git a/package/opkg-utils/opkg-utils.mk b/package/opkg-utils/opkg-utils.mk index ad267c5c943f..b077e0dcce01 100644 --- a/package/opkg-utils/opkg-utils.mk +++ b/package/opkg-utils/opkg-utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPKG_UTILS_VERSION = 0.4.5 +OPKG_UTILS_VERSION = 0.6.2 OPKG_UTILS_SITE = https://git.yoctoproject.org/git/opkg-utils OPKG_UTILS_SITE_METHOD = git OPKG_UTILS_LICENSE = GPL-2.0+ @@ -16,7 +16,7 @@ HOST_OPKG_UTILS_DEPENDENCIES = \ host-xz # Nothing to build; only scripts to install. -define OPKG_UTILS_INSTALL_CMDS +define OPKG_UTILS_INSTALL_TARGET_CMDS $(MAKE) -C $(@D) PREFIX=$(TARGET_DIR) install-utils endef diff --git a/package/opkg/opkg.hash b/package/opkg/opkg.hash index b0c0ba657401..c6ecefba21ea 100644 --- a/package/opkg/opkg.hash +++ b/package/opkg/opkg.hash @@ -1,4 +1,4 @@ # From http://downloads.yoctoproject.org/releases/opkg/SHA256SUMS -sha256 a1214a75fa34fb9228db8da47308e0e711b1c93fd8938cf164c10fd28eb50f1e opkg-0.4.5.tar.gz +sha256 ac73a90a2549cd04948e563d915912c78e1b8ba0f43af75c5a53fcca474adbd5 opkg-0.6.2.tar.gz # Locally calculated sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING diff --git a/package/opkg/opkg.mk b/package/opkg/opkg.mk index 501edcf8af4c..a550543f3ea9 100644 --- a/package/opkg/opkg.mk +++ b/package/opkg/opkg.mk @@ -4,18 +4,13 @@ # ################################################################################ -OPKG_VERSION = 0.4.5 +OPKG_VERSION = 0.6.2 OPKG_SITE = https://downloads.yoctoproject.org/releases/opkg OPKG_DEPENDENCIES = host-pkgconf libarchive OPKG_LICENSE = GPL-2.0+ OPKG_LICENSE_FILES = COPYING OPKG_INSTALL_STAGING = YES -OPKG_CONF_OPTS = --disable-curl - -# Ensure directory for lockfile exists -define OPKG_CREATE_LOCKDIR - mkdir -p $(TARGET_DIR)/usr/lib/opkg -endef +OPKG_CONF_OPTS = --enable-sha256 ifeq ($(BR2_PACKAGE_OPKG_GPG_SIGN),y) OPKG_CONF_OPTS += --enable-gpg @@ -27,6 +22,50 @@ else OPKG_CONF_OPTS += --disable-gpg endif +ifeq ($(BR2_PACKAGE_LIBCURL),y) +OPKG_DEPENDENCIES += libcurl +OPKG_CONF_OPTS += --enable-curl +ifeq ($(BR2_PACKAGE_OPENSSL),y) +OPKG_CONF_OPTS += --enable-ssl-curl +else +OPKG_CONF_OPTS += --disable-ssl-curl +endif +else +OPKG_CONF_OPTS += --disable-curl --disable-ssl-curl +endif + +ifeq ($(BR2_PACKAGE_BZIP2),y) +OPKG_DEPENDENCIES += bzip2 +OPKG_CONF_OPTS += --enable-bzip2 +else +OPKG_CONF_OPTS += --disable-bzip2 +endif + +ifeq ($(BR2_PACKAGE_LZ4),y) +OPKG_DEPENDENCIES += lz4 +OPKG_CONF_OPTS += --enable-lz4 +else +OPKG_CONF_OPTS += --disable-lz4 +endif + +ifeq ($(BR2_PACKAGE_XZ),y) +OPKG_DEPENDENCIES += xz +OPKG_CONF_OPTS += --enable-xz +else +OPKG_CONF_OPTS += --disable-xz +endif + +ifeq ($(BR2_PACKAGE_ZSTD),y) +OPKG_DEPENDENCIES += zstd +OPKG_CONF_OPTS += --enable-zstd +else +OPKG_CONF_OPTS += --disable-zstd +endif + +# Ensure directory for lockfile exists +define OPKG_CREATE_LOCKDIR + mkdir -p $(TARGET_DIR)/usr/lib/opkg +endef OPKG_POST_INSTALL_TARGET_HOOKS += OPKG_CREATE_LOCKDIR $(eval $(autotools-package)) diff --git a/package/optee-benchmark/Config.in b/package/optee-benchmark/Config.in deleted file mode 100644 index 2070582fbbbd..000000000000 --- a/package/optee-benchmark/Config.in +++ /dev/null @@ -1,20 +0,0 @@ -config BR2_PACKAGE_OPTEE_BENCHMARK - bool "optee-benchmark" - depends on BR2_USE_MMU # fork() - depends on BR2_TOOLCHAIN_HAS_THREADS # optee-client - depends on !BR2_STATIC_LIBS # optee-client - depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 # optee-client - select BR2_PACKAGE_OPTEE_CLIENT - select BR2_PACKAGE_LIBYAML - help - Enable the OP-TEE benchmark package that brings facilities - for profiling traversal and execution timings when - invoking OP-TEE. OP-TEE benchmark is a component delivered - by the OP-TEE project. - - http://github.com/linaro-swg/optee_benchmark - -comment "optee-benchmark needs a toolchain w/ threads, dynamic library, headers >= 4.3" - depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \ - !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 diff --git a/package/optee-benchmark/optee-benchmark.hash b/package/optee-benchmark/optee-benchmark.hash deleted file mode 100644 index d74a24c8abe0..000000000000 --- a/package/optee-benchmark/optee-benchmark.hash +++ /dev/null @@ -1,4 +0,0 @@ -# From https://github.com/linaro-swg/optee_benchmark/archive/3.19.0/optee-benchmark-3.19.0.tar.gz -sha256 32f41854bf07eb7bb89dfc702da023c3a99518c33fbe7edf0e1f004e29a8c90c optee-benchmark-3.19.0.tar.gz -# Locally computed -sha256 0571be5b739142dc3e40e0a4e7e30d4ab8bff0d4d606a3f2db2010745587d383 LICENSE diff --git a/package/optee-benchmark/optee-benchmark.mk b/package/optee-benchmark/optee-benchmark.mk deleted file mode 100644 index 338a51ada474..000000000000 --- a/package/optee-benchmark/optee-benchmark.mk +++ /dev/null @@ -1,14 +0,0 @@ -################################################################################ -# -# optee-benchmark -# -################################################################################ - -OPTEE_BENCHMARK_VERSION = 3.19.0 -OPTEE_BENCHMARK_SITE = $(call github,linaro-swg,optee_benchmark,$(OPTEE_BENCHMARK_VERSION)) -OPTEE_BENCHMARK_LICENSE = BSD-2-Clause -OPTEE_BENCHMARK_LICENSE_FILES = LICENSE - -OPTEE_BENCHMARK_DEPENDENCIES = optee-client libyaml - -$(eval $(cmake-package)) diff --git a/package/optee-client/0001-libteeacl-condition-libteeacl-with-WITH_TEEACL.patch b/package/optee-client/0001-libteeacl-condition-libteeacl-with-WITH_TEEACL.patch deleted file mode 100644 index 4fdf9afc9441..000000000000 --- a/package/optee-client/0001-libteeacl-condition-libteeacl-with-WITH_TEEACL.patch +++ /dev/null @@ -1,105 +0,0 @@ -From bbdf665aba39c29a3ce7bd06e4554c62a416ebaa Mon Sep 17 00:00:00 2001 -From: Etienne Carriere -Date: Thu, 10 Nov 2022 12:05:24 +0100 -Subject: [PATCH] libteeacl: condition libteeacl with WITH_TEEACL - -Build and embed libteeacl upon WITH_TEEACL=1 (default configuration). -This configuration switch allows one to build OP-TEE client without -dependencies on pkg-config and libuuid when OP-TEE ACL for -PKCS11 is not needed: - cmake -DWITH_TEEACL=0 ... -or - make WITH_TEEACL=0 ... - -With the comments below addressed, LGTM. - -Acked-by: Jerome Forissier -Acked-by: Jens Wiklander -Reviewed-by: Eero Aaltonen -[etienne.carriere@linaro.org: backport upstream commit] -Signed-off-by: Etienne Carriere -[yann.morin.1998@free.fr: actually do a backport of bbdf665] -Signed-off-by: Yann E. MORIN ---- - CMakeLists.txt | 9 ++++++--- - Makefile | 15 ++++++++++++--- - 2 files changed, 18 insertions(+), 6 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 0786752..9fb5c6a 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -5,6 +5,7 @@ project (optee_client C) - set (CMAKE_TOOLCHAIN_FILE CMakeToolchain.txt) - - set (CFG_WERROR 1 CACHE BOOL "Build with -Werror") -+option (WITH_TEEACL "Build libteeacl" TRUE) - - include(GNUInstallDirs) - -@@ -37,7 +38,9 @@ add_subdirectory (libteec) - add_subdirectory (tee-supplicant) - add_subdirectory (public) - add_subdirectory (libckteec) --find_package (PkgConfig REQUIRED) --pkg_check_modules(uuid REQUIRED IMPORTED_TARGET uuid) --add_subdirectory (libteeacl) -+if(WITH_TEEACL) -+ find_package (PkgConfig REQUIRED) -+ pkg_check_modules(uuid REQUIRED IMPORTED_TARGET uuid) -+ add_subdirectory (libteeacl) -+endif(WITH_TEEACL) - add_subdirectory (libseteec) -diff --git a/Makefile b/Makefile -index 90b487e..2ee5621 100644 ---- a/Makefile -+++ b/Makefile -@@ -16,6 +16,8 @@ SBINDIR ?= /usr/sbin - LIBDIR ?= /usr/lib - INCLUDEDIR ?= /usr/include - -+WITH_TEEACL ?= 1 -+ - .PHONY: all build build-libteec build-libckteec build-libseteec \ - build-libteeacl check-libuuid install copy_export clean cscope \ - clean-cscope \ -@@ -35,8 +37,10 @@ build-tee-supplicant: build-libteec - @echo "Building tee-supplicant" - $(MAKE) --directory=tee-supplicant --no-print-directory --no-builtin-variables CFG_TEE_SUPP_LOG_LEVEL=$(CFG_TEE_SUPP_LOG_LEVEL) - --build: build-libteec build-tee-supplicant build-libckteec build-libseteec \ -- build-libteeacl -+build: build-libteec build-tee-supplicant build-libckteec build-libseteec -+ifeq ($(WITH_TEEACL),1) -+build: build-libteeacl -+endif - - build-libckteec: build-libteec - @echo "Building libckteec.so" -@@ -57,7 +61,10 @@ check-libuuid: - install: copy_export - - clean: clean-libteec clean-tee-supplicant clean-cscope clean-libckteec \ -- clean-libseteec clean-libteeacl -+ clean-libseteec -+ifeq ($(WITH_TEEACL),1) -+clean: clean-libteeacl -+endif - - clean-libteec: - @$(MAKE) --directory=libteec --no-print-directory clean -@@ -158,9 +165,11 @@ copy_export: build - cp libckteec/include/*.h $(DESTDIR)$(INCLUDEDIR) - cp -d ${O}/libckteec/libckteec.so* $(DESTDIR)$(LIBDIR) - cp -d ${O}/libckteec/libckteec.a $(DESTDIR)$(LIBDIR) -+ifeq ($(WITH_TEEACL),1) - cp libteeacl/include/*.h $(DESTDIR)$(INCLUDEDIR) - cp -d ${O}/libteeacl/libteeacl.so* $(DESTDIR)$(LIBDIR) - cp -d ${O}/libteeacl/libteeacl.a $(DESTDIR)$(LIBDIR) -+endif - cp libseteec/include/*.h $(DESTDIR)$(INCLUDEDIR) - cp -d ${O}/libseteec/libseteec.so* $(DESTDIR)$(LIBDIR) - cp -d ${O}/libseteec/libseteec.a $(DESTDIR)$(LIBDIR) --- -2.25.1 - diff --git a/package/optee-client/0002-libteeacl-use-realloc-instead-of-reallocarray.patch b/package/optee-client/0002-libteeacl-use-realloc-instead-of-reallocarray.patch deleted file mode 100644 index 88f5a4f87e02..000000000000 --- a/package/optee-client/0002-libteeacl-use-realloc-instead-of-reallocarray.patch +++ /dev/null @@ -1,34 +0,0 @@ -From dde6306458331371be5df15e3ca953697d2463ef Mon Sep 17 00:00:00 2001 -From: Eero Aaltonen -Date: Thu, 2 Feb 2023 17:22:29 +0200 -Subject: [PATCH] libteeacl: use realloc() instead of reallocarray() - -Use realloc() instead of reallocarray(), since uClibc apparently does -not implement reallocarray(). - -Fixes: https://github.com/OP-TEE/optee_client/issues/339 - -Signed-off-by: Eero Aaltonen -Reviewed-by: Jerome Forissier - -[Retrieved from: -https://github.com/OP-TEE/optee_client/commit/dde6306458331371be5df15e3ca953697d2463ef] -Signed-off-by: Fabrice Fontaine ---- - libteeacl/src/group.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/libteeacl/src/group.c b/libteeacl/src/group.c -index 10965dd0..bd165a11 100644 ---- a/libteeacl/src/group.c -+++ b/libteeacl/src/group.c -@@ -72,7 +72,8 @@ enum rv_groupmember teeacl_user_is_member_of(const char *user, gid_t group) - if (ret == -1) { - p_groups = groups; - -- groups = reallocarray(groups, grouplistsize, sizeof(gid_t)); -+ /* we use realloc, since uClibc does not implement reallocarray */ -+ groups = realloc(groups, grouplistsize * sizeof(gid_t)); - if (!groups) { - free(p_groups); - return E_MEMORY; diff --git a/package/optee-client/Config.in b/package/optee-client/Config.in index 538948b72c16..4061164cbb0b 100644 --- a/package/optee-client/Config.in +++ b/package/optee-client/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_OPTEE_CLIENT bool "optee-client" depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 # MMC_IOC_MULTI_CMD + depends on BR2_USE_MMU # fork() help Enable the OP-TEE client package that brings non-secure client application resources for OP-TEE support. OP-TEE @@ -48,5 +49,6 @@ config BR2_PACKAGE_OPTEE_CLIENT_TEEACL endif comment "optee-client needs a toolchain w/ threads, headers >= 4.3" + depends on BR2_USE_MMU depends on !BR2_TOOLCHAIN_HAS_THREADS || \ !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 diff --git a/package/optee-client/optee-client.hash b/package/optee-client/optee-client.hash index c067e26f4e62..bb97820ab117 100644 --- a/package/optee-client/optee-client.hash +++ b/package/optee-client/optee-client.hash @@ -1,4 +1,4 @@ -# From https://github.com/OP-TEE/optee_client/archive/3.19.0/optee-client-3.19.0.tar.gz -sha256 5f0d02efa0e496964e86ca9dd2461ada923d1f9e11a4b9cafb5393bd08337644 optee-client-3.19.0.tar.gz +# From https://github.com/OP-TEE/optee_client/archive/4.0.0/optee-client-4.0.0.tar.gz +sha256 bcdac9c3a9f2e93c64d114667cc6d1feddf9f978992cdc2d59745885f9bd8fbe optee-client-4.0.0.tar.gz # Locally computed sha256 fda8385993f112d7ca61b88b54ba5b4cbeec7e43a0f9b317d5186703c1985e8f LICENSE diff --git a/package/optee-client/optee-client.mk b/package/optee-client/optee-client.mk index ef113c838f02..99c922a17153 100644 --- a/package/optee-client/optee-client.mk +++ b/package/optee-client/optee-client.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPTEE_CLIENT_VERSION = 3.19.0 +OPTEE_CLIENT_VERSION = 4.0.0 OPTEE_CLIENT_SITE = $(call github,OP-TEE,optee_client,$(OPTEE_CLIENT_VERSION)) OPTEE_CLIENT_LICENSE = BSD-2-Clause OPTEE_CLIENT_LICENSE_FILES = LICENSE diff --git a/package/optee-examples/Config.in b/package/optee-examples/Config.in index 843981a45875..eb6ee1650258 100644 --- a/package/optee-examples/Config.in +++ b/package/optee-examples/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_OPTEE_EXAMPLES depends on BR2_TOOLCHAIN_HAS_THREADS # optee-client depends on !BR2_STATIC_LIBS # optee-client depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 # optee-client + depends on BR2_USE_MMU # optee-client select BR2_PACKAGE_OPTEE_CLIENT select BR2_TARGET_OPTEE_OS_SDK help @@ -22,5 +23,6 @@ config BR2_PACKAGE_OPTEE_EXAMPLES comment "optee-examples needs a toolchain w/ threads, dynamic library, headers >= 4.3" depends on BR2_TARGET_OPTEE_OS + depends on BR2_USE_MMU depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \ !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 diff --git a/package/optee-examples/optee-examples.hash b/package/optee-examples/optee-examples.hash index 937dd44c8cb5..71cd95605d72 100644 --- a/package/optee-examples/optee-examples.hash +++ b/package/optee-examples/optee-examples.hash @@ -1,4 +1,4 @@ -# From https://github.com/linaro-swg/optee_examples/archive/3.19.0/optee-examples-3.19.0.tar.gz -sha256 545f9438885220e890a4f785249a586a957b22dacc31a3cbafa4656f8e9db349 optee-examples-3.19.0.tar.gz +# From https://github.com/linaro-swg/optee_examples/archive/4.0.0/optee-examples-4.0.0.tar.gz +sha256 4e21455c889ffb93085eb76f76ce191e24f394b3fa8f1d2429cad38a36e4f6e5 optee-examples-4.0.0.tar.gz # Locally computed sha256 6f1ef8449cb82ae79d2155605f7985bdf0f08e7ab5007de9b4362e8bf28733b9 LICENSE diff --git a/package/optee-examples/optee-examples.mk b/package/optee-examples/optee-examples.mk index bb2b208583e8..d620f0e36a37 100644 --- a/package/optee-examples/optee-examples.mk +++ b/package/optee-examples/optee-examples.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPTEE_EXAMPLES_VERSION = 3.19.0 +OPTEE_EXAMPLES_VERSION = 4.0.0 OPTEE_EXAMPLES_SITE = $(call github,linaro-swg,optee_examples,$(OPTEE_EXAMPLES_VERSION)) OPTEE_EXAMPLES_LICENSE = BSD-2-Clause OPTEE_EXAMPLES_LICENSE_FILES = LICENSE diff --git a/package/optee-test/Config.in b/package/optee-test/Config.in index cf36d19fab0f..57a7834c753a 100644 --- a/package/optee-test/Config.in +++ b/package/optee-test/Config.in @@ -5,6 +5,7 @@ config BR2_PACKAGE_OPTEE_TEST depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_STATIC_LIBS # optee-client depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 # optee-client + depends on BR2_USE_MMU # optee-client select BR2_PACKAGE_OPTEE_CLIENT select BR2_TARGET_OPTEE_OS_SDK help @@ -27,5 +28,6 @@ config BR2_PACKAGE_OPTEE_TEST comment "optee-test needs a toolchain w/ threads, C++, dynamic library, headers >= 4.3" depends on BR2_TARGET_OPTEE_OS + depends on BR2_USE_MMU depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \ BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 diff --git a/package/optee-test/optee-test.hash b/package/optee-test/optee-test.hash index 4da3807bb53f..9744ab6d92c1 100644 --- a/package/optee-test/optee-test.hash +++ b/package/optee-test/optee-test.hash @@ -1,4 +1,4 @@ -# From https://github.com/OP-TEE/optee_test/archive/3.19.0/optee-test-3.19.0.tar.gz -sha256 9435901e9329a25ef4de3904e27d80377b8bb4dd6b215e8fb29d66a7b76afa11 optee-test-3.19.0.tar.gz +# From https://github.com/OP-TEE/optee_test/archive/4.0.0/optee-test-4.0.0.tar.gz +sha256 dc37b90c98db54068e61b31e20378878e2cfdf3c71f90c8a635786164651c62f optee-test-4.0.0.tar.gz # Locally computed sha256 6e6810981f0ddab9e0d44399d0700a15d9f760a3c2843cc866659c2074139ae7 LICENSE.md diff --git a/package/optee-test/optee-test.mk b/package/optee-test/optee-test.mk index 7b065b6123e5..44d3015ae19a 100644 --- a/package/optee-test/optee-test.mk +++ b/package/optee-test/optee-test.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPTEE_TEST_VERSION = 3.19.0 +OPTEE_TEST_VERSION = 4.0.0 OPTEE_TEST_SITE = $(call github,OP-TEE,optee_test,$(OPTEE_TEST_VERSION)) OPTEE_TEST_LICENSE = GPL-2.0, BSD-2-Clause, OPTEE_TEST_LICENSE_FILES = LICENSE.md diff --git a/package/opus/opus.hash b/package/opus/opus.hash index 2365e47c7d91..7569ee08d1fc 100644 --- a/package/opus/opus.hash +++ b/package/opus/opus.hash @@ -1,5 +1,5 @@ # From http://downloads.xiph.org/releases/opus/SHA256SUMS.txt -sha256 65b58e1e25b2a114157014736a3d9dfeaad8d41be1c8179866f144a2fb44ff9d opus-1.3.1.tar.gz +sha256 c9b32b4253be5ae63d1ff16eea06b94b5f0f2951b7a02aceef58e3a3ce49c51f opus-1.4.tar.gz # Hash for license file sha256 8338ce8d922bb4416ce3dd1e5680173332435e3f0755007ac7801ccd674fe682 COPYING diff --git a/package/opus/opus.mk b/package/opus/opus.mk index d8e0623e153a..15531b521af8 100644 --- a/package/opus/opus.mk +++ b/package/opus/opus.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPUS_VERSION = 1.3.1 +OPUS_VERSION = 1.4 OPUS_SITE = https://downloads.xiph.org/releases/opus OPUS_LICENSE = BSD-3-Clause OPUS_LICENSE_FILES = COPYING diff --git a/package/opusfile/opusfile.mk b/package/opusfile/opusfile.mk index 63553a81e737..efd38c542c9f 100644 --- a/package/opusfile/opusfile.mk +++ b/package/opusfile/opusfile.mk @@ -9,6 +9,7 @@ OPUSFILE_SITE = https://downloads.xiph.org/releases/opus OPUSFILE_DEPENDENCIES = host-pkgconf libogg opus OPUSFILE_LICENSE = BSD-3-Clause OPUSFILE_LICENSE_FILES = COPYING +OPUSFILE_CPE_ID_VENDOR = xiph OPUSFILE_INSTALL_STAGING = YES # 0001-Propagate-allocation-failure-from-ogg_sync_buffer.patch diff --git a/package/osm2pgsql/Config.in b/package/osm2pgsql/Config.in index e903e92c49e7..c6a38f318065 100644 --- a/package/osm2pgsql/Config.in +++ b/package/osm2pgsql/Config.in @@ -11,6 +11,7 @@ config BR2_PACKAGE_OSM2PGSQL select BR2_PACKAGE_BOOST_FILESYSTEM select BR2_PACKAGE_BZIP2 select BR2_PACKAGE_EXPAT + select BR2_PACKAGE_JSON_FOR_MODERN_CPP select BR2_PACKAGE_LIBOSMIUM select BR2_PACKAGE_PROTOZERO select BR2_PACKAGE_ZLIB @@ -22,7 +23,7 @@ config BR2_PACKAGE_OSM2PGSQL https://osm2pgsql.org -comment "osm2pgsql needs a toolchain w/ C++, wchar, threads, gcc >= 4.9" +comment "osm2pgsql needs a toolchain w/ C++, wchar, threads, gcc >= 4.9" depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/osm2pgsql/osm2pgsql.hash b/package/osm2pgsql/osm2pgsql.hash index b5b76c15c684..0b4eb17c99a3 100644 --- a/package/osm2pgsql/osm2pgsql.hash +++ b/package/osm2pgsql/osm2pgsql.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 b266b50f46fe4d1caddab61d26b39f10ea33b896ec23b8b3e294be4666e7b927 osm2pgsql-1.8.0.tar.gz +sha256 dc30a3ad9a27f944e4169be9a8e07ee09711901536ddc8fcf4a292bd3aec51d9 osm2pgsql-1.9.2.tar.gz sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/osm2pgsql/osm2pgsql.mk b/package/osm2pgsql/osm2pgsql.mk index 9cdfb44ce08d..44c980ac9552 100644 --- a/package/osm2pgsql/osm2pgsql.mk +++ b/package/osm2pgsql/osm2pgsql.mk @@ -4,13 +4,13 @@ # ################################################################################ -OSM2PGSQL_VERSION = 1.8.0 +OSM2PGSQL_VERSION = 1.9.2 OSM2PGSQL_SITE = $(call github,openstreetmap,osm2pgsql,$(OSM2PGSQL_VERSION)) OSM2PGSQL_LICENSE = GPL-2.0+ OSM2PGSQL_LICENSE_FILES = COPYING OSM2PGSQL_SUPPORTS_IN_SOURCE_BUILD = NO -OSM2PGSQL_DEPENDENCIES = boost bzip2 expat libosmium postgresql protozero zlib +OSM2PGSQL_DEPENDENCIES = boost bzip2 expat json-for-modern-cpp libosmium postgresql protozero zlib # fmt > 8.0 is not yet supported OSM2PGSQL_CONF_OPTS = \ diff --git a/package/paho-mqtt-c/paho-mqtt-c.hash b/package/paho-mqtt-c/paho-mqtt-c.hash index 529c538ff258..d359edf36e9b 100644 --- a/package/paho-mqtt-c/paho-mqtt-c.hash +++ b/package/paho-mqtt-c/paho-mqtt-c.hash @@ -1,5 +1,5 @@ # Locally computed: -sha256 6a70a664ed3bbcc1eafdc45a5dc11f3ad70c9bac12a54c2f8cef15c0e7d0a93b paho-mqtt-c-1.3.12.tar.gz +sha256 47c77e95609812da82feee30db435c3b7c720d4fd3147d466ead126e657b6d9c paho-mqtt-c-1.3.13.tar.gz sha256 83bbba033dc985487e321b6dfde111772affb73460be48726299fed3da684b1c edl-v10 sha256 0becf16567beb77fa252b7664631dd177c8f9a1889e48995b45379c7130e5303 epl-v20 sha256 bc0f3f447097eb82a29ad6c2f4929572bb548b6bd4c9e38fde1bf131a771b7a0 LICENSE diff --git a/package/paho-mqtt-c/paho-mqtt-c.mk b/package/paho-mqtt-c/paho-mqtt-c.mk index 8d1fe009a751..ec4e96c77ff9 100644 --- a/package/paho-mqtt-c/paho-mqtt-c.mk +++ b/package/paho-mqtt-c/paho-mqtt-c.mk @@ -4,7 +4,7 @@ # ################################################################################ -PAHO_MQTT_C_VERSION = 1.3.12 +PAHO_MQTT_C_VERSION = 1.3.13 PAHO_MQTT_C_SITE = $(call github,eclipse,paho.mqtt.c,v$(PAHO_MQTT_C_VERSION)) PAHO_MQTT_C_LICENSE = EPL-2.0 or BSD-3-Clause PAHO_MQTT_C_LICENSE_FILES = epl-v20 edl-v10 LICENSE diff --git a/package/pahole/pahole.hash b/package/pahole/pahole.hash index 5610b252a3ec..9dc676d9f4d8 100644 --- a/package/pahole/pahole.hash +++ b/package/pahole/pahole.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 eeb88a62c3aaa1f4c389117b7e7cc08a49acc8a0e7f165f76dd9c5ab9af2c266 pahole-1.24.tar.gz +sha256 db31d13c3dad8d9f4e38296bd35c4586e98b9c950e07dabba212985e6d051631 pahole-1.25.tar.gz sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/pahole/pahole.mk b/package/pahole/pahole.mk index 82bba2f7771a..1a3e156ebbb1 100644 --- a/package/pahole/pahole.mk +++ b/package/pahole/pahole.mk @@ -4,7 +4,7 @@ # ################################################################################ -PAHOLE_VERSION = 1.24 +PAHOLE_VERSION = 1.25 PAHOLE_SITE = https://git.kernel.org/pub/scm/devel/pahole/pahole.git/snapshot HOST_PAHOLE_DEPENDENCIES = \ host-elfutils \ diff --git a/package/pango/0001-Drop-Werror-array-bounds.patch b/package/pango/0001-Drop-Werror-array-bounds.patch new file mode 100644 index 000000000000..45821e85335c --- /dev/null +++ b/package/pango/0001-Drop-Werror-array-bounds.patch @@ -0,0 +1,40 @@ +From e93dbd66973040f1e0afcba0dc7c712c27d75d59 Mon Sep 17 00:00:00 2001 +From: Matthias Clasen +Date: Mon, 1 May 2023 23:27:52 -0400 +Subject: [PATCH] Drop -Werror=array-bounds + +gcc has strange issues with this and produces false +positives that recently started breaking the build of +pango as a subproject in gtk. + +See e.g. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105523 + +Upstream: https://gitlab.gnome.org/GNOME/pango/-/commit/e93dbd66973040f1e0afcba0dc7c712c27d75d59 +Signed-off-by: Fabrice Fontaine +--- + meson.build | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/meson.build b/meson.build +index 930f41082..2d30c0141 100644 +--- a/meson.build ++++ b/meson.build +@@ -89,7 +89,6 @@ elif cc.get_id() == 'gcc' or cc.get_id() == 'clang' + '-Wuninitialized', + '-Wunused', + '-Werror=address', +- '-Werror=array-bounds', + '-Werror=empty-body', + '-Werror=implicit', + '-Werror=implicit-fallthrough', +@@ -132,7 +131,6 @@ elif cc.get_id() == 'gcc' or cc.get_id() == 'clang' + '-Werror=sequence-point', + '-Werror=return-type', + '-Werror=trigraphs', +- '-Werror=array-bounds', + '-Werror=write-strings', + '-Werror=address', + '-Werror=int-to-pointer-cast', +-- +GitLab + diff --git a/package/pango/pango.hash b/package/pango/pango.hash index 1dbc5c9197fb..3e609e6e0483 100644 --- a/package/pango/pango.hash +++ b/package/pango/pango.hash @@ -1,5 +1,5 @@ -# From https://download.gnome.org/sources/pango/1.50/pango-1.50.12.sha256sum -sha256 caef96d27bbe792a6be92727c73468d832b13da57c8071ef79b9df69ee058fe3 pango-1.50.12.tar.xz +# From https://download.gnome.org/sources/pango/1.50/pango-1.50.14.sha256sum +sha256 1d67f205bfc318c27a29cfdfb6828568df566795df0cb51d2189cde7f2d581e8 pango-1.50.14.tar.xz # Locally computed sha256 d245807f90032872d1438d741ed21e2490e1175dc8aa3afa5ddb6c8e529b58e5 COPYING diff --git a/package/pango/pango.mk b/package/pango/pango.mk index f19faf05021e..723e6d22889d 100644 --- a/package/pango/pango.mk +++ b/package/pango/pango.mk @@ -5,7 +5,7 @@ ################################################################################ PANGO_VERSION_MAJOR = 1.50 -PANGO_VERSION = $(PANGO_VERSION_MAJOR).12 +PANGO_VERSION = $(PANGO_VERSION_MAJOR).14 PANGO_SOURCE = pango-$(PANGO_VERSION).tar.xz PANGO_SITE = https://download.gnome.org/sources/pango/$(PANGO_VERSION_MAJOR) PANGO_INSTALL_STAGING = YES diff --git a/package/pangomm/pangomm.hash b/package/pangomm/pangomm.hash index 0fb40e6568f3..dc606c5de960 100644 --- a/package/pangomm/pangomm.hash +++ b/package/pangomm/pangomm.hash @@ -1,5 +1,5 @@ -# From https://download.gnome.org/sources/pangomm/2.48/pangomm-2.48.2.sha256sum -sha256 e1d75522c53f462799875cd247f9b49c91ced4b1abe68387ac35b271392d4ea5 pangomm-2.48.2.tar.xz +# From https://download.gnome.org/sources/pangomm/2.50/pangomm-2.50.1.sha256sum +sha256 ccc9923413e408c2bff637df663248327d72822f11e394b423e1c5652b7d9214 pangomm-2.50.1.tar.xz # Locally computed sha256 5bbcbb737e60fe9deba08ecbd00920cfcc3403ba2e534c64fdeea49d6bb87509 COPYING sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING.tools diff --git a/package/pangomm/pangomm.mk b/package/pangomm/pangomm.mk index e5b237197bb0..64ac625b7ffa 100644 --- a/package/pangomm/pangomm.mk +++ b/package/pangomm/pangomm.mk @@ -4,8 +4,8 @@ # ################################################################################ -PANGOMM_VERSION_MAJOR = 2.48 -PANGOMM_VERSION = $(PANGOMM_VERSION_MAJOR).2 +PANGOMM_VERSION_MAJOR = 2.50 +PANGOMM_VERSION = $(PANGOMM_VERSION_MAJOR).1 PANGOMM_SOURCE = pangomm-$(PANGOMM_VERSION).tar.xz PANGOMM_SITE = https://download.gnome.org/sources/pangomm/$(PANGOMM_VERSION_MAJOR) PANGOMM_LICENSE = LGPL-2.1+ (library), GPL-2.0+ (tools) diff --git a/package/parted/parted.hash b/package/parted/parted.hash index 8a167d9bb8f5..6643ba9fbe34 100644 --- a/package/parted/parted.hash +++ b/package/parted/parted.hash @@ -1,5 +1,5 @@ # Locally calculated after checking pgp signature -sha256 4938dd5c1c125f6c78b1f4b3e297526f18ee74aa43d45c248578b1d2470c05a2 parted-3.5.tar.xz +sha256 3b43dbe33cca0f9a18601ebab56b7852b128ec1a3df3a9b30ccde5e73359e612 parted-3.6.tar.xz # Locally calculated sha256 0abbff814cd00e2b0b6d08395af2b419c1a92026c4b4adacbb65ccda45fa58cf COPYING diff --git a/package/parted/parted.mk b/package/parted/parted.mk index 6d4626e2e678..bfd9ef34322e 100644 --- a/package/parted/parted.mk +++ b/package/parted/parted.mk @@ -4,7 +4,7 @@ # ################################################################################ -PARTED_VERSION = 3.5 +PARTED_VERSION = 3.6 PARTED_SOURCE = parted-$(PARTED_VERSION).tar.xz PARTED_SITE = $(BR2_GNU_MIRROR)/parted PARTED_DEPENDENCIES = host-pkgconf util-linux diff --git a/package/pciutils/0001-Workaround-build-failure-with-older-binutils.patch b/package/pciutils/0001-Workaround-build-failure-with-older-binutils.patch deleted file mode 100644 index 1590bc19c56f..000000000000 --- a/package/pciutils/0001-Workaround-build-failure-with-older-binutils.patch +++ /dev/null @@ -1,57 +0,0 @@ -From fda20d4bcb91f0f9d0db294b4813264de2d88866 Mon Sep 17 00:00:00 2001 -From: Baruch Siach -Date: Thu, 12 May 2022 16:16:21 +0300 -Subject: [PATCH] Workaround build failure with older binutils - -binutils releases older than 2.35 are affected by bug gas/23840[1] that -breaks the link of shared library: - -cc -O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -fPIC -fvisibility=hidden -c -o filter.o filter.c -/tmp/ccLtucRG.s: Assembler messages: -/tmp/ccLtucRG.s:6: Error: multiple versions [`pci_filter_init@@LIBPCI_3.8'|`pci_filter_init@LIBPCI_3.3'] for symbol `pci_filter_init_v38' -/tmp/ccLtucRG.s:8: Error: multiple versions [`pci_filter_parse_slot@@LIBPCI_3.8'|`pci_filter_parse_slot@LIBPCI_3.3'] for symbol `pci_filter_parse_slot_v38' -/tmp/ccLtucRG.s:10: Error: multiple versions [`pci_filter_parse_id@@LIBPCI_3.8'|`pci_filter_parse_id@LIBPCI_3.3'] for symbol `pci_filter_parse_id_v38' -/tmp/ccLtucRG.s:12: Error: multiple versions [`pci_filter_match@@LIBPCI_3.8'|`pci_filter_match@LIBPCI_3.3'] for symbol `pci_filter_match_v38' - -The symbol versioning feature has little value in the context of -Buildroot. As a workaround remove one of each duplicated symbol. - -[1] https://sourceware.org/bugzilla/show_bug.cgi?id=23840 - -Signed-off-by: Baruch Siach ---- -Upstream status: not upstreamable - -Upstream bug report: https://lore.kernel.org/linux-pci/87mtfm7v58.fsf@tarshish/ ---- - lib/filter.c | 4 ---- - 1 file changed, 4 deletions(-) - -diff --git a/lib/filter.c b/lib/filter.c -index b881b6bc9083..bc34e8c2bab9 100644 ---- a/lib/filter.c -+++ b/lib/filter.c -@@ -304,20 +304,16 @@ pci_filter_match_v30(struct pci_filter_v30 *f, struct pci_dev *d) - - STATIC_ALIAS(void pci_filter_init(struct pci_access *a, struct pci_filter *f), pci_filter_init_v38(a, f)); - SYMBOL_VERSION(pci_filter_init_v30, pci_filter_init@LIBPCI_3.0); --SYMBOL_VERSION(pci_filter_init_v38, pci_filter_init@LIBPCI_3.3); - SYMBOL_VERSION(pci_filter_init_v38, pci_filter_init@@LIBPCI_3.8); - - STATIC_ALIAS(char *pci_filter_parse_slot(struct pci_filter *f, char *str), pci_filter_parse_slot_v38(f, str)); - SYMBOL_VERSION(pci_filter_parse_slot_v30, pci_filter_parse_slot@LIBPCI_3.0); --SYMBOL_VERSION(pci_filter_parse_slot_v38, pci_filter_parse_slot@LIBPCI_3.3); - SYMBOL_VERSION(pci_filter_parse_slot_v38, pci_filter_parse_slot@@LIBPCI_3.8); - - STATIC_ALIAS(char *pci_filter_parse_id(struct pci_filter *f, char *str), pci_filter_parse_id_v38(f, str)); - SYMBOL_VERSION(pci_filter_parse_id_v30, pci_filter_parse_id@LIBPCI_3.0); --SYMBOL_VERSION(pci_filter_parse_id_v38, pci_filter_parse_id@LIBPCI_3.3); - SYMBOL_VERSION(pci_filter_parse_id_v38, pci_filter_parse_id@@LIBPCI_3.8); - - STATIC_ALIAS(int pci_filter_match(struct pci_filter *f, struct pci_dev *d), pci_filter_match_v38(f, d)); - SYMBOL_VERSION(pci_filter_match_v30, pci_filter_match@LIBPCI_3.0); --SYMBOL_VERSION(pci_filter_match_v38, pci_filter_match@LIBPCI_3.3); - SYMBOL_VERSION(pci_filter_match_v38, pci_filter_match@@LIBPCI_3.8); --- -2.35.1 - diff --git a/package/pciutils/Config.in b/package/pciutils/Config.in index a082f239977d..d16c36340f44 100644 --- a/package/pciutils/Config.in +++ b/package/pciutils/Config.in @@ -4,4 +4,4 @@ config BR2_PACKAGE_PCIUTILS Various utilities dealing with the PCI bus. Provides things like setpci and lspci. - http://atrey.karlin.mff.cuni.cz/~mj/pciutils.html + https://mj.ucw.cz/sw/pciutils/ diff --git a/package/pciutils/pciutils.hash b/package/pciutils/pciutils.hash index 0b66b825891e..2ac28d327b58 100644 --- a/package/pciutils/pciutils.hash +++ b/package/pciutils/pciutils.hash @@ -1,3 +1,3 @@ # From https://www.kernel.org/pub/software/utils/pciutils/sha256sums.asc -sha256 91edbd0429a84705c9ad156d4ff38ccc724d41ea54c4c5b88e38e996f8a34f05 pciutils-3.8.0.tar.xz +sha256 238a2e27166730e53a17fe07bfad229e07fa39b618117e5944b6d7eda9fbb0e9 pciutils-3.10.0.tar.xz sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/pciutils/pciutils.mk b/package/pciutils/pciutils.mk index 140276dbc47e..a6708ce94b94 100644 --- a/package/pciutils/pciutils.mk +++ b/package/pciutils/pciutils.mk @@ -4,7 +4,7 @@ # ################################################################################ -PCIUTILS_VERSION = 3.8.0 +PCIUTILS_VERSION = 3.10.0 PCIUTILS_SITE = $(BR2_KERNEL_MIRROR)/software/utils/pciutils PCIUTILS_SOURCE = pciutils-$(PCIUTILS_VERSION).tar.xz PCIUTILS_INSTALL_STAGING = YES diff --git a/package/pcm-tools/pcm-tools.hash b/package/pcm-tools/pcm-tools.hash index 1853dcebb574..cfa3faeff7bb 100644 --- a/package/pcm-tools/pcm-tools.hash +++ b/package/pcm-tools/pcm-tools.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 aa48ab1473720aeb7837b67bfc612100f484748720a8b8034daff00419709057 pcm-tools-202110.tar.gz +sha256 29416f83d1de95594d225f63af34f8f074ee4822010ce2e05b1fabc66933472a pcm-tools-93fc9193a70e2f1f054be554c48f4a4791be5032-br1.tar.gz sha256 0f476c77009f982dcc4bdff41e692ddd456a9862908e99f2ae3d57296decc649 LICENSE diff --git a/package/pcm-tools/pcm-tools.mk b/package/pcm-tools/pcm-tools.mk index d676df57f9ac..c53049269644 100644 --- a/package/pcm-tools/pcm-tools.mk +++ b/package/pcm-tools/pcm-tools.mk @@ -4,8 +4,12 @@ # ################################################################################ -PCM_TOOLS_VERSION = 202110 -PCM_TOOLS_SITE = $(call github,opcm,pcm,$(PCM_TOOLS_VERSION)) +# Don't use the github helper, as pcm-tools uses git attributes that are +# replaced when gnerating the archive. +# 93fc9193a70e2f1f054be554c48f4a4791be5032 is the hash of the 202110 tag. +PCM_TOOLS_VERSION = 93fc9193a70e2f1f054be554c48f4a4791be5032 +PCM_TOOLS_SITE = https://github.com/opcm/pcm +PCM_TOOLS_SITE_METHOD = git PCM_TOOLS_LICENSE = BSD-3-Clause PCM_TOOLS_LICENSE_FILES = LICENSE @@ -13,6 +17,14 @@ PCM_TOOLS_EXE_FILES = \ pcm-core pcm-iio pcm-lspci pcm-memory pcm-msr pcm-numa \ pcm-pcicfg pcm-pcie pcm-power pcm-sensor pcm-tsx pcm +# version.h contains git attributes; replace them with the previously-known +# value. +define PCM_TOOLS_FIXUP_VERSION_H + $(SED) 's/\$$Format:%ci ID=%h\$$/2021-10-25 16:07:54 +0200 ID=93fc9193/' \ + $(@D)/version.h +endef +PCM_TOOLS_POST_EXTRACT_HOOKS += PCM_TOOLS_FIXUP_VERSION_H + define PCM_TOOLS_BUILD_CMDS touch $(@D)/daemon-binaries $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) \ diff --git a/package/pcre2/pcre2.mk b/package/pcre2/pcre2.mk index aba378cab6b5..c35056f8a263 100644 --- a/package/pcre2/pcre2.mk +++ b/package/pcre2/pcre2.mk @@ -5,7 +5,7 @@ ################################################################################ PCRE2_VERSION = 10.42 -PCRE2_SITE = https://github.com/PhilipHazel/pcre2/releases/download/pcre2-$(PCRE2_VERSION) +PCRE2_SITE = https://github.com/PCRE2Project/pcre2/releases/download/pcre2-$(PCRE2_VERSION) PCRE2_SOURCE = pcre2-$(PCRE2_VERSION).tar.bz2 PCRE2_LICENSE = BSD-3-Clause PCRE2_LICENSE_FILES = LICENCE diff --git a/package/pcsc-lite/pcsc-lite.hash b/package/pcsc-lite/pcsc-lite.hash index 4326822e41fd..e0face9ddb2d 100644 --- a/package/pcsc-lite/pcsc-lite.hash +++ b/package/pcsc-lite/pcsc-lite.hash @@ -1,4 +1,4 @@ # Locally calculated -sha256 cbcc3b34c61f53291cecc0d831423c94d437b188eb2b97b7febc08de1c914e8a pcsc-lite-1.9.9.tar.bz2 +sha256 d6c3e2b64510e5ed6fcd3323febf2cc2a8e5fda5a6588c7671f2d77f9f189356 pcsc-lite-2.0.0.tar.bz2 sha256 40d4358bb8dc8d30f5365ae6d999b6f820bbc051b292912482f2e4d0ebd837e1 COPYING sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 GPL-3.0.txt diff --git a/package/pcsc-lite/pcsc-lite.mk b/package/pcsc-lite/pcsc-lite.mk index 0b92380ccb0d..2b2114835edc 100644 --- a/package/pcsc-lite/pcsc-lite.mk +++ b/package/pcsc-lite/pcsc-lite.mk @@ -4,7 +4,7 @@ # ################################################################################ -PCSC_LITE_VERSION = 1.9.9 +PCSC_LITE_VERSION = 2.0.0 PCSC_LITE_SOURCE = pcsc-lite-$(PCSC_LITE_VERSION).tar.bz2 PCSC_LITE_SITE = https://pcsclite.apdu.fr/files PCSC_LITE_INSTALL_STAGING = YES diff --git a/package/perftest/Config.in b/package/perftest/Config.in index 25cd1a9b8d59..6d291b0f7215 100644 --- a/package/perftest/Config.in +++ b/package/perftest/Config.in @@ -20,7 +20,8 @@ config BR2_PACKAGE_PERFTEST_ARCH_SUPPORTS config BR2_PACKAGE_PERFTEST bool "perftest" depends on BR2_PACKAGE_PERFTEST_ARCH_SUPPORTS - depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 # rdma-core + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # rdma-core depends on !BR2_STATIC_LIBS # rdma-core # musl does not define sysconf(_SC_LEVEL1_DCACHE_LINESIZE) depends on !BR2_TOOLCHAIN_USES_MUSL diff --git a/package/perftest/perftest.hash b/package/perftest/perftest.hash index 4333231c44fc..e771d4f46345 100644 --- a/package/perftest/perftest.hash +++ b/package/perftest/perftest.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 32e667dac1c0dd41a3951c5a54b961a8e28db5d9478caea2dfc268a312968c99 perftest-4.5-0.20.tar.gz +sha256 c5b437734b7f9d31dac0b044cd8510b5580eb932080871b470aeae7309884d3b perftest-23.07.0-0.27.tar.gz sha256 763adb7d5094f2127b026adea8701f042d28d4b1f6fb8b6e828989227a9cf7f5 COPYING diff --git a/package/perftest/perftest.mk b/package/perftest/perftest.mk index 7ad20d0974bb..d3259face547 100644 --- a/package/perftest/perftest.mk +++ b/package/perftest/perftest.mk @@ -4,8 +4,8 @@ # ################################################################################ -PERFTEST_VERSION = 4.5-0.20 -PERFTEST_SITE = $(call github,linux-rdma,perftest,v$(PERFTEST_VERSION)) +PERFTEST_VERSION = 23.07.0-0.27 +PERFTEST_SITE = $(call github,linux-rdma,perftest,$(PERFTEST_VERSION)) PERFTEST_LICENSE = GPL-2.0 or BSD-2-Clause PERFTEST_LICENSE_FILES = COPYING PERFTEST_DEPENDENCIES = pciutils rdma-core diff --git a/package/perl-class-method-modifiers/perl-class-method-modifiers.hash b/package/perl-class-method-modifiers/perl-class-method-modifiers.hash index ee0f5ec32c46..e3e88140bcfa 100644 --- a/package/perl-class-method-modifiers/perl-class-method-modifiers.hash +++ b/package/perl-class-method-modifiers/perl-class-method-modifiers.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 b1398e3682aa2e075b913b9f9000b596 Class-Method-Modifiers-2.13.tar.gz -sha256 ab5807f71018a842de6b7a4826d6c1f24b8d5b09fcce5005a3309cf6ea40fd63 Class-Method-Modifiers-2.13.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 1aea89d0f23c3537580cae549b5c5864 Class-Method-Modifiers-2.15.tar.gz +sha256 65cd85bfe475d066e9186f7a8cc636070985b30b0ebb1cde8681cf062c2e15fc Class-Method-Modifiers-2.15.tar.gz # computed by scancpan -sha256 d17e5cba8d4039f6973d5873f73b0c8949c1cffb338fafe7a57e972767546561 LICENSE +sha256 3a4d15d78daa7fbb8b9f90da1b8cb60a6cd5275c6a5fdb0fca5db2e74b522dee LICENSE diff --git a/package/perl-class-method-modifiers/perl-class-method-modifiers.mk b/package/perl-class-method-modifiers/perl-class-method-modifiers.mk index ef688acf7e39..d4a7f11b85b4 100644 --- a/package/perl-class-method-modifiers/perl-class-method-modifiers.mk +++ b/package/perl-class-method-modifiers/perl-class-method-modifiers.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_CLASS_METHOD_MODIFIERS_VERSION = 2.13 +PERL_CLASS_METHOD_MODIFIERS_VERSION = 2.15 PERL_CLASS_METHOD_MODIFIERS_SOURCE = Class-Method-Modifiers-$(PERL_CLASS_METHOD_MODIFIERS_VERSION).tar.gz PERL_CLASS_METHOD_MODIFIERS_SITE = $(BR2_CPAN_MIRROR)/authors/id/E/ET/ETHER PERL_CLASS_METHOD_MODIFIERS_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-clone/Config.in b/package/perl-clone/Config.in new file mode 100644 index 000000000000..78f13dfe6b08 --- /dev/null +++ b/package/perl-clone/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_PERL_CLONE + bool "perl-clone" + depends on !BR2_STATIC_LIBS + help + recursively copy Perl datatypes. + + https://metacpan.org/release/Clone + +comment "perl-clone needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/perl-clone/perl-clone.hash b/package/perl-clone/perl-clone.hash new file mode 100644 index 000000000000..7b69b97d0655 --- /dev/null +++ b/package/perl-clone/perl-clone.hash @@ -0,0 +1,6 @@ +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 cafa8984a2c2e005e54b27dd1e3f0afe Clone-0.46.tar.gz +sha256 aadeed5e4c8bd6bbdf68c0dd0066cb513e16ab9e5b4382dc4a0aafd55890697b Clone-0.46.tar.gz + +# computed by scancpan +sha256 40aa7eb133e97b075024380640528760a54aefc344781741ed02539a375db5ac README.md diff --git a/package/perl-clone/perl-clone.mk b/package/perl-clone/perl-clone.mk new file mode 100644 index 000000000000..9e04329eabd9 --- /dev/null +++ b/package/perl-clone/perl-clone.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# perl-clone +# +################################################################################ + +PERL_CLONE_VERSION = 0.46 +PERL_CLONE_SOURCE = Clone-$(PERL_CLONE_VERSION).tar.gz +PERL_CLONE_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GARU +PERL_CLONE_LICENSE = Artistic or GPL-1.0+ +PERL_CLONE_LICENSE_FILES = README.md +PERL_CLONE_DISTNAME = Clone + +$(eval $(perl-package)) diff --git a/package/perl-convert-asn1/perl-convert-asn1.hash b/package/perl-convert-asn1/perl-convert-asn1.hash index 644517af5121..2d1b1faa3b8f 100644 --- a/package/perl-convert-asn1/perl-convert-asn1.hash +++ b/package/perl-convert-asn1/perl-convert-asn1.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 80425835020da77c48c05a40e25bbf7e Convert-ASN1-0.33.tar.gz -sha256 1fdf004520c79e3a244cf9688616293516c11793d746c761f367496eb3d06076 Convert-ASN1-0.33.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 cca63088fdd5c3665a2119ee29133f6a Convert-ASN1-0.34.tar.gz +sha256 a628d7c9d390568fb76359975fa03f626ce57f10dc17980e8e3587d7713e4ee7 Convert-ASN1-0.34.tar.gz # computed by scancpan -sha256 70884b19a3537bf179538c3b7d7896a56ade509dafe6b8d545c5999a9c05f8a9 LICENSE +sha256 aa8ae28898a3e164ed5273c3e4fd4bd45b42f7958f282318df06773340e2c9d4 LICENSE diff --git a/package/perl-convert-asn1/perl-convert-asn1.mk b/package/perl-convert-asn1/perl-convert-asn1.mk index affe775aca99..07f9b1d1bbb1 100644 --- a/package/perl-convert-asn1/perl-convert-asn1.mk +++ b/package/perl-convert-asn1/perl-convert-asn1.mk @@ -4,10 +4,10 @@ # ################################################################################ -PERL_CONVERT_ASN1_VERSION = 0.33 +PERL_CONVERT_ASN1_VERSION = 0.34 PERL_CONVERT_ASN1_SOURCE = Convert-ASN1-$(PERL_CONVERT_ASN1_VERSION).tar.gz PERL_CONVERT_ASN1_SITE = $(BR2_CPAN_MIRROR)/authors/id/T/TI/TIMLEGGE -PERL_CONVERT_ASN1_LICENSE = Artistic or GPL-1.0+ +PERL_CONVERT_ASN1_LICENSE = Artistic-1.0-Perl or GPL-1.0+ PERL_CONVERT_ASN1_LICENSE_FILES = LICENSE PERL_CONVERT_ASN1_DISTNAME = Convert-ASN1 diff --git a/package/perl-data-optlist/perl-data-optlist.hash b/package/perl-data-optlist/perl-data-optlist.hash index ccc05ae4d6d3..6d55d6388d4f 100644 --- a/package/perl-data-optlist/perl-data-optlist.hash +++ b/package/perl-data-optlist/perl-data-optlist.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 cda08370c4058ba56e40c2f21d94d233 Data-OptList-0.113.tar.gz -sha256 36aebc5817b7d4686b649434c2ee41f45c8bf97d4ca5a99f607cc40f695a4285 Data-OptList-0.113.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 d63ec5d446eff1aaa5ba92bc13a52b77 Data-OptList-0.114.tar.gz +sha256 9fd1093b917a21fb79ae1607db53d113b4e0ad8fe0ae776cb077a7e50044fdf3 Data-OptList-0.114.tar.gz # computed by scancpan sha256 712f3e40537810ba3046533fd71d877f69ab446d5e8e8a1135771804494b8b42 LICENSE diff --git a/package/perl-data-optlist/perl-data-optlist.mk b/package/perl-data-optlist/perl-data-optlist.mk index 1a9aa05cc99e..8c22cfe78836 100644 --- a/package/perl-data-optlist/perl-data-optlist.mk +++ b/package/perl-data-optlist/perl-data-optlist.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_DATA_OPTLIST_VERSION = 0.113 +PERL_DATA_OPTLIST_VERSION = 0.114 PERL_DATA_OPTLIST_SOURCE = Data-OptList-$(PERL_DATA_OPTLIST_VERSION).tar.gz PERL_DATA_OPTLIST_SITE = $(BR2_CPAN_MIRROR)/authors/id/R/RJ/RJBS PERL_DATA_OPTLIST_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-date-manip/perl-date-manip.hash b/package/perl-date-manip/perl-date-manip.hash index 9762e7bc6c23..72741e413d12 100644 --- a/package/perl-date-manip/perl-date-manip.hash +++ b/package/perl-date-manip/perl-date-manip.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 f9fe372c7abaf90e9da2ee7c3a4d32ff Date-Manip-6.89.tar.gz -sha256 5caaa9cd1e2b0a1b84124c373e02e89b17c89fdb8fc5bc5f75ac41d304a37617 Date-Manip-6.89.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 3ac4e55802837c396a30860492f33e67 Date-Manip-6.92.tar.gz +sha256 ab962bd39ca09ec6fcfe7e5a6912af71b0c1f6f03e4ed2bef6e4471c9d367a13 Date-Manip-6.92.tar.gz # computed by scancpan sha256 8ba2a138654f8b59b7e1e3ad0d4c81918b9148ff95078b172ccbb45fa241431d LICENSE diff --git a/package/perl-date-manip/perl-date-manip.mk b/package/perl-date-manip/perl-date-manip.mk index 6eab7790cfa1..8739caefd43b 100644 --- a/package/perl-date-manip/perl-date-manip.mk +++ b/package/perl-date-manip/perl-date-manip.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_DATE_MANIP_VERSION = 6.89 +PERL_DATE_MANIP_VERSION = 6.92 PERL_DATE_MANIP_SOURCE = Date-Manip-$(PERL_DATE_MANIP_VERSION).tar.gz PERL_DATE_MANIP_SITE = $(BR2_CPAN_MIRROR)/authors/id/S/SB/SBECK PERL_DATE_MANIP_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-exporter-tiny/Config.in b/package/perl-exporter-tiny/Config.in index 04839ac15c43..c3ac89ba28d7 100644 --- a/package/perl-exporter-tiny/Config.in +++ b/package/perl-exporter-tiny/Config.in @@ -4,4 +4,4 @@ config BR2_PACKAGE_PERL_EXPORTER_TINY an exporter with the features of Sub::Exporter but only core dependencies. - https://metacpan.org/release/Exporter-Tiny + https://exportertiny.github.io/ diff --git a/package/perl-exporter-tiny/perl-exporter-tiny.hash b/package/perl-exporter-tiny/perl-exporter-tiny.hash index 0ecdf78482b2..0e16f92b1e95 100644 --- a/package/perl-exporter-tiny/perl-exporter-tiny.hash +++ b/package/perl-exporter-tiny/perl-exporter-tiny.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 2d555e289eac6450052e8683c292cbf7 Exporter-Tiny-1.006000.tar.gz -sha256 d95479ff085699d6422f7fc8306db085e34b626438deb82ec82d41df2295f400 Exporter-Tiny-1.006000.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 0545ee8f4edcb9dc5a87b21ed25edd74 Exporter-Tiny-1.006002.tar.gz +sha256 6f295e2cbffb1dbc15bdb9dadc341671c1e0cd2bdf2d312b17526273c322638d Exporter-Tiny-1.006002.tar.gz # computed by scancpan -sha256 a4f85c6f4d6e8bdd37b7ab08013e3e3bee1fe8e910e20f8f54d5025ffe40f384 LICENSE +sha256 1a2929dacaef239beca27a85f7f97b793628dfb22f07fdfb406cb6f3f0d22a6b LICENSE diff --git a/package/perl-exporter-tiny/perl-exporter-tiny.mk b/package/perl-exporter-tiny/perl-exporter-tiny.mk index 489ee54e174f..715070623ed0 100644 --- a/package/perl-exporter-tiny/perl-exporter-tiny.mk +++ b/package/perl-exporter-tiny/perl-exporter-tiny.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_EXPORTER_TINY_VERSION = 1.006000 +PERL_EXPORTER_TINY_VERSION = 1.006002 PERL_EXPORTER_TINY_SOURCE = Exporter-Tiny-$(PERL_EXPORTER_TINY_VERSION).tar.gz PERL_EXPORTER_TINY_SITE = $(BR2_CPAN_MIRROR)/authors/id/T/TO/TOBYINK PERL_EXPORTER_TINY_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-file-listing/Config.in b/package/perl-file-listing/Config.in index acca98be22c2..4610618542a8 100644 --- a/package/perl-file-listing/Config.in +++ b/package/perl-file-listing/Config.in @@ -2,6 +2,6 @@ config BR2_PACKAGE_PERL_FILE_LISTING bool "perl-file-listing" select BR2_PACKAGE_PERL_HTTP_DATE # runtime help - parse directory listing. + Parse directory listing. https://metacpan.org/release/File-Listing diff --git a/package/perl-file-listing/perl-file-listing.hash b/package/perl-file-listing/perl-file-listing.hash index cb52c127cde4..bd2ca473ba75 100644 --- a/package/perl-file-listing/perl-file-listing.hash +++ b/package/perl-file-listing/perl-file-listing.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 8ba34641a6c5a2ec1b0bf7064f68c535 File-Listing-6.15.tar.gz -sha256 46c4fb9f9eb9635805e26b7ea55b54455e47302758a10ed2a0b92f392713770c File-Listing-6.15.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 d4fc8b0c86633d1fa5bf75323720eadc File-Listing-6.16.tar.gz +sha256 189b3a13fc0a1ba412b9d9ec5901e9e5e444cc746b9f0156d4399370d33655c6 File-Listing-6.16.tar.gz # computed by scancpan -sha256 287e6f0fdf2db790a24975b492cde64b210c16af7137f44373cbd03fcf844212 LICENSE +sha256 330a553de82a111970d17fdf302bfe4af055f61bfe83d1c5617d5c3f5525a226 LICENSE diff --git a/package/perl-file-listing/perl-file-listing.mk b/package/perl-file-listing/perl-file-listing.mk index c8584ffa8acb..583de605a460 100644 --- a/package/perl-file-listing/perl-file-listing.mk +++ b/package/perl-file-listing/perl-file-listing.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_FILE_LISTING_VERSION = 6.15 +PERL_FILE_LISTING_VERSION = 6.16 PERL_FILE_LISTING_SOURCE = File-Listing-$(PERL_FILE_LISTING_VERSION).tar.gz PERL_FILE_LISTING_SITE = $(BR2_CPAN_MIRROR)/authors/id/P/PL/PLICEASE PERL_FILE_LISTING_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-file-sharedir-install/perl-file-sharedir-install.hash b/package/perl-file-sharedir-install/perl-file-sharedir-install.hash index b462d8e683c2..bfc06ab22aa0 100644 --- a/package/perl-file-sharedir-install/perl-file-sharedir-install.hash +++ b/package/perl-file-sharedir-install/perl-file-sharedir-install.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 5eabd44a5d7d84bf2e8e502491226287 File-ShareDir-Install-0.13.tar.gz -sha256 45befdf0d95cbefe7c25a1daf293d85f780d6d2576146546e6828aad26e580f9 File-ShareDir-Install-0.13.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 bac4d924f3d863b00648ab56ec0dcbdc File-ShareDir-Install-0.14.tar.gz +sha256 8f9533b198f2d4a9a5288cbc7d224f7679ad05a7a8573745599789428bc5aea0 File-ShareDir-Install-0.14.tar.gz # computed by scancpan -sha256 c207ca1c71c16a443d875a78d8aeccfbe550da502cd7fda24819548afb04fb5c LICENSE +sha256 6b5ade128fd47c452beec6dc31b3386482379fafb88f7f1962c7355db322d2ac LICENSE diff --git a/package/perl-file-sharedir-install/perl-file-sharedir-install.mk b/package/perl-file-sharedir-install/perl-file-sharedir-install.mk index 3653a4badef2..4f152e1b5df4 100644 --- a/package/perl-file-sharedir-install/perl-file-sharedir-install.mk +++ b/package/perl-file-sharedir-install/perl-file-sharedir-install.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_FILE_SHAREDIR_INSTALL_VERSION = 0.13 +PERL_FILE_SHAREDIR_INSTALL_VERSION = 0.14 PERL_FILE_SHAREDIR_INSTALL_SOURCE = File-ShareDir-Install-$(PERL_FILE_SHAREDIR_INSTALL_VERSION).tar.gz PERL_FILE_SHAREDIR_INSTALL_SITE = $(BR2_CPAN_MIRROR)/authors/id/E/ET/ETHER PERL_FILE_SHAREDIR_INSTALL_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-gd/Config.in b/package/perl-gd/Config.in index 044e60102137..bff6244d9864 100644 --- a/package/perl-gd/Config.in +++ b/package/perl-gd/Config.in @@ -4,7 +4,7 @@ config BR2_PACKAGE_PERL_GD select BR2_PACKAGE_ZLIB select BR2_PACKAGE_GD help - Perl interface to the gd2 graphics library. + Perl interface to the libgd graphics library. https://metacpan.org/release/GD diff --git a/package/perl-gd/perl-gd.hash b/package/perl-gd/perl-gd.hash index 97f1da821ae0..fd9321be604c 100644 --- a/package/perl-gd/perl-gd.hash +++ b/package/perl-gd/perl-gd.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 fb4bacab10ed4f28d52c2aabdaf866bb GD-2.76.tar.gz -sha256 693d9e3d709e9188a682cb9090a77b70aac12a04e84128677577b94e4331775b GD-2.76.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 da3f969367ea2e6d217ec05d3b98bc6f GD-2.77.tar.gz +sha256 b56c88b8ef3be016ce29bb62dd1f1b6f6b5fbcaa57fea59e9468af6901016fb5 GD-2.77.tar.gz # computed by scancpan sha256 1e2250289d6df4ba1c24f7550982d7ffaff2c97cd02e847659406e1afd28e83f LICENSE diff --git a/package/perl-gd/perl-gd.mk b/package/perl-gd/perl-gd.mk index cd32c7fb8f84..17c24bc9713a 100644 --- a/package/perl-gd/perl-gd.mk +++ b/package/perl-gd/perl-gd.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_GD_VERSION = 2.76 +PERL_GD_VERSION = 2.77 PERL_GD_SOURCE = GD-$(PERL_GD_VERSION).tar.gz PERL_GD_SITE = $(BR2_CPAN_MIRROR)/authors/id/R/RU/RURBAN PERL_GD_DEPENDENCIES = host-perl-extutils-pkgconfig zlib gd diff --git a/package/perl-html-parser/perl-html-parser.hash b/package/perl-html-parser/perl-html-parser.hash index ccd115d6c954..fbdffa03d684 100644 --- a/package/perl-html-parser/perl-html-parser.hash +++ b/package/perl-html-parser/perl-html-parser.hash @@ -1,6 +1,5 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 8e7151d08f30457a2ba80020b936285f HTML-Parser-3.80.tar.gz -sha256 63411db03016747e37c2636db11b05f8cc71608ef5bff36d04ddb0dc92f7835b HTML-Parser-3.80.tar.gz +sha256 c0910a5c8f92f8817edd06ccfd224ba1c2ebe8c10f551f032587a1fc83d62ff2 HTML-Parser-3.81.tar.gz # computed by scancpan sha256 9081922eb873ec1809c20672a7385a65f3c6b1163166bf69b2bbe986fb5b0159 LICENSE diff --git a/package/perl-html-parser/perl-html-parser.mk b/package/perl-html-parser/perl-html-parser.mk index 1e1f8e605019..50efaa273a38 100644 --- a/package/perl-html-parser/perl-html-parser.mk +++ b/package/perl-html-parser/perl-html-parser.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_HTML_PARSER_VERSION = 3.80 +PERL_HTML_PARSER_VERSION = 3.81 PERL_HTML_PARSER_SOURCE = HTML-Parser-$(PERL_HTML_PARSER_VERSION).tar.gz PERL_HTML_PARSER_SITE = $(BR2_CPAN_MIRROR)/authors/id/O/OA/OALDERS PERL_HTML_PARSER_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-http-cookies/Config.in b/package/perl-http-cookies/Config.in index 3ca461bf8337..147d9521bb74 100644 --- a/package/perl-http-cookies/Config.in +++ b/package/perl-http-cookies/Config.in @@ -1,8 +1,12 @@ config BR2_PACKAGE_PERL_HTTP_COOKIES bool "perl-http-cookies" + depends on !BR2_STATIC_LIBS # perl-http-message -> perl-clone select BR2_PACKAGE_PERL_HTTP_DATE # runtime select BR2_PACKAGE_PERL_HTTP_MESSAGE # runtime help HTTP cookie jars. https://github.com/libwww-perl/HTTP-Cookies + +comment "perl-http-cookies needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/perl-http-daemon/Config.in b/package/perl-http-daemon/Config.in index 0c7ffe723aab..4d6277a79961 100644 --- a/package/perl-http-daemon/Config.in +++ b/package/perl-http-daemon/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_PERL_HTTP_DAEMON bool "perl-http-daemon" + depends on !BR2_STATIC_LIBS # perl-http-message -> perl-clone select BR2_PACKAGE_PERL_HTTP_DATE # runtime select BR2_PACKAGE_PERL_HTTP_MESSAGE # runtime select BR2_PACKAGE_PERL_LWP_MEDIATYPES # runtime @@ -7,3 +8,6 @@ config BR2_PACKAGE_PERL_HTTP_DAEMON A simple http server class. https://github.com/libwww-perl/HTTP-Daemon + +comment "perl-http-daemon needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/perl-http-daemon/perl-http-daemon.hash b/package/perl-http-daemon/perl-http-daemon.hash index c19b3b9558e1..b1d92ad8e6ee 100644 --- a/package/perl-http-daemon/perl-http-daemon.hash +++ b/package/perl-http-daemon/perl-http-daemon.hash @@ -1,6 +1,5 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 3111b0081d08d8b225f52884033de349 HTTP-Daemon-6.14.tar.gz -sha256 f0767e7f3cbb80b21313c761f07ad8ed253bce9fa2d0ba806b3fb72d309b2e1d HTTP-Daemon-6.14.tar.gz +sha256 b38d092725e6fa4e0c4dc2a47e157070491bafa0dbe16c78a358e806aa7e173d HTTP-Daemon-6.16.tar.gz # computed by scancpan sha256 311f168ba9a7819ffab4fea19858f9e880737baf6d112929d11530205035a4cc LICENCE diff --git a/package/perl-http-daemon/perl-http-daemon.mk b/package/perl-http-daemon/perl-http-daemon.mk index fe50c768bff7..c017c4e09918 100644 --- a/package/perl-http-daemon/perl-http-daemon.mk +++ b/package/perl-http-daemon/perl-http-daemon.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_HTTP_DAEMON_VERSION = 6.14 +PERL_HTTP_DAEMON_VERSION = 6.16 PERL_HTTP_DAEMON_SOURCE = HTTP-Daemon-$(PERL_HTTP_DAEMON_VERSION).tar.gz PERL_HTTP_DAEMON_SITE = $(BR2_CPAN_MIRROR)/authors/id/O/OA/OALDERS PERL_HTTP_DAEMON_DEPENDENCIES = host-perl-module-build-tiny diff --git a/package/perl-http-date/perl-http-date.hash b/package/perl-http-date/perl-http-date.hash index b278423002f2..a6f77018293b 100644 --- a/package/perl-http-date/perl-http-date.hash +++ b/package/perl-http-date/perl-http-date.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 2ecbb3aedf6aef062605191813ca3027 HTTP-Date-6.05.tar.gz -sha256 365d6294dfbd37ebc51def8b65b81eb79b3934ecbc95a2ec2d4d827efe6a922b HTTP-Date-6.05.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 60462359bfeb1e6d14602508cfd07885 HTTP-Date-6.06.tar.gz +sha256 7b685191c6acc3e773d1fc02c95ee1f9fae94f77783175f5e78c181cc92d2b52 HTTP-Date-6.06.tar.gz # computed by scancpan -sha256 305b71c4d2fd6380585689c5f1c620737a36a318ce0f9c772badce0fe293a44e LICENSE +sha256 6186a79a305a0e62c5087f9737b4f66fa5793fa1b396da0126e3c8722c460245 LICENSE diff --git a/package/perl-http-date/perl-http-date.mk b/package/perl-http-date/perl-http-date.mk index 43583be30345..2f1aeb7da08c 100644 --- a/package/perl-http-date/perl-http-date.mk +++ b/package/perl-http-date/perl-http-date.mk @@ -4,10 +4,10 @@ # ################################################################################ -PERL_HTTP_DATE_VERSION = 6.05 +PERL_HTTP_DATE_VERSION = 6.06 PERL_HTTP_DATE_SOURCE = HTTP-Date-$(PERL_HTTP_DATE_VERSION).tar.gz PERL_HTTP_DATE_SITE = $(BR2_CPAN_MIRROR)/authors/id/O/OA/OALDERS -PERL_HTTP_DATE_LICENSE = Artistic or GPL-1.0+ +PERL_HTTP_DATE_LICENSE = Artistic-1.0-Perl or GPL-1.0+ PERL_HTTP_DATE_LICENSE_FILES = LICENSE PERL_HTTP_DATE_DISTNAME = HTTP-Date diff --git a/package/perl-http-message/Config.in b/package/perl-http-message/Config.in index 82538cfce818..e2cb42f94116 100644 --- a/package/perl-http-message/Config.in +++ b/package/perl-http-message/Config.in @@ -1,5 +1,7 @@ config BR2_PACKAGE_PERL_HTTP_MESSAGE bool "perl-http-message" + depends on !BR2_STATIC_LIBS # perl-clone + select BR2_PACKAGE_PERL_CLONE # runtime select BR2_PACKAGE_PERL_ENCODE_LOCALE # runtime select BR2_PACKAGE_PERL_HTTP_DATE # runtime select BR2_PACKAGE_PERL_IO_HTML # runtime @@ -9,3 +11,6 @@ config BR2_PACKAGE_PERL_HTTP_MESSAGE HTTP style message (base class). https://github.com/libwww-perl/HTTP-Message + +comment "perl-http-message needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/perl-http-message/perl-http-message.hash b/package/perl-http-message/perl-http-message.hash index 94b5c06a4fd2..b33e00e33ebf 100644 --- a/package/perl-http-message/perl-http-message.hash +++ b/package/perl-http-message/perl-http-message.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 926a077669a7828c5ca39b5cf7735625 HTTP-Message-6.44.tar.gz -sha256 398b647bf45aa972f432ec0111f6617742ba32fc773c6612d21f64ab4eacbca1 HTTP-Message-6.44.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 86c386bcc85a63c8908e6ae9967b34ee HTTP-Message-6.45.tar.gz +sha256 01cb8406612a3f738842d1e97313ae4d874870d1b8d6d66331f16000943d4cbe HTTP-Message-6.45.tar.gz # computed by scancpan -sha256 f2f428b5f8a3bf4e6a71cd5ea92558a3d123d3d7c5075d34923e71e46dea94df LICENSE +sha256 553ecefc0ed6d4152809da8516960b9a12352c1c0d7d289ac4ab06d0bd0e67bb LICENSE diff --git a/package/perl-http-message/perl-http-message.mk b/package/perl-http-message/perl-http-message.mk index 67b68b0de261..7fdba0b29e2e 100644 --- a/package/perl-http-message/perl-http-message.mk +++ b/package/perl-http-message/perl-http-message.mk @@ -4,10 +4,10 @@ # ################################################################################ -PERL_HTTP_MESSAGE_VERSION = 6.44 +PERL_HTTP_MESSAGE_VERSION = 6.45 PERL_HTTP_MESSAGE_SOURCE = HTTP-Message-$(PERL_HTTP_MESSAGE_VERSION).tar.gz PERL_HTTP_MESSAGE_SITE = $(BR2_CPAN_MIRROR)/authors/id/O/OA/OALDERS -PERL_HTTP_MESSAGE_LICENSE = Artistic or GPL-1.0+ +PERL_HTTP_MESSAGE_LICENSE = Artistic-1.0-Perl or GPL-1.0+ PERL_HTTP_MESSAGE_LICENSE_FILES = LICENSE PERL_HTTP_MESSAGE_DISTNAME = HTTP-Message diff --git a/package/perl-http-negotiate/Config.in b/package/perl-http-negotiate/Config.in index c519ede2df01..2e82ce5ad27f 100644 --- a/package/perl-http-negotiate/Config.in +++ b/package/perl-http-negotiate/Config.in @@ -1,7 +1,11 @@ config BR2_PACKAGE_PERL_HTTP_NEGOTIATE bool "perl-http-negotiate" + depends on !BR2_STATIC_LIBS # perl-http-message -> perl-clone select BR2_PACKAGE_PERL_HTTP_MESSAGE # runtime help choose a variant to serve. https://metacpan.org/release/HTTP-Negotiate + +comment "perl-http-negotiate needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/perl-json-maybexs/perl-json-maybexs.hash b/package/perl-json-maybexs/perl-json-maybexs.hash index a53d4ec616e2..3b603310f69d 100644 --- a/package/perl-json-maybexs/perl-json-maybexs.hash +++ b/package/perl-json-maybexs/perl-json-maybexs.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 e46181e34588428d317932744597a7ab JSON-MaybeXS-1.004003.tar.gz -sha256 5bee3b17ff9dcffd6e99ab8cf7f35747650bfce1dc622e3ad10b85a194462fbf JSON-MaybeXS-1.004003.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 bee9d0cba3f87e05e9613684e4ee2159 JSON-MaybeXS-1.004005.tar.gz +sha256 f5b6bc19f579e66b7299f8748b8ac3e171936dc4e7fcb72a8a257a9bd482a331 JSON-MaybeXS-1.004005.tar.gz # computed by scancpan -sha256 0f2d6b537f7a735c981511875d832bc8ff767bf97d62848cf0bada964e40aadd LICENSE +sha256 de7a14750e81d97e19e111df58a3b51e3f2c8ec2d2dd90f576f54243251972c6 LICENSE diff --git a/package/perl-json-maybexs/perl-json-maybexs.mk b/package/perl-json-maybexs/perl-json-maybexs.mk index e6891f680878..13c9439ea625 100644 --- a/package/perl-json-maybexs/perl-json-maybexs.mk +++ b/package/perl-json-maybexs/perl-json-maybexs.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_JSON_MAYBEXS_VERSION = 1.004003 +PERL_JSON_MAYBEXS_VERSION = 1.004005 PERL_JSON_MAYBEXS_SOURCE = JSON-MaybeXS-$(PERL_JSON_MAYBEXS_VERSION).tar.gz PERL_JSON_MAYBEXS_SITE = $(BR2_CPAN_MIRROR)/authors/id/E/ET/ETHER PERL_JSON_MAYBEXS_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-lwp-protocol-https/Config.in b/package/perl-lwp-protocol-https/Config.in index 9793b6f5d050..fa429a2ce069 100644 --- a/package/perl-lwp-protocol-https/Config.in +++ b/package/perl-lwp-protocol-https/Config.in @@ -2,7 +2,6 @@ config BR2_PACKAGE_PERL_LWP_PROTOCOL_HTTPS bool "perl-lwp-protocol-https" depends on !BR2_STATIC_LIBS select BR2_PACKAGE_PERL_IO_SOCKET_SSL # runtime - select BR2_PACKAGE_PERL_MOZILLA_CA # runtime select BR2_PACKAGE_PERL_NET_HTTP # runtime select BR2_PACKAGE_PERL_LIBWWW_PERL # runtime help diff --git a/package/perl-lwp-protocol-https/perl-lwp-protocol-https.hash b/package/perl-lwp-protocol-https/perl-lwp-protocol-https.hash index a3c011fe8470..7304a4cb3472 100644 --- a/package/perl-lwp-protocol-https/perl-lwp-protocol-https.hash +++ b/package/perl-lwp-protocol-https/perl-lwp-protocol-https.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 cf64e4bc57a9266ac4343cdf0808c5c8 LWP-Protocol-https-6.10.tar.gz -sha256 cecfc31fe2d4fc854cac47fce13d3a502e8fdfe60c5bc1c09535743185f2a86c LWP-Protocol-https-6.10.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 6615a250c8963a2333ea6d0fbbec306b LWP-Protocol-https-6.11.tar.gz +sha256 0132ddbf03661565ca85050f2a5094fb9263cbbc3ccb1a4d9c41ac9bb083b917 LWP-Protocol-https-6.11.tar.gz # computed by scancpan -sha256 294e73f9bd40ea600e9478cd57489a7da72558a83c6a66f37a82e4e0d5a706d9 LICENSE +sha256 e4def55436b2bd99fe2cdbf546a72ad5958327e28831db9b5adb497c6bd580ba LICENSE diff --git a/package/perl-lwp-protocol-https/perl-lwp-protocol-https.mk b/package/perl-lwp-protocol-https/perl-lwp-protocol-https.mk index 0663820b2e25..ff9ee936dce7 100644 --- a/package/perl-lwp-protocol-https/perl-lwp-protocol-https.mk +++ b/package/perl-lwp-protocol-https/perl-lwp-protocol-https.mk @@ -4,11 +4,13 @@ # ################################################################################ -PERL_LWP_PROTOCOL_HTTPS_VERSION = 6.10 +PERL_LWP_PROTOCOL_HTTPS_VERSION = 6.11 PERL_LWP_PROTOCOL_HTTPS_SOURCE = LWP-Protocol-https-$(PERL_LWP_PROTOCOL_HTTPS_VERSION).tar.gz PERL_LWP_PROTOCOL_HTTPS_SITE = $(BR2_CPAN_MIRROR)/authors/id/O/OA/OALDERS -PERL_LWP_PROTOCOL_HTTPS_LICENSE = Artistic or GPL-1.0+ +PERL_LWP_PROTOCOL_HTTPS_LICENSE = Artistic-1.0-Perl or GPL-1.0+ PERL_LWP_PROTOCOL_HTTPS_LICENSE_FILES = LICENSE +PERL_LWP_PROTOCOL_HTTPS_CPE_ID_VENDOR = lwp\:\:protocol\:\:https_project +PERL_LWP_PROTOCOL_HTTPS_CPE_ID_PRODUCT = lwp\:\:protocol\:\:https PERL_LWP_PROTOCOL_HTTPS_DISTNAME = LWP-Protocol-https $(eval $(perl-package)) diff --git a/package/perl-mail-dkim/perl-mail-dkim.hash b/package/perl-mail-dkim/perl-mail-dkim.hash index 6edeaa9d8b25..5b0e77294d22 100644 --- a/package/perl-mail-dkim/perl-mail-dkim.hash +++ b/package/perl-mail-dkim/perl-mail-dkim.hash @@ -1,6 +1,5 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 5a0dec58f0c2526521b2952a3c126906 Mail-DKIM-1.20220520.tar.gz -sha256 8ac4b8c84bbfad00a3d24bf676493d207dd3cd4a735efabb9e17181534f23646 Mail-DKIM-1.20220520.tar.gz +sha256 0fa09a93a00f43ac91017a91628265ae7d47deb507e2770532bbb2597550d3d4 Mail-DKIM-1.20230630.tar.gz # computed by scancpan sha256 ffaa40feb768566e52d93879fedd2c5483828b6de483874f30a0a4425351555f LICENSE diff --git a/package/perl-mail-dkim/perl-mail-dkim.mk b/package/perl-mail-dkim/perl-mail-dkim.mk index f3383a02bf46..4f4d86ee104d 100644 --- a/package/perl-mail-dkim/perl-mail-dkim.mk +++ b/package/perl-mail-dkim/perl-mail-dkim.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_MAIL_DKIM_VERSION = 1.20220520 +PERL_MAIL_DKIM_VERSION = 1.20230630 PERL_MAIL_DKIM_SOURCE = Mail-DKIM-$(PERL_MAIL_DKIM_VERSION).tar.gz PERL_MAIL_DKIM_SITE = $(BR2_CPAN_MIRROR)/authors/id/M/MB/MBRADSHAW PERL_MAIL_DKIM_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-module-build-tiny/perl-module-build-tiny.hash b/package/perl-module-build-tiny/perl-module-build-tiny.hash index 7f03f96c184b..7b503ff0614e 100644 --- a/package/perl-module-build-tiny/perl-module-build-tiny.hash +++ b/package/perl-module-build-tiny/perl-module-build-tiny.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 2332c90c17454107fea3f2614e11a3a9 Module-Build-Tiny-0.039.tar.gz -sha256 7d580ff6ace0cbe555bf36b86dc8ea232581530cbeaaea09bccb57b55797f11c Module-Build-Tiny-0.039.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 de9814b3c22825837438fc70adad58ac Module-Build-Tiny-0.047.tar.gz +sha256 71260e9421b93c33dd1b3e7d0cf15f759c0ca7c753fa840279ec3be70f8f8c9d Module-Build-Tiny-0.047.tar.gz # computed by scancpan -sha256 09fd2bc0428920c455f10c5a6c52e2bb4615114e88966c75ce27a07af028c36b LICENSE +sha256 1ce3282467869416f29b0c5f7773d1b80181fb9e08bef64e3829e8c53e19b64e LICENSE diff --git a/package/perl-module-build-tiny/perl-module-build-tiny.mk b/package/perl-module-build-tiny/perl-module-build-tiny.mk index cdf6ac3ec4c3..e2e3d83e7c3d 100644 --- a/package/perl-module-build-tiny/perl-module-build-tiny.mk +++ b/package/perl-module-build-tiny/perl-module-build-tiny.mk @@ -4,14 +4,14 @@ # ################################################################################ -PERL_MODULE_BUILD_TINY_VERSION = 0.039 +PERL_MODULE_BUILD_TINY_VERSION = 0.047 PERL_MODULE_BUILD_TINY_SOURCE = Module-Build-Tiny-$(PERL_MODULE_BUILD_TINY_VERSION).tar.gz PERL_MODULE_BUILD_TINY_SITE = $(BR2_CPAN_MIRROR)/authors/id/L/LE/LEONT HOST_PERL_MODULE_BUILD_TINY_DEPENDENCIES = \ host-perl-extutils-config \ host-perl-extutils-helpers \ host-perl-extutils-installpaths -PERL_MODULE_BUILD_TINY_LICENSE = Artistic or GPL-1.0+ +PERL_MODULE_BUILD_TINY_LICENSE = Artistic-1.0-Perl or GPL-1.0+ PERL_MODULE_BUILD_TINY_LICENSE_FILES = LICENSE PERL_MODULE_BUILD_TINY_DISTNAME = Module-Build-Tiny diff --git a/package/perl-module-build/perl-module-build.hash b/package/perl-module-build/perl-module-build.hash index a2181290eed3..590307e78057 100644 --- a/package/perl-module-build/perl-module-build.hash +++ b/package/perl-module-build/perl-module-build.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 144885f1cbaf9420017bbed696ec6b83 Module-Build-0.4232.tar.gz -sha256 67c82ee245d94ba06decfa25572ab75fdcd26a9009094289d8f45bc54041771b Module-Build-0.4232.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 0032d0c0bc36a3b68ef41c947829d5e3 Module-Build-0.4234.tar.gz +sha256 66aeac6127418be5e471ead3744648c766bd01482825c5b66652675f2bc86a8f Module-Build-0.4234.tar.gz # computed by scancpan -sha256 f35ac2cc6b808a38c42c2d230b875217b0a24bb51e5a497ebb630cbb3d806c3e LICENSE +sha256 af1570e8af55af52b4e86d040e2a993cb684566275c43c4d7a8b0cc5a90e08a4 LICENSE diff --git a/package/perl-module-build/perl-module-build.mk b/package/perl-module-build/perl-module-build.mk index d95a30647aa4..972902e0475d 100644 --- a/package/perl-module-build/perl-module-build.mk +++ b/package/perl-module-build/perl-module-build.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_MODULE_BUILD_VERSION = 0.4232 +PERL_MODULE_BUILD_VERSION = 0.4234 PERL_MODULE_BUILD_SOURCE = Module-Build-$(PERL_MODULE_BUILD_VERSION).tar.gz PERL_MODULE_BUILD_SITE = $(BR2_CPAN_MIRROR)/authors/id/L/LE/LEONT PERL_MODULE_BUILD_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-mojolicious-plugin-authentication/perl-mojolicious-plugin-authentication.hash b/package/perl-mojolicious-plugin-authentication/perl-mojolicious-plugin-authentication.hash index 34362f5d8d06..fe39b093c71a 100644 --- a/package/perl-mojolicious-plugin-authentication/perl-mojolicious-plugin-authentication.hash +++ b/package/perl-mojolicious-plugin-authentication/perl-mojolicious-plugin-authentication.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 c475f2d3962441698b178ad1bd7d2e29 Mojolicious-Plugin-Authentication-1.37.tar.gz -sha256 a7ed206725b7b395d4fca12e3f1d923da644d913333ff48ea231e064ecb1abb6 Mojolicious-Plugin-Authentication-1.37.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 141dd090f6d8470a0d3483dc1f7aaa20 Mojolicious-Plugin-Authentication-1.39.tar.gz +sha256 9f99cbdf5cacaa3fa3f961bee94de97226d177a36a15e7ba303ae79d132874d1 Mojolicious-Plugin-Authentication-1.39.tar.gz # computed by scancpan -sha256 37d219684a6c5f8754435fb0dd36a779121e416553fd6a75e22a7545039d1021 LICENSE +sha256 a2b15d79eaf2f13f756816abfe4d3d3fb4c4c206e7fb1a36abb3e741583aac26 LICENSE diff --git a/package/perl-mojolicious-plugin-authentication/perl-mojolicious-plugin-authentication.mk b/package/perl-mojolicious-plugin-authentication/perl-mojolicious-plugin-authentication.mk index 57c356eee587..1d5e2511f6f9 100644 --- a/package/perl-mojolicious-plugin-authentication/perl-mojolicious-plugin-authentication.mk +++ b/package/perl-mojolicious-plugin-authentication/perl-mojolicious-plugin-authentication.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_MOJOLICIOUS_PLUGIN_AUTHENTICATION_VERSION = 1.37 +PERL_MOJOLICIOUS_PLUGIN_AUTHENTICATION_VERSION = 1.39 PERL_MOJOLICIOUS_PLUGIN_AUTHENTICATION_SOURCE = Mojolicious-Plugin-Authentication-$(PERL_MOJOLICIOUS_PLUGIN_AUTHENTICATION_VERSION).tar.gz PERL_MOJOLICIOUS_PLUGIN_AUTHENTICATION_SITE = $(BR2_CPAN_MIRROR)/authors/id/J/JJ/JJATRIA PERL_MOJOLICIOUS_PLUGIN_AUTHENTICATION_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-mojolicious/perl-mojolicious.hash b/package/perl-mojolicious/perl-mojolicious.hash index 989eaf3419d7..ddf27a808d3e 100644 --- a/package/perl-mojolicious/perl-mojolicious.hash +++ b/package/perl-mojolicious/perl-mojolicious.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 523193316a839ff56a447f0f0c2e5b36 Mojolicious-9.31.tar.gz -sha256 cb96ccd7a5319321ec6f57633c88bf17193d45169f4d7846da254bb6f9ed8312 Mojolicious-9.31.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 530e682c101eda6caa0b65438a0b704d Mojolicious-9.34.tar.gz +sha256 5069d68e4e2d8ad663db58859b4fec0ce79ab134d9e58055aaaf3f0f3a73a2c6 Mojolicious-9.34.tar.gz # computed by scancpan sha256 19e2e0f2079ea1ce1576eb4ecc0575b33fe45b2b8e71f4aa589d6bedd1da4e0a LICENSE diff --git a/package/perl-mojolicious/perl-mojolicious.mk b/package/perl-mojolicious/perl-mojolicious.mk index 618327d09d1d..040fbf08e271 100644 --- a/package/perl-mojolicious/perl-mojolicious.mk +++ b/package/perl-mojolicious/perl-mojolicious.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_MOJOLICIOUS_VERSION = 9.31 +PERL_MOJOLICIOUS_VERSION = 9.34 PERL_MOJOLICIOUS_SOURCE = Mojolicious-$(PERL_MOJOLICIOUS_VERSION).tar.gz PERL_MOJOLICIOUS_SITE = $(BR2_CPAN_MIRROR)/authors/id/S/SR/SRI PERL_MOJOLICIOUS_LICENSE = Artistic-2.0 diff --git a/package/perl-moo/perl-moo.hash b/package/perl-moo/perl-moo.hash index 9b67e7a65c28..f70646deca39 100644 --- a/package/perl-moo/perl-moo.hash +++ b/package/perl-moo/perl-moo.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 49ecf491b49b9b200e8a5dfd1a42b480 Moo-2.005004.tar.gz -sha256 e3030b80bd554a66f6b3c27fd53b1b5909d12af05c4c11ece9a58f8d1e478928 Moo-2.005004.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 259530e5ea37a1bf968f6cf18a25db86 Moo-2.005005.tar.gz +sha256 fb5a2952649faed07373f220b78004a9c6aba387739133740c1770e9b1f4b108 Moo-2.005005.tar.gz # computed by scancpan -sha256 a8a1595c2347f7d10e896809d4f3dea85ccc10ac5644b8073111233cd120b14a LICENSE +sha256 de7a14750e81d97e19e111df58a3b51e3f2c8ec2d2dd90f576f54243251972c6 LICENSE diff --git a/package/perl-moo/perl-moo.mk b/package/perl-moo/perl-moo.mk index 6c484ba9e393..18e32688e1b3 100644 --- a/package/perl-moo/perl-moo.mk +++ b/package/perl-moo/perl-moo.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_MOO_VERSION = 2.005004 +PERL_MOO_VERSION = 2.005005 PERL_MOO_SOURCE = Moo-$(PERL_MOO_VERSION).tar.gz PERL_MOO_SITE = $(BR2_CPAN_MIRROR)/authors/id/H/HA/HAARG PERL_MOO_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-mozilla-ca/perl-mozilla-ca.hash b/package/perl-mozilla-ca/perl-mozilla-ca.hash index 799a531fe614..33465ca316e3 100644 --- a/package/perl-mozilla-ca/perl-mozilla-ca.hash +++ b/package/perl-mozilla-ca/perl-mozilla-ca.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 2f136d096352a418e546e4afb70e7aa9 Mozilla-CA-20221114.tar.gz -sha256 701bea67be670add5a102f9f8c879402b4983096b1cb0e20dd47d52d7a10666b Mozilla-CA-20221114.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 a9b7b700e651cd74130edf7432f8657f Mozilla-CA-20230821.tar.gz +sha256 32e1d0045299004045b9c4d16c2daae453a216208873deea2440f71260a7cda1 Mozilla-CA-20230821.tar.gz # computed by scancpan sha256 95cd63dae5c2bf6e7cf33435981614a36c85ef01fc7a02464e05e58a5355398e README diff --git a/package/perl-mozilla-ca/perl-mozilla-ca.mk b/package/perl-mozilla-ca/perl-mozilla-ca.mk index a124860b7a33..b122798a2980 100644 --- a/package/perl-mozilla-ca/perl-mozilla-ca.mk +++ b/package/perl-mozilla-ca/perl-mozilla-ca.mk @@ -4,9 +4,9 @@ # ################################################################################ -PERL_MOZILLA_CA_VERSION = 20221114 +PERL_MOZILLA_CA_VERSION = 20230821 PERL_MOZILLA_CA_SOURCE = Mozilla-CA-$(PERL_MOZILLA_CA_VERSION).tar.gz -PERL_MOZILLA_CA_SITE = $(BR2_CPAN_MIRROR)/authors/id/H/HA/HAARG +PERL_MOZILLA_CA_SITE = $(BR2_CPAN_MIRROR)/authors/id/L/LW/LWP PERL_MOZILLA_CA_LICENSE = MPL-2.0 PERL_MOZILLA_CA_LICENSE_FILES = README PERL_MOZILLA_CA_DISTNAME = Mozilla-CA diff --git a/package/perl-net-dns/perl-net-dns.hash b/package/perl-net-dns/perl-net-dns.hash index a98ac3525da2..35f2e92eea65 100644 --- a/package/perl-net-dns/perl-net-dns.hash +++ b/package/perl-net-dns/perl-net-dns.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 b70b74481908d995f57569ab7cfe6432 Net-DNS-1.36.tar.gz -sha256 143ba0e530f8b727be61ec052974cbf52df5b0afc0582d75b04809e0b2a95ebe Net-DNS-1.36.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 a71e4cfe069e700fc52bacb6dbc0cdc5 Net-DNS-1.40.tar.gz +sha256 209bbd40de8d48c1bd7aade48da237fe0a499f89d279baa2e1a99bd5ec922ddc Net-DNS-1.40.tar.gz # computed by scancpan sha256 1e44fcf65509b47a251eda0ce1f8bd6aefa13517e38cb1e95b8d36120fb15452 LICENSE diff --git a/package/perl-net-dns/perl-net-dns.mk b/package/perl-net-dns/perl-net-dns.mk index f4c20c07ad12..d49a00f5f111 100644 --- a/package/perl-net-dns/perl-net-dns.mk +++ b/package/perl-net-dns/perl-net-dns.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_NET_DNS_VERSION = 1.36 +PERL_NET_DNS_VERSION = 1.40 PERL_NET_DNS_SOURCE = Net-DNS-$(PERL_NET_DNS_VERSION).tar.gz PERL_NET_DNS_SITE = $(BR2_CPAN_MIRROR)/authors/id/N/NL/NLNETLABS PERL_NET_DNS_LICENSE = MIT diff --git a/package/perl-net-http/perl-net-http.hash b/package/perl-net-http/perl-net-http.hash index f02fd908087c..094b9e5da03f 100644 --- a/package/perl-net-http/perl-net-http.hash +++ b/package/perl-net-http/perl-net-http.hash @@ -1,6 +1,5 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 1d46019fb8559070a5ec1d838b690657 Net-HTTP-6.22.tar.gz -sha256 62faf9a5b84235443fe18f780e69cecf057dea3de271d7d8a0ba72724458a1a2 Net-HTTP-6.22.tar.gz +sha256 0d65c09dd6c8589b2ae1118174d3c1a61703b6ecfc14a3442a8c74af65e0c94e Net-HTTP-6.23.tar.gz # computed by scancpan sha256 0ed700a4bfc022e999d83407f71ab62ead96662d8f7bbebfd857376bf3ed6528 LICENSE diff --git a/package/perl-net-http/perl-net-http.mk b/package/perl-net-http/perl-net-http.mk index b4cef6188b64..08e81f95a177 100644 --- a/package/perl-net-http/perl-net-http.mk +++ b/package/perl-net-http/perl-net-http.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_NET_HTTP_VERSION = 6.22 +PERL_NET_HTTP_VERSION = 6.23 PERL_NET_HTTP_SOURCE = Net-HTTP-$(PERL_NET_HTTP_VERSION).tar.gz PERL_NET_HTTP_SITE = $(BR2_CPAN_MIRROR)/authors/id/O/OA/OALDERS PERL_NET_HTTP_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-package-stash/Config.in b/package/perl-package-stash/Config.in index 6b7ca247829b..05506c2424bd 100644 --- a/package/perl-package-stash/Config.in +++ b/package/perl-package-stash/Config.in @@ -3,6 +3,6 @@ config BR2_PACKAGE_PERL_PACKAGE_STASH select BR2_PACKAGE_PERL_DIST_CHECKCONFLICTS # runtime select BR2_PACKAGE_PERL_MODULE_IMPLEMENTATION # runtime help - routines for manipulating stashes. + Routines for manipulating stashes. - http://metacpan.org/release/Package-Stash + https://github.com/moose/Package-Stash diff --git a/package/perl-package-stash/perl-package-stash.hash b/package/perl-package-stash/perl-package-stash.hash index 0bbac515e234..329d2dbbbf01 100644 --- a/package/perl-package-stash/perl-package-stash.hash +++ b/package/perl-package-stash/perl-package-stash.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 287d80c9115c9230912aca684f8ca92e Package-Stash-0.39.tar.gz -sha256 9165f555112e080493ce0e9129de0886da30b2593fb353a2abd1c76b2d2621b5 Package-Stash-0.39.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 7a2922941cc2aad6a52642e4fb13d07b Package-Stash-0.40.tar.gz +sha256 5a9722c6d9cb29ee133e5f7b08a5362762a0b5633ff5170642a5b0686e95e066 Package-Stash-0.40.tar.gz # computed by scancpan -sha256 810b319a6f4a53c9cbbef513da17b2f0c872accd149bb889f153f4b78cf8cbb8 LICENSE +sha256 5f82745d355b43f451c557642618cbd903251192b89f31ca53eaab90c35aeb7c LICENSE diff --git a/package/perl-package-stash/perl-package-stash.mk b/package/perl-package-stash/perl-package-stash.mk index bc116abca367..dd93314d8281 100644 --- a/package/perl-package-stash/perl-package-stash.mk +++ b/package/perl-package-stash/perl-package-stash.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_PACKAGE_STASH_VERSION = 0.39 +PERL_PACKAGE_STASH_VERSION = 0.40 PERL_PACKAGE_STASH_SOURCE = Package-Stash-$(PERL_PACKAGE_STASH_VERSION).tar.gz PERL_PACKAGE_STASH_SITE = $(BR2_CPAN_MIRROR)/authors/id/E/ET/ETHER PERL_PACKAGE_STASH_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-plack/Config.in b/package/perl-plack/Config.in index c81ac4a444f6..420f8257e5ee 100644 --- a/package/perl-plack/Config.in +++ b/package/perl-plack/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_PERL_PLACK bool "perl-plack" + depends on !BR2_STATIC_LIBS # perl-http-message -> perl-clone select BR2_PACKAGE_PERL_APACHE_LOGFORMAT_COMPILER # runtime select BR2_PACKAGE_PERL_COOKIE_BAKER # runtime select BR2_PACKAGE_PERL_DEVEL_STACKTRACE # runtime @@ -19,3 +20,6 @@ config BR2_PACKAGE_PERL_PLACK toolkit). https://github.com/plack/Plack + +comment "perl-plack needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/perl-plack/perl-plack.hash b/package/perl-plack/perl-plack.hash index c763d2c17351..84d65ec525d8 100644 --- a/package/perl-plack/perl-plack.hash +++ b/package/perl-plack/perl-plack.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 36282b473b4521219c44a9db437b650f Plack-1.0048.tar.gz -sha256 30f5f25e19b437859156a2526f61ca9ab708d50d5730c279189403aabfe542a6 Plack-1.0048.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 0856a900a981769e3d79f0a10ccc3e65 Plack-1.0050.tar.gz +sha256 d2651ade82ebbff7abe0a3a189fc932dadc4779186ce89468e56d0189eaa6ed4 Plack-1.0050.tar.gz # computed by scancpan -sha256 fb67655b5d1adedef83aed2c79bf4f89c68d8595a7060815520173f663a3631d LICENSE +sha256 8a0c0ad4682691b5bc138e553636adfc8bb38f8885c4c44fd421ec8cc69c9a8f LICENSE diff --git a/package/perl-plack/perl-plack.mk b/package/perl-plack/perl-plack.mk index b95f204d23c3..c39c3d8fd622 100644 --- a/package/perl-plack/perl-plack.mk +++ b/package/perl-plack/perl-plack.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_PLACK_VERSION = 1.0048 +PERL_PLACK_VERSION = 1.0050 PERL_PLACK_SOURCE = Plack-$(PERL_PLACK_VERSION).tar.gz PERL_PLACK_SITE = $(BR2_CPAN_MIRROR)/authors/id/M/MI/MIYAGAWA PERL_PLACK_DEPENDENCIES = host-perl-file-sharedir-install diff --git a/package/perl-sub-install/perl-sub-install.hash b/package/perl-sub-install/perl-sub-install.hash index bbac2a637713..834e589ee539 100644 --- a/package/perl-sub-install/perl-sub-install.hash +++ b/package/perl-sub-install/perl-sub-install.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 e1ce4f9cb6b2f6b8778b036c31afa5ab Sub-Install-0.928.tar.gz -sha256 61e567a7679588887b7b86d427bc476ea6d77fffe7e0d17d640f89007d98ef0f Sub-Install-0.928.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 81baf186c62c71f0935c3ccf1c5964c8 Sub-Install-0.929.tar.gz +sha256 80b1e281d8cd3b2b31dac711f5c8a1657a87cd80bbe69af3924bcbeb4e5db077 Sub-Install-0.929.tar.gz # computed by scancpan -sha256 ad5fb5c05003488f924c60ead21694d629055c9db2ee2d9dd0cf0041b9fedaca LICENSE +sha256 0150501749fc390e1c747739a7c1d7661607f8f1d9a9f2ad279664f12e46104e LICENSE diff --git a/package/perl-sub-install/perl-sub-install.mk b/package/perl-sub-install/perl-sub-install.mk index 85d60caf524d..5e02a37ebb9d 100644 --- a/package/perl-sub-install/perl-sub-install.mk +++ b/package/perl-sub-install/perl-sub-install.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_SUB_INSTALL_VERSION = 0.928 +PERL_SUB_INSTALL_VERSION = 0.929 PERL_SUB_INSTALL_SOURCE = Sub-Install-$(PERL_SUB_INSTALL_VERSION).tar.gz PERL_SUB_INSTALL_SITE = $(BR2_CPAN_MIRROR)/authors/id/R/RJ/RJBS PERL_SUB_INSTALL_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-sub-quote/perl-sub-quote.hash b/package/perl-sub-quote/perl-sub-quote.hash index 602ff92ceca9..8db560fd44c8 100644 --- a/package/perl-sub-quote/perl-sub-quote.hash +++ b/package/perl-sub-quote/perl-sub-quote.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 1bb9caee697bcfa738f419d40505e506 Sub-Quote-2.006006.tar.gz -sha256 6e4e2af42388fa6d2609e0e82417de7cc6be47223f576592c656c73c7524d89d Sub-Quote-2.006006.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 f19c60039ba87f69f7f9357fc0a03e07 Sub-Quote-2.006008.tar.gz +sha256 94bebd500af55762e83ea2f2bc594d87af828072370c7110c60c238a800d15b2 Sub-Quote-2.006008.tar.gz # computed by scancpan -sha256 88f4a8719c584d756dcfeebc7f35643066354188bfb57c672fbafcd44e044e9c LICENSE +sha256 de7a14750e81d97e19e111df58a3b51e3f2c8ec2d2dd90f576f54243251972c6 LICENSE diff --git a/package/perl-sub-quote/perl-sub-quote.mk b/package/perl-sub-quote/perl-sub-quote.mk index a22da169223b..3c2a25be519a 100644 --- a/package/perl-sub-quote/perl-sub-quote.mk +++ b/package/perl-sub-quote/perl-sub-quote.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_SUB_QUOTE_VERSION = 2.006006 +PERL_SUB_QUOTE_VERSION = 2.006008 PERL_SUB_QUOTE_SOURCE = Sub-Quote-$(PERL_SUB_QUOTE_VERSION).tar.gz PERL_SUB_QUOTE_SITE = $(BR2_CPAN_MIRROR)/authors/id/H/HA/HAARG PERL_SUB_QUOTE_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-type-tiny/perl-type-tiny.hash b/package/perl-type-tiny/perl-type-tiny.hash index 9e5924abb80a..bca5153a0351 100644 --- a/package/perl-type-tiny/perl-type-tiny.hash +++ b/package/perl-type-tiny/perl-type-tiny.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 7a1688c4de07a0ed481a1811e5e82e63 Type-Tiny-1.012004.tar.gz -sha256 75cd06b612d1830ae9f4b22298b506b3ff04518fa7453f487c248cd62a906a2b Type-Tiny-1.012004.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 08bb43feabaab97dac7a3e59b5c77ff3 Type-Tiny-2.004000.tar.gz +sha256 697e7f775edfc85f4cf07792d04fd19b09c25285f98f5938e8efc4f74507a128 Type-Tiny-2.004000.tar.gz # computed by scancpan -sha256 34427749499bd6d6e5d206089bc03d76c647a1350f8b5f95ea628d2b6ff56e4c LICENSE +sha256 1a2929dacaef239beca27a85f7f97b793628dfb22f07fdfb406cb6f3f0d22a6b LICENSE diff --git a/package/perl-type-tiny/perl-type-tiny.mk b/package/perl-type-tiny/perl-type-tiny.mk index 5efa78f1619a..31c84a2637c0 100644 --- a/package/perl-type-tiny/perl-type-tiny.mk +++ b/package/perl-type-tiny/perl-type-tiny.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_TYPE_TINY_VERSION = 1.012004 +PERL_TYPE_TINY_VERSION = 2.004000 PERL_TYPE_TINY_SOURCE = Type-Tiny-$(PERL_TYPE_TINY_VERSION).tar.gz PERL_TYPE_TINY_SITE = $(BR2_CPAN_MIRROR)/authors/id/T/TO/TOBYINK PERL_TYPE_TINY_LICENSE = Artistic or GPL-1.0+ diff --git a/package/perl-uri/perl-uri.hash b/package/perl-uri/perl-uri.hash index daf043347ff1..c10a829e98d7 100644 --- a/package/perl-uri/perl-uri.hash +++ b/package/perl-uri/perl-uri.hash @@ -1,6 +1,6 @@ -# retrieved by scancpan from http://cpan.metacpan.org/ -md5 63675c429cfb1df73d7d21a9302e1000 URI-5.17.tar.gz -sha256 5f7e42b769cb27499113cfae4b786c37d49e7c7d32dbb469602cd808308568f8 URI-5.17.tar.gz +# retrieved by scancpan from https://cpan.metacpan.org/ +md5 9b45e7635f0968deabe377fc4c99a8b5 URI-5.21.tar.gz +sha256 96265860cd61bde16e8415dcfbf108056de162caa0ac37f81eb695c9d2e0ab77 URI-5.21.tar.gz # computed by scancpan -sha256 d4f0b7a8771dcb1eee79a38c2e466eb997e23565a6687dd1900a2027eabe12a0 LICENSE +sha256 a1730c55839ce3c9182c92e3387ba8f683ad6ab8b4a3257553a20c4db194c2cf LICENSE diff --git a/package/perl-uri/perl-uri.mk b/package/perl-uri/perl-uri.mk index d4bfcb44ef1a..aa0c1ed8b5fa 100644 --- a/package/perl-uri/perl-uri.mk +++ b/package/perl-uri/perl-uri.mk @@ -4,10 +4,10 @@ # ################################################################################ -PERL_URI_VERSION = 5.17 +PERL_URI_VERSION = 5.21 PERL_URI_SOURCE = URI-$(PERL_URI_VERSION).tar.gz PERL_URI_SITE = $(BR2_CPAN_MIRROR)/authors/id/O/OA/OALDERS -PERL_URI_LICENSE = Artistic or GPL-1.0+ +PERL_URI_LICENSE = Artistic-1.0-Perl or GPL-1.0+ PERL_URI_LICENSE_FILES = LICENSE PERL_URI_DISTNAME = URI diff --git a/package/perl/perl.hash b/package/perl/perl.hash index b21023f7303c..983b921e2798 100644 --- a/package/perl/perl.hash +++ b/package/perl/perl.hash @@ -1,12 +1,12 @@ -# Hashes from: https://www.cpan.org/src/5.0/perl-5.36.0.tar.xz.{md5,sha1,sha256}.txt -md5 826e42da130011699172fd655e49cfa2 perl-5.36.0.tar.xz -sha1 938c56a77ae094eb7f5019318a5e4efb2d9c74fa perl-5.36.0.tar.xz -sha256 0f386dccbee8e26286404b2cca144e1005be65477979beb9b1ba272d4819bcf0 perl-5.36.0.tar.xz +# Hashes from: https://www.cpan.org/src/5.0/perl-5.36.3.tar.xz.{md5,sha1,sha256}.txt +md5 17946060e6279cf32d08edc92c40efc3 perl-5.36.3.tar.xz +sha1 9949e79c92171b39f4fb2b19ffd4ea293b8dd589 perl-5.36.3.tar.xz +sha256 45a228daef66d02fdccc820e71f87e40d8e3df1fc4431f8d4580ec08033866bd perl-5.36.3.tar.xz -# Hash from: https://github.com/arsv/perl-cross/releases/download/1.4/perl-cross-1.4.hash -sha256 be9d9f9f7148edff7a2f9695ba3cb7e3975eff6b25a9a81dd311725fd757aa91 perl-cross-1.4.tar.gz +# Hash from: https://github.com/arsv/perl-cross/releases/download/1.5.2/perl-cross-1.5.2.hash +sha256 584dc54c48dca25e032b676a15bef377c1fed9de318b4fc140292a5dbf326e90 perl-cross-1.5.2.tar.gz # Locally calculated sha256 dd90d4f42e4dcadf5a7c09eea0189d93c7b37ae560c91f0f6d5233ed3b9292a2 Artistic sha256 d77d235e41d54594865151f4751e835c5a82322b0e87ace266567c3391a4b912 Copying -sha256 06bab256e2e039c59d2ca3c5853425317b4a0f251fe4e5d5201a987b11fc4f78 README +sha256 810c97bea10842d2e47bc79e51acdfa1628cfee34fa0d89330f4eb3a44e3def9 README diff --git a/package/perl/perl.mk b/package/perl/perl.mk index 9be00e1b2c43..71aef9997b0e 100644 --- a/package/perl/perl.mk +++ b/package/perl/perl.mk @@ -6,7 +6,7 @@ # When updating the version here, also update utils/scancpan PERL_VERSION_MAJOR = 36 -PERL_VERSION = 5.$(PERL_VERSION_MAJOR).0 +PERL_VERSION = 5.$(PERL_VERSION_MAJOR).3 PERL_SITE = https://www.cpan.org/src/5.0 PERL_SOURCE = perl-$(PERL_VERSION).tar.xz PERL_LICENSE = Artistic or GPL-1.0+ @@ -15,7 +15,7 @@ PERL_CPE_ID_VENDOR = perl PERL_DEPENDENCIES = $(TARGET_NLS_DEPENDENCIES) PERL_INSTALL_STAGING = YES -PERL_CROSS_VERSION = 1.4 +PERL_CROSS_VERSION = 1.5.2 # DO NOT refactor with the github helper (the result is not the same) PERL_CROSS_SITE = https://github.com/arsv/perl-cross/releases/download/$(PERL_CROSS_VERSION) PERL_CROSS_SOURCE = perl-cross-$(PERL_CROSS_VERSION).tar.gz diff --git a/package/petitboot/Config.in b/package/petitboot/Config.in new file mode 100644 index 000000000000..93ed3642c3c9 --- /dev/null +++ b/package/petitboot/Config.in @@ -0,0 +1,35 @@ +config BR2_PACKAGE_PETITBOOT + bool "petitboot" + depends on BR2_PACKAGE_KEXEC_ARCH_SUPPORTS || BR2_PACKAGE_KEXEC_LITE_ARCH_SUPPORTS + depends on BR2_USE_MMU # lvm2 + depends on BR2_USE_WCHAR # elfutils + depends on !BR2_STATIC_LIBS # elfutils, lvm2 + depends on BR2_TOOLCHAIN_HAS_THREADS # elfutils, lvm2 + depends on BR2_PACKAGE_HAS_UDEV + select BR2_PACKAGE_ELFUTILS + select BR2_PACKAGE_LVM2 # devmapper + select BR2_PACKAGE_NCURSES + # run-time dependencies + select BR2_PACKAGE_KEXEC if !BR2_PACKAGE_KEXEC_LITE_ARCH_SUPPORTS + select BR2_PACKAGE_KEXEC_LITE if BR2_PACKAGE_KEXEC_LITE_ARCH_SUPPORTS && !BR2_PACKAGE_KEXEC + select BR2_PACKAGE_NVME if ( BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le ) + select BR2_PACKAGE_POWERPC_UTILS if ( BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le ) + help + Petitboot is a small kexec-based bootloader + + http://www.kernel.org/pub/linux/kernel/people/geoff/petitboot/petitboot.html + +comment "petitboot needs a toolchain w/ wchar, dynamic library, threads, udev /dev management" + depends on BR2_PACKAGE_KEXEC_ARCH_SUPPORTS + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_PACKAGE_HAS_UDEV + +config BR2_PACKAGE_PETITBOOT_GETTY_PORT + string "TTY port(s)" + default "console" + depends on BR2_PACKAGE_PETITBOOT + help + Specify a space-separated list of ports to run the petitboot + UI on. Wildcards are allowed. Example: "hvc* ttys0 ttyS*" diff --git a/package/petitboot/S15pb-discover b/package/petitboot/S15pb-discover new file mode 100644 index 000000000000..71ab62d99859 --- /dev/null +++ b/package/petitboot/S15pb-discover @@ -0,0 +1,57 @@ +#!/bin/sh + +DAEMON="pb-discover" +PIDFILE="/var/run/$DAEMON.pid" + +# shellcheck source=/dev/null +[ -r "/etc/default/petitboot" ] && . "/etc/default/petitboot" + +if [ "$(pb-config debug)" = "enabled" ] ; then + PB_DISCOVER_ARGS="$PB_DISCOVER_ARGS --verbose" +fi + +start() { + printf 'Starting %s: ' "$DAEMON" + mkdir -p /var/log/petitboot + + # shellcheck disable=SC2086 # we need the word splitting + start-stop-daemon -S -q -b -m -p "$PIDFILE" -x "/usr/sbin/$DAEMON" \ + -- $PB_DISCOVER_ARGS + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +stop() { + printf 'Stopping %s: ' "$DAEMON" + start-stop-daemon -K -q -p "$PIDFILE" + status=$? + if [ "$status" -eq 0 ]; then + rm -f "$PIDFILE" + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +restart() { + stop + sleep 1 + start +} + +case "$1" in + start|stop|restart) + "$1";; + reload) + restart;; + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 + ;; +esac diff --git a/package/petitboot/pb-console b/package/petitboot/pb-console new file mode 100644 index 000000000000..407ff3b30232 --- /dev/null +++ b/package/petitboot/pb-console @@ -0,0 +1,36 @@ +#!/bin/sh + +DAEMON="pb-console" + +PB_CONSOLE_PORT=${2:-"console"} +PB_CONSOLE_ARGS="--getty --detach -- -n -i 0 $PB_CONSOLE_PORT linux" + +# shellcheck source=/dev/null +[ -r "/etc/default/petitboot" ] && . "/etc/default/petitboot" + +start() { + printf 'Starting %s on %s: ' "$DAEMON" "$PB_CONSOLE_PORT" + mkdir -p /var/log/petitboot + + # shellcheck disable=SC2086 # we need the word splitting + start-stop-daemon -S -q -x "/usr/libexec/petitboot/$DAEMON" \ + -- $PB_CONSOLE_ARGS + status=$? + if [ "$status" -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return "$status" +} + +case "$1" in + start) + "$1";; + stop|restart|reload) + ;; + *) + echo "Usage: $0 {start|stop|restart|reload} [port]" + exit 1 + ;; +esac diff --git a/package/petitboot/petitboot.hash b/package/petitboot/petitboot.hash new file mode 100644 index 000000000000..a9a21f2c1b69 --- /dev/null +++ b/package/petitboot/petitboot.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 fa2367370d3ce5dd9910ab08a0832071e2508c8bf75cfec6d3b9807fbefc507a petitboot-v1.14.tar.gz +sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 COPYING diff --git a/package/petitboot/petitboot.mk b/package/petitboot/petitboot.mk new file mode 100644 index 000000000000..c4eb20b44d72 --- /dev/null +++ b/package/petitboot/petitboot.mk @@ -0,0 +1,75 @@ +################################################################################ +# +# petitboot +# +################################################################################ + +PETITBOOT_VERSION = 1.14 +PETITBOOT_SOURCE = petitboot-v$(PETITBOOT_VERSION).tar.gz +PETITBOOT_SITE = https://github.com/open-power/petitboot/releases/download/v$(PETITBOOT_VERSION) +PETITBOOT_DEPENDENCIES = elfutils ncurses udev host-bison host-flex lvm2 +PETITBOOT_LICENSE = GPL-2.0 +PETITBOOT_LICENSE_FILES = COPYING + +PETITBOOT_CONF_OPTS = \ + --enable-crypt \ + --enable-platform-auto \ + --disable-mtd \ + --with-ncurses \ + --without-signed-boot \ + --without-twin-fbdev \ + --without-twin-x11 \ + $(if $(BR2_PACKAGE_BUSYBOX),--enable-busybox,--disable-busybox) \ + HOST_PROG_KEXEC=/usr/sbin/kexec \ + HOST_PROG_SHUTDOWN=/usr/libexec/petitboot/bb-kexec-reboot + +# HPA and Busybox tftp are supported. HPA tftp is part of Buildroot's tftpd +# package. +ifeq ($(BR2_PACKAGE_TFTPD),y) +PETITBOOT_CONF_OPTS += --with-tftp=hpa +else ifeq ($(BR2_PACKAGE_BUSYBOX),y) +PETITBOOT_CONF_OPTS += --with-tftp=busybox +else +# This actually means "autodetect", there's no way to really disable. +PETITBOOT_CONF_OPTS += --without-tftp +endif + +ifeq ($(BR2_PACKAGE_DTC),y) +PETITBOOT_DEPENDENCIES += dtc +PETITBOOT_CONF_OPTS += --with-fdt +define PETITBOOT_POST_INSTALL_DTB + $(INSTALL) -D -m 0755 $(@D)/utils/hooks/30-dtb-updates \ + $(TARGET_DIR)/etc/petitboot/boot.d/30-dtb-updates +endef +PETITBOOT_POST_INSTALL_TARGET_HOOKS += PETITBOOT_POST_INSTALL_DTB +else +PETITBOOT_CONF_OPTS += --without-fdt +endif + +PETITBOOT_GETTY_PORT = $(patsubst %,'%',$(call qstrip,$(BR2_PACKAGE_PETITBOOT_GETTY_PORT))) + +define PETITBOOT_POST_INSTALL + $(INSTALL) -D -m 0755 $(@D)/utils/bb-kexec-reboot \ + $(TARGET_DIR)/usr/libexec/petitboot/bb-kexec-reboot + $(INSTALL) -D -m 0755 $(@D)/utils/hooks/01-create-default-dtb \ + $(TARGET_DIR)/etc/petitboot/boot.d/01-create-default-dtb + $(INSTALL) -D -m 0755 $(@D)/utils/hooks/90-sort-dtb \ + $(TARGET_DIR)/etc/petitboot/boot.d/90-sort-dtb + $(INSTALL) -m 0755 -D $(PETITBOOT_PKGDIR)/S15pb-discover \ + $(TARGET_DIR)/etc/init.d/S15pb-discover + $(INSTALL) -D -m 0755 $(PETITBOOT_PKGDIR)/pb-console \ + $(TARGET_DIR)/etc/init.d/pb-console + + mkdir -p $(TARGET_DIR)/etc/udev/rules.d + (for port in $(PETITBOOT_GETTY_PORT); do \ + printf 'SUBSYSTEM=="tty", KERNEL=="%s", RUN+="/etc/init.d/pb-console start $$name"\n' "$$port"; \ + done) > $(TARGET_DIR)/etc/udev/rules.d/petitboot-console-ui.rules + + mkdir -p $(TARGET_DIR)/usr/share/udhcpc/default.script.d/ + ln -sf /usr/sbin/pb-udhcpc \ + $(TARGET_DIR)/usr/share/udhcpc/default.script.d/ +endef + +PETITBOOT_POST_INSTALL_TARGET_HOOKS += PETITBOOT_POST_INSTALL + +$(eval $(autotools-package)) diff --git a/package/php-amqp/0001-add-build-support-for-php-8.patch b/package/php-amqp/0001-add-build-support-for-php-8.patch deleted file mode 100644 index 6fe09ad3bde7..000000000000 --- a/package/php-amqp/0001-add-build-support-for-php-8.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 96cd5cb5eddd3db2faaa3643dad2fe4677d7c438 Mon Sep 17 00:00:00 2001 -From: mmokhi -Date: Thu, 30 Jul 2020 11:25:33 +0200 -Subject: [PATCH] Add build support for PHP8.0 (#381) - -From upstream commit: 96cd5cb5eddd3db2faaa3643dad2fe4677d7c438 - -Signed-off-by: mmokhi -Signed-off-by: Adam Duskett ---- - amqp_envelope.h | 7 +++++++ - php7_support.h | 11 +++++++++++ - 2 files changed, 18 insertions(+) - -diff --git a/amqp_envelope.h b/amqp_envelope.h -index e63a3a5..e315682 100644 ---- a/amqp_envelope.h -+++ b/amqp_envelope.h -@@ -20,6 +20,13 @@ - | - Jonathan Tansavatdi | - +----------------------------------------------------------------------+ - */ -+ -+#if PHP_MAJOR_VERSION >= 7 -+ #include "php7_support.h" -+#else -+ #include "php5_support.h" -+#endif -+ - extern zend_class_entry *amqp_envelope_class_entry; - - void convert_amqp_envelope_to_zval(amqp_envelope_t *amqp_envelope, zval *envelope TSRMLS_DC); -diff --git a/php7_support.h b/php7_support.h -index 47ce983..c9e8f5b 100644 ---- a/php7_support.h -+++ b/php7_support.h -@@ -101,6 +101,17 @@ typedef zval PHP5to7_zend_resource_le_t; - - #define PHP5to7_ZEND_ACC_FINAL_CLASS ZEND_ACC_FINAL - -+/* Small change to let it build after a major internal change for php8.0 -+ * More info: -+ * https://github.com/php/php-src/blob/php-8.0.0alpha3/UPGRADING.INTERNALS#L47 -+ */ -+#if PHP_MAJOR_VERSION >= 8 -+# define TSRMLS_DC -+# define TSRMLS_D -+# define TSRMLS_CC -+# define TSRMLS_C -+# endif -+ - #endif //PHP_AMQP_PHP7_SUPPORT_H - - /* diff --git a/package/php-amqp/0002-more-work-for-php-8.patch b/package/php-amqp/0002-more-work-for-php-8.patch deleted file mode 100644 index 3651f5a0d3bb..000000000000 --- a/package/php-amqp/0002-more-work-for-php-8.patch +++ /dev/null @@ -1,1265 +0,0 @@ -From df1241852b359cf12c346beaa68de202257efdf1 Mon Sep 17 00:00:00 2001 -From: Remi Collet -Date: Wed, 9 Dec 2020 17:00:46 +0100 -Subject: [PATCH] more work for PHP 8 (#383) - -* more work for PHP 8 - -* split test - -Signed-off-by: Remi Collet -Signed-off-by: Adam Duskett ---- - amqp_basic_properties.c | 84 +++++++++++++-------------- - amqp_channel.c | 49 +++++++++------- - amqp_connection.c | 106 +++++++++++++++++----------------- - amqp_connection_resource.c | 12 ++-- - amqp_decimal.c | 8 +-- - amqp_envelope.c | 12 ++-- - amqp_exchange.c | 22 +++---- - amqp_queue.c | 38 ++++++------ - amqp_timestamp.c | 6 +- - amqp_type.c | 6 +- - php5_support.h | 2 + - php7_support.h | 9 +++ - php_amqp.h | 8 +-- - tests/amqptimestamp.phpt | 4 +- - tests/amqptimestamp_php8.phpt | 60 +++++++++++++++++++ - tests/bug_61533.phpt | 2 +- - 16 files changed, 254 insertions(+), 174 deletions(-) - create mode 100644 tests/amqptimestamp_php8.phpt - -diff --git a/amqp_basic_properties.c b/amqp_basic_properties.c -index 69b813e..5375f44 100644 ---- a/amqp_basic_properties.c -+++ b/amqp_basic_properties.c -@@ -70,7 +70,7 @@ void php_amqp_basic_properties_set_empty_headers(zval *obj TSRMLS_DC) { - PHP5to7_MAYBE_INIT(headers); - PHP5to7_ARRAY_INIT(headers); - -- zend_update_property(this_ce, obj, ZEND_STRL("headers"), PHP5to7_MAYBE_PTR(headers) TSRMLS_CC); -+ zend_update_property(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("headers"), PHP5to7_MAYBE_PTR(headers) TSRMLS_CC); - - PHP5to7_MAYBE_DESTROY(headers); - } -@@ -118,29 +118,29 @@ static PHP_METHOD(AMQPBasicProperties, __construct) { - ) == FAILURE) { - return; - } -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("content_type"), content_type, content_type_len TSRMLS_CC); -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("content_encoding"), content_encoding, content_encoding_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("content_type"), content_type, content_type_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("content_encoding"), content_encoding, content_encoding_len TSRMLS_CC); - - if (headers != NULL) { -- zend_update_property(this_ce, getThis(), ZEND_STRL("headers"), headers TSRMLS_CC); -+ zend_update_property(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("headers"), headers TSRMLS_CC); - } else { - php_amqp_basic_properties_set_empty_headers(getThis() TSRMLS_CC); - } - -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("delivery_mode"), delivery_mode TSRMLS_CC); -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("priority"), priority TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("delivery_mode"), delivery_mode TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("priority"), priority TSRMLS_CC); - -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("correlation_id"), correlation_id, correlation_id_len TSRMLS_CC); -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("reply_to"), reply_to, reply_to_len TSRMLS_CC); -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("expiration"), expiration, expiration_len TSRMLS_CC); -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("message_id"), message_id, message_id_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("correlation_id"), correlation_id, correlation_id_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("reply_to"), reply_to, reply_to_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("expiration"), expiration, expiration_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("message_id"), message_id, message_id_len TSRMLS_CC); - -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("timestamp"), timestamp TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("timestamp"), timestamp TSRMLS_CC); - -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("type"), type, type_len TSRMLS_CC); -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("user_id"), user_id, user_id_len TSRMLS_CC); -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("app_id"), app_id, app_id_len TSRMLS_CC); -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("cluster_id"), cluster_id, cluster_id_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("type"), type, type_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("user_id"), user_id, user_id_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("app_id"), app_id, app_id_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("cluster_id"), cluster_id, cluster_id_len TSRMLS_CC); - } - /* }}} */ - -@@ -460,7 +460,7 @@ void parse_amqp_table(amqp_table_t *table, zval *result TSRMLS_DC) { - object_init_ex(PHP5to7_MAYBE_PTR(value), amqp_timestamp_class_entry); - - zend_call_method_with_1_params( -- &value, -+ PHP5to8_OBJ_PROP(&value), - amqp_timestamp_class_entry, - NULL, - "__construct", -@@ -488,7 +488,7 @@ void parse_amqp_table(amqp_table_t *table, zval *result TSRMLS_DC) { - object_init_ex(PHP5to7_MAYBE_PTR(value), amqp_decimal_class_entry); - - zend_call_method_with_2_params( -- &value, -+ PHP5to8_OBJ_PROP(&value), - amqp_decimal_class_entry, - NULL, - "__construct", -@@ -525,93 +525,93 @@ void php_amqp_basic_properties_extract(amqp_basic_properties_t *p, zval *obj TSR - PHP5to7_ARRAY_INIT(headers); - - if (p->_flags & AMQP_BASIC_CONTENT_TYPE_FLAG) { -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("content_type"), (const char *) p->content_type.bytes, (PHP5to7_param_str_len_type_t) p->content_type.len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("content_type"), (const char *) p->content_type.bytes, (PHP5to7_param_str_len_type_t) p->content_type.len TSRMLS_CC); - } else { - /* BC */ -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("content_type"), "", 0 TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("content_type"), "", 0 TSRMLS_CC); - } - - if (p->_flags & AMQP_BASIC_CONTENT_ENCODING_FLAG) { -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("content_encoding"), (const char *) p->content_encoding.bytes, (PHP5to7_param_str_len_type_t) p->content_encoding.len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("content_encoding"), (const char *) p->content_encoding.bytes, (PHP5to7_param_str_len_type_t) p->content_encoding.len TSRMLS_CC); - } else { - /* BC */ -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("content_encoding"), "", 0 TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("content_encoding"), "", 0 TSRMLS_CC); - } - - if (p->_flags & AMQP_BASIC_HEADERS_FLAG) { - parse_amqp_table(&(p->headers), PHP5to7_MAYBE_PTR(headers) TSRMLS_CC); - } - -- zend_update_property(this_ce, obj, ZEND_STRL("headers"), PHP5to7_MAYBE_PTR(headers) TSRMLS_CC); -+ zend_update_property(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("headers"), PHP5to7_MAYBE_PTR(headers) TSRMLS_CC); - - if (p->_flags & AMQP_BASIC_DELIVERY_MODE_FLAG) { -- zend_update_property_long(this_ce, obj, ZEND_STRL("delivery_mode"), (PHP5to7_param_long_type_t) p->delivery_mode TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("delivery_mode"), (PHP5to7_param_long_type_t) p->delivery_mode TSRMLS_CC); - } else { - /* BC */ -- zend_update_property_long(this_ce, obj, ZEND_STRL("delivery_mode"), AMQP_DELIVERY_NONPERSISTENT TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("delivery_mode"), AMQP_DELIVERY_NONPERSISTENT TSRMLS_CC); - } - - if (p->_flags & AMQP_BASIC_PRIORITY_FLAG) { -- zend_update_property_long(this_ce, obj, ZEND_STRL("priority"), (PHP5to7_param_long_type_t) p->priority TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("priority"), (PHP5to7_param_long_type_t) p->priority TSRMLS_CC); - } else { - /* BC */ -- zend_update_property_long(this_ce, obj, ZEND_STRL("priority"), 0 TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("priority"), 0 TSRMLS_CC); - } - - if (p->_flags & AMQP_BASIC_CORRELATION_ID_FLAG) { -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("correlation_id"), (const char *) p->correlation_id.bytes, (PHP5to7_param_str_len_type_t) p->correlation_id.len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("correlation_id"), (const char *) p->correlation_id.bytes, (PHP5to7_param_str_len_type_t) p->correlation_id.len TSRMLS_CC); - } else { - /* BC */ -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("correlation_id"), "", 0 TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("correlation_id"), "", 0 TSRMLS_CC); - } - - if (p->_flags & AMQP_BASIC_REPLY_TO_FLAG) { -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("reply_to"), (const char *) p->reply_to.bytes, (PHP5to7_param_str_len_type_t) p->reply_to.len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("reply_to"), (const char *) p->reply_to.bytes, (PHP5to7_param_str_len_type_t) p->reply_to.len TSRMLS_CC); - } else { - /* BC */ -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("reply_to"), "", 0 TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("reply_to"), "", 0 TSRMLS_CC); - } - - if (p->_flags & AMQP_BASIC_EXPIRATION_FLAG) { -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("expiration"), (const char *) p->expiration.bytes, (PHP5to7_param_str_len_type_t) p->expiration.len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("expiration"), (const char *) p->expiration.bytes, (PHP5to7_param_str_len_type_t) p->expiration.len TSRMLS_CC); - } else { - /* BC */ -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("expiration"), "", 0 TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("expiration"), "", 0 TSRMLS_CC); - } - - if (p->_flags & AMQP_BASIC_MESSAGE_ID_FLAG) { -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("message_id"), (const char *) p->message_id.bytes, (PHP5to7_param_str_len_type_t) p->message_id.len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("message_id"), (const char *) p->message_id.bytes, (PHP5to7_param_str_len_type_t) p->message_id.len TSRMLS_CC); - } else { - /* BC */ -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("message_id"), "", 0 TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("message_id"), "", 0 TSRMLS_CC); - } - - if (p->_flags & AMQP_BASIC_TIMESTAMP_FLAG) { -- zend_update_property_long(this_ce, obj, ZEND_STRL("timestamp"), (PHP5to7_param_long_type_t) p->timestamp TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("timestamp"), (PHP5to7_param_long_type_t) p->timestamp TSRMLS_CC); - } else { - /* BC */ -- zend_update_property_long(this_ce, obj, ZEND_STRL("timestamp"), 0 TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("timestamp"), 0 TSRMLS_CC); - } - - if (p->_flags & AMQP_BASIC_TYPE_FLAG) { -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("type"), (const char *) p->type.bytes, (PHP5to7_param_str_len_type_t) p->type.len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("type"), (const char *) p->type.bytes, (PHP5to7_param_str_len_type_t) p->type.len TSRMLS_CC); - } else { - /* BC */ -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("type"), "", 0 TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("type"), "", 0 TSRMLS_CC); - } - - if (p->_flags & AMQP_BASIC_USER_ID_FLAG) { -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("user_id"), (const char *) p->user_id.bytes, (PHP5to7_param_str_len_type_t) p->user_id.len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("user_id"), (const char *) p->user_id.bytes, (PHP5to7_param_str_len_type_t) p->user_id.len TSRMLS_CC); - } else { - /* BC */ -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("user_id"), "", 0 TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("user_id"), "", 0 TSRMLS_CC); - } - - if (p->_flags & AMQP_BASIC_APP_ID_FLAG) { -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("app_id"), (const char *) p->app_id.bytes, (PHP5to7_param_str_len_type_t) p->app_id.len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("app_id"), (const char *) p->app_id.bytes, (PHP5to7_param_str_len_type_t) p->app_id.len TSRMLS_CC); - } else { - /* BC */ -- zend_update_property_stringl(this_ce, obj, ZEND_STRL("app_id"), "", 0 TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(obj), ZEND_STRL("app_id"), "", 0 TSRMLS_CC); - } - - PHP5to7_MAYBE_DESTROY(headers); -diff --git a/amqp_channel.c b/amqp_channel.c -index ef9552a..493c6d3 100644 ---- a/amqp_channel.c -+++ b/amqp_channel.c -@@ -152,10 +152,15 @@ static zval * php_amqp_get_fci_gc_data(zend_fcall_info *fci, zval *gc_data) { - return gc_data; - } - -+#if PHP_MAJOR_VERSION < 8 - static HashTable *amqp_channel_gc(zval *object, zval **table, int *n) /* {{{ */ - { -- amqp_channel_object *channel = PHP_AMQP_GET_CHANNEL(object); -- -+ amqp_channel_object *channel = PHP_AMQP_GET_CHANNEL(object); -+#else -+static HashTable *amqp_channel_gc(zend_object *object, zval **table, int *n) /* {{{ */ -+{ -+ amqp_channel_object *channel = php_amqp_channel_object_fetch(object); -+#endif - int basic_return_cnt = php_amqp_get_fci_gc_data_count(&channel->callbacks.basic_return.fci); - int basic_ack_cnt = php_amqp_get_fci_gc_data_count(&channel->callbacks.basic_ack.fci); - int basic_nack_cnt = php_amqp_get_fci_gc_data_count(&channel->callbacks.basic_nack.fci); -@@ -249,7 +254,7 @@ static HashTable *amqp_channel_gc(zval *object, zval ***table, int *n TSRMLS_DC) - *table = channel->gc_data; - *n = cnt; - -- return zend_std_get_properties(object TSRMLS_CC); -+ return zend_std_get_properties(PHP5to8_OBJ_PROP(object) TSRMLS_CC); - } /* }}} */ - - #endif -@@ -331,7 +336,7 @@ static PHP_METHOD(amqp_channel_class, __construct) - amqp_connection_object *connection; - - /* Parse out the method parameters */ -- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "o", &connection_object) == FAILURE) { -+ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "O", &connection_object, amqp_connection_class_entry) == FAILURE) { - zend_throw_exception(amqp_channel_exception_class_entry, "Parameter must be an instance of AMQPConnection.", 0 TSRMLS_CC); - RETURN_NULL(); - } -@@ -341,7 +346,7 @@ static PHP_METHOD(amqp_channel_class, __construct) - PHP5to7_MAYBE_INIT(consumers); - PHP5to7_ARRAY_INIT(consumers); - -- zend_update_property(this_ce, getThis(), ZEND_STRL("consumers"), PHP5to7_MAYBE_PTR(consumers) TSRMLS_CC); -+ zend_update_property(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("consumers"), PHP5to7_MAYBE_PTR(consumers) TSRMLS_CC); - - PHP5to7_MAYBE_DESTROY(consumers); - -@@ -351,16 +356,16 @@ static PHP_METHOD(amqp_channel_class, __construct) - #endif - - /* Set the prefetch count */ -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("prefetch_count"), INI_INT("amqp.prefetch_count") TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("prefetch_count"), INI_INT("amqp.prefetch_count") TSRMLS_CC); - - /* Set the prefetch size */ -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("prefetch_size"), INI_INT("amqp.prefetch_size") TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("prefetch_size"), INI_INT("amqp.prefetch_size") TSRMLS_CC); - - /* Set the global prefetch count */ -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("global_prefetch_count"), INI_INT("amqp.global_prefetch_count") TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("global_prefetch_count"), INI_INT("amqp.global_prefetch_count") TSRMLS_CC); - - /* Set the global prefetch size */ -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("global_prefetch_size"), INI_INT("amqp.global_prefetch_size") TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("global_prefetch_size"), INI_INT("amqp.global_prefetch_size") TSRMLS_CC); - - /* Pull out and verify the connection */ - connection = PHP_AMQP_GET_CONNECTION(connection_object); -@@ -376,7 +381,7 @@ static PHP_METHOD(amqp_channel_class, __construct) - return; - } - -- zend_update_property(this_ce, getThis(), ZEND_STRL("connection"), connection_object TSRMLS_CC); -+ zend_update_property(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("connection"), connection_object TSRMLS_CC); - - channel_resource = (amqp_channel_resource*)ecalloc(1, sizeof(amqp_channel_resource)); - channel->channel_resource = channel_resource; -@@ -580,8 +585,8 @@ static PHP_METHOD(amqp_channel_class, setPrefetchCount) - } - - /* Set the prefetch count - the implication is to disable the size */ -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("prefetch_count"), prefetch_count TSRMLS_CC); -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("prefetch_size"), 0 TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("prefetch_count"), prefetch_count TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("prefetch_size"), 0 TSRMLS_CC); - - RETURN_TRUE; - } -@@ -659,8 +664,8 @@ static PHP_METHOD(amqp_channel_class, setPrefetchSize) - } - - /* Set the prefetch size - the implication is to disable the count */ -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("prefetch_count"), 0 TSRMLS_CC); -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("prefetch_size"), prefetch_size TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("prefetch_count"), 0 TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("prefetch_size"), prefetch_size TSRMLS_CC); - - RETURN_TRUE; - } -@@ -715,8 +720,8 @@ static PHP_METHOD(amqp_channel_class, setGlobalPrefetchCount) - } - - /* Set the global prefetch count - the implication is to disable the size */ -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("global_prefetch_count"), global_prefetch_count TSRMLS_CC); -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("global_prefetch_size"), 0 TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("global_prefetch_count"), global_prefetch_count TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("global_prefetch_size"), 0 TSRMLS_CC); - - RETURN_TRUE; - } -@@ -771,8 +776,8 @@ static PHP_METHOD(amqp_channel_class, setGlobalPrefetchSize) - } - - /* Set the global prefetch size - the implication is to disable the count */ -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("global_prefetch_count"), 0 TSRMLS_CC); -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("global_prefetch_size"), global_prefetch_size TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("global_prefetch_count"), 0 TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("global_prefetch_size"), global_prefetch_size TSRMLS_CC); - - RETURN_TRUE; - } -@@ -808,11 +813,11 @@ static PHP_METHOD(amqp_channel_class, qos) - - /* Set the prefetch size and prefetch count */ - if (global) { -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("global_prefetch_size"), prefetch_size TSRMLS_CC); -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("global_prefetch_count"), prefetch_count TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("global_prefetch_size"), prefetch_size TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("global_prefetch_count"), prefetch_count TSRMLS_CC); - } else { -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("prefetch_size"), prefetch_size TSRMLS_CC); -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("prefetch_count"), prefetch_count TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("prefetch_size"), prefetch_size TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("prefetch_count"), prefetch_count TSRMLS_CC); - } - - /* If we are already connected, set the new prefetch count */ -diff --git a/amqp_connection.c b/amqp_connection.c -index 5891a4f..466501a 100644 ---- a/amqp_connection.c -+++ b/amqp_connection.c -@@ -68,9 +68,9 @@ zend_object_handlers amqp_connection_object_handlers; - convert_to_string(PHP5to7_MAYBE_DEREF(zdata)); \ - } \ - if (zdata && Z_STRLEN_P(PHP5to7_MAYBE_DEREF(zdata)) > 0) { \ -- zend_update_property_string(this_ce, getThis(), ZEND_STRL(name), Z_STRVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); \ -+ zend_update_property_string(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL(name), Z_STRVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); \ - } else { \ -- zend_update_property_string(this_ce, getThis(), ZEND_STRL(name), INI_STR("amqp." name) TSRMLS_CC); \ -+ zend_update_property_string(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL(name), INI_STR("amqp." name) TSRMLS_CC); \ - } - - #define PHP_AMQP_EXTRACT_CONNECTION_BOOL(name) \ -@@ -80,9 +80,9 @@ zend_object_handlers amqp_connection_object_handlers; - convert_to_long(PHP5to7_MAYBE_DEREF(zdata)); \ - } \ - if (zdata) { \ -- zend_update_property_bool(this_ce, getThis(), ZEND_STRL(name), Z_LVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); \ -+ zend_update_property_bool(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL(name), Z_LVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); \ - } else { \ -- zend_update_property_bool(this_ce, getThis(), ZEND_STRL(name), INI_INT("amqp." name) TSRMLS_CC); \ -+ zend_update_property_bool(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL(name), INI_INT("amqp." name) TSRMLS_CC); \ - } - - static int php_amqp_connection_resource_deleter(PHP5to7_zend_resource_le_t *el, amqp_connection_resource *connection_resource TSRMLS_DC) -@@ -344,13 +344,13 @@ static PHP_METHOD(amqp_connection_class, __construct) - /* Validate the given login */ - if (zdata && Z_STRLEN_P(PHP5to7_MAYBE_DEREF(zdata)) > 0) { - if (Z_STRLEN_P(PHP5to7_MAYBE_DEREF(zdata)) < 128) { -- zend_update_property(this_ce, getThis(), ZEND_STRL("login"), PHP5to7_MAYBE_DEREF(zdata)TSRMLS_CC); -+ zend_update_property(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("login"), PHP5to7_MAYBE_DEREF(zdata)TSRMLS_CC); - } else { - zend_throw_exception(amqp_connection_exception_class_entry, "Parameter 'login' exceeds 128 character limit.", 0 TSRMLS_CC); - return; - } - } else { -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("login"), INI_STR("amqp.login"), (PHP5to7_param_str_len_type_t) (strlen(INI_STR("amqp.login")) > 128 ? 128 : strlen(INI_STR("amqp.login"))) TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("login"), INI_STR("amqp.login"), (PHP5to7_param_str_len_type_t) (strlen(INI_STR("amqp.login")) > 128 ? 128 : strlen(INI_STR("amqp.login"))) TSRMLS_CC); - } - - /* Pull the password out of the $params array */ -@@ -362,13 +362,13 @@ static PHP_METHOD(amqp_connection_class, __construct) - /* Validate the given password */ - if (zdata && Z_STRLEN_P(PHP5to7_MAYBE_DEREF(zdata)) > 0) { - if (Z_STRLEN_P(PHP5to7_MAYBE_DEREF(zdata)) < 128) { -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("password"), Z_STRVAL_P(PHP5to7_MAYBE_DEREF(zdata)), Z_STRLEN_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("password"), Z_STRVAL_P(PHP5to7_MAYBE_DEREF(zdata)), Z_STRLEN_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); - } else { - zend_throw_exception(amqp_connection_exception_class_entry, "Parameter 'password' exceeds 128 character limit.", 0 TSRMLS_CC); - return; - } - } else { -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("password"), INI_STR("amqp.password"), (PHP5to7_param_str_len_type_t) (strlen(INI_STR("amqp.password")) > 128 ? 128 : strlen(INI_STR("amqp.password"))) TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("password"), INI_STR("amqp.password"), (PHP5to7_param_str_len_type_t) (strlen(INI_STR("amqp.password")) > 128 ? 128 : strlen(INI_STR("amqp.password"))) TSRMLS_CC); - } - - /* Pull the host out of the $params array */ -@@ -380,13 +380,13 @@ static PHP_METHOD(amqp_connection_class, __construct) - /* Validate the given host */ - if (zdata && Z_STRLEN_P(PHP5to7_MAYBE_DEREF(zdata)) > 0) { - if (Z_STRLEN_P(PHP5to7_MAYBE_DEREF(zdata)) < 128) { -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("host"), Z_STRVAL_P(PHP5to7_MAYBE_DEREF(zdata)), Z_STRLEN_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("host"), Z_STRVAL_P(PHP5to7_MAYBE_DEREF(zdata)), Z_STRLEN_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); - } else { - zend_throw_exception(amqp_connection_exception_class_entry, "Parameter 'host' exceeds 128 character limit.", 0 TSRMLS_CC); - return; - } - } else { -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("host"), INI_STR("amqp.host"), (PHP5to7_param_str_len_type_t) (strlen(INI_STR("amqp.host")) > 128 ? 128 : strlen(INI_STR("amqp.host"))) TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("host"), INI_STR("amqp.host"), (PHP5to7_param_str_len_type_t) (strlen(INI_STR("amqp.host")) > 128 ? 128 : strlen(INI_STR("amqp.host"))) TSRMLS_CC); - } - - /* Pull the vhost out of the $params array */ -@@ -398,25 +398,25 @@ static PHP_METHOD(amqp_connection_class, __construct) - /* Validate the given vhost */ - if (zdata && Z_STRLEN_P(PHP5to7_MAYBE_DEREF(zdata)) > 0) { - if (Z_STRLEN_P(PHP5to7_MAYBE_DEREF(zdata)) < 128) { -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("vhost"), Z_STRVAL_P(PHP5to7_MAYBE_DEREF(zdata)), Z_STRLEN_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("vhost"), Z_STRVAL_P(PHP5to7_MAYBE_DEREF(zdata)), Z_STRLEN_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); - } else { - zend_throw_exception(amqp_connection_exception_class_entry, "Parameter 'vhost' exceeds 128 character limit.", 0 TSRMLS_CC); - return; - } - } else { -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("vhost"), INI_STR("amqp.vhost"), (PHP5to7_param_str_len_type_t) (strlen(INI_STR("amqp.vhost")) > 128 ? 128 : strlen(INI_STR("amqp.vhost"))) TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("vhost"), INI_STR("amqp.vhost"), (PHP5to7_param_str_len_type_t) (strlen(INI_STR("amqp.vhost")) > 128 ? 128 : strlen(INI_STR("amqp.vhost"))) TSRMLS_CC); - - } - -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("port"), INI_INT("amqp.port") TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("port"), INI_INT("amqp.port") TSRMLS_CC); - - if (ini_arr && PHP5to7_ZEND_HASH_FIND(HASH_OF(ini_arr), "port", sizeof("port"), zdata)) { - SEPARATE_ZVAL(zdata); - convert_to_long(PHP5to7_MAYBE_DEREF(zdata)); -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("port"), Z_LVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("port"), Z_LVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); - } - -- zend_update_property_double(this_ce, getThis(), ZEND_STRL("read_timeout"), INI_FLT("amqp.read_timeout") TSRMLS_CC); -+ zend_update_property_double(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("read_timeout"), INI_FLT("amqp.read_timeout") TSRMLS_CC); - - if (ini_arr && PHP5to7_ZEND_HASH_FIND(HASH_OF(ini_arr), "read_timeout", sizeof("read_timeout"), zdata)) { - SEPARATE_ZVAL(zdata); -@@ -424,7 +424,7 @@ static PHP_METHOD(amqp_connection_class, __construct) - if (Z_DVAL_P(PHP5to7_MAYBE_DEREF(zdata)) < 0) { - zend_throw_exception(amqp_connection_exception_class_entry, "Parameter 'read_timeout' must be greater than or equal to zero.", 0 TSRMLS_CC); - } else { -- zend_update_property_double(this_ce, getThis(), ZEND_STRL("read_timeout"), Z_DVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); -+ zend_update_property_double(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("read_timeout"), Z_DVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); - } - - if (ini_arr && PHP5to7_ZEND_HASH_FIND(HASH_OF(ini_arr), "timeout", sizeof("timeout"), zdata)) { -@@ -441,7 +441,7 @@ static PHP_METHOD(amqp_connection_class, __construct) - if (Z_DVAL_P(PHP5to7_MAYBE_DEREF(zdata)) < 0) { - zend_throw_exception(amqp_connection_exception_class_entry, "Parameter 'timeout' must be greater than or equal to zero.", 0 TSRMLS_CC); - } else { -- zend_update_property_double(this_ce, getThis(), ZEND_STRL("read_timeout"), Z_DVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); -+ zend_update_property_double(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("read_timeout"), Z_DVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); - } - } else { - -@@ -450,17 +450,17 @@ static PHP_METHOD(amqp_connection_class, __construct) - php_error_docref(NULL TSRMLS_CC, E_DEPRECATED, "INI setting 'amqp.timeout' is deprecated; use 'amqp.read_timeout' instead"); - - if (strcmp(DEFAULT_READ_TIMEOUT, INI_STR("amqp.read_timeout")) == 0) { -- zend_update_property_double(this_ce, getThis(), ZEND_STRL("read_timeout"), INI_FLT("amqp.timeout") TSRMLS_CC); -+ zend_update_property_double(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("read_timeout"), INI_FLT("amqp.timeout") TSRMLS_CC); - } else { - php_error_docref(NULL TSRMLS_CC, E_NOTICE, "INI setting 'amqp.read_timeout' will be used instead of 'amqp.timeout'"); -- zend_update_property_double(this_ce, getThis(), ZEND_STRL("read_timeout"), INI_FLT("amqp.read_timeout") TSRMLS_CC); -+ zend_update_property_double(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("read_timeout"), INI_FLT("amqp.read_timeout") TSRMLS_CC); - } - } else { -- zend_update_property_double(this_ce, getThis(), ZEND_STRL("read_timeout"), INI_FLT("amqp.read_timeout") TSRMLS_CC); -+ zend_update_property_double(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("read_timeout"), INI_FLT("amqp.read_timeout") TSRMLS_CC); - } - } - -- zend_update_property_double(this_ce, getThis(), ZEND_STRL("write_timeout"), INI_FLT("amqp.write_timeout") TSRMLS_CC); -+ zend_update_property_double(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("write_timeout"), INI_FLT("amqp.write_timeout") TSRMLS_CC); - - if (ini_arr && PHP5to7_ZEND_HASH_FIND(HASH_OF(ini_arr), "write_timeout", sizeof("write_timeout"), zdata)) { - SEPARATE_ZVAL(zdata); -@@ -468,11 +468,11 @@ static PHP_METHOD(amqp_connection_class, __construct) - if (Z_DVAL_P(PHP5to7_MAYBE_DEREF(zdata)) < 0) { - zend_throw_exception(amqp_connection_exception_class_entry, "Parameter 'write_timeout' must be greater than or equal to zero.", 0 TSRMLS_CC); - } else { -- zend_update_property_double(this_ce, getThis(), ZEND_STRL("write_timeout"), Z_DVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); -+ zend_update_property_double(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("write_timeout"), Z_DVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); - } - } - -- zend_update_property_double(this_ce, getThis(), ZEND_STRL("rpc_timeout"), INI_FLT("amqp.rpc_timeout") TSRMLS_CC); -+ zend_update_property_double(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("rpc_timeout"), INI_FLT("amqp.rpc_timeout") TSRMLS_CC); - - if (ini_arr && PHP5to7_ZEND_HASH_FIND(HASH_OF(ini_arr), "rpc_timeout", sizeof("rpc_timeout"), zdata)) { - SEPARATE_ZVAL(zdata); -@@ -480,11 +480,11 @@ static PHP_METHOD(amqp_connection_class, __construct) - if (Z_DVAL_P(PHP5to7_MAYBE_DEREF(zdata)) < 0) { - zend_throw_exception(amqp_connection_exception_class_entry, "Parameter 'rpc_timeout' must be greater than or equal to zero.", 0 TSRMLS_CC); - } else { -- zend_update_property_double(this_ce, getThis(), ZEND_STRL("rpc_timeout"), Z_DVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); -+ zend_update_property_double(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("rpc_timeout"), Z_DVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); - } - } - -- zend_update_property_double(this_ce, getThis(), ZEND_STRL("connect_timeout"), INI_FLT("amqp.connect_timeout") TSRMLS_CC); -+ zend_update_property_double(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("connect_timeout"), INI_FLT("amqp.connect_timeout") TSRMLS_CC); - - if (ini_arr && PHP5to7_ZEND_HASH_FIND(HASH_OF(ini_arr), "connect_timeout", sizeof("connect_timeout"), zdata)) { - SEPARATE_ZVAL(zdata); -@@ -492,12 +492,12 @@ static PHP_METHOD(amqp_connection_class, __construct) - if (Z_DVAL_P(PHP5to7_MAYBE_DEREF(zdata)) < 0) { - zend_throw_exception(amqp_connection_exception_class_entry, "Parameter 'connect_timeout' must be greater than or equal to zero.", 0 TSRMLS_CC); - } else { -- zend_update_property_double(this_ce, getThis(), ZEND_STRL("connect_timeout"), Z_DVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); -+ zend_update_property_double(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("connect_timeout"), Z_DVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); - - } - } - -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("channel_max"), INI_INT("amqp.channel_max") TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("channel_max"), INI_INT("amqp.channel_max") TSRMLS_CC); - - if (ini_arr && PHP5to7_ZEND_HASH_FIND(HASH_OF(ini_arr), "channel_max", sizeof("channel_max"), zdata)) { - SEPARATE_ZVAL(zdata); -@@ -506,14 +506,14 @@ static PHP_METHOD(amqp_connection_class, __construct) - zend_throw_exception(amqp_connection_exception_class_entry, "Parameter 'channel_max' is out of range.", 0 TSRMLS_CC); - } else { - if(Z_LVAL_P(PHP5to7_MAYBE_DEREF(zdata)) == 0) { -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("channel_max"), PHP_AMQP_DEFAULT_CHANNEL_MAX TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("channel_max"), PHP_AMQP_DEFAULT_CHANNEL_MAX TSRMLS_CC); - } else { -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("channel_max"), Z_LVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("channel_max"), Z_LVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); - } - } - } - -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("frame_max"), INI_INT("amqp.frame_max") TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("frame_max"), INI_INT("amqp.frame_max") TSRMLS_CC); - - if (ini_arr && PHP5to7_ZEND_HASH_FIND(HASH_OF(ini_arr), "frame_max", sizeof("frame_max"), zdata)) { - SEPARATE_ZVAL(zdata); -@@ -522,14 +522,14 @@ static PHP_METHOD(amqp_connection_class, __construct) - zend_throw_exception(amqp_connection_exception_class_entry, "Parameter 'frame_max' is out of range.", 0 TSRMLS_CC); - } else { - if(Z_LVAL_P(PHP5to7_MAYBE_DEREF(zdata)) == 0) { -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("frame_max"), PHP_AMQP_DEFAULT_FRAME_MAX TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("frame_max"), PHP_AMQP_DEFAULT_FRAME_MAX TSRMLS_CC); - } else { -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("frame_max"), Z_LVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("frame_max"), Z_LVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); - } - } - } - -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("heartbeat"), INI_INT("amqp.heartbeat") TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("heartbeat"), INI_INT("amqp.heartbeat") TSRMLS_CC); - - if (ini_arr && PHP5to7_ZEND_HASH_FIND(HASH_OF(ini_arr), "heartbeat", sizeof("heartbeat"), zdata)) { - SEPARATE_ZVAL(zdata); -@@ -537,16 +537,16 @@ static PHP_METHOD(amqp_connection_class, __construct) - if (Z_LVAL_P(PHP5to7_MAYBE_DEREF(zdata)) < 0 || Z_LVAL_P(PHP5to7_MAYBE_DEREF(zdata)) > PHP_AMQP_MAX_HEARTBEAT) { - zend_throw_exception(amqp_connection_exception_class_entry, "Parameter 'heartbeat' is out of range.", 0 TSRMLS_CC); - } else { -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("heartbeat"), Z_LVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("heartbeat"), Z_LVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); - } - } - -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("sasl_method"), INI_INT("amqp.sasl_method") TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("sasl_method"), INI_INT("amqp.sasl_method") TSRMLS_CC); - - if (ini_arr && PHP5to7_ZEND_HASH_FIND(HASH_OF(ini_arr), "sasl_method", sizeof("sasl_method"), zdata)) { - SEPARATE_ZVAL(zdata); - convert_to_long(PHP5to7_MAYBE_DEREF(zdata)); -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("sasl_method"), Z_LVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("sasl_method"), Z_LVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); - } - - -@@ -563,7 +563,7 @@ static PHP_METHOD(amqp_connection_class, __construct) - convert_to_string(PHP5to7_MAYBE_DEREF(zdata)); - } - if (zdata && Z_STRLEN_P(PHP5to7_MAYBE_DEREF(zdata)) > 0) { -- zend_update_property_string(this_ce, getThis(), ZEND_STRL("connection_name"), Z_STRVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); -+ zend_update_property_string(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("connection_name"), Z_STRVAL_P(PHP5to7_MAYBE_DEREF(zdata)) TSRMLS_CC); - } - } - /* }}} */ -@@ -789,7 +789,7 @@ static PHP_METHOD(amqp_connection_class, setLogin) - return; - } - -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("login"), login, login_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("login"), login, login_len TSRMLS_CC); - - RETURN_TRUE; - } -@@ -823,7 +823,7 @@ static PHP_METHOD(amqp_connection_class, setPassword) - return; - } - -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("password"), password, password_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("password"), password, password_len TSRMLS_CC); - - RETURN_TRUE; - } -@@ -858,7 +858,7 @@ static PHP_METHOD(amqp_connection_class, setHost) - return; - } - -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("host"), host, host_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("host"), host, host_len TSRMLS_CC); - - RETURN_TRUE; - } -@@ -910,7 +910,7 @@ static PHP_METHOD(amqp_connection_class, setPort) - return; - } - -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("port"), port TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("port"), port TSRMLS_CC); - - RETURN_TRUE; - } -@@ -943,7 +943,7 @@ static PHP_METHOD(amqp_connection_class, setVhost) - return; - } - -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("vhost"), vhost, vhost_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("vhost"), vhost, vhost_len TSRMLS_CC); - - RETURN_TRUE; - } -@@ -986,7 +986,7 @@ static PHP_METHOD(amqp_connection_class, setTimeout) - /* Get the connection object out of the store */ - connection = PHP_AMQP_GET_CONNECTION(getThis()); - -- zend_update_property_double(this_ce, getThis(), ZEND_STRL("read_timeout"), read_timeout TSRMLS_CC); -+ zend_update_property_double(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("read_timeout"), read_timeout TSRMLS_CC); - - if (connection->connection_resource && connection->connection_resource->is_connected) { - if (php_amqp_set_resource_read_timeout(connection->connection_resource, read_timeout TSRMLS_CC) == 0) { -@@ -1032,7 +1032,7 @@ static PHP_METHOD(amqp_connection_class, setReadTimeout) - /* Get the connection object out of the store */ - connection = PHP_AMQP_GET_CONNECTION(getThis()); - -- zend_update_property_double(this_ce, getThis(), ZEND_STRL("read_timeout"), read_timeout TSRMLS_CC); -+ zend_update_property_double(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("read_timeout"), read_timeout TSRMLS_CC); - - if (connection->connection_resource && connection->connection_resource->is_connected) { - if (php_amqp_set_resource_read_timeout(connection->connection_resource, read_timeout TSRMLS_CC) == 0) { -@@ -1078,7 +1078,7 @@ static PHP_METHOD(amqp_connection_class, setWriteTimeout) - /* Get the connection object out of the store */ - connection = PHP_AMQP_GET_CONNECTION(getThis()); - -- zend_update_property_double(this_ce, getThis(), ZEND_STRL("write_timeout"), write_timeout TSRMLS_CC); -+ zend_update_property_double(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("write_timeout"), write_timeout TSRMLS_CC); - - if (connection->connection_resource && connection->connection_resource->is_connected) { - if (php_amqp_set_resource_write_timeout(connection->connection_resource, write_timeout TSRMLS_CC) == 0) { -@@ -1124,7 +1124,7 @@ static PHP_METHOD(amqp_connection_class, setRpcTimeout) - /* Get the connection object out of the store */ - connection = PHP_AMQP_GET_CONNECTION(getThis()); - -- zend_update_property_double(this_ce, getThis(), ZEND_STRL("rpc_timeout"), rpc_timeout TSRMLS_CC); -+ zend_update_property_double(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("rpc_timeout"), rpc_timeout TSRMLS_CC); - - if (connection->connection_resource && connection->connection_resource->is_connected) { - if (php_amqp_set_resource_rpc_timeout(connection->connection_resource, rpc_timeout TSRMLS_CC) == 0) { -@@ -1255,7 +1255,7 @@ static PHP_METHOD(amqp_connection_class, setCACert) - return; - } - -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("cacert"), str, str_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("cacert"), str, str_len TSRMLS_CC); - - RETURN_TRUE; - } -@@ -1279,7 +1279,7 @@ static PHP_METHOD(amqp_connection_class, setCert) - return; - } - -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("cert"), str, str_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("cert"), str, str_len TSRMLS_CC); - - RETURN_TRUE; - } -@@ -1303,7 +1303,7 @@ static PHP_METHOD(amqp_connection_class, setKey) - return; - } - -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("key"), str, str_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("key"), str, str_len TSRMLS_CC); - - RETURN_TRUE; - } -@@ -1328,7 +1328,7 @@ static PHP_METHOD(amqp_connection_class, setVerify) - return; - } - -- zend_update_property_bool(this_ce, getThis(), ZEND_STRL("verify"), verify TSRMLS_CC); -+ zend_update_property_bool(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("verify"), verify TSRMLS_CC); - - RETURN_TRUE; - } -@@ -1361,7 +1361,7 @@ static PHP_METHOD(amqp_connection_class, setSaslMethod) - return; - } - -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("sasl_method"), method TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("sasl_method"), method TSRMLS_CC); - - RETURN_TRUE; - } -@@ -1385,9 +1385,9 @@ static PHP_METHOD(amqp_connection_class, setConnectionName) - return; - } - if (str == NULL) { -- zend_update_property_null(this_ce, getThis(), ZEND_STRL("connection_name") TSRMLS_CC); -+ zend_update_property_null(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("connection_name") TSRMLS_CC); - } else { -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("connection_name"), str, str_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("connection_name"), str, str_len TSRMLS_CC); - } - - -diff --git a/amqp_connection_resource.c b/amqp_connection_resource.c -index 7e20a5c..b0e065a 100644 ---- a/amqp_connection_resource.c -+++ b/amqp_connection_resource.c -@@ -112,15 +112,15 @@ static void php_amqp_close_connection_from_server(amqp_rpc_reply_t reply, char * - - if (!reply.reply.id) { - PHP_AMQP_G(error_code) = -1; -- spprintf(message, 0, "Server connection error: %d, message: %s", -- PHP_AMQP_G(error_code), -+ spprintf(message, 0, "Server connection error: %ld, message: %s", -+ (long)PHP_AMQP_G(error_code), - "unexpected response" - ); - } else { - PHP_AMQP_G(error_code) = m->reply_code; - spprintf(message, 0, "Server connection error: %d, message: %.*s", - m->reply_code, -- (PHP5to7_param_str_len_type_t) m->reply_text.len, -+ (int) m->reply_text.len, - (char *) m->reply_text.bytes - ); - } -@@ -156,15 +156,15 @@ static void php_amqp_close_channel_from_server(amqp_rpc_reply_t reply, char **me - - if (!reply.reply.id) { - PHP_AMQP_G(error_code) = -1; -- spprintf(message, 0, "Server channel error: %d, message: %s", -- PHP_AMQP_G(error_code), -+ spprintf(message, 0, "Server channel error: %ld, message: %s", -+ (long)PHP_AMQP_G(error_code), - "unexpected response" - ); - } else { - PHP_AMQP_G(error_code) = m->reply_code; - spprintf(message, 0, "Server channel error: %d, message: %.*s", - m->reply_code, -- (PHP5to7_param_str_len_type_t) m->reply_text.len, -+ (int) m->reply_text.len, - (char *)m->reply_text.bytes - ); - } -diff --git a/amqp_decimal.c b/amqp_decimal.c -index 83c9f20..8fd92c1 100644 ---- a/amqp_decimal.c -+++ b/amqp_decimal.c -@@ -53,7 +53,7 @@ static PHP_METHOD(amqp_decimal_class, __construct) - } - - if (exponent > AMQP_DECIMAL_EXPONENT_MAX) { -- zend_throw_exception_ex(amqp_value_exception_class_entry, 0 TSRMLS_CC, "Decimal exponent value must be less than %u.", AMQP_DECIMAL_EXPONENT_MAX); -+ zend_throw_exception_ex(amqp_value_exception_class_entry, 0 TSRMLS_CC, "Decimal exponent value must be less than %u.", (unsigned)AMQP_DECIMAL_EXPONENT_MAX); - return; - } - if (significand < AMQP_DECIMAL_SIGNIFICAND_MIN) { -@@ -62,12 +62,12 @@ static PHP_METHOD(amqp_decimal_class, __construct) - } - - if (significand > AMQP_DECIMAL_SIGNIFICAND_MAX) { -- zend_throw_exception_ex(amqp_value_exception_class_entry, 0 TSRMLS_CC, "Decimal significand value must be less than %u.", AMQP_DECIMAL_SIGNIFICAND_MAX); -+ zend_throw_exception_ex(amqp_value_exception_class_entry, 0 TSRMLS_CC, "Decimal significand value must be less than %u.", (unsigned)AMQP_DECIMAL_SIGNIFICAND_MAX); - return; - } - -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("exponent"), exponent TSRMLS_CC); -- zend_update_property_long(this_ce, getThis(), ZEND_STRL("significand"), significand TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("exponent"), exponent TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("significand"), significand TSRMLS_CC); - } - /* }}} */ - -diff --git a/amqp_envelope.c b/amqp_envelope.c -index 8127bed..b7a7a45 100644 ---- a/amqp_envelope.c -+++ b/amqp_envelope.c -@@ -67,13 +67,13 @@ void convert_amqp_envelope_to_zval(amqp_envelope_t *amqp_envelope, zval *envelop - amqp_basic_properties_t *p = &amqp_envelope->message.properties; - amqp_message_t *message = &amqp_envelope->message; - -- zend_update_property_stringl(this_ce, envelope, ZEND_STRL("body"), (const char *) message->body.bytes, (PHP5to7_param_str_len_type_t) message->body.len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(envelope), ZEND_STRL("body"), (const char *) message->body.bytes, (PHP5to7_param_str_len_type_t) message->body.len TSRMLS_CC); - -- zend_update_property_stringl(this_ce, envelope, ZEND_STRL("consumer_tag"), (const char *) amqp_envelope->consumer_tag.bytes, (PHP5to7_param_str_len_type_t) amqp_envelope->consumer_tag.len TSRMLS_CC); -- zend_update_property_long(this_ce, envelope, ZEND_STRL("delivery_tag"), (PHP5to7_param_long_type_t) amqp_envelope->delivery_tag TSRMLS_CC); -- zend_update_property_bool(this_ce, envelope, ZEND_STRL("is_redelivery"), (PHP5to7_param_long_type_t) amqp_envelope->redelivered TSRMLS_CC); -- zend_update_property_stringl(this_ce, envelope, ZEND_STRL("exchange_name"), (const char *) amqp_envelope->exchange.bytes, (PHP5to7_param_str_len_type_t) amqp_envelope->exchange.len TSRMLS_CC); -- zend_update_property_stringl(this_ce, envelope, ZEND_STRL("routing_key"), (const char *) amqp_envelope->routing_key.bytes, (PHP5to7_param_str_len_type_t) amqp_envelope->routing_key.len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(envelope), ZEND_STRL("consumer_tag"), (const char *) amqp_envelope->consumer_tag.bytes, (PHP5to7_param_str_len_type_t) amqp_envelope->consumer_tag.len TSRMLS_CC); -+ zend_update_property_long(this_ce, PHP5to8_OBJ_PROP(envelope), ZEND_STRL("delivery_tag"), (PHP5to7_param_long_type_t) amqp_envelope->delivery_tag TSRMLS_CC); -+ zend_update_property_bool(this_ce, PHP5to8_OBJ_PROP(envelope), ZEND_STRL("is_redelivery"), (PHP5to7_param_long_type_t) amqp_envelope->redelivered TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(envelope), ZEND_STRL("exchange_name"), (const char *) amqp_envelope->exchange.bytes, (PHP5to7_param_str_len_type_t) amqp_envelope->exchange.len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(envelope), ZEND_STRL("routing_key"), (const char *) amqp_envelope->routing_key.bytes, (PHP5to7_param_str_len_type_t) amqp_envelope->routing_key.len TSRMLS_CC); - - php_amqp_basic_properties_extract(p, envelope TSRMLS_CC); - } -diff --git a/amqp_exchange.c b/amqp_exchange.c -index 4f80d3b..4bfe397 100644 ---- a/amqp_exchange.c -+++ b/amqp_exchange.c -@@ -65,20 +65,20 @@ static PHP_METHOD(amqp_exchange_class, __construct) - zval *channelObj; - amqp_channel_resource *channel_resource; - -- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "o", &channelObj) == FAILURE) { -+ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "O", &channelObj, amqp_channel_class_entry) == FAILURE) { - return; - } - - PHP5to7_MAYBE_INIT(arguments); - PHP5to7_ARRAY_INIT(arguments); -- zend_update_property(this_ce, getThis(), ZEND_STRL("arguments"), PHP5to7_MAYBE_PTR(arguments) TSRMLS_CC); -+ zend_update_property(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("arguments"), PHP5to7_MAYBE_PTR(arguments) TSRMLS_CC); - PHP5to7_MAYBE_DESTROY(arguments); - - channel_resource = PHP_AMQP_GET_CHANNEL_RESOURCE(channelObj); - PHP_AMQP_VERIFY_CHANNEL_RESOURCE(channel_resource, "Could not create exchange."); - -- zend_update_property(this_ce, getThis(), ZEND_STRL("channel"), channelObj TSRMLS_CC); -- zend_update_property(this_ce, getThis(), ZEND_STRL("connection"), PHP_AMQP_READ_OBJ_PROP(amqp_channel_class_entry, channelObj, "connection") TSRMLS_CC); -+ zend_update_property(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("channel"), channelObj TSRMLS_CC); -+ zend_update_property(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("connection"), PHP_AMQP_READ_OBJ_PROP(amqp_channel_class_entry, channelObj, "connection") TSRMLS_CC); - } - /* }}} */ - -@@ -119,7 +119,7 @@ static PHP_METHOD(amqp_exchange_class, setName) - } - - /* Set the exchange name */ -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("name"), name, name_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("name"), name, name_len TSRMLS_CC); - } - /* }}} */ - -@@ -168,10 +168,10 @@ static PHP_METHOD(amqp_exchange_class, setFlags) - /* Set the flags based on the bitmask we were given */ - flagBitmask = flagBitmask ? flagBitmask & PHP_AMQP_EXCHANGE_FLAGS : flagBitmask; - -- zend_update_property_bool(this_ce, getThis(), ZEND_STRL("passive"), IS_PASSIVE(flagBitmask) TSRMLS_CC); -- zend_update_property_bool(this_ce, getThis(), ZEND_STRL("durable"), IS_DURABLE(flagBitmask) TSRMLS_CC); -- zend_update_property_bool(this_ce, getThis(), ZEND_STRL("auto_delete"), IS_AUTODELETE(flagBitmask) TSRMLS_CC); -- zend_update_property_bool(this_ce, getThis(), ZEND_STRL("internal"), IS_INTERNAL(flagBitmask) TSRMLS_CC); -+ zend_update_property_bool(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("passive"), IS_PASSIVE(flagBitmask) TSRMLS_CC); -+ zend_update_property_bool(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("durable"), IS_DURABLE(flagBitmask) TSRMLS_CC); -+ zend_update_property_bool(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("auto_delete"), IS_AUTODELETE(flagBitmask) TSRMLS_CC); -+ zend_update_property_bool(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("internal"), IS_INTERNAL(flagBitmask) TSRMLS_CC); - } - /* }}} */ - -@@ -204,7 +204,7 @@ static PHP_METHOD(amqp_exchange_class, setType) - return; - } - -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("type"), type, type_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("type"), type, type_len TSRMLS_CC); - } - /* }}} */ - -@@ -273,7 +273,7 @@ static PHP_METHOD(amqp_exchange_class, setArguments) - return; - } - -- zend_update_property(this_ce, getThis(), ZEND_STRL("arguments"), zvalArguments TSRMLS_CC); -+ zend_update_property(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("arguments"), zvalArguments TSRMLS_CC); - - RETURN_TRUE; - } -diff --git a/amqp_queue.c b/amqp_queue.c -index c13629c..eeba144 100644 ---- a/amqp_queue.c -+++ b/amqp_queue.c -@@ -68,20 +68,20 @@ static PHP_METHOD(amqp_queue_class, __construct) - zval *channelObj; - amqp_channel_resource *channel_resource; - -- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "o", &channelObj) == FAILURE) { -+ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "O", &channelObj, amqp_channel_class_entry) == FAILURE) { - return; - } - - PHP5to7_MAYBE_INIT(arguments); - PHP5to7_ARRAY_INIT(arguments); -- zend_update_property(this_ce, getThis(), ZEND_STRL("arguments"), PHP5to7_MAYBE_PTR(arguments) TSRMLS_CC); -+ zend_update_property(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("arguments"), PHP5to7_MAYBE_PTR(arguments) TSRMLS_CC); - PHP5to7_MAYBE_DESTROY(arguments); - - channel_resource = PHP_AMQP_GET_CHANNEL_RESOURCE(channelObj); - PHP_AMQP_VERIFY_CHANNEL_RESOURCE(channel_resource, "Could not create queue."); - -- zend_update_property(this_ce, getThis(), ZEND_STRL("channel"), channelObj TSRMLS_CC); -- zend_update_property(this_ce, getThis(), ZEND_STRL("connection"), PHP_AMQP_READ_OBJ_PROP(amqp_channel_class_entry, channelObj, "connection") TSRMLS_CC); -+ zend_update_property(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("channel"), channelObj TSRMLS_CC); -+ zend_update_property(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("connection"), PHP_AMQP_READ_OBJ_PROP(amqp_channel_class_entry, channelObj, "connection") TSRMLS_CC); - - } - /* }}} */ -@@ -122,7 +122,7 @@ static PHP_METHOD(amqp_queue_class, setName) - } - - /* Set the queue name */ -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("name"), name, name_len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("name"), name, name_len TSRMLS_CC); - - /* BC */ - RETURN_TRUE; -@@ -175,10 +175,10 @@ static PHP_METHOD(amqp_queue_class, setFlags) - /* Set the flags based on the bitmask we were given */ - flagBitmask = flagBitmask ? flagBitmask & PHP_AMQP_QUEUE_FLAGS : flagBitmask; - -- zend_update_property_bool(this_ce, getThis(), ZEND_STRL("passive"), IS_PASSIVE(flagBitmask) TSRMLS_CC); -- zend_update_property_bool(this_ce, getThis(), ZEND_STRL("durable"), IS_DURABLE(flagBitmask) TSRMLS_CC); -- zend_update_property_bool(this_ce, getThis(), ZEND_STRL("exclusive"), IS_EXCLUSIVE(flagBitmask) TSRMLS_CC); -- zend_update_property_bool(this_ce, getThis(), ZEND_STRL("auto_delete"), IS_AUTODELETE(flagBitmask) TSRMLS_CC); -+ zend_update_property_bool(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("passive"), IS_PASSIVE(flagBitmask) TSRMLS_CC); -+ zend_update_property_bool(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("durable"), IS_DURABLE(flagBitmask) TSRMLS_CC); -+ zend_update_property_bool(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("exclusive"), IS_EXCLUSIVE(flagBitmask) TSRMLS_CC); -+ zend_update_property_bool(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("auto_delete"), IS_AUTODELETE(flagBitmask) TSRMLS_CC); - - /* BC */ - RETURN_TRUE; -@@ -250,7 +250,7 @@ static PHP_METHOD(amqp_queue_class, setArguments) - return; - } - -- zend_update_property(this_ce, getThis(), ZEND_STRL("arguments"), zvalArguments TSRMLS_CC); -+ zend_update_property(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("arguments"), zvalArguments TSRMLS_CC); - - RETURN_TRUE; - } -@@ -342,7 +342,7 @@ static PHP_METHOD(amqp_queue_class, declareQueue) - - /* Set the queue name, in case it is an autogenerated queue name */ - name = php_amqp_type_amqp_bytes_to_char(r->queue); -- zend_update_property_string(this_ce, getThis(), ZEND_STRL("name"), name TSRMLS_CC); -+ zend_update_property_string(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("name"), name TSRMLS_CC); - efree(name); - - php_amqp_maybe_release_buffers_on_channel(channel_resource->connection_resource, channel_resource); -@@ -525,7 +525,7 @@ static PHP_METHOD(amqp_queue_class, consume) - } - - zval *channel_zv = PHP_AMQP_READ_THIS_PROP("channel"); -- zval *consumers = zend_read_property(amqp_channel_class_entry, channel_zv, ZEND_STRL("consumers"), 0 PHP5to7_READ_PROP_RV_PARAM_CC TSRMLS_CC); -+ zval *consumers = zend_read_property(amqp_channel_class_entry, PHP5to8_OBJ_PROP(channel_zv), ZEND_STRL("consumers"), 0 PHP5to7_READ_PROP_RV_PARAM_CC TSRMLS_CC); - - if (IS_ARRAY != Z_TYPE_P(consumers)) { - zend_throw_exception(amqp_queue_exception_class_entry, "Invalid channel consumers, forgot to call channel constructor?", 0 TSRMLS_CC); -@@ -594,7 +594,7 @@ static PHP_METHOD(amqp_queue_class, consume) - efree(key); - - /* Set the consumer tag name, in case it is an autogenerated consumer tag name */ -- zend_update_property_stringl(this_ce, getThis(), ZEND_STRL("consumer_tag"), (const char *) r->consumer_tag.bytes, (PHP5to7_param_str_len_type_t) r->consumer_tag.len TSRMLS_CC); -+ zend_update_property_stringl(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("consumer_tag"), (const char *) r->consumer_tag.bytes, (PHP5to7_param_str_len_type_t) r->consumer_tag.len TSRMLS_CC); - } - - if (!ZEND_FCI_INITIALIZED(fci)) { -@@ -674,7 +674,7 @@ static PHP_METHOD(amqp_queue_class, consume) - current_channel_zv = current_channel_resource->parent->this_ptr; - #endif - -- consumers = zend_read_property(amqp_channel_class_entry, PHP5to7_MAYBE_PTR(current_channel_zv), ZEND_STRL("consumers"), 0 PHP5to7_READ_PROP_RV_PARAM_CC TSRMLS_CC); -+ consumers = zend_read_property(amqp_channel_class_entry, PHP5to8_OBJ_PROP(PHP5to7_MAYBE_PTR(current_channel_zv)), ZEND_STRL("consumers"), 0 PHP5to7_READ_PROP_RV_PARAM_CC TSRMLS_CC); - - if (IS_ARRAY != Z_TYPE_P(consumers)) { - zend_throw_exception(amqp_queue_exception_class_entry, "Invalid channel consumers, forgot to call channel constructor?", 0 TSRMLS_CC); -@@ -689,8 +689,8 @@ static PHP_METHOD(amqp_queue_class, consume) - PHP5to7_zval_t exception PHP5to7_MAYBE_SET_TO_NULL; - PHP5to7_MAYBE_INIT(exception); - object_init_ex(PHP5to7_MAYBE_PTR(exception), amqp_envelope_exception_class_entry); -- zend_update_property_string(zend_exception_get_default(TSRMLS_C), PHP5to7_MAYBE_PTR(exception), ZEND_STRL("message"), "Orphaned envelope" TSRMLS_CC); -- zend_update_property(amqp_envelope_exception_class_entry, PHP5to7_MAYBE_PTR(exception), ZEND_STRL("envelope"), PHP5to7_MAYBE_PTR(message) TSRMLS_CC); -+ zend_update_property_string(zend_exception_get_default(TSRMLS_C), PHP5to8_OBJ_PROP(PHP5to7_MAYBE_PTR(exception)), ZEND_STRL("message"), "Orphaned envelope" TSRMLS_CC); -+ zend_update_property(amqp_envelope_exception_class_entry, PHP5to8_OBJ_PROP(PHP5to7_MAYBE_PTR(exception)), ZEND_STRL("envelope"), PHP5to7_MAYBE_PTR(message) TSRMLS_CC); - - zend_throw_exception_object(PHP5to7_MAYBE_PTR(exception) TSRMLS_CC); - -@@ -946,7 +946,7 @@ static PHP_METHOD(amqp_queue_class, cancel) - } - - zval *channel_zv = PHP_AMQP_READ_THIS_PROP("channel"); -- zval *consumers = zend_read_property(amqp_channel_class_entry, channel_zv, ZEND_STRL("consumers"), 0 PHP5to7_READ_PROP_RV_PARAM_CC TSRMLS_CC); -+ zval *consumers = zend_read_property(amqp_channel_class_entry, PHP5to8_OBJ_PROP(channel_zv), ZEND_STRL("consumers"), 0 PHP5to7_READ_PROP_RV_PARAM_CC TSRMLS_CC); - zend_bool has_consumer_tag = (zend_bool) (IS_STRING == Z_TYPE_P(PHP_AMQP_READ_THIS_PROP("consumer_tag"))); - - if (IS_ARRAY != Z_TYPE_P(consumers)) { -@@ -977,8 +977,8 @@ static PHP_METHOD(amqp_queue_class, cancel) - return; - } - -- if (!consumer_tag_len || has_consumer_tag && strcmp(consumer_tag, PHP_AMQP_READ_THIS_PROP_STR("consumer_tag")) != 0) { -- zend_update_property_null(this_ce, getThis(), ZEND_STRL("consumer_tag") TSRMLS_CC); -+ if (!consumer_tag_len || (has_consumer_tag && strcmp(consumer_tag, PHP_AMQP_READ_THIS_PROP_STR("consumer_tag")) != 0)) { -+ zend_update_property_null(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("consumer_tag") TSRMLS_CC); - } - - char *key; -diff --git a/amqp_timestamp.c b/amqp_timestamp.c -index d9eec39..ed07ab6 100644 ---- a/amqp_timestamp.c -+++ b/amqp_timestamp.c -@@ -61,7 +61,7 @@ static PHP_METHOD(amqp_timestamp_class, __construct) - #if PHP_MAJOR_VERSION >= 7 - zend_string *str; - str = _php_math_number_format_ex(timestamp, 0, "", 0, "", 0); -- zend_update_property_str(this_ce, getThis(), ZEND_STRL("timestamp"), str); -+ zend_update_property_str(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL("timestamp"), str); - zend_string_delref(str); - #else - char *str; -@@ -104,7 +104,11 @@ ZEND_END_ARG_INFO() - ZEND_BEGIN_ARG_INFO_EX(arginfo_amqp_timestamp_class_getTimestamp, ZEND_SEND_BY_VAL, ZEND_RETURN_VALUE, 0) - ZEND_END_ARG_INFO() - -+#if PHP_MAJOR_VERSION < 8 - ZEND_BEGIN_ARG_INFO_EX(arginfo_amqp_timestamp_class_toString, ZEND_SEND_BY_VAL, ZEND_RETURN_VALUE, 0) -+#else -+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_amqp_timestamp_class_toString, ZEND_SEND_BY_VAL, ZEND_RETURN_VALUE, IS_STRING, 0) -+#endif - ZEND_END_ARG_INFO() - - zend_function_entry amqp_timestamp_class_functions[] = { -diff --git a/amqp_type.c b/amqp_type.c -index fb87727..5f1ab91 100644 ---- a/amqp_type.c -+++ b/amqp_type.c -@@ -250,7 +250,7 @@ zend_bool php_amqp_type_internal_convert_php_to_amqp_field_value(zval *value, am - if (instanceof_function(Z_OBJCE_P(value), amqp_timestamp_class_entry TSRMLS_CC)) { - PHP5to7_zval_t result_zv PHP5to7_MAYBE_SET_TO_NULL; - -- zend_call_method_with_0_params(PHP5to7_MAYBE_PARAM_PTR(value), amqp_timestamp_class_entry, NULL, "gettimestamp", &result_zv); -+ zend_call_method_with_0_params(PHP5to8_OBJ_PROP(PHP5to7_MAYBE_PARAM_PTR(value)), amqp_timestamp_class_entry, NULL, "gettimestamp", &result_zv); - - field->kind = AMQP_FIELD_KIND_TIMESTAMP; - field->value.u64 = strtoimax(Z_STRVAL(PHP5to7_MAYBE_DEREF(result_zv)), NULL, 10); -@@ -262,11 +262,11 @@ zend_bool php_amqp_type_internal_convert_php_to_amqp_field_value(zval *value, am - field->kind = AMQP_FIELD_KIND_DECIMAL; - PHP5to7_zval_t result_zv PHP5to7_MAYBE_SET_TO_NULL; - -- zend_call_method_with_0_params(PHP5to7_MAYBE_PARAM_PTR(value), amqp_decimal_class_entry, NULL, "getexponent", &result_zv); -+ zend_call_method_with_0_params(PHP5to8_OBJ_PROP(PHP5to7_MAYBE_PARAM_PTR(value)), amqp_decimal_class_entry, NULL, "getexponent", &result_zv); - field->value.decimal.decimals = (uint8_t)Z_LVAL(PHP5to7_MAYBE_DEREF(result_zv)); - PHP5to7_MAYBE_DESTROY(result_zv); - -- zend_call_method_with_0_params(PHP5to7_MAYBE_PARAM_PTR(value), amqp_decimal_class_entry, NULL, "getsignificand", &result_zv); -+ zend_call_method_with_0_params(PHP5to8_OBJ_PROP(PHP5to7_MAYBE_PARAM_PTR(value)), amqp_decimal_class_entry, NULL, "getsignificand", &result_zv); - field->value.decimal.value = (uint32_t)Z_LVAL(PHP5to7_MAYBE_DEREF(result_zv)); - - PHP5to7_MAYBE_DESTROY(result_zv); -diff --git a/php5_support.h b/php5_support.h -index 5c57620..25c2d96 100644 ---- a/php5_support.h -+++ b/php5_support.h -@@ -109,6 +109,8 @@ typedef zend_rsrc_list_entry PHP5to7_zend_resource_le_t; - #define ZEND_ULONG_FMT "%" PRIu64 - #define PHP5to7_ZEND_ACC_FINAL_CLASS ZEND_ACC_FINAL_CLASS - -+#define PHP5to8_OBJ_PROP(zv) (zv) -+ - #endif //PHP_AMQP_PHP5_SUPPORT_H - - /* -diff --git a/php7_support.h b/php7_support.h -index c9e8f5b..0dbd6b2 100644 ---- a/php7_support.h -+++ b/php7_support.h -@@ -101,15 +101,24 @@ typedef zval PHP5to7_zend_resource_le_t; - - #define PHP5to7_ZEND_ACC_FINAL_CLASS ZEND_ACC_FINAL - -+ - /* Small change to let it build after a major internal change for php8.0 - * More info: - * https://github.com/php/php-src/blob/php-8.0.0alpha3/UPGRADING.INTERNALS#L47 - */ - #if PHP_MAJOR_VERSION >= 8 -+ - # define TSRMLS_DC - # define TSRMLS_D - # define TSRMLS_CC - # define TSRMLS_C -+ -+#define PHP5to8_OBJ_PROP(zv) Z_OBJ_P(zv) -+ -+#else -+ -+#define PHP5to8_OBJ_PROP(zv) (zv) -+ - # endif - - #endif //PHP_AMQP_PHP7_SUPPORT_H -diff --git a/php_amqp.h b/php_amqp.h -index 752edd7..686741d 100644 ---- a/php_amqp.h -+++ b/php_amqp.h -@@ -221,14 +221,14 @@ struct _amqp_connection_object { - #define PHP_AMQP_NOPARAMS() if (zend_parse_parameters_none() == FAILURE) { return; } - - #define PHP_AMQP_RETURN_THIS_PROP(prop_name) \ -- zval * _zv = zend_read_property(this_ce, getThis(), ZEND_STRL(prop_name), 0 PHP5to7_READ_PROP_RV_PARAM_CC TSRMLS_CC); \ -+ zval * _zv = zend_read_property(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL(prop_name), 0 PHP5to7_READ_PROP_RV_PARAM_CC TSRMLS_CC); \ - RETURN_ZVAL(_zv, 1, 0); - --#define PHP_AMQP_READ_OBJ_PROP(cls, obj, name) zend_read_property((cls), (obj), ZEND_STRL(name), 0 PHP5to7_READ_PROP_RV_PARAM_CC TSRMLS_CC) -+#define PHP_AMQP_READ_OBJ_PROP(cls, obj, name) zend_read_property((cls), PHP5to8_OBJ_PROP(obj), ZEND_STRL(name), 0 PHP5to7_READ_PROP_RV_PARAM_CC TSRMLS_CC) - #define PHP_AMQP_READ_OBJ_PROP_DOUBLE(cls, obj, name) Z_DVAL_P(PHP_AMQP_READ_OBJ_PROP((cls), (obj), (name))) - --#define PHP_AMQP_READ_THIS_PROP_CE(name, ce) zend_read_property((ce), getThis(), ZEND_STRL(name), 0 PHP5to7_READ_PROP_RV_PARAM_CC TSRMLS_CC) --#define PHP_AMQP_READ_THIS_PROP(name) zend_read_property(this_ce, getThis(), ZEND_STRL(name), 0 PHP5to7_READ_PROP_RV_PARAM_CC TSRMLS_CC) -+#define PHP_AMQP_READ_THIS_PROP_CE(name, ce) zend_read_property((ce), PHP5to8_OBJ_PROP(getThis()), ZEND_STRL(name), 0 PHP5to7_READ_PROP_RV_PARAM_CC TSRMLS_CC) -+#define PHP_AMQP_READ_THIS_PROP(name) zend_read_property(this_ce, PHP5to8_OBJ_PROP(getThis()), ZEND_STRL(name), 0 PHP5to7_READ_PROP_RV_PARAM_CC TSRMLS_CC) - #define PHP_AMQP_READ_THIS_PROP_BOOL(name) Z_BVAL_P(PHP_AMQP_READ_THIS_PROP(name)) - #define PHP_AMQP_READ_THIS_PROP_STR(name) Z_STRVAL_P(PHP_AMQP_READ_THIS_PROP(name)) - #define PHP_AMQP_READ_THIS_PROP_STRLEN(name) (Z_TYPE_P(PHP_AMQP_READ_THIS_PROP(name)) == IS_STRING ? Z_STRLEN_P(PHP_AMQP_READ_THIS_PROP(name)) : 0) -diff --git a/tests/amqptimestamp.phpt b/tests/amqptimestamp.phpt -index 9835883..6424f8b 100644 ---- a/tests/amqptimestamp.phpt -+++ b/tests/amqptimestamp.phpt -@@ -2,7 +2,7 @@ - AMQPTimestamp - --SKIPIF-- - ')) { - print "skip"; - } - --FILE-- -@@ -52,4 +52,4 @@ bool(true) - string(20) "18446744073709551616" - string(1) "0" - --==END== -\ No newline at end of file -+==END== -diff --git a/tests/amqptimestamp_php8.phpt b/tests/amqptimestamp_php8.phpt -new file mode 100644 -index 0000000..dabecc5 ---- /dev/null -+++ b/tests/amqptimestamp_php8.phpt -@@ -0,0 +1,60 @@ -+--TEST-- -+AMQPTimestamp -+--SKIPIF-- -+getTimestamp(), (string) $timestamp); -+ -+$timestamp = new AMQPTimestamp(100000.1); -+var_dump($timestamp->getTimestamp(), (string) $timestamp); -+ -+try { -+ new AMQPTimestamp(); -+} catch(ArgumentCountError $e) { -+ echo $e->getMessage() . "\n"; -+} -+try { -+ new AMQPTimestamp("string"); -+} catch(TypeError $e) { -+ echo $e->getMessage() . "\n"; -+} -+ -+try { -+ new AMQPTimestamp(AMQPTimestamp::MIN - 1); -+} catch (AMQPValueException $e) { -+ echo $e->getMessage() . "\n"; -+} -+ -+try { -+ new AMQPTimestamp(INF); -+} catch (AMQPValueException $e) { -+ echo $e->getMessage() . "\n"; -+} -+ -+var_dump((new ReflectionClass("AMQPTimestamp"))->isFinal()); -+ -+var_dump(AMQPTimestamp::MAX); -+var_dump(AMQPTimestamp::MIN); -+?> -+ -+==END== -+--EXPECTF-- -+string(6) "100000" -+string(6) "100000" -+string(6) "100000" -+string(6) "100000" -+AMQPTimestamp::__construct() expects exactly 1 parameter, 0 given -+AMQPTimestamp::__construct(): Argument #1 ($timestamp) must be of type float, string given -+The timestamp parameter must be greater than 0. -+The timestamp parameter must be less than 18446744073709551616. -+bool(true) -+string(20) "18446744073709551616" -+string(1) "0" -+ -+==END== -diff --git a/tests/bug_61533.phpt b/tests/bug_61533.phpt -index ecb5213..f53c315 100644 ---- a/tests/bug_61533.phpt -+++ b/tests/bug_61533.phpt -@@ -21,4 +21,4 @@ try { - - ?> - --EXPECTF-- --%s: Argument 1 passed to AMQPQueue::__construct() must be an instance of AMQPChannel, instance of AMQPConnection given%s -+%s AMQPChannel%s AMQPConnection%s diff --git a/package/php-amqp/php-amqp.hash b/package/php-amqp/php-amqp.hash index bce8ac0c9aca..159a157a497d 100644 --- a/package/php-amqp/php-amqp.hash +++ b/package/php-amqp/php-amqp.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 0ebc61052eb12406dddf5eabfe8749a12d52c566816b8aab04fb9916d0c26ed2 amqp-1.10.2.tgz +sha256 2de740da9a884ade2caf0e59e5521bbf80da16155fa6a6205630b473aed5e6dd amqp-2.0.0.tgz sha256 ecd004e9ae3fcf54896b562d5e8008e36041f2620076effd58e5f4187299cee8 LICENSE diff --git a/package/php-amqp/php-amqp.mk b/package/php-amqp/php-amqp.mk index 981f8274a988..7e58234d1fe3 100644 --- a/package/php-amqp/php-amqp.mk +++ b/package/php-amqp/php-amqp.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_AMQP_VERSION = 1.10.2 +PHP_AMQP_VERSION = 2.0.0 PHP_AMQP_SOURCE = amqp-$(PHP_AMQP_VERSION).tgz PHP_AMQP_SITE = https://pecl.php.net/get PHP_AMQP_CONF_OPTS = --with-php-config=$(STAGING_DIR)/usr/bin/php-config \ diff --git a/package/php-apcu/php-apcu.hash b/package/php-apcu/php-apcu.hash index 3aae4120d2af..4a5eadf80345 100644 --- a/package/php-apcu/php-apcu.hash +++ b/package/php-apcu/php-apcu.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 b99d40fafec06f4d132fcee53e7526ddbfc1d041ea6e04e17389dfad28f9c390 apcu-5.1.20.tgz +sha256 010a0d8fd112e1ed7a52a356191da3696a6b76319423f7b0dfdeaeeafcb41a1e apcu-5.1.22.tgz sha256 ecc8b74820c32fb82ddee80446205408585d75d1632ac959fb3cdf8eaf3877b5 LICENSE diff --git a/package/php-apcu/php-apcu.mk b/package/php-apcu/php-apcu.mk index d381c9054f1d..b8eeb9de7c16 100644 --- a/package/php-apcu/php-apcu.mk +++ b/package/php-apcu/php-apcu.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_APCU_VERSION = 5.1.20 +PHP_APCU_VERSION = 5.1.22 PHP_APCU_SITE = http://pecl.php.net/get PHP_APCU_SOURCE = apcu-$(PHP_APCU_VERSION).tgz PHP_APCU_LICENSE = PHP-3.01 diff --git a/package/php-gnupg/0001-Remove-inlining-_phpc_res_close.patch b/package/php-gnupg/0001-Remove-inlining-_phpc_res_close.patch deleted file mode 100644 index 9b94cb7e4f2c..000000000000 --- a/package/php-gnupg/0001-Remove-inlining-_phpc_res_close.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 887b0899d7e7423baec691255c2d8b56bb348ecd Mon Sep 17 00:00:00 2001 -From: Jakub Zelenka -Date: Sun, 14 Mar 2021 18:52:21 +0000 -Subject: [PATCH] Remove inlining _phpc_res_close - -[Retrieved from: -https://github.com/bukka/phpc/commit/887b0899d7e7423baec691255c2d8b56bb348ecd] -Signed-off-by: Fabrice Fontaine ---- - phpc.h | 8 -------- - 1 file changed, 8 deletions(-) - -diff --git a/phpc/phpc.h b/phpc/phpc.h -index dc5887e..9206105 100644 ---- a/phpc/phpc.h -+++ b/phpc/phpc.h -@@ -945,16 +945,8 @@ typedef zend_resource * phpc_res_value_t; - zend_fetch_resource2(Z_RES_P(_pz_res), _res_type_name, _res_type_1, _res_type_2) - #define PHPC_RES_DELETE(_pz_res) \ - zend_list_delete(Z_RES_P(_pz_res)) --#if PHP_MAJOR_VERSION < 8 - #define PHPC_RES_CLOSE(_pz_res) \ - zend_list_close(Z_RES_P(_pz_res)) --#else --inline int _phpc_res_close(zval *zres) { -- zend_list_close(Z_RES_P(zres)); -- return SUCCESS; --} --#define PHPC_RES_CLOSE _phpc_res_close --#endif - - /* resource to zval */ - #define PHPC_RES_PZVAL(_res, _pzv) \ diff --git a/package/php-gnupg/php-gnupg.hash b/package/php-gnupg/php-gnupg.hash index 99ffe87f461e..084de7750a58 100644 --- a/package/php-gnupg/php-gnupg.hash +++ b/package/php-gnupg/php-gnupg.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 d4f5f79aa483908f3df08e5b343ea3593c6d725b9ed2103e30242627659e0a64 gnupg-1.5.0.tgz +sha256 a9906f465ab2343cb2f3127ee209c72760238745c34878d9bbc1576486219252 gnupg-1.5.1.tgz sha256 da1136d4d9326317cbd320dadddf7e9b4b4edffd973eb083cb7b9754fb6a15d9 LICENSE diff --git a/package/php-gnupg/php-gnupg.mk b/package/php-gnupg/php-gnupg.mk index a89f0978af5b..89054f5f7c0e 100644 --- a/package/php-gnupg/php-gnupg.mk +++ b/package/php-gnupg/php-gnupg.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_GNUPG_VERSION = 1.5.0 +PHP_GNUPG_VERSION = 1.5.1 PHP_GNUPG_SOURCE = gnupg-$(PHP_GNUPG_VERSION).tgz PHP_GNUPG_SITE = https://pecl.php.net/get # phpize does the autoconf magic diff --git a/package/php-memcached/php-memcached.hash b/package/php-memcached/php-memcached.hash index 7e918c17f6e1..162d25f79593 100644 --- a/package/php-memcached/php-memcached.hash +++ b/package/php-memcached/php-memcached.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 b288e45f839593e16c4d8508b241de51a86df4f7322153e6becb9e1c819021fd memcached-3.1.5.tgz +sha256 2a41143a7b29f4a962a3805b77aa207a99e4566e2d314ce98a051cd24d6e9636 memcached-3.2.0.tgz sha256 24e8e3a9529204ead9422fa17cf3ddd75d292a8763b87fdb20591964f2e6ebe0 LICENSE sha256 a453a7a272fbd24105b39959f76996d50dad80b22d1c310f6c67f74f62ae4054 fastlz/LICENSE sha256 bba8cb50c660842c5ca459c5004395bdef8f01c1b64f97a9978f1053f173cb82 g_fmt.h diff --git a/package/php-memcached/php-memcached.mk b/package/php-memcached/php-memcached.mk index 068fbb786be9..f92a8ddf4cb9 100644 --- a/package/php-memcached/php-memcached.mk +++ b/package/php-memcached/php-memcached.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_MEMCACHED_VERSION = 3.1.5 +PHP_MEMCACHED_VERSION = 3.2.0 PHP_MEMCACHED_SOURCE = memcached-$(PHP_MEMCACHED_VERSION).tgz PHP_MEMCACHED_SITE = https://pecl.php.net/get PHP_MEMCACHED_CONF_OPTS = --with-php-config=$(STAGING_DIR)/usr/bin/php-config \ diff --git a/package/php-pam/Config.in b/package/php-pam/Config.in index 70f62a318073..c91fa8b6fe35 100644 --- a/package/php-pam/Config.in +++ b/package/php-pam/Config.in @@ -4,13 +4,14 @@ config BR2_PACKAGE_PHP_PAM depends on BR2_USE_WCHAR # linux-pam depends on BR2_USE_MMU # linux-pam depends on !BR2_STATIC_LIBS # linux-pam + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # linux-pam select BR2_PACKAGE_LINUX_PAM help PHP PAM (Pluggable Authentication Modules) integration https://pecl.php.net/package/PAM -comment "php-pam needs a toolchain w/ wchar, locale, dynamic library" +comment "php-pam needs a toolchain w/ wchar, locale, dynamic library, gcc >= 4.9" depends on BR2_USE_MMU depends on !BR2_ENABLE_LOCALE || !BR2_USE_WCHAR \ - || BR2_STATIC_LIBS + || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 diff --git a/package/php-pam/php-pam.hash b/package/php-pam/php-pam.hash index c3eb49fbe7f6..be15237f7dca 100644 --- a/package/php-pam/php-pam.hash +++ b/package/php-pam/php-pam.hash @@ -1,3 +1,3 @@ # Locally calculated: -sha256 fda3b5f719d51cb278351eedd3d7a96db75661324d81fdcf8072a4309121bc92 pam-2.2.3.tgz +sha256 d5c818c73c9cde4d2118bb08322dec0b532f3be48c3ef7d3f23a05af5080eb24 pam-2.2.4.tgz sha256 0967ad6cf4b7fe81d38709d7aaef3fecb3bd685be7eebb37b864aa34c991baa7 LICENSE diff --git a/package/php-pam/php-pam.mk b/package/php-pam/php-pam.mk index c35ad4f5d00c..a348fb9d44f3 100644 --- a/package/php-pam/php-pam.mk +++ b/package/php-pam/php-pam.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_PAM_VERSION = 2.2.3 +PHP_PAM_VERSION = 2.2.4 PHP_PAM_SITE = http://pecl.php.net/get PHP_PAM_SOURCE = pam-$(PHP_PAM_VERSION).tgz PHP_PAM_LICENSE = PHP-3.01 diff --git a/package/php-pecl-dbus/0001-php8-compat.patch b/package/php-pecl-dbus/0001-php8-compat.patch deleted file mode 100644 index acca6e1d49c9..000000000000 --- a/package/php-pecl-dbus/0001-php8-compat.patch +++ /dev/null @@ -1,158 +0,0 @@ -From 7fde4dd4d26d2a4b7957a1010c6ea9e4b940fc62 Mon Sep 17 00:00:00 2001 -From: Stefan Saraev -Date: Mon, 18 Jan 2021 23:22:52 +0200 -Subject: [PATCH] php8 compat - -Upstream: https://github.com/derickr/pecl-dbus/pull/8 -Signed-off-by: Herve Codina ---- - dbus.c | 55 ++++++++++++++++++++++++++++++------------------------ - php_dbus.h | 10 ++++++++++ - 2 files changed, 41 insertions(+), 24 deletions(-) - -diff --git a/dbus.c b/dbus.c -index 9fde647..a98e2ea 100644 ---- a/dbus.c -+++ b/dbus.c -@@ -38,6 +38,9 @@ - #define Z_ADDREF_P(z) ((z)->refcount++) - #endif - -+ZEND_BEGIN_ARG_INFO_EX(arginfo_void, 0, 0, 0) -+ZEND_END_ARG_INFO() -+ - /* {{{ arginfo */ - ZEND_BEGIN_ARG_INFO_EX(arginfo_dbus_object___call, 0, 0, 2) - ZEND_ARG_INFO(0, function_name) -@@ -46,44 +49,44 @@ ZEND_END_ARG_INFO() - /* }}} */ - - const zend_function_entry dbus_funcs_dbus[] = { -- PHP_ME(Dbus, __construct, NULL, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) -- PHP_ME(Dbus, addWatch, NULL, ZEND_ACC_PUBLIC) -- PHP_ME(Dbus, waitLoop, NULL, ZEND_ACC_PUBLIC) -- PHP_ME(Dbus, requestName, NULL, ZEND_ACC_PUBLIC) -- PHP_ME(Dbus, registerObject, NULL, ZEND_ACC_PUBLIC) -- PHP_ME(Dbus, createProxy, NULL, ZEND_ACC_PUBLIC) -+ PHP_ME(Dbus, __construct, arginfo_void, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) -+ PHP_ME(Dbus, addWatch, arginfo_void, ZEND_ACC_PUBLIC) -+ PHP_ME(Dbus, waitLoop, arginfo_void, ZEND_ACC_PUBLIC) -+ PHP_ME(Dbus, requestName, arginfo_void, ZEND_ACC_PUBLIC) -+ PHP_ME(Dbus, registerObject, arginfo_void, ZEND_ACC_PUBLIC) -+ PHP_ME(Dbus, createProxy, arginfo_void, ZEND_ACC_PUBLIC) - PHP_FE_END - }; - - const zend_function_entry dbus_funcs_dbus_object[] = { -- PHP_ME(DbusObject, __construct, NULL, ZEND_ACC_CTOR|ZEND_ACC_PRIVATE) -+ PHP_ME(DbusObject, __construct, arginfo_void, ZEND_ACC_CTOR|ZEND_ACC_PRIVATE) - PHP_ME(DbusObject, __call, arginfo_dbus_object___call, ZEND_ACC_PUBLIC) - PHP_FE_END - }; - - const zend_function_entry dbus_funcs_dbus_signal[] = { -- PHP_ME(DbusSignal, __construct, NULL, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) -- PHP_ME(DbusSignal, matches, NULL, ZEND_ACC_PUBLIC) -- PHP_ME(DbusSignal, getData, NULL, ZEND_ACC_PUBLIC) -- PHP_ME(DbusSignal, send, NULL, ZEND_ACC_PUBLIC) -+ PHP_ME(DbusSignal, __construct, arginfo_void, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) -+ PHP_ME(DbusSignal, matches, arginfo_void, ZEND_ACC_PUBLIC) -+ PHP_ME(DbusSignal, getData, arginfo_void, ZEND_ACC_PUBLIC) -+ PHP_ME(DbusSignal, send, arginfo_void, ZEND_ACC_PUBLIC) - PHP_FE_END - }; - - const zend_function_entry dbus_funcs_dbus_array[] = { -- PHP_ME(DbusArray, __construct, NULL, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) -- PHP_ME(DbusArray, getData, NULL, ZEND_ACC_PUBLIC) -+ PHP_ME(DbusArray, __construct, arginfo_void, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) -+ PHP_ME(DbusArray, getData, arginfo_void, ZEND_ACC_PUBLIC) - PHP_FE_END - }; - - const zend_function_entry dbus_funcs_dbus_dict[] = { -- PHP_ME(DbusDict, __construct, NULL, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) -- PHP_ME(DbusDict, getData, NULL, ZEND_ACC_PUBLIC) -+ PHP_ME(DbusDict, __construct, arginfo_void, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) -+ PHP_ME(DbusDict, getData, arginfo_void, ZEND_ACC_PUBLIC) - PHP_FE_END - }; - - #define PHP_DBUS_INT_WRAPPER_DEF(s,t) \ - const zend_function_entry dbus_funcs_dbus_##s[] = { \ -- PHP_ME(Dbus##t, __construct, NULL, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) \ -+ PHP_ME(Dbus##t, __construct, arginfo_void, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) \ - PHP_FE_END \ - }; - -@@ -98,26 +101,26 @@ PHP_DBUS_INT_WRAPPER_DEF(uint64,UInt64); - PHP_DBUS_INT_WRAPPER_DEF(double, Double); - - const zend_function_entry dbus_funcs_dbus_variant[] = { -- PHP_ME(DbusVariant, __construct, NULL, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) -- PHP_ME(DbusVariant, getData, NULL, ZEND_ACC_PUBLIC) -+ PHP_ME(DbusVariant, __construct, arginfo_void, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) -+ PHP_ME(DbusVariant, getData, arginfo_void, ZEND_ACC_PUBLIC) - PHP_FE_END - }; - - const zend_function_entry dbus_funcs_dbus_set[] = { -- PHP_ME(DbusSet, __construct, NULL, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) -- PHP_ME(DbusSet, getData, NULL, ZEND_ACC_PUBLIC) -+ PHP_ME(DbusSet, __construct, arginfo_void, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) -+ PHP_ME(DbusSet, getData, arginfo_void, ZEND_ACC_PUBLIC) - PHP_FE_END - }; - - const zend_function_entry dbus_funcs_dbus_struct[] = { -- PHP_ME(DbusStruct, __construct, NULL, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) -- PHP_ME(DbusStruct, getData, NULL, ZEND_ACC_PUBLIC) -+ PHP_ME(DbusStruct, __construct, arginfo_void, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) -+ PHP_ME(DbusStruct, getData, arginfo_void, ZEND_ACC_PUBLIC) - PHP_FE_END - }; - - const zend_function_entry dbus_funcs_dbus_object_path[] = { -- PHP_ME(DbusObjectPath, __construct, NULL, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) -- PHP_ME(DbusObjectPath, getData, NULL, ZEND_ACC_PUBLIC) -+ PHP_ME(DbusObjectPath, __construct, arginfo_void, ZEND_ACC_CTOR|ZEND_ACC_PUBLIC) -+ PHP_ME(DbusObjectPath, getData, arginfo_void, ZEND_ACC_PUBLIC) - PHP_FE_END - }; - -@@ -405,7 +408,11 @@ static void dbus_register_classes(TSRMLS_D) - dbus_ce_dbus = zend_register_internal_class_ex(&ce_dbus, NULL); - memcpy(&dbus_object_handlers_dbus, zend_get_std_object_handlers(), sizeof(zend_object_handlers)); - dbus_object_handlers_dbus.clone_obj = dbus_object_clone_dbus; -+#if PHP_VERSION_ID < 80000 - dbus_object_handlers_dbus.compare_objects = dbus_object_compare_dbus; -+#else -+ dbus_object_handlers_dbus.compare = dbus_object_compare_dbus; -+#endif - - zend_declare_class_constant_long(dbus_ce_dbus, "BYTE", sizeof("BYTE")-1, DBUS_TYPE_BYTE TSRMLS_CC); - zend_declare_class_constant_long(dbus_ce_dbus, "BOOLEAN", sizeof("BOOLEAN")-1, DBUS_TYPE_BOOLEAN TSRMLS_CC); -diff --git a/php_dbus.h b/php_dbus.h -index 8817544..1f0f551 100644 ---- a/php_dbus.h -+++ b/php_dbus.h -@@ -25,6 +25,16 @@ - #include "config.h" - #endif - -+#if PHP_VERSION_ID >= 80000 -+#ifndef TSRMLS_D -+#define TSRMLS_D void -+#define TSRMLS_DC -+#define TSRMLS_C -+#define TSRMLS_CC -+#define TSRMLS_FETCH() -+#endif -+#endif /* PHP_VERSION_ID >= 80000 */ -+ - #include "Zend/zend_hash.h" - - #define PHP_DBUS_VERSION "0.2.0" --- -2.31.1 - diff --git a/package/php-pecl-dbus/0002-Fix-compatibility-with-php8-call_user_function_ex.patch b/package/php-pecl-dbus/0002-Fix-compatibility-with-php8-call_user_function_ex.patch deleted file mode 100644 index 5babce94b45c..000000000000 --- a/package/php-pecl-dbus/0002-Fix-compatibility-with-php8-call_user_function_ex.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 8cf66c4b5dd657ca14552b27a42901db0a5e9280 Mon Sep 17 00:00:00 2001 -From: Herve Codina -Date: Mon, 4 Oct 2021 17:13:45 +0200 -Subject: [PATCH] Fix compatibility with php8 - call_user_function_ex - -This patch fixes compatibility with php8 replacing -call_user_function_ex by call_user_function. - -Upstream: https://github.com/derickr/pecl-dbus/pull/8 -Signed-off-by: Herve Codina ---- - dbus.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/dbus.c b/dbus.c -index a98e2ea..6fa9897 100644 ---- a/dbus.c -+++ b/dbus.c -@@ -1015,8 +1015,8 @@ php_dbus_do_method_call(php_dbus_obj *dbus, - method_args = safe_emalloc(sizeof(zval *), num_elems, 0); - } - -- if (call_user_function_ex(EG(function_table), object, &callback, &retval, -- num_elems, method_args, 0, NULL) == SUCCESS) { -+ if (call_user_function(EG(function_table), object, &callback, &retval, -+ num_elems, method_args) == SUCCESS) { - if (!Z_ISUNDEF(retval)) { - reply = dbus_message_new_method_return(msg); - php_dbus_append_parameters(reply, &retval, NULL, --- -2.31.1 - diff --git a/package/php-pecl-dbus/php-pecl-dbus.hash b/package/php-pecl-dbus/php-pecl-dbus.hash index f43e2c8b5131..122636913c14 100644 --- a/package/php-pecl-dbus/php-pecl-dbus.hash +++ b/package/php-pecl-dbus/php-pecl-dbus.hash @@ -1,3 +1,3 @@ # Locally calculated: -sha256 c48761c645c6fa42b57af0e65d893217dc69bcd8d879ace74d6abbf1c5f73a8f php-pecl-dbus-315d17558c7614d02e923d898231e51c86a25789.tar.gz +sha256 652db988457479682ef1bbe00952d746b54150e77f06a4d75ffa3a696f5321ba php-pecl-dbus-b147624d480c3353e6c700e9a2d0c6f14d853941.tar.gz sha256 ecc8b74820c32fb82ddee80446205408585d75d1632ac959fb3cdf8eaf3877b5 LICENSE diff --git a/package/php-pecl-dbus/php-pecl-dbus.mk b/package/php-pecl-dbus/php-pecl-dbus.mk index a70a2e7ae1d3..84cc373bb719 100644 --- a/package/php-pecl-dbus/php-pecl-dbus.mk +++ b/package/php-pecl-dbus/php-pecl-dbus.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_PECL_DBUS_VERSION = 315d17558c7614d02e923d898231e51c86a25789 +PHP_PECL_DBUS_VERSION = b147624d480c3353e6c700e9a2d0c6f14d853941 PHP_PECL_DBUS_SITE = $(call github,derickr,pecl-dbus,$(PHP_PECL_DBUS_VERSION)) PHP_PECL_DBUS_LICENSE = PHP-3.01 PHP_PECL_DBUS_LICENSE_FILES = LICENSE diff --git a/package/php-ssh2/php-ssh2.hash b/package/php-ssh2/php-ssh2.hash index 3fbb0b24c811..69e0b920710e 100644 --- a/package/php-ssh2/php-ssh2.hash +++ b/package/php-ssh2/php-ssh2.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 9093a1f8d24dc65836027b0e239c50de8d5eaebf8396bc3331fdd38c5d69afd9 ssh2-1.3.1.tgz +sha256 988b52e0315bb5ed725050cb02de89b541034b7be6b94623dcb2baa33f811d87 ssh2-1.4.tgz sha256 ac7c56f1e416ce6e60abcf26269395128bc9e5a2e4f3293e5dcc124aac606508 LICENSE diff --git a/package/php-ssh2/php-ssh2.mk b/package/php-ssh2/php-ssh2.mk index b79ac04179b1..e7955a2c0728 100644 --- a/package/php-ssh2/php-ssh2.mk +++ b/package/php-ssh2/php-ssh2.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_SSH2_VERSION = 1.3.1 +PHP_SSH2_VERSION = 1.4 PHP_SSH2_SOURCE = ssh2-$(PHP_SSH2_VERSION).tgz PHP_SSH2_SITE = https://pecl.php.net/get PHP_SSH2_CONF_OPTS = --with-php-config=$(STAGING_DIR)/usr/bin/php-config \ diff --git a/package/php-xdebug/php-xdebug.hash b/package/php-xdebug/php-xdebug.hash index fa92ee82ed36..2509e6e2eee1 100644 --- a/package/php-xdebug/php-xdebug.hash +++ b/package/php-xdebug/php-xdebug.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 7769b20eecdadf5fbe9f582512c10b394fb575b6f7a8c3a3a82db6883e0032b7 xdebug-3.2.0.tgz +sha256 f48777371f90cbb315ea4ea082a1ede6765bcfb35d7d6356ab8f71fd6dfcc157 xdebug-3.2.2.tgz sha256 ef479ee1a3da3f933e0d046ca8cd0c14601f29b2c0c41cc60c9388546a4e0272 LICENSE diff --git a/package/php-xdebug/php-xdebug.mk b/package/php-xdebug/php-xdebug.mk index 9429d4afeebf..c5a1e10ebc50 100644 --- a/package/php-xdebug/php-xdebug.mk +++ b/package/php-xdebug/php-xdebug.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_XDEBUG_VERSION = 3.2.0 +PHP_XDEBUG_VERSION = 3.2.2 PHP_XDEBUG_SOURCE = xdebug-$(PHP_XDEBUG_VERSION).tgz PHP_XDEBUG_SITE = https://xdebug.org/files PHP_XDEBUG_INSTALL_STAGING = YES diff --git a/package/php-yaml/php-yaml.hash b/package/php-yaml/php-yaml.hash index b4d14c5a30ce..4fa5dfbc162a 100644 --- a/package/php-yaml/php-yaml.hash +++ b/package/php-yaml/php-yaml.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 119052f0461d57d86f44c252f9c9b2dd743486c701c1a0aba0aebecdd0d8b82a yaml-2.2.2.tgz +sha256 5937eb9722ddf6d64626799cfa024598ff2452ea157992e4e67331a253f90236 yaml-2.2.3.tgz sha256 68d9700294396c72089bfc7bf38a5b3654a53ae415f3bd37768848c14e86f338 LICENSE diff --git a/package/php-yaml/php-yaml.mk b/package/php-yaml/php-yaml.mk index 39a422e25d28..e825e3146fab 100644 --- a/package/php-yaml/php-yaml.mk +++ b/package/php-yaml/php-yaml.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_YAML_VERSION = 2.2.2 +PHP_YAML_VERSION = 2.2.3 PHP_YAML_SOURCE = yaml-$(PHP_YAML_VERSION).tgz PHP_YAML_SITE = https://pecl.php.net/get PHP_YAML_CONF_OPTS = --with-php-config=$(STAGING_DIR)/usr/bin/php-config \ diff --git a/package/php/0003-configure-disable-the-phar-tool.patch b/package/php/0003-configure-disable-the-phar-tool.patch index ab3aecdaa397..6bfaf6640ffe 100644 --- a/package/php/0003-configure-disable-the-phar-tool.patch +++ b/package/php/0003-configure-disable-the-phar-tool.patch @@ -22,7 +22,7 @@ diff --git a/configure.ac b/configure.ac index 0dfab302..6026fb66 100644 --- a/configure.ac +++ b/configure.ac -@@ -1566,13 +1566,8 @@ CFLAGS_CLEAN="$CFLAGS \$(PROF_FLAGS)" +@@ -1638,13 +1638,8 @@ CFLAGS_CLEAN="$CFLAGS \$(PROF_FLAGS)" CFLAGS="\$(CFLAGS_CLEAN) $standard_libtool_flag" CXXFLAGS="$CXXFLAGS $standard_libtool_flag \$(PROF_FLAGS)" diff --git a/package/php/0006-xxhash-h-Fix-GCC-12-Og.patch b/package/php/0006-xxhash-h-Fix-GCC-12-Og.patch new file mode 100644 index 000000000000..9b5b9966cd5a --- /dev/null +++ b/package/php/0006-xxhash-h-Fix-GCC-12-Og.patch @@ -0,0 +1,94 @@ +From adcb38b1ffa8e401293e5028ee5af586fd304e00 Mon Sep 17 00:00:00 2001 +From: Mingli Yu +Date: Wed, 12 Apr 2023 13:33:07 +0800 +Subject: [PATCH] xxhash.h: Fix GCC 12 -Og + +Change whether to inline XXH3_hashLong_withSecret to a config option + +Ref: https://github.com/Cyan4973/xxHash/commit/ace22bddc7a366a5dd8a71e8b8247694530684ec + +Signed-off-by: Mingli Yu + +Closes GH-11062. + +Upstream: https://github.com/php/php-src/commit/adcb38b1ffa8e401293e5028ee5af586fd304e00 + +Signed-off-by: Bernd Kuhls +--- + ext/hash/xxhash/xxhash.h | 35 +++++++++++++++++++++++++++++++++-- + 1 file changed, 33 insertions(+), 2 deletions(-) + +diff --git a/ext/hash/xxhash/xxhash.h b/ext/hash/xxhash/xxhash.h +index b5bd286496c7..8e816c0584eb 100644 +--- a/ext/hash/xxhash/xxhash.h ++++ b/ext/hash/xxhash/xxhash.h +@@ -1375,6 +1375,23 @@ XXH3_128bits_reset_withSecretandSeed(XXH3_state_t* statePtr, + */ + # define XXH_NO_INLINE_HINTS 0 + ++/*! ++ * @def XXH3_INLINE_SECRET ++ * @brief Determines whether to inline the XXH3 withSecret code. ++ * ++ * When the secret size is known, the compiler can improve the performance ++ * of XXH3_64bits_withSecret() and XXH3_128bits_withSecret(). ++ * ++ * However, if the secret size is not known, it doesn't have any benefit. This ++ * happens when xxHash is compiled into a global symbol. Therefore, if ++ * @ref XXH_INLINE_ALL is *not* defined, this will be defined to 0. ++ * ++ * Additionally, this defaults to 0 on GCC 12+, which has an issue with function pointers ++ * that are *sometimes* force inline on -Og, and it is impossible to automatically ++ * detect this optimization level. ++ */ ++# define XXH3_INLINE_SECRET 0 ++ + /*! + * @def XXH32_ENDJMP + * @brief Whether to use a jump for `XXH32_finalize`. +@@ -1439,6 +1456,15 @@ XXH3_128bits_reset_withSecretandSeed(XXH3_state_t* statePtr, + # endif + #endif + ++#ifndef XXH3_INLINE_SECRET ++# if (defined(__GNUC__) && !defined(__clang__) && __GNUC__ >= 12) \ ++ || !defined(XXH_INLINE_ALL) ++# define XXH3_INLINE_SECRET 0 ++# else ++# define XXH3_INLINE_SECRET 1 ++# endif ++#endif ++ + #ifndef XXH32_ENDJMP + /* generally preferable for performance */ + # define XXH32_ENDJMP 0 +@@ -1515,6 +1541,11 @@ static void* XXH_memcpy(void* dest, const void* src, size_t size) + # define XXH_NO_INLINE static + #endif + ++#if XXH3_INLINE_SECRET ++# define XXH3_WITH_SECRET_INLINE XXH_FORCE_INLINE ++#else ++# define XXH3_WITH_SECRET_INLINE XXH_NO_INLINE ++#endif + + + /* ************************************* +@@ -4465,7 +4496,7 @@ XXH3_hashLong_64b_internal(const void* XXH_RESTRICT input, size_t len, + * so that the compiler can properly optimize the vectorized loop. + * This makes a big performance difference for "medium" keys (<1 KB) when using AVX instruction set. + */ +-XXH_FORCE_INLINE XXH64_hash_t ++XXH3_WITH_SECRET_INLINE XXH64_hash_t + XXH3_hashLong_64b_withSecret(const void* XXH_RESTRICT input, size_t len, + XXH64_hash_t seed64, const xxh_u8* XXH_RESTRICT secret, size_t secretLen) + { +@@ -5263,7 +5294,7 @@ XXH3_hashLong_128b_default(const void* XXH_RESTRICT input, size_t len, + * It's important for performance to pass @secretLen (when it's static) + * to the compiler, so that it can properly optimize the vectorized loop. + */ +-XXH_FORCE_INLINE XXH128_hash_t ++XXH3_WITH_SECRET_INLINE XXH128_hash_t + XXH3_hashLong_128b_withSecret(const void* XXH_RESTRICT input, size_t len, + XXH64_hash_t seed64, + const void* XXH_RESTRICT secret, size_t secretLen) diff --git a/package/php/php.hash b/package/php/php.hash index 41aa32615620..0f77f0082fd4 100644 --- a/package/php/php.hash +++ b/package/php/php.hash @@ -1,5 +1,5 @@ # From https://www.php.net/downloads.php -sha256 b9b566686e351125d67568a33291650eb8dfa26614d205d70d82e6e92613d457 php-8.2.3.tar.xz +sha256 e1526e400bce9f9f9f774603cfac6b72b5e8f89fa66971ebc3cc4e5964083132 php-8.2.12.tar.xz # License file sha256 080d0d0cca64181ef8bf1df9fba0c6f0c485f78f79540c479a45b593bb3b33b5 LICENSE diff --git a/package/php/php.mk b/package/php/php.mk index 49f02d7f2045..add46584c6c2 100644 --- a/package/php/php.mk +++ b/package/php/php.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_VERSION = 8.2.3 +PHP_VERSION = 8.2.12 PHP_SITE = https://www.php.net/distributions PHP_SOURCE = php-$(PHP_VERSION).tar.xz PHP_INSTALL_STAGING = YES @@ -14,6 +14,7 @@ PHP_DEPENDENCIES = host-pkgconf pcre2 PHP_LICENSE = PHP-3.01 PHP_LICENSE_FILES = LICENSE PHP_CPE_ID_VENDOR = php + PHP_CONF_OPTS = \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ @@ -84,6 +85,13 @@ else PHP_CONF_ENV += ac_cv_func_dlopen=no ac_cv_lib_dl_dlopen=no endif +# php has some assembly function that is not present in Thumb mode: +# Error: selected processor does not support `umlal r2,r1,r0,r3' in Thumb mode +# so, we desactivate Thumb mode +ifeq ($(BR2_ARM_INSTRUCTIONS_THUMB),y) +PHP_CFLAGS += -marm +endif + PHP_CONF_OPTS += $(if $(BR2_PACKAGE_PHP_SAPI_CLI),--enable-cli,--disable-cli) PHP_CONF_OPTS += $(if $(BR2_PACKAGE_PHP_SAPI_CGI),--enable-cgi,--disable-cgi) PHP_CONF_OPTS += $(if $(BR2_PACKAGE_PHP_SAPI_FPM),--enable-fpm,--disable-fpm) @@ -347,4 +355,24 @@ PHP_POST_INSTALL_TARGET_HOOKS += PHP_INSTALL_FIXUP PHP_CONF_ENV += CFLAGS="$(PHP_CFLAGS)" CXXFLAGS="$(PHP_CXXFLAGS)" +HOST_PHP_CONF_OPTS = \ + --disable-all \ + --without-pear \ + --with-config-file-path=$(HOST_DIR)/etc \ + --disable-phpdbg \ + --with-external-pcre \ + --enable-phar \ + --enable-json \ + --enable-filter \ + --enable-mbstring \ + --enable-tokenizer \ + --with-openssl=$(HOST_DIR) + +HOST_PHP_DEPENDENCIES = \ + host-oniguruma \ + host-openssl \ + host-pcre2 \ + host-pkgconf + $(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/piglit/Config.in b/package/piglit/Config.in index 5e957a555acb..48b7641909b5 100644 --- a/package/piglit/Config.in +++ b/package/piglit/Config.in @@ -6,8 +6,10 @@ config BR2_PACKAGE_PIGLIT BR2_PACKAGE_WAFFLE_SUPPORTS_WAYLAND || \ BR2_PACKAGE_WAFFLE_SUPPORTS_X11_EGL || \ BR2_PACKAGE_WAFFLE_SUPPORTS_GBM - depends on BR2_INSTALL_LIBSTDCPP # python-numpy + depends on BR2_INSTALL_LIBSTDCPP # mesa3d-demos, python-numpy depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL # python-numpy + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_9 # python-numpy + depends on BR2_HOST_GCC_AT_LEAST_9 # host-python-numpy select BR2_PACKAGE_LIBDRM if BR2_PACKAGE_HAS_LIBGL select BR2_PACKAGE_LIBPNG select BR2_PACKAGE_LIBXKBCOMMON if BR2_PACKAGE_WAYLAND @@ -32,6 +34,8 @@ config BR2_PACKAGE_PIGLIT https://piglit.freedesktop.org -comment "piglit needs a glibc or musl toolchain w/ C++" +comment "piglit needs a glibc or musl toolchain w/ C++, gcc >= 9, host gcc >= 9" depends on !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_9 || \ + !BR2_HOST_GCC_AT_LEAST_9 || \ !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) diff --git a/package/pigz/pigz.hash b/package/pigz/pigz.hash index 4a149605b336..d09930b62bb9 100644 --- a/package/pigz/pigz.hash +++ b/package/pigz/pigz.hash @@ -1,5 +1,5 @@ # From http://zlib.net/pigz -sha256 b4c9e60344a08d5db37ca7ad00a5b2c76ccb9556354b722d56d55ca7e8b1c707 pigz-2.7.tar.gz +sha256 eb872b4f0e1f0ebe59c9f7bd8c506c4204893ba6a8492de31df416f0d5170fd0 pigz-2.8.tar.gz # Locally calculated -sha256 67e2b9e30e924724a9d72549a6004ed15a041f51d9ea9ab781e048fa27ae07a2 README +sha256 328634933a65dbc7f97a0f51df52741dc67f593bbe9eccabc9eedc6934c4983b README diff --git a/package/pigz/pigz.mk b/package/pigz/pigz.mk index fd48ab463de2..e3273c71c13d 100644 --- a/package/pigz/pigz.mk +++ b/package/pigz/pigz.mk @@ -4,7 +4,7 @@ # ################################################################################ -PIGZ_VERSION = 2.7 +PIGZ_VERSION = 2.8 PIGZ_SITE = http://zlib.net/pigz PIGZ_DEPENDENCIES = zlib HOST_PIGZ_DEPENDENCIES = host-zlib diff --git a/package/pipewire/Config.in b/package/pipewire/Config.in index 4929e5d3d1e9..9d2de6c866de 100644 --- a/package/pipewire/Config.in +++ b/package/pipewire/Config.in @@ -60,7 +60,7 @@ comment "pipewire v4l2 support needs udev and a toolchain w/ headers >= 3.18" endif -comment "pipewire needs a toolchain w/ dynamic library, NTPL, gcc >= 5" +comment "pipewire needs a toolchain w/ dynamic library, NPTL, gcc >= 5" depends on BR2_USE_MMU depends on BR2_STATIC_LIBS || \ !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ diff --git a/package/pipewire/pipewire.hash b/package/pipewire/pipewire.hash index 0e027aaa55b9..3370d86641b9 100644 --- a/package/pipewire/pipewire.hash +++ b/package/pipewire/pipewire.hash @@ -1,4 +1,4 @@ # Locally calculated -sha256 c78c95cdff2774418f0a9468e94a1b2800761d322f13104df6501e1a0dc92558 pipewire-0.3.65.tar.bz2 +sha256 2b6e0c4d2e544f5030fa7f4ecf1edd9e5eed15dda1c97135e8a1fded9f3425fe pipewire-0.3.81.tar.bz2 sha256 8909c319a7e27dbb33a15b9035f89ab3b7b2f6a12f8bcddc755206a8db1ada44 COPYING sha256 be4be5d77424833edf31f53fc1f1cecb6996b9e2d747d9e6fb8f878362ebc92b LICENSE diff --git a/package/pipewire/pipewire.mk b/package/pipewire/pipewire.mk index ecf4a035ecbb..628c69ff8a0d 100644 --- a/package/pipewire/pipewire.mk +++ b/package/pipewire/pipewire.mk @@ -4,7 +4,7 @@ # ################################################################################ -PIPEWIRE_VERSION = 0.3.65 +PIPEWIRE_VERSION = 0.3.81 PIPEWIRE_SOURCE = pipewire-$(PIPEWIRE_VERSION).tar.bz2 PIPEWIRE_SITE = https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/$(PIPEWIRE_VERSION) PIPEWIRE_LICENSE = MIT, LGPL-2.1+ (libspa-alsa), GPL-2.0 (libjackserver) @@ -30,10 +30,13 @@ PIPEWIRE_CONF_OPTS += \ -Dvideoconvert=enabled \ -Dvideotestsrc=enabled \ -Dvolume=enabled \ + -Dvulkan=disabled \ -Dsession-managers=[] \ -Dlegacy-rtkit=false \ -Davb=disabled \ -Dlibcanberra=disabled \ + -Dlibmysofa=disabled \ + -Dlibffado=disabled \ -Dflatpak=disabled ifeq ($(BR2_PACKAGE_DBUS),y) @@ -180,13 +183,6 @@ else PIPEWIRE_CONF_OPTS += -Dlibusb=disabled endif -ifeq ($(BR2_PACKAGE_MESA3D_VULKAN_DRIVER),y) -PIPEWIRE_CONF_OPTS += -Dvulkan=enabled -PIPEWIRE_DEPENDENCIES += mesa3d -else -PIPEWIRE_CONF_OPTS += -Dvulkan=disabled -endif - ifeq ($(BR2_PACKAGE_LIBSNDFILE),y) PIPEWIRE_CONF_OPTS += -Dpw-cat=enabled -Dsndfile=enabled PIPEWIRE_DEPENDENCIES += libsndfile @@ -194,6 +190,13 @@ else PIPEWIRE_CONF_OPTS += -Dpw-cat=disabled -Dsndfile=disabled endif +ifeq ($(BR2_PACKAGE_OPUS),y) +PIPEWIRE_CONF_OPTS += -Dopus=enabled +PIPEWIRE_DEPENDENCIES += opus +else +PIPEWIRE_CONF_OPTS += -Dopus=disabled +endif + ifeq ($(BR2_PACKAGE_PULSEAUDIO),y) PIPEWIRE_CONF_OPTS += -Dlibpulse=enabled PIPEWIRE_DEPENDENCIES += pulseaudio diff --git a/package/pistache/0003-Add-missing-cstdint-header-include-1142.patch b/package/pistache/0003-Add-missing-cstdint-header-include-1142.patch new file mode 100644 index 000000000000..3451e4aa4c6b --- /dev/null +++ b/package/pistache/0003-Add-missing-cstdint-header-include-1142.patch @@ -0,0 +1,23 @@ +From dabe9fcd3eaaa6b0b8723369b2565778341630c0 Mon Sep 17 00:00:00 2001 +From: a-andre <13609565+a-andre@users.noreply.github.com> +Date: Thu, 29 Jun 2023 16:34:11 +0200 +Subject: [PATCH] Add missing cstdint header include (#1142) + +Upstream: https://github.com/pistacheio/pistache/commit/dabe9fcd3eaaa6b0b8723369b2565778341630c0 +Signed-off-by: Fabrice Fontaine +--- + include/pistache/flags.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/include/pistache/flags.h b/include/pistache/flags.h +index 9be2b32bb..6adcc74bc 100644 +--- a/include/pistache/flags.h ++++ b/include/pistache/flags.h +@@ -13,6 +13,7 @@ + #pragma once + + #include ++#include + #include + #include + diff --git a/package/pixman/pixman.mk b/package/pixman/pixman.mk index 6e6d787d27e6..37eb974c46cb 100644 --- a/package/pixman/pixman.mk +++ b/package/pixman/pixman.mk @@ -24,6 +24,13 @@ PIXMAN_CONF_OPTS = \ --disable-loongson-mmi \ --disable-arm-iwmmxt +# Affects only tests, and we don't build tests (see +# 0001-Disable-tests.patch). See +# https://gitlab.freedesktop.org/pixman/pixman/-/issues/76, which says +# "not sure why NVD keeps assigning CVEs like this. This is just a +# test executable". +PIXMAN_IGNORE_CVES += CVE-2023-37769 + # The ARM SIMD code from pixman requires a recent enough ARM core, but # there is a runtime CPU check that makes sure it doesn't get used if # the HW doesn't support it. The only case where the ARM SIMD code diff --git a/package/pkg-autotools.mk b/package/pkg-autotools.mk index 717ff815938d..f17186dfe42a 100644 --- a/package/pkg-autotools.mk +++ b/package/pkg-autotools.mk @@ -87,14 +87,6 @@ define CONFIGURE_FIX_POWERPC64_HOOK support/scripts/fix-configure-powerpc64.sh $($(PKG)_DIR) endef -# -# Hook to gettextize the package if needed -# -define GETTEXTIZE_HOOK - @$(call MESSAGE,"Gettextizing") - $(Q)cd $($(PKG)_SRCDIR) && $(GETTEXTIZE) $($(PKG)_GETTEXTIZE_OPTS) -endef - # # Hook to autoreconf the package if needed # @@ -144,17 +136,14 @@ ifndef $(2)_AUTORECONF endif endif -ifndef $(2)_GETTEXTIZE - ifdef $(3)_GETTEXTIZE - $(2)_GETTEXTIZE = $$($(3)_GETTEXTIZE) +ifndef $(2)_AUTOPOINT + ifdef $(3)_AUTOPOINT + $(2)_AUTOPOINT = $$($(3)_AUTOPOINT) else - $(2)_GETTEXTIZE ?= NO + $(2)_AUTOPOINT ?= NO endif endif -ifeq ($(4),host) - $(2)_GETTEXTIZE_OPTS ?= $$($(3)_GETTEXTIZE_OPTS) -endif ifeq ($(4),host) $(2)_AUTORECONF_OPTS ?= $$($(3)_AUTORECONF_OPTS) @@ -240,10 +229,12 @@ $(2)_POST_PATCH_HOOKS += UPDATE_CONFIG_HOOK ifeq ($$($(2)_AUTORECONF),YES) -# This has to come before autoreconf -ifeq ($$($(2)_GETTEXTIZE),YES) -$(2)_PRE_CONFIGURE_HOOKS += GETTEXTIZE_HOOK +# autopoint is provided by gettext +ifeq ($$($(2)_AUTOPOINT),YES) $(2)_DEPENDENCIES += host-gettext +$(2)_AUTORECONF_ENV += AUTOPOINT=$$(HOST_DIR)/bin/autopoint +else +$(2)_AUTORECONF_ENV += AUTOPOINT=/bin/true endif $(2)_PRE_CONFIGURE_HOOKS += AUTORECONF_HOOK # default values are not evaluated yet, so don't rely on this defaulting to YES diff --git a/package/pkg-cargo.mk b/package/pkg-cargo.mk index 666c5ac9718d..2c277f7079e1 100644 --- a/package/pkg-cargo.mk +++ b/package/pkg-cargo.mk @@ -34,7 +34,10 @@ PKG_COMMON_CARGO_ENV = \ # using nighly features on stable releases, i.e features that are not # yet considered stable. # -# CARGO_UNSTABLE_TARGET_APPLIES_TO_HOST="true" "enables the nightly +# CARGO_UNSTABLE_HOST_CONFIG="true" enables the host specific +# configuration feature +# +# CARGO_UNSTABLE_TARGET_APPLIES_TO_HOST="true" enables the nightly # configuration option target-applies-to-host value to be set # # CARGO_TARGET_APPLIES_TO_HOST="false" is actually setting the value @@ -43,9 +46,11 @@ PKG_COMMON_CARGO_ENV = \ PKG_CARGO_ENV = \ $(PKG_COMMON_CARGO_ENV) \ __CARGO_TEST_CHANNEL_OVERRIDE_DO_NOT_USE_THIS="nightly" \ + CARGO_UNSTABLE_HOST_CONFIG="true" \ CARGO_UNSTABLE_TARGET_APPLIES_TO_HOST="true" \ CARGO_TARGET_APPLIES_TO_HOST="false" \ CARGO_BUILD_TARGET="$(RUSTC_TARGET_NAME)" \ + CARGO_HOST_RUSTFLAGS="$(addprefix -C link-args=,$(HOST_LDFLAGS))" \ CARGO_TARGET_$(call UPPERCASE,$(RUSTC_TARGET_NAME))_LINKER=$(notdir $(TARGET_CROSS))gcc # @@ -53,11 +58,13 @@ PKG_CARGO_ENV = \ # and should be removed when fixed upstream # ifeq ($(NORMALIZED_ARCH),arm) - PKG_CARGO_ENV += RUSTFLAGS="-Clink-arg=-Wl,--allow-multiple-definition" + PKG_CARGO_ENV += \ + CARGO_TARGET_$(call UPPERCASE,$(RUSTC_TARGET_NAME))_RUSTFLAGS="-Clink-arg=-Wl,--allow-multiple-definition" endif HOST_PKG_CARGO_ENV = \ - $(PKG_COMMON_CARGO_ENV) + $(PKG_COMMON_CARGO_ENV) \ + RUSTFLAGS="$(addprefix -C link-args=,$(HOST_LDFLAGS))" ################################################################################ # inner-cargo-package -- defines how the configuration, compilation and @@ -88,9 +95,22 @@ ifneq ($$($(2)_SUBDIR),) $(2)_DL_ENV += BR_CARGO_MANIFEST_PATH=$$($(2)_SUBDIR)/Cargo.toml endif +# Because we append vendored info, we can't rely on the values being empty +# once we eventually get into the generic-package infra. So, we duplicate +# the heuristics here +ifndef $(2)_LICENSE + ifdef $(3)_LICENSE + $(2)_LICENSE = $$($(3)_LICENSE) + endif +endif + # Due to vendoring, it is pretty likely that not all licenses are -# listed in _LICENSE. +# listed in _LICENSE. If the license is unset, it is "unknown" +# so adding unknowns to some unknown is still some other unkown, +# so don't append the blurb in that case. +ifneq ($$($(2)_LICENSE),) $(2)_LICENSE += , vendored dependencies licenses probably not listed +endif # Note: in all the steps below, we "cd" into the build directory to # execute the "cargo" tool instead of passing $(@D)/Cargo.toml as the @@ -130,7 +150,6 @@ else # ifeq ($(4),target) define $(2)_BUILD_CMDS cd $$($$(PKG)_SRCDIR) && \ $$(HOST_MAKE_ENV) \ - RUSTFLAGS="$$(addprefix -C link-args=,$$(HOST_LDFLAGS))" \ $$(HOST_CONFIGURE_OPTS) \ $$(HOST_PKG_CARGO_ENV) \ $$($(2)_CARGO_ENV) \ @@ -171,7 +190,6 @@ ifndef $(2)_INSTALL_CMDS define $(2)_INSTALL_CMDS cd $$($$(PKG)_SRCDIR) && \ $$(HOST_MAKE_ENV) \ - RUSTFLAGS="$$(addprefix -C link-args=,$$(HOST_LDFLAGS))" \ $$(HOST_CONFIGURE_OPTS) \ $$(HOST_PKG_CARGO_ENV) \ $$($(2)_CARGO_ENV) \ diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk index 8c375779cb69..8f391eb4c928 100644 --- a/package/pkg-cmake.mk +++ b/package/pkg-cmake.mk @@ -51,13 +51,10 @@ endif define inner-cmake-package -$(2)_MAKE ?= $$(MAKE) -$(2)_INSTALL_OPTS ?= install -$(2)_INSTALL_STAGING_OPTS ?= DESTDIR=$$(STAGING_DIR) install/fast -$(2)_INSTALL_TARGET_OPTS ?= DESTDIR=$$(TARGET_DIR) install/fast - $(3)_SUPPORTS_IN_SOURCE_BUILD ?= YES +# The default backend, unless specified by the package +$(3)_CMAKE_BACKEND ?= make ifeq ($$($(3)_SUPPORTS_IN_SOURCE_BUILD),YES) $(2)_BUILDDIR = $$($(2)_SRCDIR) @@ -65,6 +62,24 @@ else $(2)_BUILDDIR = $$($(2)_SRCDIR)/buildroot-build endif +ifeq ($$($(3)_CMAKE_BACKEND),make) +$(2)_GENERATOR = "Unix Makefiles" +# $$(MAKE) can be 'make -jN', we just want 'make' (possibly with a full path) +$(2)_GENERATOR_PROGRAM = $$(firstword $$(MAKE)) +# Generator specific code (make) should be avoided, +# but for now, copy them to the new variables. +$(2)_BUILD_ENV ?= $$($(2)_MAKE_ENV) +$(2)_BUILD_OPTS ?= -- $$($(2)_MAKE_OPTS) + +else ifeq ($$($(3)_CMAKE_BACKEND),ninja) +$(2)_DEPENDENCIES += host-ninja +$(2)_GENERATOR = "Ninja" +$(2)_GENERATOR_PROGRAM = $$(HOST_DIR)/bin/ninja + +else +$$(error Unsupported cmake backend "$$($(3)_CMAKE_BACKEND)") +endif + # # Configure step. Only define it if not already defined by the package # .mk file. And take care of the differences between host and target @@ -88,7 +103,8 @@ define $(2)_CONFIGURE_CMDS rm -f CMakeCache.txt && \ PATH=$$(BR_PATH) \ $$($$(PKG)_CONF_ENV) $$(BR2_CMAKE) $$($$(PKG)_SRCDIR) \ - -G"Unix Makefiles" \ + -G$$($$(PKG)_GENERATOR) \ + -DCMAKE_MAKE_PROGRAM="$$($$(PKG)_GENERATOR_PROGRAM)" \ -DCMAKE_TOOLCHAIN_FILE="$$(HOST_DIR)/share/buildroot/toolchainfile.cmake" \ -DCMAKE_INSTALL_PREFIX="/usr" \ -DCMAKE_INSTALL_RUNSTATEDIR="/run" \ @@ -119,7 +135,8 @@ define $(2)_CONFIGURE_CMDS PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 \ PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 \ $$($$(PKG)_CONF_ENV) $$(BR2_CMAKE) $$($$(PKG)_SRCDIR) \ - -G"Unix Makefiles" \ + -G$$($$(PKG)_GENERATOR) \ + -DCMAKE_MAKE_PROGRAM="$$($$(PKG)_GENERATOR_PROGRAM)" \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_FIND_ROOT_PATH="$$(HOST_DIR)" \ -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM="BOTH" \ @@ -166,11 +183,11 @@ $(2)_DEPENDENCIES += $(BR2_CMAKE_HOST_DEPENDENCY) ifndef $(2)_BUILD_CMDS ifeq ($(4),target) define $(2)_BUILD_CMDS - $$(TARGET_MAKE_ENV) $$($$(PKG)_MAKE_ENV) $$($$(PKG)_MAKE) $$($$(PKG)_MAKE_OPTS) -C $$($$(PKG)_BUILDDIR) + $$(TARGET_MAKE_ENV) $$($$(PKG)_BUILD_ENV) $$(BR2_CMAKE) --build $$($$(PKG)_BUILDDIR) -j$(PARALLEL_JOBS) $$($$(PKG)_BUILD_OPTS) endef else define $(2)_BUILD_CMDS - $$(HOST_MAKE_ENV) $$($$(PKG)_MAKE_ENV) $$($$(PKG)_MAKE) $$($$(PKG)_MAKE_OPTS) -C $$($$(PKG)_BUILDDIR) + $$(HOST_MAKE_ENV) $$($$(PKG)_BUILD_ENV) $$(BR2_CMAKE) --build $$($$(PKG)_BUILDDIR) -j$(PARALLEL_JOBS) $$($$(PKG)_BUILD_OPTS) endef endif endif @@ -181,7 +198,7 @@ endif # ifndef $(2)_INSTALL_CMDS define $(2)_INSTALL_CMDS - $$(HOST_MAKE_ENV) $$($$(PKG)_MAKE_ENV) $$($$(PKG)_MAKE) $$($$(PKG)_MAKE_OPTS) $$($$(PKG)_INSTALL_OPTS) -C $$($$(PKG)_BUILDDIR) + $$(HOST_MAKE_ENV) $$($$(PKG)_BUILD_ENV) $$(BR2_CMAKE) --install $$($$(PKG)_BUILDDIR) $$($$(PKG)_INSTALL_OPTS) endef endif @@ -191,7 +208,7 @@ endif # ifndef $(2)_INSTALL_STAGING_CMDS define $(2)_INSTALL_STAGING_CMDS - $$(TARGET_MAKE_ENV) $$($$(PKG)_MAKE_ENV) $$($$(PKG)_MAKE) $$($$(PKG)_MAKE_OPTS) $$($$(PKG)_INSTALL_STAGING_OPTS) -C $$($$(PKG)_BUILDDIR) + $$(TARGET_MAKE_ENV) $$($$(PKG)_BUILD_ENV) DESTDIR=$$(STAGING_DIR) $$(BR2_CMAKE) --install $$($$(PKG)_BUILDDIR) $$($$(PKG)_INSTALL_STAGING_OPTS) endef endif @@ -201,7 +218,7 @@ endif # ifndef $(2)_INSTALL_TARGET_CMDS define $(2)_INSTALL_TARGET_CMDS - $$(TARGET_MAKE_ENV) $$($$(PKG)_MAKE_ENV) $$($$(PKG)_MAKE) $$($$(PKG)_MAKE_OPTS) $$($$(PKG)_INSTALL_TARGET_OPTS) -C $$($$(PKG)_BUILDDIR) + $$(TARGET_MAKE_ENV) $$($$(PKG)_BUILD_ENV) DESTDIR=$$(TARGET_DIR) $$(BR2_CMAKE) --install $$($$(PKG)_BUILDDIR) $$($$(PKG)_INSTALL_TARGET_OPTS) endef endif diff --git a/package/pkg-download.mk b/package/pkg-download.mk index 0718f21aad2e..30eeb6b1fc74 100644 --- a/package/pkg-download.mk +++ b/package/pkg-download.mk @@ -21,7 +21,7 @@ export LOCALFILES := $(call qstrip,$(BR2_LOCALFILES)) # Version of the format of the archives we generate in the corresponding # download backend: BR_FMT_VERSION_git = -br1 -BR_FMT_VERSION_svn = -br2 +BR_FMT_VERSION_svn = -br3 DL_WRAPPER = support/download/dl-wrapper @@ -66,9 +66,7 @@ github = https://github.com/$(1)/$(2)/archive/$(3) gitlab = https://gitlab.com/$(1)/$(2)/-/archive/$(3) # Expressly do not check hashes for those files -# Exported variables default to immediately expanded in some versions of -# make, but we need it to be recursively-epxanded, so explicitly assign it. -export BR_NO_CHECK_HASH_FOR = +BR_NO_CHECK_HASH_FOR = ################################################################################ # DOWNLOAD_URIS - List the candidates URIs where to get the package from: @@ -110,15 +108,17 @@ endif define DOWNLOAD $(Q)mkdir -p $($(2)_DL_DIR) $(Q)$(EXTRA_ENV) $($(2)_DL_ENV) \ + BR_NO_CHECK_HASH_FOR="$(if $(BR2_DOWNLOAD_FORCE_CHECK_HASHES),,$(BR_NO_CHECK_HASH_FOR))" \ flock $($(2)_DL_DIR)/.lock $(DL_WRAPPER) \ -c '$($(2)_DL_VERSION)' \ -d '$($(2)_DL_DIR)' \ -D '$(DL_DIR)' \ -f '$(notdir $(1))' \ - -H '$($(2)_HASH_FILE)' \ + $(foreach f,$($(2)_HASH_FILES),-H '$(f)') \ -n '$($(2)_BASENAME_RAW)' \ -N '$($(2)_RAWNAME)' \ -o '$($(2)_DL_DIR)/$(notdir $(1))' \ + $(if $(filter YES,$($(2)_SVN_EXTERNALS)),-r) \ $(if $($(2)_GIT_SUBMODULES),-r) \ $(if $($(2)_GIT_LFS),-l) \ $(foreach uri,$(call DOWNLOAD_URIS,$(1),$(2)),-u $(uri)) \ diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk index 82187d7db9d2..577a148c1e62 100644 --- a/package/pkg-generic.mk +++ b/package/pkg-generic.mk @@ -92,18 +92,8 @@ endif ifeq ($(BR2_PER_PACKAGE_DIRECTORIES),y) -# Ensure files like .la, .pc, .pri, .cmake, and so on, point to the -# proper staging and host directories for the current package: find -# all text files that contain the PPD root, and replace it with the -# current package's PPD. define PPD_FIXUP_PATHS - $(Q)grep --binary-files=without-match -lrZ '$(PER_PACKAGE_DIR)/[^/]\+/' $(HOST_DIR) \ - |while read -d '' f; do \ - file -b --mime-type "$${f}" | grep -q '^text/' || continue; \ - printf '%s\0' "$${f}"; \ - done \ - |xargs -0 --no-run-if-empty \ - $(SED) 's:$(PER_PACKAGE_DIR)/[^/]\+/:$(PER_PACKAGE_DIR)/$($(PKG)_NAME)/:g' + $(call ppd-fixup-paths,$(PER_PACKAGE_DIR)/$($(PKG)_NAME)) endef # Remove python's pre-compiled "sysconfigdata", as it may contain paths to @@ -252,9 +242,9 @@ $(BUILD_DIR)/%/.stamp_patched: for D in $(PATCH_BASE_DIRS); do \ if test -d $${D}; then \ if test -d $${D}/$($(PKG)_VERSION); then \ - $(APPLY_PATCHES) $(@D) $${D}/$($(PKG)_VERSION) \*.patch \*.patch.$(ARCH) || exit 1; \ + $(APPLY_PATCHES) $(@D) $${D}/$($(PKG)_VERSION) \*.patch || exit 1; \ else \ - $(APPLY_PATCHES) $(@D) $${D} \*.patch \*.patch.$(ARCH) || exit 1; \ + $(APPLY_PATCHES) $(@D) $${D} \*.patch || exit 1; \ fi; \ fi; \ done; \ @@ -519,11 +509,15 @@ else endif $(2)_VERSION := $$(call sanitize,$$($(2)_DL_VERSION)) -$(2)_HASH_FILE = \ +$(2)_HASH_FILES = \ $$(strip \ - $$(if $$(wildcard $$($(2)_PKGDIR)/$$($(2)_VERSION)/$$($(2)_RAWNAME).hash),\ - $$($(2)_PKGDIR)/$$($(2)_VERSION)/$$($(2)_RAWNAME).hash,\ - $$($(2)_PKGDIR)/$$($(2)_RAWNAME).hash)) + $$(foreach d, $$($(2)_PKGDIR) $$(addsuffix /$$($(2)_RAWNAME), $$(call qstrip,$$(BR2_GLOBAL_PATCH_DIR))),\ + $$(if $$(wildcard $$(d)/$$($(2)_VERSION)/$$($(2)_RAWNAME).hash),\ + $$(d)/$$($(2)_VERSION)/$$($(2)_RAWNAME).hash,\ + $$(d)/$$($(2)_RAWNAME).hash\ + )\ + )\ + ) ifdef $(3)_OVERRIDE_SRCDIR $(2)_OVERRIDE_SRCDIR ?= $$($(3)_OVERRIDE_SRCDIR) @@ -643,6 +637,12 @@ ifndef $(2)_GIT_SUBMODULES endif endif +ifndef $(2)_SVN_EXTERNALS + ifdef $(3)_SVN_EXTERNALS + $(2)_SVN_EXTERNALS = $$($(3)_SVN_EXTERNALS) + endif +endif + # Do not accept to download git submodule if not using the git method ifneq ($$($(2)_GIT_SUBMODULES),) ifneq ($$($(2)_SITE_METHOD),git) @@ -792,7 +792,7 @@ $(2)_EXTRACT_DEPENDENCIES += \ endif ifeq ($$(BR2_CCACHE),y) -ifeq ($$(filter host-tar host-skeleton host-xz host-lzip host-fakedate host-ccache host-hiredis host-pkgconf host-zstd,$(1)),) +ifeq ($$(filter host-tar host-skeleton host-xz host-lzip host-fakedate host-ccache host-cmake host-hiredis host-pkgconf host-zstd,$(1)),) $(2)_DEPENDENCIES += host-ccache endif endif @@ -1057,17 +1057,17 @@ endif rm -f $$($(2)_TARGET_INSTALL_IMAGES) rm -f $$($(2)_TARGET_INSTALL_HOST) -$(1)-reinstall: $(1)-clean-for-reinstall $(1) +$(1)-reinstall: $(1)-clean-for-reinstall .WAIT $(1) $(1)-clean-for-rebuild: $(1)-clean-for-reinstall rm -f $$($(2)_TARGET_BUILD) -$(1)-rebuild: $(1)-clean-for-rebuild $(1) +$(1)-rebuild: $(1)-clean-for-rebuild .WAIT $(1) $(1)-clean-for-reconfigure: $(1)-clean-for-rebuild rm -f $$($(2)_TARGET_CONFIGURE) -$(1)-reconfigure: $(1)-clean-for-reconfigure $(1) +$(1)-reconfigure: $(1)-clean-for-reconfigure .WAIT $(1) # define the PKG variable for all targets, containing the # uppercase package variable prefix @@ -1142,7 +1142,7 @@ ifneq ($$(call qstrip,$$($(2)_SOURCE)),) ifeq ($$(call qstrip,$$($(2)_LICENSE_FILES)),) $(Q)$$(call legal-warning-pkg,$$($(2)_BASENAME_RAW),cannot save license ($(2)_LICENSE_FILES not defined)) else - $(Q)$$(foreach F,$$($(2)_LICENSE_FILES),$$(call legal-license-file,$$($(2)_RAWNAME),$$($(2)_BASENAME_RAW),$$($(2)_HASH_FILE),$$(F),$$($(2)_DIR)/$$(F),$$(call UPPERCASE,$(4)))$$(sep)) + $(Q)$$(foreach F,$$($(2)_LICENSE_FILES),$$(call legal-license-file,$$(call UPPERCASE,$(4)),$$($(2)_RAWNAME),$$($(2)_BASENAME_RAW),$$(F),$$($(2)_DIR)/$$(F),$$($(2)_HASH_FILES))$$(sep)) endif # license files ifeq ($$($(2)_REDISTRIBUTE),YES) @@ -1202,12 +1202,13 @@ $(eval $(call check-deprecated-variable,$(2)_MAKE_OPT,$(2)_MAKE_OPTS)) $(eval $(call check-deprecated-variable,$(2)_INSTALL_OPT,$(2)_INSTALL_OPTS)) $(eval $(call check-deprecated-variable,$(2)_INSTALL_TARGET_OPT,$(2)_INSTALL_TARGET_OPTS)) $(eval $(call check-deprecated-variable,$(2)_INSTALL_STAGING_OPT,$(2)_INSTALL_STAGING_OPTS)) -$(eval $(call check-deprecated-variable,$(2)_INSTALL_HOST_OPT,$(2)_INSTALL_HOST_OPTS)) +$(eval $(call check-deprecated-variable,$(2)_INSTALL_HOST_OPT,$(2)_INSTALL_OPTS)) +$(eval $(call check-deprecated-variable,$(2)_INSTALL_HOST_OPTS,$(2)_INSTALL_OPTS)) $(eval $(call check-deprecated-variable,$(2)_AUTORECONF_OPT,$(2)_AUTORECONF_OPTS)) $(eval $(call check-deprecated-variable,$(2)_CONF_OPT,$(2)_CONF_OPTS)) $(eval $(call check-deprecated-variable,$(2)_BUILD_OPT,$(2)_BUILD_OPTS)) -$(eval $(call check-deprecated-variable,$(2)_GETTEXTIZE_OPT,$(2)_GETTEXTIZE_OPTS)) $(eval $(call check-deprecated-variable,$(2)_KCONFIG_OPT,$(2)_KCONFIG_OPTS)) +$(eval $(call check-deprecated-variable,$(2)_GETTEXTIZE,$(2)_AUTOPOINT)) PACKAGES += $(1) @@ -1230,8 +1231,11 @@ KEEP_PYTHON_PY_FILES += $$($(2)_KEEP_PY_FILES) ifneq ($$($(2)_SELINUX_MODULES),) PACKAGES_SELINUX_MODULES += $$($(2)_SELINUX_MODULES) endif + +ifeq ($(BR2_PACKAGE_REFPOLICY_UPSTREAM_VERSION),y) PACKAGES_SELINUX_EXTRA_MODULES_DIRS += \ $$(if $$(wildcard $$($(2)_PKGDIR)/selinux),$$($(2)_PKGDIR)/selinux) +endif ifeq ($$($(2)_SITE_METHOD),svn) DL_TOOLS_DEPENDENCIES += svn diff --git a/package/pkg-golang.mk b/package/pkg-golang.mk index da9c9a21ac92..8e27602d4110 100644 --- a/package/pkg-golang.mk +++ b/package/pkg-golang.mk @@ -91,9 +91,22 @@ $(2)_DL_ENV += \ GOPROXY=direct \ $$($(2)_GO_ENV) +# Because we append vendored info, we can't rely on the values being empty +# once we eventually get into the generic-package infra. So, we duplicate +# the heuristics here +ifndef $(2)_LICENSE + ifdef $(3)_LICENSE + $(2)_LICENSE = $$($(3)_LICENSE) + endif +endif + # Due to vendoring, it is pretty likely that not all licenses are -# listed in _LICENSE. +# listed in _LICENSE. If the license is unset, it is "unknown" +# so adding unknowns to some unknown is still some other unkown, +# so don't append the blurb in that case. +ifneq ($$($(2)_LICENSE),) $(2)_LICENSE += , vendored dependencies licenses probably not listed +endif # Build step. Only define it if not already defined by the package .mk # file. @@ -102,6 +115,7 @@ ifeq ($(4),target) ifeq ($(BR2_STATIC_LIBS),y) $(2)_LDFLAGS += -extldflags '-static' +$(2)_TAGS += osusergo netgo endif # Build package for target diff --git a/package/pkg-kernel-module.mk b/package/pkg-kernel-module.mk index fcd6b8bc2915..4f64a73f1171 100644 --- a/package/pkg-kernel-module.mk +++ b/package/pkg-kernel-module.mk @@ -50,11 +50,13 @@ LINUX_NEEDS_MODULES = y endif # The kernel must be built first. -$(2)_DEPENDENCIES += linux +$(2)_DEPENDENCIES += \ + linux \ + $$(BR2_MAKE_HOST_DEPENDENCY) # This is only defined in some infrastructures (e.g. autotools, cmake), # but not in others (e.g. generic). So define it here as well. -$(2)_MAKE ?= $$(MAKE) +$(2)_MAKE ?= $$(BR2_MAKE) # If not specified, consider the source of the kernel module to be at # the root of the package. diff --git a/package/pkg-meson.mk b/package/pkg-meson.mk index 4aa6e44afa1e..65cabf23baed 100644 --- a/package/pkg-meson.mk +++ b/package/pkg-meson.mk @@ -156,6 +156,7 @@ define $(2)_CONFIGURE_CMDS --buildtype=$(if $(BR2_ENABLE_RUNTIME_DEBUG),debug,release) \ --cross-file=$$($$(PKG)_SRCDIR)/build/cross-compilation.conf \ -Db_pie=false \ + -Db_staticpic=$(if $(BR2_m68k_cf),false,true) \ -Dstrip=false \ -Dbuild.pkg_config_path=$$(HOST_DIR)/lib/pkgconfig \ -Dbuild.cmake_prefix_path=$$(HOST_DIR)/lib/cmake \ diff --git a/package/pkg-python.mk b/package/pkg-python.mk index c15a168f6075..28ee4cb85fb4 100644 --- a/package/pkg-python.mk +++ b/package/pkg-python.mk @@ -55,8 +55,7 @@ HOST_PKG_PYTHON_ENV = \ # Target distutils-based packages PKG_PYTHON_DISTUTILS_ENV = \ $(PKG_PYTHON_ENV) \ - LDSHARED="$(TARGET_CROSS)gcc -shared" \ - SETUPTOOLS_USE_DISTUTILS=stdlib \ + LDSHARED="$(TARGET_CROSS)gcc -shared" PKG_PYTHON_DISTUTILS_BUILD_OPTS = \ --executable=/usr/bin/python @@ -75,16 +74,14 @@ PKG_PYTHON_DISTUTILS_INSTALL_STAGING_OPTS = \ # Host distutils-based packages HOST_PKG_PYTHON_DISTUTILS_ENV = \ - $(HOST_PKG_PYTHON_ENV) \ - SETUPTOOLS_USE_DISTUTILS=stdlib + $(HOST_PKG_PYTHON_ENV) HOST_PKG_PYTHON_DISTUTILS_INSTALL_OPTS = \ --prefix=$(HOST_DIR) # Target setuptools-based packages PKG_PYTHON_SETUPTOOLS_ENV = \ - $(PKG_PYTHON_ENV) \ - SETUPTOOLS_USE_DISTUTILS=stdlib + $(PKG_PYTHON_ENV) PKG_PYTHON_SETUPTOOLS_CMD = \ $(if $(wildcard $($(PKG)_BUILDDIR)/setup.py),setup.py,-c 'from setuptools import setup;setup()') @@ -105,14 +102,25 @@ PKG_PYTHON_SETUPTOOLS_INSTALL_STAGING_OPTS = \ # Host setuptools-based packages HOST_PKG_PYTHON_SETUPTOOLS_ENV = \ - $(HOST_PKG_PYTHON_ENV) \ - SETUPTOOLS_USE_DISTUTILS=stdlib + $(HOST_PKG_PYTHON_ENV) HOST_PKG_PYTHON_SETUPTOOLS_INSTALL_OPTS = \ --prefix=$(HOST_DIR) \ --root=/ \ --single-version-externally-managed +# Target setuptools-rust-based packages +PKG_PYTHON_SETUPTOOLS_RUST_ENV = \ + $(PKG_PYTHON_SETUPTOOLS_ENV) \ + $(PKG_CARGO_ENV) \ + PYO3_CROSS_LIB_DIR="$(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)" + +# Host setuptools-rust-based packages +HOST_PKG_PYTHON_SETUPTOOLS_RUST_ENV = \ + $(HOST_PKG_PYTHON_SETUPTOOLS_ENV) \ + $(HOST_PKG_CARGO_ENV) \ + PYO3_CROSS_LIB_DIR="$(HOST_DIR)/lib/python$(PYTHON3_VERSION_MAJOR)" + # Target pep517-based packages PKG_PYTHON_PEP517_ENV = \ $(PKG_PYTHON_ENV) @@ -150,6 +158,18 @@ HOST_PKG_PYTHON_PEP517_INSTALL_OPTS = \ HOST_PKG_PYTHON_PEP517_BOOTSTRAP_INSTALL_OPTS = \ --installdir=$(HOST_DIR)/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages +# Target maturin packages +PKG_PYTHON_MATURIN_ENV = \ + $(PKG_PYTHON_PEP517_ENV) \ + $(PKG_CARGO_ENV) \ + PYO3_CROSS_LIB_DIR="$(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)" + +# Host maturin packages +HOST_PKG_PYTHON_MATURIN_ENV = \ + $(HOST_PKG_PYTHON_PEP517_ENV) \ + $(HOST_PKG_CARGO_ENV) \ + PYO3_CROSS_LIB_DIR="$(HOST_DIR)/lib/python$(PYTHON3_VERSION_MAJOR)" + ################################################################################ # inner-python-package -- defines how the configuration, compilation # and installation of a Python package should be done, implements a @@ -188,25 +208,41 @@ $(2)_BASE_BUILD_CMD = setup.py build $(2)_BASE_INSTALL_CMD = setup.py install $$(HOST_PKG_PYTHON_DISTUTILS_INSTALL_OPTS) endif # Setuptools -else ifeq ($$($(2)_SETUP_TYPE),setuptools) +else ifneq ($$(filter setuptools setuptools-rust,$$($(2)_SETUP_TYPE)),) ifeq ($(4),target) +ifeq ($$($(2)_SETUP_TYPE),setuptools-rust) +$(2)_BASE_ENV = $$(PKG_PYTHON_SETUPTOOLS_RUST_ENV) +else $(2)_BASE_ENV = $$(PKG_PYTHON_SETUPTOOLS_ENV) +endif $(2)_BASE_BUILD_CMD = $$(PKG_PYTHON_SETUPTOOLS_CMD) build $(2)_BASE_INSTALL_TARGET_CMD = $$(PKG_PYTHON_SETUPTOOLS_CMD) install --no-compile $$(PKG_PYTHON_SETUPTOOLS_INSTALL_TARGET_OPTS) $(2)_BASE_INSTALL_STAGING_CMD = $$(PKG_PYTHON_SETUPTOOLS_CMD) install $$(PKG_PYTHON_SETUPTOOLS_INSTALL_STAGING_OPTS) else +ifeq ($$($(2)_SETUP_TYPE),setuptools-rust) +$(2)_BASE_ENV = $$(HOST_PKG_PYTHON_SETUPTOOLS_RUST_ENV) +else $(2)_BASE_ENV = $$(HOST_PKG_PYTHON_SETUPTOOLS_ENV) +endif $(2)_BASE_BUILD_CMD = $$(PKG_PYTHON_SETUPTOOLS_CMD) build $(2)_BASE_INSTALL_CMD = $$(PKG_PYTHON_SETUPTOOLS_CMD) install $$(HOST_PKG_PYTHON_SETUPTOOLS_INSTALL_OPTS) endif -else ifneq ($$(filter flit pep517,$$($(2)_SETUP_TYPE)),) +else ifneq ($$(filter flit maturin pep517,$$($(2)_SETUP_TYPE)),) ifeq ($(4),target) +ifeq ($$($(2)_SETUP_TYPE),maturin) +$(2)_BASE_ENV = $$(PKG_PYTHON_MATURIN_ENV) +else $(2)_BASE_ENV = $$(PKG_PYTHON_PEP517_ENV) +endif $(2)_BASE_BUILD_CMD = -m build -n -w $(2)_BASE_INSTALL_TARGET_CMD = $(TOPDIR)/support/scripts/pyinstaller.py dist/* $$(PKG_PYTHON_PEP517_INSTALL_TARGET_OPTS) $(2)_BASE_INSTALL_STAGING_CMD = $(TOPDIR)/support/scripts/pyinstaller.py dist/* $$(PKG_PYTHON_PEP517_INSTALL_STAGING_OPTS) else +ifeq ($$($(2)_SETUP_TYPE),maturin) +$(2)_BASE_ENV = $$(HOST_PKG_PYTHON_MATURIN_ENV) +else $(2)_BASE_ENV = $$(HOST_PKG_PYTHON_PEP517_ENV) +endif $(2)_BASE_BUILD_CMD = -m build -n -w $(2)_BASE_INSTALL_CMD = $(TOPDIR)/support/scripts/pyinstaller.py dist/* $$(HOST_PKG_PYTHON_PEP517_INSTALL_OPTS) endif @@ -219,7 +255,29 @@ $(2)_BASE_BUILD_CMD = -m flit_core.wheel $(2)_BASE_INSTALL_CMD ?= $(TOPDIR)/support/scripts/pyinstaller.py dist/* $$(HOST_PKG_PYTHON_PEP517_INSTALL_OPTS) endif else -$$(error "Invalid $(2)_SETUP_TYPE. Valid options are 'distutils', 'setuptools', 'pep517' or 'flit'.") +$$(error "Invalid $(2)_SETUP_TYPE. Valid options are 'distutils', 'maturin', 'setuptools', 'setuptools-rust', 'pep517' or 'flit'.") +endif + +# We need to vendor the Cargo crates at download time for pyo3 based +# packages. +# +ifneq ($$(filter maturin setuptools-rust,$$($(2)_SETUP_TYPE)),) +ifeq ($(4),target) +$(2)_DL_ENV = $$(PKG_CARGO_ENV) +else +$(2)_DL_ENV = $$(HOST_PKG_CARGO_ENV) +endif +ifndef $(2)_CARGO_MANIFEST_PATH +ifdef $(3)_CARGO_MANIFEST_PATH +$(2)_DL_ENV += BR_CARGO_MANIFEST_PATH=$$($(3)_CARGO_MANIFEST_PATH) +else +ifneq ($$($(2)_SUBDIR),) +$(2)_DL_ENV += BR_CARGO_MANIFEST_PATH=$$($(2)_SUBDIR)/Cargo.toml +endif +endif +else +$(2)_DL_ENV += BR_CARGO_MANIFEST_PATH=$$($(2)_CARGO_MANIFEST_PATH) +endif endif # Target packages need both the python interpreter on the target (for @@ -236,19 +294,35 @@ endif # ($(4),target) # Setuptools based packages will need setuptools for the host Python # interpreter (both host and target). # -ifeq ($$($(2)_SETUP_TYPE),setuptools) -$(2)_DEPENDENCIES += $$(if $$(filter host-python-setuptools,$(1)),,host-python-setuptools) -else ifneq ($$(filter flit pep517,$$($(2)_SETUP_TYPE)),) +ifneq ($$(filter setuptools setuptools-rust,$$($(2)_SETUP_TYPE)),) +$(2)_DEPENDENCIES += host-python-setuptools +ifeq ($$($(2)_SETUP_TYPE),setuptools-rust) +$(2)_DEPENDENCIES += host-python-setuptools-rust +endif +else ifneq ($$(filter flit maturin pep517,$$($(2)_SETUP_TYPE)),) $(2)_DEPENDENCIES += host-python-pypa-build host-python-installer ifeq ($$($(2)_SETUP_TYPE),flit) $(2)_DEPENDENCIES += host-python-flit-core endif +ifeq ($$($(2)_SETUP_TYPE),maturin) +$(2)_DEPENDENCIES += host-python-maturin +endif else ifeq ($$($(2)_SETUP_TYPE),flit-bootstrap) # Don't add dependency on host-python-installer for # host-python-installer itself, and its dependencies. ifeq ($$(filter host-python-flit-core host-python-installer,$(1)),) $(2)_DEPENDENCIES += host-python-installer endif +endif + +# Pyo3 based packages(setuptools-rust and maturin) will need rust +# toolchain dependencies for the host Python interpreter (both host +# and target). +# +ifneq ($$(filter maturin setuptools-rust,$$($(2)_SETUP_TYPE)),) +$(2)_DEPENDENCIES += host-rustc +$(2)_DOWNLOAD_POST_PROCESS = cargo +$(2)_DOWNLOAD_DEPENDENCIES = host-rustc endif # SETUP_TYPE # Python interpreter to use for building the package. diff --git a/package/pkg-rebar.mk b/package/pkg-rebar.mk index e4e3f3bb6c91..4b993dd970d6 100644 --- a/package/pkg-rebar.mk +++ b/package/pkg-rebar.mk @@ -32,10 +32,10 @@ REBAR_TARGET_DEPS_DIR = $(STAGING_DIR)/usr/share/rebar/deps # REBAR_HOST_DEPS_ENV = \ ERL_COMPILER_OPTIONS='{i, "$(REBAR_HOST_DEPS_DIR)"}' \ - ERL_EI_LIBDIR=$(HOST_DIR)/lib/erlang/lib/erl_interface-$(ERLANG_EI_VSN)/lib + ERL_EI_LIBDIR=$(HOST_DIR)/lib/erlang/lib/erl_interface-$(call erlang_ei_vsn,$(HOST_DIR))/lib REBAR_TARGET_DEPS_ENV = \ ERL_COMPILER_OPTIONS='{i, "$(REBAR_TARGET_DEPS_DIR)"}' \ - ERL_EI_LIBDIR=$(STAGING_DIR)/usr/lib/erlang/lib/erl_interface-$(ERLANG_EI_VSN)/lib + ERL_EI_LIBDIR=$(STAGING_DIR)/usr/lib/erlang/lib/erl_interface-$(call erlang_ei_vsn,$(STAGING_DIR)/usr)/lib ################################################################################ # Helper functions diff --git a/package/pkg-utils.mk b/package/pkg-utils.mk index 0945e6ed318a..059e86ae0a01 100644 --- a/package/pkg-utils.mk +++ b/package/pkg-utils.mk @@ -34,9 +34,9 @@ define KCONFIG_ENABLE_OPT fi endef # KCONFIG_SET_OPT (option, value [, file]) -KCONFIG_SET_OPT = $(call KCONFIG_MUNGE_DOT_CONFIG, $(1), $(1)=$(2), $(3)) +KCONFIG_SET_OPT = $(Q)$(call KCONFIG_MUNGE_DOT_CONFIG, $(1), $(1)=$(2), $(3)) # KCONFIG_DISABLE_OPT (option [, file]) -KCONFIG_DISABLE_OPT = $(call KCONFIG_MUNGE_DOT_CONFIG, $(1), $(SHARP_SIGN) $(1) is not set, $(2)) +KCONFIG_DISABLE_OPT = $(Q)$(call KCONFIG_MUNGE_DOT_CONFIG, $(1), $(SHARP_SIGN) $(1) is not set, $(2)) # Helper functions to determine the name of a package and its # directory from its makefile directory, using the $(MAKEFILE_LIST) @@ -214,10 +214,19 @@ ifeq ($(BR2_PER_PACKAGE_DIRECTORIES),y) # $1: space-separated list of packages to rsync from # $2: 'host' or 'target' # $3: destination directory +# $4: literal "copy" or "hardlink" to copy or hardlink files from src to dest define per-package-rsync mkdir -p $(3) $(foreach pkg,$(1),\ - rsync -a --link-dest=$(PER_PACKAGE_DIR)/$(pkg)/$(2)/ \ + rsync -a \ + --hard-links \ + $(if $(filter hardlink,$(4)), \ + --link-dest=$(PER_PACKAGE_DIR)/$(pkg)/$(2)/, \ + $(if $(filter copy,$(4)), \ + $(empty), \ + $(error per-package-rsync can only "copy" or "hardlink", not "$(4)") \ + ) \ + ) \ $(PER_PACKAGE_DIR)/$(pkg)/$(2)/ \ $(3)$(sep)) endef @@ -230,8 +239,23 @@ endef # # $1: space-separated list of packages to rsync from define prepare-per-package-directory - $(call per-package-rsync,$(1),host,$(HOST_DIR)) - $(call per-package-rsync,$(1),target,$(TARGET_DIR)) + $(call per-package-rsync,$(1),host,$(HOST_DIR),hardlink) + $(call per-package-rsync,$(1),target,$(TARGET_DIR),hardlink) +endef + +# Ensure files like .la, .pc, .pri, .cmake, and so on, point to the +# proper staging and host directories for the current package: find +# all text files that contain the PPD root, and replace it with the +# current package's PPD. +# $1: destination root directory containing host and staging +define ppd-fixup-paths + $(Q)grep --binary-files=without-match -lrZ '$(PER_PACKAGE_DIR)/[^/]\+/' $(HOST_DIR) \ + |while read -d '' f; do \ + file -b --mime-type "$${f}" | grep -q '^text/' || continue; \ + printf '%s\0' "$${f}"; \ + done \ + |xargs -0 --no-run-if-empty \ + $(SED) 's:$(PER_PACKAGE_DIR)/[^/]\+/:$(1)/:g' endef endif @@ -256,13 +280,13 @@ define legal-manifest # {HOST|TARGET}, pkg, version, license, license-files, sou echo '"$(2)","$(3)","$(4)","$(5)","$(6)","$(7)","$(8)"' >>$(LEGAL_MANIFEST_CSV_$(1)) endef -define legal-license-file # pkgname, pkgname-pkgver, pkg-hashfile, filename, file-fullpath, {HOST|TARGET} - mkdir -p $(LICENSE_FILES_DIR_$(6))/$(2)/$(dir $(4)) && \ +define legal-license-file # {HOST|TARGET}, pkgname, pkgname-pkgver, filename, file-fullpath, pkg-hashfiles + mkdir -p $(LICENSE_FILES_DIR_$(1))/$(3)/$(dir $(4)) && \ { \ - support/download/check-hash $(3) $(5) $(4); \ + support/download/check-hash $(5) $(4) $(6); \ case $${?} in (0|3) ;; (*) exit 1;; esac; \ } && \ - cp $(5) $(LICENSE_FILES_DIR_$(6))/$(2)/$(4) + cp $(5) $(LICENSE_FILES_DIR_$(1))/$(3)/$(4) endef non-virtual-deps = $(foreach p,$(1),$(if $($(call UPPERCASE,$(p))_IS_VIRTUAL),,$(p))) diff --git a/package/pkgconf/pkgconf.mk b/package/pkgconf/pkgconf.mk index e9587fae6b2c..1d73b691e173 100644 --- a/package/pkgconf/pkgconf.mk +++ b/package/pkgconf/pkgconf.mk @@ -5,7 +5,7 @@ ################################################################################ PKGCONF_VERSION = 1.6.3 -PKGCONF_SITE = https://distfiles.dereferenced.org/pkgconf +PKGCONF_SITE = https://distfiles.ariadne.space/pkgconf PKGCONF_SOURCE = pkgconf-$(PKGCONF_VERSION).tar.xz PKGCONF_LICENSE = pkgconf license PKGCONF_LICENSE_FILES = COPYING diff --git a/package/pngquant/pngquant.hash b/package/pngquant/pngquant.hash index a7ea4aa997ff..2926dfb6de20 100644 --- a/package/pngquant/pngquant.hash +++ b/package/pngquant/pngquant.hash @@ -1,4 +1,4 @@ # From https://pngquant.org/releases.html -sha256 a27cf0e64db499ccb3ddae9b36036e881f78293e46ec27a9e7a86a3802fcda66 pngquant-2.17.0-src.tar.gz +sha256 e72194b52b36f040deaec49a1ddd5dcd8d4feecc3a5fe6c5e9589a9707b233d4 pngquant-2.18.0-src.tar.gz # Locally computed sha256 e4f467f7abf860b4e620f5f60fdd88bc3a63a0fdb98a481fb002b5e511c9b826 COPYRIGHT diff --git a/package/pngquant/pngquant.mk b/package/pngquant/pngquant.mk index 87537aa18e61..8ef321600736 100644 --- a/package/pngquant/pngquant.mk +++ b/package/pngquant/pngquant.mk @@ -4,7 +4,7 @@ # ################################################################################ -PNGQUANT_VERSION = 2.17.0 +PNGQUANT_VERSION = 2.18.0 PNGQUANT_SOURCE = pngquant-$(PNGQUANT_VERSION)-src.tar.gz PNGQUANT_SITE = https://pngquant.org PNGQUANT_LICENSE = GPL-3.0+ diff --git a/package/poco/0001-Fix-optional-JSON-support-for-MySQL-3753.patch b/package/poco/0001-Fix-optional-JSON-support-for-MySQL-3753.patch deleted file mode 100644 index ba2f073a5959..000000000000 --- a/package/poco/0001-Fix-optional-JSON-support-for-MySQL-3753.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 3884c734c261231c34f59e56cde7ae02945b4dae Mon Sep 17 00:00:00 2001 -From: Hernan Martinez -Date: Tue, 16 Aug 2022 23:07:25 -0500 -Subject: [PATCH] Fix optional JSON support for MySQL (#3753) - -* Fix optional JSON support for MySQL - -* Fix optional JSON support for MySQLTest ---- - Data/MySQL/src/ResultMetadata.cpp | 2 ++ - Data/MySQL/testsuite/src/MySQLTest.cpp | 2 ++ - 2 files changed, 4 insertions(+) - -diff --git a/Data/MySQL/src/ResultMetadata.cpp b/Data/MySQL/src/ResultMetadata.cpp -index 61b49dd54..adb5dae84 100644 ---- a/Data/MySQL/src/ResultMetadata.cpp -+++ b/Data/MySQL/src/ResultMetadata.cpp -@@ -133,8 +133,10 @@ namespace - case MYSQL_TYPE_LONG_BLOB: - case MYSQL_TYPE_BLOB: - return Poco::Data::MetaColumn::FDT_BLOB; -+#ifdef POCO_MYSQL_JSON - case MYSQL_TYPE_JSON: - return Poco::Data::MetaColumn::FDT_JSON; -+#endif - default: - return Poco::Data::MetaColumn::FDT_UNKNOWN; - } -diff --git a/Data/MySQL/testsuite/src/MySQLTest.cpp b/Data/MySQL/testsuite/src/MySQLTest.cpp -index 80a3683b1..2a286d35e 100644 ---- a/Data/MySQL/testsuite/src/MySQLTest.cpp -+++ b/Data/MySQL/testsuite/src/MySQLTest.cpp -@@ -976,7 +976,9 @@ CppUnit::Test* MySQLTest::suite() - CppUnit_addTest(pSuite, MySQLTest, testBLOBStmt); - CppUnit_addTest(pSuite, MySQLTest, testLongBLOB); - CppUnit_addTest(pSuite, MySQLTest, testLongTEXT); -+#ifdef POCO_MYSQL_JSON - CppUnit_addTest(pSuite, MySQLTest, testJSON); -+#endif - CppUnit_addTest(pSuite, MySQLTest, testUnsignedInts); - CppUnit_addTest(pSuite, MySQLTest, testFloat); - CppUnit_addTest(pSuite, MySQLTest, testDouble); --- -2.37.2 - diff --git a/package/poco/poco.hash b/package/poco/poco.hash index eea3e2494a6a..9a7981171a52 100644 --- a/package/poco/poco.hash +++ b/package/poco/poco.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 30442ccb097a0074133f699213a59d6f8c77db5b2c98a7c1ad9c5eeb3a2b06f3 poco-1.12.2.tar.gz +sha256 71ef96c35fced367d6da74da294510ad2c912563f12cd716ab02b6ed10a733ef poco-1.12.4.tar.gz sha256 c4b1e1e5f36d8331737231fefcc30f5714326aec7c387ad59a8115eb0ba7d6b5 LICENSE diff --git a/package/poco/poco.mk b/package/poco/poco.mk index d078faa8e535..2d0233a8cebd 100644 --- a/package/poco/poco.mk +++ b/package/poco/poco.mk @@ -4,7 +4,7 @@ # ################################################################################ -POCO_VERSION = 1.12.2 +POCO_VERSION = 1.12.4 POCO_SITE = $(call github,pocoproject,poco,poco-$(POCO_VERSION)-release) POCO_LICENSE = BSL-1.0 POCO_LICENSE_FILES = LICENSE diff --git a/package/policycoreutils/0001-Add-DESTDIR-to-all-paths-that-use-an-absolute-path.patch b/package/policycoreutils/0001-Add-DESTDIR-to-all-paths-that-use-an-absolute-path.patch index aa75ca63c049..18f0001aef86 100644 --- a/package/policycoreutils/0001-Add-DESTDIR-to-all-paths-that-use-an-absolute-path.patch +++ b/package/policycoreutils/0001-Add-DESTDIR-to-all-paths-that-use-an-absolute-path.patch @@ -32,7 +32,7 @@ index a3bbbe1..df675cf 100644 +AUDITH ?= $(shell test -f $(DESTDIR)$(PREFIX)/include/libaudit.h && echo y) CFLAGS ?= -g -Werror -Wall -W - override LDLIBS += -lselinux -lsepol + override LDLIBS += -lselinux -lsepol -lpthread -- 2.13.6 diff --git a/package/policycoreutils/policycoreutils.hash b/package/policycoreutils/policycoreutils.hash index e7f006b02335..e29d192b1387 100644 --- a/package/policycoreutils/policycoreutils.hash +++ b/package/policycoreutils/policycoreutils.hash @@ -1,3 +1,3 @@ # https://github.com/SELinuxProject/selinux/wiki/Releases -sha256 d1331c6fa766c547b071c491de90b9f343c8dbffdb119be8a5a7e491199b93a9 policycoreutils-3.2.tar.gz -sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 COPYING +sha256 78453e1529fbbf800e88860094d555e781ce1fba11a7ef77b5aabb43e1173276 policycoreutils-3.5.tar.gz +sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 LICENSE diff --git a/package/policycoreutils/policycoreutils.mk b/package/policycoreutils/policycoreutils.mk index 8505dbca3fb6..61d91066d401 100644 --- a/package/policycoreutils/policycoreutils.mk +++ b/package/policycoreutils/policycoreutils.mk @@ -4,10 +4,10 @@ # ################################################################################ -POLICYCOREUTILS_VERSION = 3.2 +POLICYCOREUTILS_VERSION = 3.5 POLICYCOREUTILS_SITE = https://github.com/SELinuxProject/selinux/releases/download/$(POLICYCOREUTILS_VERSION) POLICYCOREUTILS_LICENSE = GPL-2.0 -POLICYCOREUTILS_LICENSE_FILES = COPYING +POLICYCOREUTILS_LICENSE_FILES = LICENSE POLICYCOREUTILS_CPE_ID_VENDOR = selinuxproject POLICYCOREUTILS_DEPENDENCIES = libsemanage libcap-ng $(TARGET_NLS_DEPENDENCIES) diff --git a/package/polkit/polkit.hash b/package/polkit/polkit.hash index ffdc2a7568aa..5eadc8975386 100644 --- a/package/polkit/polkit.hash +++ b/package/polkit/polkit.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 0d69656d60800835c3d7d1f0a8362b32e1ae3ace2875a35bb624296fc52d5dc4 polkit-122.tar.gz +sha256 b69278f6ea0eac406350c45f5720e2fe5e4beaf9f53c16d9902e025965418864 polkit-123.tar.gz sha256 d2e2aa973e29c75e1b492e67ea7b7da9de2d501d49a934657971fd74f9a0b0a8 COPYING diff --git a/package/polkit/polkit.mk b/package/polkit/polkit.mk index dab5d542ebdf..f58dbe43de51 100644 --- a/package/polkit/polkit.mk +++ b/package/polkit/polkit.mk @@ -4,7 +4,7 @@ # ################################################################################ -POLKIT_VERSION = 122 +POLKIT_VERSION = 123 POLKIT_SITE = https://gitlab.freedesktop.org/polkit/polkit/-/archive/$(POLKIT_VERSION) POLKIT_LICENSE = GPL-2.0 POLKIT_LICENSE_FILES = COPYING diff --git a/package/poppler/0001-OutlineItem-open-Fix-crash-on-malformed-files.patch b/package/poppler/0001-OutlineItem-open-Fix-crash-on-malformed-files.patch new file mode 100644 index 000000000000..478759e0ccf2 --- /dev/null +++ b/package/poppler/0001-OutlineItem-open-Fix-crash-on-malformed-files.patch @@ -0,0 +1,45 @@ +From e5cc11e0b5b867f4705fd28ff1b981c1224be1cd Mon Sep 17 00:00:00 2001 +From: Albert Astals Cid +Date: Wed, 17 May 2023 22:42:05 +0200 +Subject: [PATCH] OutlineItem::open: Fix crash on malformed files + +Fixes #1399 + +Upstream: https://gitlab.freedesktop.org/poppler/poppler/-/commit/591235c8b6c65a2eee88991b9ae73490fd9afdfe +[Thomas: backported to fix CVE-2023-34872] +Signed-off-by: Thomas Petazzoni +--- + poppler/Outline.cc | 10 +++++++--- + 1 file changed, 7 insertions(+), 3 deletions(-) + +diff --git a/poppler/Outline.cc b/poppler/Outline.cc +index cbb6cb49..4c68be99 100644 +--- a/poppler/Outline.cc ++++ b/poppler/Outline.cc +@@ -14,7 +14,7 @@ + // under GPL version 2 or later + // + // Copyright (C) 2005 Marco Pesenti Gritti +-// Copyright (C) 2008, 2016-2019, 2021 Albert Astals Cid ++// Copyright (C) 2008, 2016-2019, 2021, 2023 Albert Astals Cid + // Copyright (C) 2009 Nick Jones + // Copyright (C) 2016 Jason Crain + // Copyright (C) 2017 Adrian Johnson +@@ -483,8 +483,12 @@ void OutlineItem::open() + { + if (!kids) { + Object itemDict = xref->fetch(ref); +- const Object &firstRef = itemDict.dictLookupNF("First"); +- kids = readItemList(this, &firstRef, xref, doc); ++ if (itemDict.isDict()) { ++ const Object &firstRef = itemDict.dictLookupNF("First"); ++ kids = readItemList(this, &firstRef, xref, doc); ++ } else { ++ kids = new std::vector(); ++ } + } + } + +-- +2.41.0 + diff --git a/package/poppler/poppler.hash b/package/poppler/poppler.hash index 93681e04af28..bb07b2ee6af3 100644 --- a/package/poppler/poppler.hash +++ b/package/poppler/poppler.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 04e40fad924a6de62e63017a6fd4c04696c1f526dedc2ba5ef275cedf646292a poppler-22.10.0.tar.xz +sha256 d9aa9cacdfbd0f8e98fc2b3bb008e645597ed480685757c3e7bc74b4278d15c0 poppler-22.12.0.tar.xz sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/poppler/poppler.mk b/package/poppler/poppler.mk index 02ccf742acdd..776fb4d5667f 100644 --- a/package/poppler/poppler.mk +++ b/package/poppler/poppler.mk @@ -4,13 +4,15 @@ # ################################################################################ -POPPLER_VERSION = 22.10.0 +POPPLER_VERSION = 22.12.0 POPPLER_SOURCE = poppler-$(POPPLER_VERSION).tar.xz POPPLER_SITE = https://poppler.freedesktop.org POPPLER_DEPENDENCIES = fontconfig host-pkgconf POPPLER_LICENSE = GPL-2.0+ POPPLER_LICENSE_FILES = COPYING POPPLER_CPE_ID_VENDOR = freedesktop +# 0001-OutlineItem-open-Fix-crash-on-malformed-files.patch +POPPLER_IGNORE_CVES += CVE-2023-34872 POPPLER_INSTALL_STAGING = YES POPPLER_CONF_OPTS = \ @@ -47,7 +49,8 @@ POPPLER_DEPENDENCIES += gobject-introspection POPPLER_CONF_OPTS += \ -DENABLE_GOBJECT_INTROSPECTION=ON \ -DINTROSPECTION_SCANNER=$(STAGING_DIR)/usr/bin/g-ir-scanner \ - -DINTROSPECTION_COMPILER=$(STAGING_DIR)/usr/bin/g-ir-compiler + -DINTROSPECTION_COMPILER=$(STAGING_DIR)/usr/bin/g-ir-compiler \ + -DINTROSPECTION_COMPILER_ARGS="--includedir=$(STAGING_DIR)/usr/share/gir-1.0" else POPPLER_CONF_OPTS += -DENABLE_GOBJECT_INTROSPECTION=OFF endif diff --git a/package/popt/popt.mk b/package/popt/popt.mk index 842cf0d03526..5cee8e9673ce 100644 --- a/package/popt/popt.mk +++ b/package/popt/popt.mk @@ -11,7 +11,6 @@ POPT_LICENSE = MIT POPT_LICENSE_FILES = COPYING POPT_CPE_ID_VENDOR = popt_project -POPT_GETTEXTIZE = YES POPT_DEPENDENCIES = $(TARGET_NLS_DEPENDENCIES) POPT_CONF_ENV = ac_cv_va_copy=yes diff --git a/package/postgis/Config.in b/package/postgis/Config.in index 405c5c723a9d..7d423906776c 100644 --- a/package/postgis/Config.in +++ b/package/postgis/Config.in @@ -2,7 +2,7 @@ config BR2_PACKAGE_POSTGIS bool "postgis" depends on BR2_PACKAGE_POSTGRESQL_FULL depends on BR2_INSTALL_LIBSTDCPP # libgeos, proj - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # C++11, proj + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libgeos depends on BR2_TOOLCHAIN_HAS_THREADS # libgeos, proj depends on BR2_USE_WCHAR # libgeos, proj depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_27597 # libgeos @@ -18,7 +18,7 @@ config BR2_PACKAGE_POSTGIS https://postgis.net/ -comment "postgis needs a toolchain w/ C++, threads, wchar, gcc >= 4.7, not binutils bug 27597" - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 || \ +comment "postgis needs a toolchain w/ C++, threads, wchar, gcc >= 4.9, not binutils bug 27597" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \ !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \ BR2_TOOLCHAIN_HAS_BINUTILS_BUG_27597 diff --git a/package/postgis/postgis.hash b/package/postgis/postgis.hash index 8550a579393f..812d2dc0179d 100644 --- a/package/postgis/postgis.hash +++ b/package/postgis/postgis.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 9a2a219da005a1730a39d1959a1c7cec619b1efb009b65be80ffc25bad299068 postgis-3.3.2.tar.gz -sha256 55b69f22e1752830dd565852dc7ff242daf289dbd3a6bfede5db43f90d2e28c9 LICENSE.TXT +sha256 aee9b60a6c884d354164b3096c4657f324454186607f859d1ce05d899798af9d postgis-3.4.0.tar.gz +sha256 2a3bde0a77224496ea6d8efa686da7e29ab0dd6b1a8f90ba12beaf7ae28e878a LICENSE.TXT diff --git a/package/postgis/postgis.mk b/package/postgis/postgis.mk index 4148180adfec..2fb98245a386 100644 --- a/package/postgis/postgis.mk +++ b/package/postgis/postgis.mk @@ -4,11 +4,11 @@ # ################################################################################ -POSTGIS_VERSION = 3.3.2 +POSTGIS_VERSION = 3.4.0 POSTGIS_SITE = https://download.osgeo.org/postgis/source # parallel build issues POSTGIS_MAKE = $(MAKE1) -POSTGIS_LICENSE = GPL-2.0+ (PostGIS), BSD-2-Clause, MIT, Apache-2.0, ISC, BSL-1.0, CC-BY-SA-3.0 +POSTGIS_LICENSE = GPL-2.0+ (PostGIS), BSD-3-Clause (xsl), GPL-2.0+ or LGPL-3.0+ (SFCGAL), MIT, Apache-2.0, ISC, BSL-1.0, CC-BY-SA-3.0 POSTGIS_LICENSE_FILES = LICENSE.TXT POSTGIS_CPE_ID_VENDOR = postgis # configure.ac is patched so need to run autoreconf diff --git a/package/postgresql/postgresql.hash b/package/postgresql/postgresql.hash index 3e89d3ec3503..4fc3bfcff04a 100644 --- a/package/postgresql/postgresql.hash +++ b/package/postgresql/postgresql.hash @@ -1,4 +1,4 @@ -# From https://ftp.postgresql.org/pub/source/v15.2/postgresql-15.2.tar.bz2.sha256 -sha256 99a2171fc3d6b5b5f56b757a7a3cb85d509a38e4273805def23941ed2b8468c7 postgresql-15.2.tar.bz2 +# From https://ftp.postgresql.org/pub/source/v15.4/postgresql-15.5.tar.bz2.sha256 +sha256 8f53aa95d78eb8e82536ea46b68187793b42bba3b4f65aa342f540b23c9b10a6 postgresql-15.5.tar.bz2 # License file, Locally calculated sha256 1a7d13c3ab31961b91ba256f77d6e82e0b54bf992253060fe93bdb5466df416a COPYRIGHT diff --git a/package/postgresql/postgresql.mk b/package/postgresql/postgresql.mk index a2aed9a2eb79..3108fe65e17f 100644 --- a/package/postgresql/postgresql.mk +++ b/package/postgresql/postgresql.mk @@ -4,7 +4,7 @@ # ################################################################################ -POSTGRESQL_VERSION = 15.2 +POSTGRESQL_VERSION = 15.5 POSTGRESQL_SOURCE = postgresql-$(POSTGRESQL_VERSION).tar.bz2 POSTGRESQL_SITE = https://ftp.postgresql.org/pub/source/v$(POSTGRESQL_VERSION) POSTGRESQL_LICENSE = PostgreSQL @@ -19,6 +19,10 @@ POSTGRESQL_CONF_ENV = \ POSTGRESQL_CONF_OPTS = --disable-rpath POSTGRESQL_DEPENDENCIES = $(TARGET_NLS_DEPENDENCIES) +# CVE-2017-8806 is related to postgresql-common package +# It is false positive for postgresql +POSTGRESQL_IGNORE_CVES += CVE-2017-8806 + # https://www.postgresql.org/docs/11/static/install-procedure.html: # "If you want to invoke the build from another makefile rather than # manually, you must unset MAKELEVEL or set it to zero" diff --git a/package/pound/0001-fix-openssl-1.0.2.patch b/package/pound/0001-fix-openssl-1.0.2.patch deleted file mode 100644 index b20fdb36f1bc..000000000000 --- a/package/pound/0001-fix-openssl-1.0.2.patch +++ /dev/null @@ -1,127 +0,0 @@ -From eb471de8f26e0367dd08d299d2252fa8b2b958a9 Mon Sep 17 00:00:00 2001 -From: Emilio -Date: Mon, 17 Jul 2017 09:41:32 +0200 -Subject: [PATCH] [Improvement] Added support to compile pound with openssl - 1.0.2 - -Signed-off-by: Emilio - - new file: dh2048.h - modified: svc.c - -Patch was downloaded from 3rd-party repo: -https://github.com/zevenet/pound/commit/eb471de8f26e0367dd08d299d2252fa8b2b958a9 - -This repo was announced on upstream mailinglist: -http://www.apsis.ch/pound/pound_list/archive/2017/2017-07/1500287626000#1500287626000 - -Signed-off-by: Bernd Kuhls ---- - dh2048.h | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ - svc.c | 33 +++++++++++++++++++++++++++++++++ - 2 files changed, 86 insertions(+) - create mode 100644 dh2048.h - -diff --git a/dh2048.h b/dh2048.h -new file mode 100644 -index 0000000..79c693c ---- /dev/null -+++ b/dh2048.h -@@ -0,0 +1,53 @@ -+#ifndef HEADER_DH_H -+# include -+#endif -+ -+DH *get_dh2048() -+{ -+ static unsigned char dhp_2048[] = { -+ 0xBF, 0x6C, 0xC6, 0xBD, 0xEA, 0x10, 0x84, 0x59, 0x40, 0xC2, -+ 0xC6, 0xA2, 0x9B, 0x19, 0xD3, 0x2E, 0x2F, 0xAB, 0xE6, 0xE4, -+ 0x1E, 0x91, 0x0D, 0x59, 0xDC, 0x96, 0x3F, 0x6E, 0x65, 0x38, -+ 0xB9, 0xBE, 0xBB, 0x8F, 0xDF, 0x73, 0xAC, 0xAC, 0xB3, 0x2F, -+ 0xA7, 0x02, 0x0B, 0x87, 0xB7, 0x3F, 0x3A, 0x42, 0x8A, 0x94, -+ 0xDD, 0xEC, 0x33, 0xA4, 0x25, 0xB1, 0xBF, 0x84, 0x91, 0x87, -+ 0xD8, 0x1C, 0x42, 0xB9, 0x8E, 0x00, 0x1F, 0x49, 0xED, 0x57, -+ 0xA4, 0x48, 0xB0, 0xCC, 0xD8, 0xB8, 0x83, 0xCA, 0x3E, 0xDF, -+ 0xA2, 0xF2, 0x07, 0x71, 0x71, 0x18, 0x1F, 0x50, 0x45, 0x3A, -+ 0x66, 0x04, 0x7F, 0x15, 0xB2, 0xA8, 0x02, 0x77, 0xCE, 0xC6, -+ 0xF9, 0x7C, 0x63, 0xE4, 0x52, 0x41, 0xFA, 0x62, 0xB9, 0x0D, -+ 0xDC, 0x08, 0x62, 0xEC, 0x00, 0xAB, 0xB0, 0xF7, 0x79, 0x48, -+ 0x75, 0x22, 0x85, 0xCC, 0x67, 0x3C, 0xEA, 0x09, 0x32, 0xAC, -+ 0x30, 0xED, 0x1E, 0x67, 0xDC, 0x74, 0xF8, 0xD9, 0xC3, 0xD0, -+ 0xA0, 0x60, 0x4D, 0xCE, 0x52, 0xBC, 0xA3, 0xE5, 0x18, 0x7B, -+ 0x0B, 0xC8, 0xCE, 0x70, 0xA2, 0xC8, 0x21, 0xCA, 0xCE, 0xA5, -+ 0xD4, 0xCB, 0x85, 0xFC, 0xC7, 0x07, 0x5C, 0x05, 0x87, 0xFC, -+ 0x2F, 0x67, 0x4D, 0x2D, 0x4F, 0xA4, 0xEE, 0x63, 0x98, 0x49, -+ 0xE4, 0x2E, 0xD7, 0x3F, 0x7D, 0x69, 0x68, 0x0A, 0xA2, 0x3E, -+ 0x5A, 0x04, 0xD4, 0xDD, 0xBB, 0xC7, 0xB4, 0x34, 0xB7, 0x21, -+ 0xD3, 0xAC, 0x99, 0xD7, 0x87, 0x45, 0x5E, 0x18, 0x68, 0x16, -+ 0x3A, 0xAF, 0xE2, 0x04, 0x57, 0xB8, 0x6A, 0xB8, 0x2F, 0x75, -+ 0xD5, 0x79, 0x96, 0x60, 0x8D, 0xD1, 0xCC, 0xD1, 0x33, 0x85, -+ 0x53, 0x88, 0x87, 0x34, 0xA6, 0x4B, 0x49, 0x24, 0x53, 0xD6, -+ 0xF1, 0x1E, 0x4E, 0x98, 0x4D, 0x6B, 0x44, 0x31, 0x94, 0xFF, -+ 0x46, 0xC2, 0x38, 0x2E, 0xEA, 0xBB -+ }; -+ static unsigned char dhg_2048[] = { -+ 0x05 -+ }; -+ DH *dh = DH_new(); -+ BIGNUM *dhp_bn, *dhg_bn; -+ -+ if (dh == NULL) -+ return NULL; -+ dhp_bn = BN_bin2bn(dhp_2048, sizeof (dhp_2048), NULL); -+ dhg_bn = BN_bin2bn(dhg_2048, sizeof (dhg_2048), NULL); -+ if (dhp_bn == NULL || dhg_bn == NULL -+ || !DH_set0_pqg(dh, dhp_bn, NULL, dhg_bn)) { -+ DH_free(dh); -+ BN_free(dhp_bn); -+ BN_free(dhg_bn); -+ return NULL; -+ } -+ return dh; -+} -diff --git a/svc.c b/svc.c -index 1341397..758dfbd 100644 ---- a/svc.c -+++ b/svc.c -@@ -1512,6 +1512,39 @@ do_RSAgen(void) - return; - } - -+ -+#if OPENSSL_VERSION_NUMBER < 0x10100000 -+static inline int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g) -+{ -+ /* If the fields p and g in d are NULL, the corresponding input -+ * parameters MUST be non-NULL. q may remain NULL. -+ */ -+ if ((dh->p == NULL && p == NULL) -+ || (dh->g == NULL && g == NULL)) -+ return 0; -+ -+ if (p != NULL) { -+ BN_free(dh->p); -+ dh->p = p; -+ } -+ if (q != NULL) { -+ BN_free(dh->q); -+ dh->q = q; -+ } -+ if (g != NULL) { -+ BN_free(dh->g); -+ dh->g = g; -+ } -+ -+ if (q != NULL) { -+ dh->length = BN_num_bits(q); -+ } -+ -+ return 1; -+} -+#endif -+ -+ - #include "dh512.h" - - #if DH_LEN == 1024 diff --git a/package/pound/0001-include-limits.h.patch b/package/pound/0001-include-limits.h.patch new file mode 100644 index 000000000000..8f188af07c2c --- /dev/null +++ b/package/pound/0001-include-limits.h.patch @@ -0,0 +1,75 @@ +From a0374d946e55129b36ba1e0024e1d94675a8f044 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sun, 17 Sep 2023 22:01:21 +0200 +Subject: [PATCH] include limits.h + +Include limits.h to avoid the following build failure: + +poundctl.c: In function 'oi_getn': +poundctl.c:232:29: error: 'INT_MAX' undeclared (first use in this function) + 232 | if (errno || n < 0 || n > INT_MAX) + | ^~~~~~~ + +Fixes: + - http://autobuild.buildroot.org/results/4edfffcd5d4383c57947d97139331e0bf2cb6155 + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/graygnuorg/pound/pull/17 +--- + src/config.c | 1 + + src/poundctl.c | 1 + + src/svc.c | 1 + + src/tmpl.c | 1 + + 4 files changed, 4 insertions(+) + +diff --git a/src/config.c b/src/config.c +index b7e3150..12f5cfa 100644 +--- a/src/config.c ++++ b/src/config.c +@@ -21,6 +21,7 @@ + #include "extern.h" + #include + #include ++#include + + + /* +diff --git a/src/poundctl.c b/src/poundctl.c +index bd1459f..7fa18c8 100644 +--- a/src/poundctl.c ++++ b/src/poundctl.c +@@ -19,6 +19,7 @@ + #include "pound.h" + #include "json.h" + #include ++#include + + char *conf_name = POUND_CONF; + char *socket_name; +diff --git a/src/svc.c b/src/svc.c +index 6e810a6..457f1e0 100644 +--- a/src/svc.c ++++ b/src/svc.c +@@ -20,6 +20,7 @@ + #include "pound.h" + #include "extern.h" + #include "json.h" ++#include + + /* + * basic hashing function, based on fmv +diff --git a/src/tmpl.c b/src/tmpl.c +index 2efa72f..0e5b65d 100644 +--- a/src/tmpl.c ++++ b/src/tmpl.c +@@ -26,6 +26,7 @@ + + #include "pound.h" + #include ++#include + #include "json.h" + + static void +-- +2.40.1 + diff --git a/package/pound/0002-fix-openssl-1.1.0.patch b/package/pound/0002-fix-openssl-1.1.0.patch deleted file mode 100644 index 04eddb15d72b..000000000000 --- a/package/pound/0002-fix-openssl-1.1.0.patch +++ /dev/null @@ -1,334 +0,0 @@ -From a2c9dde4d055ea8942afb150b7fc3a807d4e5d60 Mon Sep 17 00:00:00 2001 -From: Sergey Poznyakoff -Date: Wed, 28 Feb 2018 13:44:01 +0000 -Subject: [PATCH] Support for Openssl 1.1 - -Fixes -http://autobuild.buildroot.net/results/ef2/ef2de6c280bf8622a00d4573bc5bd143e3baa002 - -Downloaded from github fork: -https://github.com/graygnuorg/pound/commit/a2c9dde4d055ea8942afb150b7fc3a807d4e5d60 - -This patch was announced on the upstream mailinglist: -http://www.apsis.ch/pound/pound_list/archive/2018/2018-03/1519920322000 - -Signed-off-by: Bernd Kuhls ---- - .gitignore | 15 ++++++++ - config.c | 17 +++++++-- - http.c | 12 ++++++- - pound.h | 4 ++- - svc.c | 101 +++++++++++++++++++++++++++++++++++++++++++---------- - 5 files changed, 125 insertions(+), 24 deletions(-) - create mode 100644 .gitignore - -diff --git a/config.c b/config.c -index d41a3ee..e8fec0f 100644 ---- a/config.c -+++ b/config.c -@@ -174,6 +174,16 @@ conf_fgets(char *buf, const int max) - } - } - -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+# define general_name_string(n) \ -+ strndup(ASN1_STRING_get0_data(n->d.dNSName), \ -+ ASN1_STRING_length(n->d.dNSName) + 1) -+#else -+# define general_name_string(n) \ -+ strndup(ASN1_STRING_data(n->d.dNSName), \ -+ ASN1_STRING_length(n->d.dNSName) + 1) -+#endif -+ - unsigned char ** - get_subjectaltnames(X509 *x509, unsigned int *count) - { -@@ -194,8 +204,7 @@ get_subjectaltnames(X509 *x509, unsigned int *count) - name = sk_GENERAL_NAME_pop(san_stack); - switch(name->type) { - case GEN_DNS: -- temp[local_count] = strndup(ASN1_STRING_data(name->d.dNSName), ASN1_STRING_length(name->d.dNSName) -- + 1); -+ temp[local_count] = general_name_string(name); - if(temp[local_count] == NULL) - conf_err("out of memory"); - local_count++; -@@ -565,7 +574,9 @@ parse_service(const char *svc_name) - pthread_mutex_init(&res->mut, NULL); - if(svc_name) - strncpy(res->name, svc_name, KEY_SIZE); --#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+ if((res->sessions = lh_TABNODE_new(t_hash, t_cmp)) == NULL) -+#elif OPENSSL_VERSION_NUMBER >= 0x10000000L - if((res->sessions = LHM_lh_new(TABNODE, t)) == NULL) - #else - if((res->sessions = lh_new(LHASH_HASH_FN(t_hash), LHASH_COMP_FN(t_cmp))) == NULL) -diff --git a/http.c b/http.c -index dd211e4..c8e756a 100644 ---- a/http.c -+++ b/http.c -@@ -527,12 +527,22 @@ log_bytes(char *res, const LONG cnt) - - /* Cleanup code. This should really be in the pthread_cleanup_push, except for bugs in some implementations */ - -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+# define clear_error() -+#elif OPENSSL_VERSION_NUMBER >= 0x10000000L -+# define clear_error() \ -+ if(ssl != NULL) { ERR_clear_error(); ERR_remove_thread_state(NULL); } -+#else -+# define clear_error() \ -+ if(ssl != NULL) { ERR_clear_error(); ERR_remove_state(0); } -+#endif -+ - #define clean_all() { \ - if(ssl != NULL) { BIO_ssl_shutdown(cl); } \ - if(be != NULL) { BIO_flush(be); BIO_reset(be); BIO_free_all(be); be = NULL; } \ - if(cl != NULL) { BIO_flush(cl); BIO_reset(cl); BIO_free_all(cl); cl = NULL; } \ - if(x509 != NULL) { X509_free(x509); x509 = NULL; } \ -- if(ssl != NULL) { ERR_clear_error(); ERR_remove_state(0); } \ -+ clear_error(); \ - } - - /* -diff --git a/pound.h b/pound.h -index fa22c36..9603b91 100644 ---- a/pound.h -+++ b/pound.h -@@ -344,7 +344,9 @@ typedef struct _tn { - /* maximal session key size */ - #define KEY_SIZE 127 - --#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+ DEFINE_LHASH_OF(TABNODE); -+#elif OPENSSL_VERSION_NUMBER >= 0x10000000L - DECLARE_LHASH_OF(TABNODE); - #endif - -diff --git a/svc.c b/svc.c -index 60ba488..063b92c 100644 ---- a/svc.c -+++ b/svc.c -@@ -27,10 +27,17 @@ - - #include "pound.h" - -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+# define TABNODE_GET_DOWN_LOAD(t) lh_TABNODE_get_down_load(t) -+# define TABNODE_SET_DOWN_LOAD(t,n) lh_TABNODE_set_down_load(t,n) -+#else - #ifndef LHASH_OF - #define LHASH_OF(x) LHASH - #define CHECKED_LHASH_OF(type, h) h - #endif -+# define TABNODE_GET_DOWN_LOAD(t) (CHECKED_LHASH_OF(TABNODE, t)->down_load) -+# define TABNODE_SET_DOWN_LOAD(t,n) (CHECKED_LHASH_OF(TABNODE, t)->down_load = n) -+#endif - - /* - * Add a new key/content pair to a hash table -@@ -58,7 +65,9 @@ t_add(LHASH_OF(TABNODE) *const tab, const char *key, const void *content, const - } - memcpy(t->content, content, cont_len); - t->last_acc = time(NULL); --#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+ if((old = lh_TABNODE_insert(tab, t)) != NULL) { -+#elif OPENSSL_VERSION_NUMBER >= 0x10000000L - if((old = LHM_lh_insert(TABNODE, tab, t)) != NULL) { - #else - if((old = (TABNODE *)lh_insert(tab, t)) != NULL) { -@@ -82,7 +91,9 @@ t_find(LHASH_OF(TABNODE) *const tab, char *const key) - TABNODE t, *res; - - t.key = key; --#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+ if((res = lh_TABNODE_retrieve(tab, &t)) != NULL) { -+#elif OPENSSL_VERSION_NUMBER >= 0x10000000L - if((res = (TABNODE *)LHM_lh_retrieve(TABNODE, tab, &t)) != NULL) { - #else - if((res = (TABNODE *)lh_retrieve(tab, &t)) != NULL) { -@@ -102,7 +113,9 @@ t_remove(LHASH_OF(TABNODE) *const tab, char *const key) - TABNODE t, *res; - - t.key = key; --#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+ if((res = lh_TABNODE_delete(tab, &t)) != NULL) { -+#elif OPENSSL_VERSION_NUMBER >= 0x10000000L - if((res = LHM_lh_delete(TABNODE, tab, &t)) != NULL) { - #else - if((res = (TABNODE *)lh_delete(tab, &t)) != NULL) { -@@ -127,7 +140,9 @@ t_old_doall_arg(TABNODE *t, ALL_ARG *a) - TABNODE *res; - - if(t->last_acc < a->lim) --#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+ if((res = lh_TABNODE_delete(a->tab, t)) != NULL) { -+#elif OPENSSL_VERSION_NUMBER >= 0x10000000L - if((res = LHM_lh_delete(TABNODE, a->tab, t)) != NULL) { - #else - if((res = lh_delete(a->tab, t)) != NULL) { -@@ -145,6 +160,10 @@ IMPLEMENT_LHASH_DOALL_ARG_FN(t_old, TABNODE, ALL_ARG) - IMPLEMENT_LHASH_DOALL_ARG_FN(t_old, TABNODE *, ALL_ARG *) - #endif - -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+IMPLEMENT_LHASH_DOALL_ARG(TABNODE,ALL_ARG); -+#endif -+ - /* - * Expire all old nodes - */ -@@ -156,14 +175,16 @@ t_expire(LHASH_OF(TABNODE) *const tab, const time_t lim) - - a.tab = tab; - a.lim = lim; -- down_load = CHECKED_LHASH_OF(TABNODE, tab)->down_load; -- CHECKED_LHASH_OF(TABNODE, tab)->down_load = 0; --#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+ down_load = TABNODE_GET_DOWN_LOAD(tab); -+ TABNODE_SET_DOWN_LOAD(tab, 0); -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+ lh_TABNODE_doall_ALL_ARG(tab, t_old_doall_arg, &a); -+#elif OPENSSL_VERSION_NUMBER >= 0x10000000L - LHM_lh_doall_arg(TABNODE, tab, LHASH_DOALL_ARG_FN(t_old), ALL_ARG, &a); - #else - lh_doall_arg(tab, LHASH_DOALL_ARG_FN(t_old), &a); - #endif -- CHECKED_LHASH_OF(TABNODE, tab)->down_load = down_load; -+ TABNODE_SET_DOWN_LOAD(tab, down_load); - return; - } - -@@ -173,7 +194,9 @@ t_cont_doall_arg(TABNODE *t, ALL_ARG *arg) - TABNODE *res; - - if(memcmp(t->content, arg->content, arg->cont_len) == 0) --#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+ if((res = lh_TABNODE_delete(arg->tab, t)) != NULL) { -+#elif OPENSSL_VERSION_NUMBER >= 0x10000000L - if((res = LHM_lh_delete(TABNODE, arg->tab, t)) != NULL) { - #else - if((res = lh_delete(arg->tab, t)) != NULL) { -@@ -203,15 +226,16 @@ t_clean(LHASH_OF(TABNODE) *const tab, void *const content, const size_t cont_len - a.tab = tab; - a.content = content; - a.cont_len = cont_len; -- down_load = CHECKED_LHASH_OF(TABNODE, tab)->down_load; -- CHECKED_LHASH_OF(TABNODE, tab)->down_load = 0; --#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+ down_load = TABNODE_GET_DOWN_LOAD(tab); -+ TABNODE_SET_DOWN_LOAD(tab, 0); -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+ lh_TABNODE_doall_ALL_ARG(tab, t_cont_doall_arg, &a); -+#elif OPENSSL_VERSION_NUMBER >= 0x10000000L - LHM_lh_doall_arg(TABNODE, tab, LHASH_DOALL_ARG_FN(t_cont), ALL_ARG, &a); - #else - lh_doall_arg(tab, LHASH_DOALL_ARG_FN(t_cont), &a); - #endif -- CHECKED_LHASH_OF(TABNODE, tab)->down_load = down_load; -- return; -+ TABNODE_SET_DOWN_LOAD(tab, down_load); - } - - /* -@@ -1262,6 +1286,31 @@ RSA_tmp_callback(/* not used */SSL *ssl, /* not used */int is_export, int keylen - return res; - } - -+static int -+generate_key(RSA **ret_rsa, unsigned long bits) -+{ -+#if OPENSSL_VERSION_NUMBER > 0x00908000L -+ int rc = 0; -+ RSA *rsa; -+ -+ rsa = RSA_new(); -+ if (rsa) { -+ BIGNUM *bne = BN_new(); -+ if (BN_set_word(bne, RSA_F4)) -+ rc = RSA_generate_key_ex(rsa, bits, bne, NULL); -+ BN_free(bne); -+ if (rc) -+ *ret_rsa = rsa; -+ else -+ RSA_free(rsa); -+ } -+ return rc; -+#else -+ *ret_rsa = RSA_generate_key(bits, RSA_F4, NULL, NULL); -+ return *ret_rsa != NULL; -+#endif -+} -+ - /* - * Periodically regenerate ephemeral RSA keys - * runs every T_RSA_KEYS seconds -@@ -1274,8 +1323,9 @@ do_RSAgen(void) - RSA *t_RSA1024_keys[N_RSA_KEYS]; - - for(n = 0; n < N_RSA_KEYS; n++) { -- t_RSA512_keys[n] = RSA_generate_key(512, RSA_F4, NULL, NULL); -- t_RSA1024_keys[n] = RSA_generate_key(1024, RSA_F4, NULL, NULL); -+ /* FIXME: Error handling */ -+ generate_key(&t_RSA512_keys[n], 512); -+ generate_key(&t_RSA1024_keys[n], 1024); - } - if(ret_val = pthread_mutex_lock(&RSA_mut)) - logmsg(LOG_WARNING, "thr_RSAgen() lock: %s", strerror(ret_val)); -@@ -1329,11 +1379,11 @@ init_timer(void) - * Pre-generate ephemeral RSA keys - */ - for(n = 0; n < N_RSA_KEYS; n++) { -- if((RSA512_keys[n] = RSA_generate_key(512, RSA_F4, NULL, NULL)) == NULL) { -+ if(!generate_key(&RSA512_keys[n], 512)) { - logmsg(LOG_WARNING,"RSA_generate(%d, 512) failed", n); - return; - } -- if((RSA1024_keys[n] = RSA_generate_key(1024, RSA_F4, NULL, NULL)) == NULL) { -+ if(!generate_key(&RSA1024_keys[n], 1024)) { - logmsg(LOG_WARNING,"RSA_generate(%d, 1024) failed", n); - return; - } -@@ -1420,6 +1470,10 @@ IMPLEMENT_LHASH_DOALL_ARG_FN(t_dump, TABNODE, DUMP_ARG) - IMPLEMENT_LHASH_DOALL_ARG_FN(t_dump, TABNODE *, DUMP_ARG *) - #endif - -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+IMPLEMENT_LHASH_DOALL_ARG(TABNODE,DUMP_ARG); -+#endif -+ - /* - * write sessions to the control socket - */ -@@ -1430,7 +1484,9 @@ dump_sess(const int control_sock, LHASH_OF(TABNODE) *const sess, BACKEND *const - - a.control_sock = control_sock; - a.backends = backends; --#if OPENSSL_VERSION_NUMBER >= 0x10000000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+ lh_TABNODE_doall_DUMP_ARG(sess, t_dump_doall_arg, &a); -+#elif OPENSSL_VERSION_NUMBER >= 0x10000000L - LHM_lh_doall_arg(TABNODE, sess, LHASH_DOALL_ARG_FN(t_dump), DUMP_ARG, &a); - #else - lh_doall_arg(sess, LHASH_DOALL_ARG_FN(t_dump), &a); -@@ -1664,6 +1720,13 @@ thr_control(void *arg) - } - } - -+#ifndef SSL3_ST_SR_CLNT_HELLO_A -+# define SSL3_ST_SR_CLNT_HELLO_A (0x110|SSL_ST_ACCEPT) -+#endif -+#ifndef SSL23_ST_SR_CLNT_HELLO_A -+# define SSL23_ST_SR_CLNT_HELLO_A (0x210|SSL_ST_ACCEPT) -+#endif -+ - void - SSLINFO_callback(const SSL *ssl, int where, int rc) - { diff --git a/package/pound/0003-Support-for-libressl-coexisting-with-openssl-1.1.x.patch b/package/pound/0003-Support-for-libressl-coexisting-with-openssl-1.1.x.patch deleted file mode 100644 index 3befc271d701..000000000000 --- a/package/pound/0003-Support-for-libressl-coexisting-with-openssl-1.1.x.patch +++ /dev/null @@ -1,140 +0,0 @@ -From 145b88d0c1a71ba6f4d216768388e0c5853d3990 Mon Sep 17 00:00:00 2001 -From: Matt Weber -Date: Tue, 5 Feb 2019 10:34:55 -0600 -Subject: [PATCH] Support for libressl coexisting with openssl 1.1.x -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -libressl needs to not follow the 1.1.x path of APIs - -Resolves build failure like -In file included from svc.c:28:0: -pound.h:348:3: warning: data definition has no type or storage class - DEFINE_LHASH_OF(TABNODE); - ^~~~~~~~~~~~~~~ -pound.h:348:3: warning: type defaults to ‘int’ in declaration of ‘DEFINE_LHASH_OF’ [-Wimplicit-int] -svc.c: In function ‘t_add’: -svc.c:69:15: warning: implicit declaration of function ‘lh_TABNODE_insert’; did you mean ‘lh_OBJ_NAME_insert’? [-Wimplicit-function-declaration] - if((old = lh_TABNODE_insert(tab, t)) != NULL) { - ^~~~~~~~~~~~~~~~~ - lh_OBJ_NAME_insert - -Upstream: Site was down when I tried (http://www.apsis.ch/pound) - -Signed-off-by: Matthew Weber ---- - config.c | 2 +- - svc.c | 20 ++++++++++---------- - 2 files changed, 11 insertions(+), 11 deletions(-) - -diff --git a/config.c b/config.c -index 58b928e..3ad7fbb 100644 ---- a/config.c -+++ b/config.c -@@ -574,7 +574,7 @@ parse_service(const char *svc_name) - pthread_mutex_init(&res->mut, NULL); - if(svc_name) - strncpy(res->name, svc_name, KEY_SIZE); --#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined LIBRESSL_VERSION_NUMBER - if((res->sessions = lh_TABNODE_new(t_hash, t_cmp)) == NULL) - #elif OPENSSL_VERSION_NUMBER >= 0x10000000L - if((res->sessions = LHM_lh_new(TABNODE, t)) == NULL) -diff --git a/svc.c b/svc.c -index f125be4..8a2f62c 100644 ---- a/svc.c -+++ b/svc.c -@@ -27,7 +27,7 @@ - - #include "pound.h" - --#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined LIBRESSL_VERSION_NUMBER - # define TABNODE_GET_DOWN_LOAD(t) lh_TABNODE_get_down_load(t) - # define TABNODE_SET_DOWN_LOAD(t,n) lh_TABNODE_set_down_load(t,n) - #else -@@ -65,7 +65,7 @@ t_add(LHASH_OF(TABNODE) *const tab, const char *key, const void *content, const - } - memcpy(t->content, content, cont_len); - t->last_acc = time(NULL); --#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined LIBRESSL_VERSION_NUMBER - if((old = lh_TABNODE_insert(tab, t)) != NULL) { - #elif OPENSSL_VERSION_NUMBER >= 0x10000000L - if((old = LHM_lh_insert(TABNODE, tab, t)) != NULL) { -@@ -91,7 +91,7 @@ t_find(LHASH_OF(TABNODE) *const tab, char *const key) - TABNODE t, *res; - - t.key = key; --#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined LIBRESSL_VERSION_NUMBER - if((res = lh_TABNODE_retrieve(tab, &t)) != NULL) { - #elif OPENSSL_VERSION_NUMBER >= 0x10000000L - if((res = (TABNODE *)LHM_lh_retrieve(TABNODE, tab, &t)) != NULL) { -@@ -113,7 +113,7 @@ t_remove(LHASH_OF(TABNODE) *const tab, char *const key) - TABNODE t, *res; - - t.key = key; --#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined LIBRESSL_VERSION_NUMBER - if((res = lh_TABNODE_delete(tab, &t)) != NULL) { - #elif OPENSSL_VERSION_NUMBER >= 0x10000000L - if((res = LHM_lh_delete(TABNODE, tab, &t)) != NULL) { -@@ -140,7 +140,7 @@ t_old_doall_arg(TABNODE *t, ALL_ARG *a) - TABNODE *res; - - if(t->last_acc < a->lim) --#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined LIBRESSL_VERSION_NUMBER - if((res = lh_TABNODE_delete(a->tab, t)) != NULL) { - #elif OPENSSL_VERSION_NUMBER >= 0x10000000L - if((res = LHM_lh_delete(TABNODE, a->tab, t)) != NULL) { -@@ -160,7 +160,7 @@ IMPLEMENT_LHASH_DOALL_ARG_FN(t_old, TABNODE, ALL_ARG) - IMPLEMENT_LHASH_DOALL_ARG_FN(t_old, TABNODE *, ALL_ARG *) - #endif - --#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined LIBRESSL_VERSION_NUMBER - IMPLEMENT_LHASH_DOALL_ARG(TABNODE,ALL_ARG); - #endif - -@@ -177,7 +177,7 @@ t_expire(LHASH_OF(TABNODE) *const tab, const time_t lim) - a.lim = lim; - down_load = TABNODE_GET_DOWN_LOAD(tab); - TABNODE_SET_DOWN_LOAD(tab, 0); --#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined LIBRESSL_VERSION_NUMBER - lh_TABNODE_doall_ALL_ARG(tab, t_old_doall_arg, &a); - #elif OPENSSL_VERSION_NUMBER >= 0x10000000L - LHM_lh_doall_arg(TABNODE, tab, LHASH_DOALL_ARG_FN(t_old), ALL_ARG, &a); -@@ -194,7 +194,7 @@ t_cont_doall_arg(TABNODE *t, ALL_ARG *arg) - TABNODE *res; - - if(memcmp(t->content, arg->content, arg->cont_len) == 0) --#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined LIBRESSL_VERSION_NUMBER - if((res = lh_TABNODE_delete(arg->tab, t)) != NULL) { - #elif OPENSSL_VERSION_NUMBER >= 0x10000000L - if((res = LHM_lh_delete(TABNODE, arg->tab, t)) != NULL) { -@@ -228,7 +228,7 @@ t_clean(LHASH_OF(TABNODE) *const tab, void *const content, const size_t cont_len - a.cont_len = cont_len; - down_load = TABNODE_GET_DOWN_LOAD(tab); - TABNODE_SET_DOWN_LOAD(tab, 0); --#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined LIBRESSL_VERSION_NUMBER - lh_TABNODE_doall_ALL_ARG(tab, t_cont_doall_arg, &a); - #elif OPENSSL_VERSION_NUMBER >= 0x10000000L - LHM_lh_doall_arg(TABNODE, tab, LHASH_DOALL_ARG_FN(t_cont), ALL_ARG, &a); -@@ -1514,7 +1514,7 @@ dump_sess(const int control_sock, LHASH_OF(TABNODE) *const sess, BACKEND *const - - a.control_sock = control_sock; - a.backends = backends; --#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined LIBRESSL_VERSION_NUMBER - lh_TABNODE_doall_DUMP_ARG(sess, t_dump_doall_arg, &a); - #elif OPENSSL_VERSION_NUMBER >= 0x10000000L - LHM_lh_doall_arg(TABNODE, sess, LHASH_DOALL_ARG_FN(t_dump), DUMP_ARG, &a); --- -1.9.1 - diff --git a/package/pound/Config.in b/package/pound/Config.in index 91c29ea7a68b..aa0f10327318 100644 --- a/package/pound/Config.in +++ b/package/pound/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_POUND depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # fork() select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL help The Pound program is a reverse proxy, load balancer and HTTPS front-end for Web server(s). Pound was developed to enable @@ -11,7 +12,7 @@ config BR2_PACKAGE_POUND for a convenient SSL wrapper for those Web servers that do not offer it natively. - http://www.apsis.ch/pound + https://github.com/graygnuorg/pound comment "pound needs a toolchain w/ dynamic library, threads" depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/pound/pound.hash b/package/pound/pound.hash index 1e88218692fb..c5b08891bef8 100644 --- a/package/pound/pound.hash +++ b/package/pound/pound.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 a7fd8690de0fd390615e79fd0f4bfd56a544b8ef97dd6659c07ecd3207480c25 Pound-2.8.tgz -sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 GPL.txt +sha256 f1a041e060124941b090ad2d4fec5a72be37a5f8a50f0e0ca821dcbbe4b5925b pound-4.8.tar.gz +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/package/pound/pound.mk b/package/pound/pound.mk index d6839fc2e780..7bd7eaef2a06 100644 --- a/package/pound/pound.mk +++ b/package/pound/pound.mk @@ -4,11 +4,10 @@ # ################################################################################ -POUND_VERSION = 2.8 -POUND_SITE = http://www.apsis.ch/pound -POUND_SOURCE = Pound-$(POUND_VERSION).tgz +POUND_VERSION = 4.8 +POUND_SITE = https://github.com/graygnuorg/pound/releases/download/v$(POUND_VERSION) POUND_LICENSE = GPL-3.0+ -POUND_LICENSE_FILES = GPL.txt +POUND_LICENSE_FILES = COPYING POUND_DEPENDENCIES = openssl host-openssl # Force owner/group to us, otherwise it will try proxy:proxy by @@ -17,8 +16,16 @@ POUND_CONF_OPTS = \ --with-owner=$(shell id -un) \ --with-group=$(shell id -gn) -ifeq ($(BR2_PACKAGE_PCRE),y) +ifeq ($(BR2_PACKAGE_PCRE2),y) +POUND_CONF_OPTS += --enable-pcreposix=pcre2 +POUND_CONF_ENV += \ + ac_cv_path_PCRE2_CONFIG=$(STAGING_DIR)/usr/bin/pcre2-config +POUND_DEPENDENCIES += pcre2 +else ifeq ($(BR2_PACKAGE_PCRE),y) +POUND_CONF_OPTS += --enable-pcreposix=pcre1 POUND_DEPENDENCIES += pcre +else +POUND_CONF_OPTS += --disable-pcreposix endif $(eval $(autotools-package)) diff --git a/package/powerpc-utils/powerpc-utils.hash b/package/powerpc-utils/powerpc-utils.hash index b3c77fb223ba..32387014cc6f 100644 --- a/package/powerpc-utils/powerpc-utils.hash +++ b/package/powerpc-utils/powerpc-utils.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 d64d9016a3e63a1e44c6e0833742cf964ae6bb1c6a9c7f0c7c5748aa335dc3db powerpc-utils-1.3.10.tar.gz +sha256 6bb16078068d8b889afdd78927d2f061702ef155e57fc548ae573e2b0b90ca13 powerpc-utils-1.3.11.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/powerpc-utils/powerpc-utils.mk b/package/powerpc-utils/powerpc-utils.mk index 19fa84946c91..8d5491133b85 100644 --- a/package/powerpc-utils/powerpc-utils.mk +++ b/package/powerpc-utils/powerpc-utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -POWERPC_UTILS_VERSION = 1.3.10 +POWERPC_UTILS_VERSION = 1.3.11 POWERPC_UTILS_SITE = $(call github,ibm-power-utilities,powerpc-utils,v$(POWERPC_UTILS_VERSION)) POWERPC_UTILS_DEPENDENCIES = zlib numactl POWERPC_UTILS_AUTORECONF = YES diff --git a/package/powertop/0001-add-disable-stack-protector-option.patch b/package/powertop/0001-add-disable-stack-protector-option.patch new file mode 100644 index 000000000000..01a030522d8d --- /dev/null +++ b/package/powertop/0001-add-disable-stack-protector-option.patch @@ -0,0 +1,55 @@ +From 95382246ddd889839633aa0da800a03936b93986 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sun, 31 Oct 2021 18:26:01 +0100 +Subject: [PATCH] add --disable-stack-protector option + +Allow the user to disable stack-protector as not all toolchains support +this feature + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/fenrus75/powertop/pull/138 +--- + configure.ac | 4 ++++ + src/Makefile.am | 5 ++++- + 2 files changed, 8 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 37c1304..69160d5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -43,6 +43,10 @@ AX_ADD_FORTIFY_SOURCE + AX_CXX_COMPILE_STDCXX([11], [noext], [mandatory]) + PKG_PROG_PKG_CONFIG + ++AC_ARG_ENABLE([stack-protector], ++ AS_HELP_STRING([--disable-stack-protector], [Disable stack-protector])) ++AM_CONDITIONAL([ENABLE_STACK_PROTECTOR], [test x$enable_stack_protector != xno]) ++ + # Checks for libraries. + AX_PTHREAD([ + LIBS="$PTHREAD_LIBS $LIBS" +diff --git a/src/Makefile.am b/src/Makefile.am +index 6b523f6..ca30d20 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -138,13 +138,16 @@ powertop_CXXFLAGS = \ + -Wformat \ + -Wshadow \ + -fno-omit-frame-pointer \ +- -fstack-protector \ + $(GLIB2_CFLAGS) \ + $(LIBNL_CFLAGS) \ + $(NCURSES_CFLAGS) \ + $(PCIUTILS_CFLAGS) \ + $(PTHREAD_CFLAGS) + ++if ENABLE_STACK_PROTECTOR ++powertop_CXXFLAGS += \ ++ -fstack-protector ++endif + + powertop_CPPFLAGS = \ + -DLOCALEDIR=\"$(localedir)\" \ +-- +2.33.0 + diff --git a/package/powertop/0001-dont-force-stack-smashing-protection.patch b/package/powertop/0001-dont-force-stack-smashing-protection.patch deleted file mode 100644 index 75ed2d1c24fe..000000000000 --- a/package/powertop/0001-dont-force-stack-smashing-protection.patch +++ /dev/null @@ -1,18 +0,0 @@ -Do not pass -fstack-protector unconditionally - -Using -fstack-protector only works when the toolchain has SSP support. - -Signed-off-by: Thomas Petazzoni - -Index: b/src/Makefile.am -=================================================================== ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -127,7 +127,6 @@ - -Wformat \ - -Wshadow \ - -fno-omit-frame-pointer \ -- -fstack-protector \ - $(GLIB2_CFLAGS) \ - $(LIBNL_CFLAGS) \ - $(NCURSES_CFLAGS) \ diff --git a/package/powertop/Config.in b/package/powertop/Config.in index 0f323a7bfb9b..2f7ba2bb9df2 100644 --- a/package/powertop/Config.in +++ b/package/powertop/Config.in @@ -4,13 +4,12 @@ config BR2_PACKAGE_POWERTOP depends on BR2_TOOLCHAIN_HAS_THREADS # libnl depends on BR2_USE_WCHAR select BR2_PACKAGE_NCURSES - select BR2_PACKAGE_PCIUTILS select BR2_PACKAGE_LIBNL help A tool to diagnose issues with power consumption and power management - https://01.org/powertop/ + https://github.com/fenrus75/powertop/ comment "powertop needs a toolchain w/ C++, threads, wchar" depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ diff --git a/package/powertop/powertop.hash b/package/powertop/powertop.hash index fc8f3cc52f97..810b80a51448 100644 --- a/package/powertop/powertop.hash +++ b/package/powertop/powertop.hash @@ -1,5 +1,3 @@ -# Locally calculated after checking pgp signature -# https://01.org/sites/default/files/downloads/powertop-2.13.tar.gz.asc.txt -# using key 22E8F306C8FA4BAA2A5F36F3A0303B060918941C -sha256 a65f992ca4a419bc73b623651060eb9fc00c5a86fa03556358cd9db011ef3178 powertop-2.13.tar.gz +# Locally calculated +sha256 e58ab3fd7b8ff5f4dd0d17f11848817e7d83c0a6918145ac81de03b5dccf8f49 powertop-2.15.tar.gz sha256 b499eddebda05a8859e32b820a64577d91f1de2b52efa2a1575a2cb4000bc259 COPYING diff --git a/package/powertop/powertop.mk b/package/powertop/powertop.mk index c3e8d2549c37..0481caee07f8 100644 --- a/package/powertop/powertop.mk +++ b/package/powertop/powertop.mk @@ -4,15 +4,30 @@ # ################################################################################ -POWERTOP_VERSION = 2.13 -POWERTOP_SITE = https://01.org/sites/default/files/downloads -POWERTOP_DEPENDENCIES = pciutils ncurses libnl host-pkgconf \ - $(TARGET_NLS_DEPENDENCIES) +POWERTOP_VERSION = 2.15 +POWERTOP_SITE = $(call github,fenrus75,powertop,v$(POWERTOP_VERSION)) POWERTOP_LICENSE = GPL-2.0 POWERTOP_LICENSE_FILES = COPYING + +POWERTOP_DEPENDENCIES = \ + host-autoconf-archive \ + host-pkgconf \ + libnl \ + ncurses \ + $(if $(BR2_PACKAGE_PCIUTILS),pciutils) \ + $(TARGET_NLS_DEPENDENCIES) + POWERTOP_CONF_ENV = LIBS=$(TARGET_NLS_LIBS) -# 0001-dont-force-stack-smashing-protection.patch +# 0001-add-disable-stack-protector-option.patch POWERTOP_AUTORECONF = YES +POWERTOP_AUTORECONF_OPTS = --include=$(HOST_DIR)/share/autoconf-archive +POWERTOP_CONF_OPTS = --disable-stack-protector + +# fix missing config.rpath (needed for autoreconf) in the codebase +define POWERTOP_TOUCH_CONFIG_RPATH + touch $(@D)/config.rpath +endef +POWERTOP_PRE_CONFIGURE_HOOKS += POWERTOP_TOUCH_CONFIG_RPATH # Help powertop at finding the right ncurses library depending on # which one is available. diff --git a/package/pppd/0001-Add-configure-check-to-see-if-we-have-struct-sockadd.patch b/package/pppd/0001-Add-configure-check-to-see-if-we-have-struct-sockadd.patch new file mode 100644 index 000000000000..9e41110400b2 --- /dev/null +++ b/package/pppd/0001-Add-configure-check-to-see-if-we-have-struct-sockadd.patch @@ -0,0 +1,44 @@ +From 9d6d326b2530cffb1414e4c401675117c42d43ce Mon Sep 17 00:00:00 2001 +From: Eivind Naess +Date: Sun, 23 Apr 2023 11:30:43 -0700 +Subject: [PATCH] Add configure check to see if we have struct sockaddr_ll + +Fixes issue #411. + +Signed-off-by: Eivind Naess + +Upstream: https://github.com/ppp-project/ppp/commit/9d6d326b2530cffb1414e4c401675117c42d43ce + +Signed-off-by: Bernd Kuhls +--- + configure.ac | 3 ++- + pppd/plugins/pppoe/config.h.in | 2 ++ + 2 files changed, 4 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 1180f64..38b24af 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -75,7 +75,8 @@ AM_COND_IF([LINUX], [ + linux/if_ether.h \ + linux/if_packet.h \ + netinet/if_ether.h \ +- netpacket/packet.h])]) ++ netpacket/packet.h]) ++ AC_CHECK_TYPES([struct sockaddr_ll], [], [], [#include ])]) + + AC_CHECK_SIZEOF(unsigned int) + AC_CHECK_SIZEOF(unsigned long) +diff --git a/pppd/plugins/pppoe/config.h.in b/pppd/plugins/pppoe/config.h.in +index d447f5e..d7d61c0 100644 +--- a/pppd/plugins/pppoe/config.h.in ++++ b/pppd/plugins/pppoe/config.h.in +@@ -69,3 +69,5 @@ + /* The size of `unsigned short', as computed by sizeof. */ + #undef SIZEOF_UNSIGNED_SHORT + ++/* Define to 1 if the system has the type `struct sockaddr_ll'. */ ++#undef HAVE_STRUCT_SOCKADDR_LL +-- +2.39.2 + diff --git a/package/pppd/0001-pppd-Fix-compilation-with-older-glibc-or-kernel-headers.patch b/package/pppd/0001-pppd-Fix-compilation-with-older-glibc-or-kernel-headers.patch deleted file mode 100644 index 86d8b8f4e3b4..000000000000 --- a/package/pppd/0001-pppd-Fix-compilation-with-older-glibc-or-kernel-headers.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 98ec18f098e5ef68e3a8cc6954fcaf5a7fb8b7be Mon Sep 17 00:00:00 2001 -From: pali <7141871+pali@users.noreply.github.com> -Date: Mon, 15 Feb 2021 07:54:01 +0100 -Subject: [PATCH] pppd: Fix compilation with older glibc or kernel headers - (#248) -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -glibc versions prior to 2.24 do not define SOL_NETLINK and linux kernel -versions prior to 4.3 do not define NETLINK_CAP_ACK. So add fallback -definitions for these macros into pppd/sys-linux.c file. - -Also extend description why we call SOL_NETLINK/NETLINK_CAP_ACK option. - -Signed-off-by: Pali Rohár - -[Retrieved from: -https://github.com/ppp-project/ppp/commit/98ec18f098e5ef68e3a8cc6954fcaf5a7fb8b7be] -Signed-off-by: Fabrice Fontaine ---- - pppd/sys-linux.c | 18 +++++++++++++++++- - 1 file changed, 17 insertions(+), 1 deletion(-) - -diff --git a/pppd/sys-linux.c b/pppd/sys-linux.c -index 85033d97..50c4f2da 100644 ---- a/pppd/sys-linux.c -+++ b/pppd/sys-linux.c -@@ -125,6 +125,14 @@ - #include - #include - #include -+/* glibc versions prior to 2.24 do not define SOL_NETLINK */ -+#ifndef SOL_NETLINK -+#define SOL_NETLINK 270 -+#endif -+/* linux kernel versions prior to 4.3 do not define/support NETLINK_CAP_ACK */ -+#ifndef NETLINK_CAP_ACK -+#define NETLINK_CAP_ACK 10 -+#endif - #endif - - #include "pppd.h" -@@ -2843,7 +2851,15 @@ static int append_peer_ipv6_address(unsigned int iface, struct in6_addr *local_a - if (fd < 0) - return 0; - -- /* do not ask for error message content */ -+ /* -+ * Tell kernel to not send to us payload of acknowledgment error message. -+ * NETLINK_CAP_ACK option is supported since Linux kernel version 4.3 and -+ * older kernel versions always send full payload in acknowledgment netlink -+ * message. We ignore payload of this message as we need only error code, -+ * to check if our set remote peer address request succeeded or failed. -+ * So ignore return value from the following setsockopt() call as setting -+ * option NETLINK_CAP_ACK means for us just a kernel hint / optimization. -+ */ - one = 1; - setsockopt(fd, SOL_NETLINK, NETLINK_CAP_ACK, &one, sizeof(one)); - diff --git a/package/pppd/0002-Closes-411-Fixing-up-parsing-in-radiusclient.conf.patch b/package/pppd/0002-Closes-411-Fixing-up-parsing-in-radiusclient.conf.patch new file mode 100644 index 000000000000..5fa3ded756d0 --- /dev/null +++ b/package/pppd/0002-Closes-411-Fixing-up-parsing-in-radiusclient.conf.patch @@ -0,0 +1,56 @@ +From 7f89208b860ea0c41636410bfdb6a609b2772f47 Mon Sep 17 00:00:00 2001 +From: Eivind Naess +Date: Sun, 23 Apr 2023 11:37:01 -0700 +Subject: [PATCH] Closes #411, Fixing up parsing in radiusclient.conf + +Adding curly braces to fix the code. + +Signed-off-by: Eivind Naess + +Upstream: https://github.com/ppp-project/ppp/commit/7f89208b860ea0c41636410bfdb6a609b2772f47 + +Signed-off-by: Bernd Kuhls +--- + pppd/plugins/radius/config.c | 12 ++++++++---- + 1 file changed, 8 insertions(+), 4 deletions(-) + +diff --git a/pppd/plugins/radius/config.c b/pppd/plugins/radius/config.c +index 39744fc..e1a4814 100644 +--- a/pppd/plugins/radius/config.c ++++ b/pppd/plugins/radius/config.c +@@ -235,24 +235,28 @@ int rc_read_config(char *filename) + + switch (option->type) { + case OT_STR: +- if (set_option_str(filename, line, option, p) < 0) ++ if (set_option_str(filename, line, option, p) < 0) { + fclose(configfd); + return (-1); ++ } + break; + case OT_INT: +- if (set_option_int(filename, line, option, p) < 0) ++ if (set_option_int(filename, line, option, p) < 0) { + fclose(configfd); + return (-1); ++ } + break; + case OT_SRV: +- if (set_option_srv(filename, line, option, p) < 0) ++ if (set_option_srv(filename, line, option, p) < 0) { + fclose(configfd); + return (-1); ++ } + break; + case OT_AUO: +- if (set_option_auo(filename, line, option, p) < 0) ++ if (set_option_auo(filename, line, option, p) < 0) { + fclose(configfd); + return (-1); ++ } + break; + default: + fatal("rc_read_config: impossible case branch!"); +-- +2.39.2 + diff --git a/package/pppd/0002-pppd-eap-tls.c-fix-build-with-libressl.patch b/package/pppd/0002-pppd-eap-tls.c-fix-build-with-libressl.patch deleted file mode 100644 index aefdc5b7a4cd..000000000000 --- a/package/pppd/0002-pppd-eap-tls.c-fix-build-with-libressl.patch +++ /dev/null @@ -1,36 +0,0 @@ -From b0a011bc4abac8cb3de8dfff42b754ed236ecf0f Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Mon, 4 Jul 2022 10:07:03 +0200 -Subject: [PATCH] pppd/eap-tls.c: fix build with libressl (#338) - -Fix the following build failure with libressl: - -eap-tls.c: In function 'ssl_msg_callback': -eap-tls.c:1284:10: error: 'SSL3_RT_HEADER' undeclared (first use in this function); did you mean 'SSL3_RT_ALERT'? - 1284 | case SSL3_RT_HEADER: - | ^~~~~~~~~~~~~~ - | SSL3_RT_ALERT - -Fixes: - - http://autobuild.buildroot.org/results/7d721833bddf73531fa03b0a626511af6826d0df - -Signed-off-by: Fabrice Fontaine -[Retrieved (and backported) from: -https://github.com/ppp-project/ppp/commit/b0a011bc4abac8cb3de8dfff42b754ed236ecf0f] ---- - pppd/eap-tls.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/pppd/eap-tls.c b/pppd/eap-tls.c -index b9bab842..40796d58 100644 ---- a/pppd/eap-tls.c -+++ b/pppd/eap-tls.c -@@ -61,7 +61,7 @@ - #include "mppe.h" - #include "pathnames.h" - --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - - #define TLS_method SSLv23_method - diff --git a/package/pppd/0003-Fixes-issue-429-stray-include-of-an-openssl-header-w.patch b/package/pppd/0003-Fixes-issue-429-stray-include-of-an-openssl-header-w.patch new file mode 100644 index 000000000000..b5f9f319f976 --- /dev/null +++ b/package/pppd/0003-Fixes-issue-429-stray-include-of-an-openssl-header-w.patch @@ -0,0 +1,31 @@ +From cf7ac82a610bbfee57512cba345f7d49c02563a2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Eivind=20N=C3=A6ss?= +Date: Wed, 14 Jun 2023 23:19:46 +0000 +Subject: [PATCH] Fixes issue #429, stray include of an openssl header was + removed +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Eivind Næss + +Upstream: https://github.com/ppp-project/ppp/pull/431 + +Signed-off-by: Bernd Kuhls +--- + pppd/crypto_ms.c | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/pppd/crypto_ms.c b/pppd/crypto_ms.c +index a9ddd5fda..ccf8129d4 100644 +--- a/pppd/crypto_ms.c ++++ b/pppd/crypto_ms.c +@@ -122,8 +122,6 @@ MakeKey(const unsigned char *key, unsigned char *des_key) + DES_set_odd_parity((DES_cblock *)des_key); + } + +-#include +- + int + DesEncrypt(const unsigned char *clear, const unsigned char *key, unsigned char *cipher) + { diff --git a/package/pppd/0004-pppd-ppp-sha1.c-use-uint32_t-instead-of-u_int32_t.patch b/package/pppd/0004-pppd-ppp-sha1.c-use-uint32_t-instead-of-u_int32_t.patch new file mode 100644 index 000000000000..bce7687b9e9f --- /dev/null +++ b/package/pppd/0004-pppd-ppp-sha1.c-use-uint32_t-instead-of-u_int32_t.patch @@ -0,0 +1,64 @@ +From 7eb0cc63e38a1fcaff24bc3ca146c13414a1420e Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sun, 18 Jun 2023 15:53:43 +0200 +Subject: [PATCH] pppd/ppp-sha1.c: use uint32_t instead of u_int32_t + +Fixes build with musl-libc toolchains. + +Upstream: https://github.com/ppp-project/ppp/pull/432 + +Signed-off-by: Bernd Kuhls +--- + pppd/ppp-sha1.c | 14 +++++++------- + 1 file changed, 7 insertions(+), 7 deletions(-) + +diff --git a/pppd/ppp-sha1.c b/pppd/ppp-sha1.c +index ab4dcd5..9ff3a24 100644 +--- a/pppd/ppp-sha1.c ++++ b/pppd/ppp-sha1.c +@@ -110,14 +110,14 @@ static void sha1_clean(PPP_MD_CTX *ctx) + #include /* htonl() */ + + typedef struct { +- u_int32_t state[5]; +- u_int32_t count[2]; ++ uint32_t state[5]; ++ uint32_t count[2]; + unsigned char buffer[64]; + } SHA1_CTX; + + + static void +-SHA1_Transform(u_int32_t[5], const unsigned char[64]); ++SHA1_Transform(uint32_t[5], const unsigned char[64]); + + #define rol(value, bits) (((value) << (bits)) | ((value) >> (32 - (bits)))) + +@@ -138,12 +138,12 @@ SHA1_Transform(u_int32_t[5], const unsigned char[64]); + /* Hash a single 512-bit block. This is the core of the algorithm. */ + + static void +-SHA1_Transform(u_int32_t state[5], const unsigned char buffer[64]) ++SHA1_Transform(uint32_t state[5], const unsigned char buffer[64]) + { +- u_int32_t a, b, c, d, e; ++ uint32_t a, b, c, d, e; + typedef union { + unsigned char c[64]; +- u_int32_t l[16]; ++ uint32_t l[16]; + } CHAR64LONG16; + CHAR64LONG16 *block; + +@@ -236,7 +236,7 @@ SHA1_Update(SHA1_CTX *context, const unsigned char *data, unsigned int len) + static void + SHA1_Final(unsigned char digest[20], SHA1_CTX *context) + { +- u_int32_t i, j; ++ uint32_t i, j; + unsigned char finalcount[8]; + + for (i = 0; i < 8; i++) { +-- +2.39.2 + diff --git a/package/pppd/Config.in b/package/pppd/Config.in index 898d95f0ee26..88c2180a9b02 100644 --- a/package/pppd/Config.in +++ b/package/pppd/Config.in @@ -19,23 +19,6 @@ config BR2_PACKAGE_PPPD_FILTER the pppd active-filter and pass-filter options are available. -config BR2_PACKAGE_PPPD_RADIUS - bool "radius" - help - Install RADIUS support for pppd - -config BR2_PACKAGE_PPPD_OVERWRITE_RESOLV_CONF - bool "overwrite /etc/resolv.conf" - default y - help - Overwrite /etc/resolv.conf instead of maintaining the - separate list of nameservers in /etc/ppp/resolv.conf - - Note that the pppd default of writing to /etc/ppp/resolv.conf - does not work on a read-only rootfs unless you make it - writable in your rootfs customizations (e.g. by linking it to - a file in tmpfs or by mounting a writable filesystem on it). - endif comment "pppd needs a toolchain w/ dynamic library" diff --git a/package/pppd/pppd.hash b/package/pppd/pppd.hash index 3d471695bb44..9a293e7d8d7c 100644 --- a/package/pppd/pppd.hash +++ b/package/pppd/pppd.hash @@ -1,7 +1,4 @@ # Locally calculated -sha256 675bff4f366174649f4a3c92fd32ac476e694164ff2b0b7710019b6ead9c561e pppd-2.4.9.tar.gz -sha256 3990c65c506885f7bb75455d1d6188743a14ad46f5b62e136ef3739aed52c532 pppd/tdb.c -sha256 1822ead9d2854adfbd282322b29730a3fec4cc67f6f6a2e487aad3476e3afd59 pppd/plugins/pppoatm/COPYING -sha256 d759ec16875a69c2d5529f8cb3c040fef8fe38d26f70457aadb73c91b72746c8 pppdump/bsd-comp.c -sha256 c0d0f14b6ec9948332f10ded741293ed1f3b96e0d266e4903b605a6e1f8af7cd pppd/ccp.c -sha256 367f334c509db2b293aea5ce9f54284d9a9f6e0a9e0c6e305d544079baf8ab63 pppd/plugins/passprompt.c +sha256 425a5b2df592f4b79e251e5b0d3af48265904162cb0906691a5d35ec355b426d pppd-2.5.0.tar.gz +sha256 5d588eb3b157d52112afea935c88a7ff9efddc1e2d95a42c25d3b96ad9055008 LICENSE.BSD +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL-2 diff --git a/package/pppd/pppd.mk b/package/pppd/pppd.mk index d9d6244f103c..616b843e3d2e 100644 --- a/package/pppd/pppd.mk +++ b/package/pppd/pppd.mk @@ -4,128 +4,46 @@ # ################################################################################ -PPPD_VERSION = 2.4.9 -PPPD_SITE = $(call github,paulusmack,ppp,ppp-$(PPPD_VERSION)) +# The tarball provided at https://download.samba.org/pub/ppp/ does not +# include the license files yet so we use the github tarball. +PPPD_VERSION = 2.5.0 +PPPD_SITE = $(call github,ppp-project,ppp,ppp-$(PPPD_VERSION)) PPPD_LICENSE = LGPL-2.0+, LGPL, BSD-4-Clause, BSD-3-Clause, GPL-2.0+ -PPPD_LICENSE_FILES = \ - pppd/tdb.c pppd/plugins/pppoatm/COPYING \ - pppdump/bsd-comp.c pppd/ccp.c pppd/plugins/passprompt.c +PPPD_LICENSE_FILES = LICENSE.BSD LICENSE.GPL-2 PPPD_CPE_ID_VENDOR = point-to-point_protocol_project PPPD_CPE_ID_PRODUCT = point-to-point_protocol PPPD_SELINUX_MODULES = ppp - -PPPD_MAKE_OPTS = HAVE_INET6=y +PPPD_AUTORECONF = YES +PPPD_INSTALL_STAGING = YES +PPPD_CONF_OPTS = --enable-multilink ifeq ($(BR2_PACKAGE_OPENSSL),y) +PPPD_CONF_OPTS += \ + --enable-eaptls \ + --enable-openssl-engine \ + --enable-peap \ + --with-openssl=$(STAGING_DIR)/usr PPPD_DEPENDENCIES += openssl -PPPD_MAKE_OPTS += USE_EAPTLS=y else -PPPD_MAKE_OPTS += \ - USE_CRYPT=y \ - USE_EAPTLS= +PPPD_CONF_OPTS += \ + --disable-eaptls \ + --disable-openssl-engine \ + --disable-peap \ + --without-openssl endif -PPPD_INSTALL_STAGING = YES -PPPD_TARGET_BINS = chat pppd pppdump pppstats -PPPD_RADIUS_CONF = \ - dictionary dictionary.ascend dictionary.compat \ - dictionary.merit dictionary.microsoft \ - issue port-id-map realms servers radiusclient.conf - ifeq ($(BR2_PACKAGE_PPPD_FILTER),y) +PPPD_CONF_OPTS += --with-pcap=$(STAGING_DIR)/usr PPPD_DEPENDENCIES += libpcap -PPPD_MAKE_OPTS += FILTER=y -endif - -# pppd bundles some but not all of the needed kernel headers. The embedded -# if_pppol2tp.h is unfortunately not compatible with kernel headers > 2.6.34, -# and has been part of the kernel headers since 2.6.23, so drop it -define PPPD_DROP_INTERNAL_IF_PPOL2TP_H - $(RM) $(@D)/include/linux/if_pppol2tp.h -endef - -PPPD_POST_EXTRACT_HOOKS += PPPD_DROP_INTERNAL_IF_PPOL2TP_H - -# pppd defaults to /etc/ppp/resolv.conf, which not be writable and is -# definitely not useful since the C library only uses -# /etc/resolv.conf. Therefore, we change pppd to use /etc/resolv.conf -# instead. -define PPPD_SET_RESOLV_CONF - $(SED) 's,ppp/resolv.conf,resolv.conf,' $(@D)/pppd/pathnames.h -endef -ifeq ($(BR2_PACKAGE_PPPD_OVERWRITE_RESOLV_CONF),y) -PPPD_POST_EXTRACT_HOOKS += PPPD_SET_RESOLV_CONF -endif - -ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_15),y) -define PPPD_DROP_IPX - $(SED) 's/-DIPX_CHANGE//' $(PPPD_DIR)/pppd/Makefile.linux -endef -PPPD_POST_EXTRACT_HOOKS += PPPD_DROP_IPX +else +PPPD_CONF_OPTS += --without-pcap endif -define PPPD_CONFIGURE_CMDS - $(SED) 's/FILTER=y/#FILTER=y/' $(PPPD_DIR)/pppd/Makefile.linux - $(SED) 's/ifneq ($$(wildcard \/usr\/include\/pcap-bpf.h),)/ifdef FILTER/' $(PPPD_DIR)/*/Makefile.linux - ( cd $(@D); $(TARGET_MAKE_ENV) ./configure --prefix=/usr ) -endef - -define PPPD_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE) CC="$(TARGET_CC)" COPTS="$(TARGET_CFLAGS)" \ - -C $(@D) $(PPPD_MAKE_OPTS) -endef - -ifeq ($(BR2_PACKAGE_PPPD_RADIUS),y) -define PPPD_INSTALL_RADIUS - $(INSTALL) -D $(PPPD_DIR)/pppd/plugins/radius/radattr.so \ - $(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/radattr.so - $(INSTALL) -D $(PPPD_DIR)/pppd/plugins/radius/radius.so \ - $(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/radius.so - $(INSTALL) -D $(PPPD_DIR)/pppd/plugins/radius/radrealms.so \ - $(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/radrealms.so - for m in $(PPPD_RADIUS_CONF); do \ - $(INSTALL) -m 644 -D $(PPPD_DIR)/pppd/plugins/radius/etc/$$m \ - $(TARGET_DIR)/etc/ppp/radius/$$m; \ - done - $(SED) 's:/usr/local/etc:/etc:' \ - $(TARGET_DIR)/etc/ppp/radius/radiusclient.conf - $(SED) 's:/usr/local/sbin:/usr/sbin:' \ - $(TARGET_DIR)/etc/ppp/radius/radiusclient.conf - $(SED) 's:/etc/radiusclient:/etc/ppp/radius:g' \ - $(TARGET_DIR)/etc/ppp/radius/* -endef +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +PPPD_CONF_OPTS += --enable-systemd +PPPD_DEPENDENCIES += systemd +else +PPPD_CONF_OPTS += --disable-systemd endif -define PPPD_INSTALL_TARGET_CMDS - for sbin in $(PPPD_TARGET_BINS); do \ - $(INSTALL) -D $(PPPD_DIR)/$$sbin/$$sbin \ - $(TARGET_DIR)/usr/sbin/$$sbin; \ - done - $(INSTALL) -D $(PPPD_DIR)/pppd/plugins/minconn.so \ - $(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/minconn.so - $(INSTALL) -D $(PPPD_DIR)/pppd/plugins/passprompt.so \ - $(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/passprompt.so - $(INSTALL) -D $(PPPD_DIR)/pppd/plugins/passwordfd.so \ - $(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/passwordfd.so - $(INSTALL) -D $(PPPD_DIR)/pppd/plugins/pppoatm/pppoatm.so \ - $(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/pppoatm.so - $(INSTALL) -D $(PPPD_DIR)/pppd/plugins/pppoe/pppoe.so \ - $(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/pppoe.so - $(INSTALL) -D $(PPPD_DIR)/pppd/plugins/pppoe/pppoe-discovery \ - $(TARGET_DIR)/usr/sbin/pppoe-discovery - $(INSTALL) -D $(PPPD_DIR)/pppd/plugins/winbind.so \ - $(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/winbind.so - $(INSTALL) -D $(PPPD_DIR)/pppd/plugins/pppol2tp/openl2tp.so \ - $(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/openl2tp.so - $(INSTALL) -D $(PPPD_DIR)/pppd/plugins/pppol2tp/pppol2tp.so \ - $(TARGET_DIR)/usr/lib/pppd/$(PPPD_VERSION)/pppol2tp.so - $(INSTALL) -D -m 0755 $(PPPD_DIR)/scripts/pon $(TARGET_DIR)/usr/bin/pon - $(INSTALL) -D -m 0755 $(PPPD_DIR)/scripts/poff $(TARGET_DIR)/usr/bin/poff - $(PPPD_INSTALL_RADIUS) -endef - -define PPPD_INSTALL_STAGING_CMDS - $(TARGET_MAKE_ENV) $(MAKE) INSTROOT=$(STAGING_DIR)/ -C $(@D) $(PPPD_MAKE_OPTS) install-devel -endef - -$(eval $(generic-package)) +$(eval $(autotools-package)) diff --git a/package/privoxy/privoxy.hash b/package/privoxy/privoxy.hash index cf1056ecc4d3..67a44f2c948a 100644 --- a/package/privoxy/privoxy.hash +++ b/package/privoxy/privoxy.hash @@ -1,6 +1,5 @@ -# From https://sourceforge.net/projects/ijbswa/files/Sources/3.0.33%20%28stable%29/ -md5 d6caf3eaad4812f0658b68d5b3ba3a06 privoxy-3.0.33-stable-src.tar.gz -sha1 688da305077d8ecbcf6423e02201f01f7a7098f4 privoxy-3.0.33-stable-src.tar.gz +# From https://sourceforge.net/projects/ijbswa/files/Sources/3.0.34%20%28stable%29/ +sha1 e65298c4ee235320ea9ddfb689187bda29a63bbb privoxy-3.0.34-stable-src.tar.gz # Locally computed -sha256 04b104e70dac61561b9dd110684b250fafc8c13dbe437a60fae18ddd9a881fae privoxy-3.0.33-stable-src.tar.gz +sha256 e6ccbca1656f4e616b4657f8514e33a70f6697e9d7294356577839322a3c5d2c privoxy-3.0.34-stable-src.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE diff --git a/package/privoxy/privoxy.mk b/package/privoxy/privoxy.mk index 06642200df04..e1353ef0c785 100644 --- a/package/privoxy/privoxy.mk +++ b/package/privoxy/privoxy.mk @@ -4,8 +4,8 @@ # ################################################################################ -PRIVOXY_VERSION = 3.0.33 -PRIVOXY_SITE = http://downloads.sourceforge.net/project/ijbswa/Sources/$(PRIVOXY_VERSION)%20%28stable%29 +PRIVOXY_VERSION = 3.0.34 +PRIVOXY_SITE = https://downloads.sourceforge.net/project/ijbswa/Sources/$(PRIVOXY_VERSION)%20%28stable%29 PRIVOXY_SOURCE = privoxy-$(PRIVOXY_VERSION)-stable-src.tar.gz # configure not shipped PRIVOXY_AUTORECONF = YES diff --git a/package/procs/Config.in b/package/procs/Config.in new file mode 100644 index 000000000000..946fa68c63fe --- /dev/null +++ b/package/procs/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PROCS + bool "procs" + depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS + select BR2_PACKAGE_HOST_RUSTC + help + procs is a modern replacement for ps written in Rust + + https://github.com/dalance/procs.git diff --git a/package/procs/procs.hash b/package/procs/procs.hash new file mode 100644 index 000000000000..1c2fb5c3d57b --- /dev/null +++ b/package/procs/procs.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 643b7ba4b769ee9f336d441ecdac779c3d52e5719a15c14bb0acb3609ce1cd99 procs-0.14.0.tar.gz +sha256 feb87a2e0c305de3464cc44077da5393c52d8ca6362d37427157d04ec6f4510d LICENSE diff --git a/package/procs/procs.mk b/package/procs/procs.mk new file mode 100644 index 000000000000..a074ee1311aa --- /dev/null +++ b/package/procs/procs.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# procs +# +################################################################################ + +PROCS_VERSION = 0.14.0 +PROCS_SITE = $(call github,dalance,procs,v$(PROCS_VERSION)) +PROCS_LICENSE = MIT +PROCS_LICENSE_FILES = LICENSE + +$(eval $(cargo-package)) diff --git a/package/proj/proj.hash b/package/proj/proj.hash index 96d94e458e30..22e6a43bf72a 100644 --- a/package/proj/proj.hash +++ b/package/proj/proj.hash @@ -1,5 +1,5 @@ -# Fetched from http://download.osgeo.org/proj/proj-8.1.1.tar.gz.md5 -md5 f017fd7d35311b0d65b2cf0503844690 proj-8.1.1.tar.gz +# Fetched from http://download.osgeo.org/proj/proj-9.3.0.tar.gz.md5 +md5 f1d70cb8873bb4429a03c437c65c41c4 proj-9.3.0.tar.gz # Locally calculated -sha256 82f1345e5fa530c407cb1fc0752e83f8d08d2b98772941bbdc7820241f7fada2 proj-8.1.1.tar.gz +sha256 91a3695a004ea28db0448a34460bed4cc3b130e5c7d74339ec999efdab0e547d proj-9.3.0.tar.gz sha256 6a8f30793e877d32e3f88b972f0970a051a3b5a26cd057d3993cb51e21c43319 COPYING diff --git a/package/proj/proj.mk b/package/proj/proj.mk index bc924b41fb23..0e913fa3356c 100644 --- a/package/proj/proj.mk +++ b/package/proj/proj.mk @@ -4,7 +4,7 @@ # ################################################################################ -PROJ_VERSION = 8.1.1 +PROJ_VERSION = 9.3.0 PROJ_SITE = http://download.osgeo.org/proj PROJ_LICENSE = MIT PROJ_LICENSE_FILES = COPYING @@ -19,22 +19,23 @@ PROJ_CFLAGS += -O0 PROJ_CXXFLAGS += -O0 endif -PROJ_CONF_ENV = \ - CFLAGS="$(PROJ_CFLAGS)" \ - CXXFLAGS="$(PROJ_CXXFLAGS)" +PROJ_CONF_OPTS = \ + -DBUILD_APPS=OFF \ + -DCMAKE_C_FLAGS="$(PROJ_CFLAGS)" \ + -DCMAKE_CXX_FLAGS="$(PROJ_CXXFLAGS)" ifeq ($(BR2_PACKAGE_LIBCURL),y) PROJ_DEPENDENCIES += libcurl -PROJ_CONF_OPTS += --with-curl=$(STAGING_DIR)/usr/bin/curl-config +PROJ_CONF_OPTS += -DENABLE_CURL=ON else -PROJ_CONF_OPTS += --without-curl +PROJ_CONF_OPTS += -DENABLE_CURL=OFF endif ifeq ($(BR2_PACKAGE_TIFF),y) PROJ_DEPENDENCIES += tiff -PROJ_CONF_OPTS += --enable-tiff +PROJ_CONF_OPTS += -DENABLE_TIFF=ON else -PROJ_CONF_OPTS += --disable-tiff +PROJ_CONF_OPTS += -DENABLE_TIFF=OFF endif -$(eval $(autotools-package)) +$(eval $(cmake-package)) diff --git a/package/protozero/Config.in b/package/protozero/Config.in index 19048dfe8da0..e6347e6f7f3a 100644 --- a/package/protozero/Config.in +++ b/package/protozero/Config.in @@ -16,5 +16,5 @@ config BR2_PACKAGE_PROTOZERO https://github.com/mapbox/protozero -comment "protozero needs a toolchain w/ C++, gcc >= 4.7" +comment "protozero needs a toolchain w/ C++, gcc >= 4.7" depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 diff --git a/package/ptm2human/ptm2human.hash b/package/ptm2human/ptm2human.hash index 034601966776..d581491bded1 100644 --- a/package/ptm2human/ptm2human.hash +++ b/package/ptm2human/ptm2human.hash @@ -1,3 +1,3 @@ # Computed locally -sha256 28947eeb458d8b6a362cbeb8c5cb6098006274af04ebb4f5da70eac89f927d95 ptm2human-d0b8b6be9897ea5b04fd6460038a4773cec078bc.tar.gz +sha256 4c66e9429dfb92b5f4332b08050db0436511581102d1ec56555eb8229d9c2c74 ptm2human-c8c5e7d5bdacd73114f4f244355e88c7f4e7d64a.tar.gz sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 LICENSE diff --git a/package/ptm2human/ptm2human.mk b/package/ptm2human/ptm2human.mk index 28a7b7ab4880..edba21d401de 100644 --- a/package/ptm2human/ptm2human.mk +++ b/package/ptm2human/ptm2human.mk @@ -4,7 +4,7 @@ # ################################################################################ -PTM2HUMAN_VERSION = d0b8b6be9897ea5b04fd6460038a4773cec078bc +PTM2HUMAN_VERSION = c8c5e7d5bdacd73114f4f244355e88c7f4e7d64a PTM2HUMAN_SITE = $(call github,hwangcc23,ptm2human,$(PTM2HUMAN_VERSION)) PTM2HUMAN_LICENSE = GPL-2.0 PTM2HUMAN_LICENSE_FILES = LICENSE diff --git a/package/putty/0001-unix-uxutils.h-fix-build-on-uclibc.patch b/package/putty/0001-unix-uxutils.h-fix-build-on-uclibc.patch deleted file mode 100644 index 78cef8b908be..000000000000 --- a/package/putty/0001-unix-uxutils.h-fix-build-on-uclibc.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 3f30f3a7e3f07f5ca3cef0f405b02e22a018c6e4 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Sun, 9 May 2021 15:22:29 +0200 -Subject: [PATCH] unix/uxutils.h: fix build on uclibc - -Build on uclibc is broken since version 0.75 and commit -65383082bf0c49cec63f4b36001a40bd9b13edf6 because AT_HWCAP2 is used -even if is not available: - -unix/uxutils.c: In function 'platform_aes_hw_available': -unix/uxutils.c:13:22: error: 'AT_HWCAP2' undeclared (first use in this function) - 13 | return getauxval(AT_HWCAP2) & HWCAP2_AES; - | ^~~~~~~~~ - -To fix this build failure, include - -Fixes: - - http://autobuild.buildroot.org/results/726f7c5ce13e78ed91e827b872e9d7ccfa13f298 - -Signed-off-by: Fabrice Fontaine -[Upstream status: sent to Simon Tatham ] ---- - unix/uxutils.h | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/unix/uxutils.h b/unix/uxutils.h -index c9acff53..b80bf972 100644 ---- a/unix/uxutils.h -+++ b/unix/uxutils.h -@@ -18,6 +18,8 @@ - - #if defined __arm__ || defined __aarch64__ - -+#include -+ - #ifdef HAVE_SYS_TYPES_H - #include - #endif --- -2.30.2 - diff --git a/package/putty/Config.in b/package/putty/Config.in index cd8b3bb2132d..f89283b99ae7 100644 --- a/package/putty/Config.in +++ b/package/putty/Config.in @@ -3,10 +3,10 @@ config BR2_PACKAGE_PUTTY depends on BR2_USE_MMU # fork() depends on BR2_USE_WCHAR help - PuTTY is a free SSH and Telnet client. Without GTK2 + PuTTY is a free SSH and Telnet client. Without GTK2 or GTK3 activated, only the commandline tools plink, pscp, psftp, - and puttygen are built; enable GTK2 for the graphical - client. + and puttygen are built; enable GTK2 or GTK3 for the + graphical client. http://www.chiark.greenend.org.uk/~sgtatham/putty/ diff --git a/package/putty/putty.hash b/package/putty/putty.hash index 861d45cb769d..0ae2a86be82c 100644 --- a/package/putty/putty.hash +++ b/package/putty/putty.hash @@ -1,8 +1,7 @@ -# Hashes from: http://the.earth.li/~sgtatham/putty/0.76/{md5,sha1,sha256,sha512}sums -md5 9d22f8c56c1eaa1c0af3098438f25908 putty-0.76.tar.gz -sha1 de09f50aee330eb05ad0cb81b970d0cc8e5c9b25 putty-0.76.tar.gz -sha256 547cd97a8daa87ef71037fab0773bceb54a8abccb2f825a49ef8eba5e045713f putty-0.76.tar.gz -sha512 4576b359593928c6eba923f2d7b66ac0f2cf00e0c217cdbbb124471c3b35feb090e623847bfc507a4ef106cb3067aac47419e241b11dd8bf4ae554061fa93c25 putty-0.76.tar.gz +# Hashes from: http://the.earth.li/~sgtatham/putty/0.79/{sha1,sha256,sha512}sums +sha1 c40c3ce9fd334c40e64c6b33ee7e1096dad52701 putty-0.79.tar.gz +sha256 428cc8666fbb938ebf4ac9276341980dcd70de395b33164496cf7995ef0ef0d8 putty-0.79.tar.gz +sha512 4f10f870b229c89e928921d3b350955ce1c1170a062e7943d9cc8dbd83389d82a9b844623541605f0db5a429d545c2d188bf8e384c6515466fae69b216120983 putty-0.79.tar.gz # Locally calculated -sha256 3f3e870dd3d0867d79370b1d433602c60bb91b59de04e5d8f2a149b788530d53 LICENCE +sha256 7ede37f344ee03436c155a375ecb6cdb42a77105baa6e7804bf43260dc4a0c54 LICENCE diff --git a/package/putty/putty.mk b/package/putty/putty.mk index e57a78be9615..4c9164d05e77 100644 --- a/package/putty/putty.mk +++ b/package/putty/putty.mk @@ -4,18 +4,22 @@ # ################################################################################ -PUTTY_VERSION = 0.76 +PUTTY_VERSION = 0.79 PUTTY_SITE = http://the.earth.li/~sgtatham/putty/$(PUTTY_VERSION) PUTTY_LICENSE = MIT PUTTY_LICENSE_FILES = LICENCE PUTTY_CPE_ID_VENDOR = putty -PUTTY_CONF_OPTS = --disable-gtktest +PUTTY_DEPENDENCIES = host-pkgconf +PUTTY_CONF_OPTS = -DPUTTY_GSSAPI=OFF -ifeq ($(BR2_PACKAGE_LIBGTK2),y) -PUTTY_CONF_OPTS += --with-gtk=2 +ifeq ($(BR2_PACKAGE_LIBGTK3),y) +PUTTY_DEPENDENCIES += libgtk3 +else ifeq ($(BR2_PACKAGE_LIBGTK2),y) PUTTY_DEPENDENCIES += libgtk2 -else -PUTTY_CONF_OPTS += --without-gtk endif -$(eval $(autotools-package)) +ifeq ($(BR2_STATIC_LIBS),y) +PUTTY_CONF_OPTS += -DCMAKE_C_FLAGS="$(TARGET_CFLAGS) -DNO_LIBDL" +endif + +$(eval $(cmake-package)) diff --git a/package/python-aenum/python-aenum.hash b/package/python-aenum/python-aenum.hash index 40c0e55fc529..9c59804d6e04 100644 --- a/package/python-aenum/python-aenum.hash +++ b/package/python-aenum/python-aenum.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/aenum/json -md5 c0b78a74cdfacc0bf0cbb42785afaed8 aenum-3.1.11.tar.gz -sha256 aed2c273547ae72a0d5ee869719c02a643da16bf507c80958faadc7e038e3f73 aenum-3.1.11.tar.gz +md5 f3fa11cda9ddaaed4d3f03b35f3a65ea aenum-3.1.15.tar.gz +sha256 8cbd76cd18c4f870ff39b24284d3ea028fbe8731a58df3aa581e434c575b9559 aenum-3.1.15.tar.gz # Locally computed sha256 checksums sha256 0db837e38002017b352666c83c8d3216ee5b9b2229375eb2cf4487f8c24e1f8c aenum/LICENSE diff --git a/package/python-aenum/python-aenum.mk b/package/python-aenum/python-aenum.mk index 603fc66d0ccf..27f9e5cea6b5 100644 --- a/package/python-aenum/python-aenum.mk +++ b/package/python-aenum/python-aenum.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_AENUM_VERSION = 3.1.11 +PYTHON_AENUM_VERSION = 3.1.15 PYTHON_AENUM_SOURCE = aenum-$(PYTHON_AENUM_VERSION).tar.gz -PYTHON_AENUM_SITE = https://files.pythonhosted.org/packages/63/6c/a71e18de7c651f384b328be6bccadbbd472aca62f547c1a307b9388d03ca +PYTHON_AENUM_SITE = https://files.pythonhosted.org/packages/d0/f8/33e75863394f42e429bb553e05fda7c59763f0fd6848de847a25b3fbccf6 PYTHON_AENUM_SETUP_TYPE = setuptools PYTHON_AENUM_LICENSE = BSD-3-Clause PYTHON_AENUM_LICENSE_FILES = aenum/LICENSE diff --git a/package/python-aexpect/Config.in b/package/python-aexpect/Config.in index cc805da65727..59671621dccc 100644 --- a/package/python-aexpect/Config.in +++ b/package/python-aexpect/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_PYTHON_AEXPECT bool "python-aexpect" - select BR2_PACKAGE_PYTHON_SIX # runtime help Aexpect. diff --git a/package/python-aexpect/python-aexpect.hash b/package/python-aexpect/python-aexpect.hash index efe4f55fb839..ff30c765e391 100644 --- a/package/python-aexpect/python-aexpect.hash +++ b/package/python-aexpect/python-aexpect.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/aexpect/json -md5 d37473ff0024c15938bfe86a543537e6 aexpect-1.6.4.tar.gz -sha256 3998aa84ae54963fd59488f0caa533f6edbb31bc6cb842da09b041cbad56ad88 aexpect-1.6.4.tar.gz +md5 bb05319c277cfe97114780579d251c30 aexpect-1.7.0.tar.gz +sha256 11bfeea78ef6147ac8f6e29c2a720bd332598383d88274cdca5e6413c2070d52 aexpect-1.7.0.tar.gz # Locally computed sha256 checksums sha256 7be26abf35e531a226dc742d2379d42d372cb61f027a6e26477c0e2f1a03bfcb LICENSE diff --git a/package/python-aexpect/python-aexpect.mk b/package/python-aexpect/python-aexpect.mk index 8b5e16513583..1cfcc9ffafcb 100644 --- a/package/python-aexpect/python-aexpect.mk +++ b/package/python-aexpect/python-aexpect.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_AEXPECT_VERSION = 1.6.4 +PYTHON_AEXPECT_VERSION = 1.7.0 PYTHON_AEXPECT_SOURCE = aexpect-$(PYTHON_AEXPECT_VERSION).tar.gz -PYTHON_AEXPECT_SITE = https://files.pythonhosted.org/packages/3b/22/f87ffa70348dde4597d9314995be89c8d4c7728260033b972a8d691e3f7d +PYTHON_AEXPECT_SITE = https://files.pythonhosted.org/packages/dd/32/738b5190adb5ed387d3e755885f646b714fbf9c22adbda7ff988db7ede49 PYTHON_AEXPECT_SETUP_TYPE = setuptools PYTHON_AEXPECT_LICENSE = GPL-2.0+ PYTHON_AEXPECT_LICENSE_FILES = LICENSE diff --git a/package/python-aioconsole/python-aioconsole.hash b/package/python-aioconsole/python-aioconsole.hash index 107910b6be6e..b8237ed76c58 100644 --- a/package/python-aioconsole/python-aioconsole.hash +++ b/package/python-aioconsole/python-aioconsole.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/aioconsole/json -md5 ae7bae13cb8aab6b1a4d2c25284ffcd3 aioconsole-0.5.1.tar.gz -sha256 c8ddd9fd21db71ea51fb9b0d20d21d11c409c92988edf07c935d705fa60e026b aioconsole-0.5.1.tar.gz +md5 0f7e4db85113d1ffdc5f0fa1dc0a37de aioconsole-0.6.2.tar.gz +sha256 bac11286f1062613d2523ceee1ba81c676cd269812b865b66b907448a7b5f63e aioconsole-0.6.2.tar.gz # Locally computed sha256 checksums -sha256 fe3eea6c599e23a00c08c5f5cb2320c30adc8f8687db5fcec9b79a662c53ff6b LICENSE +sha256 e1c0ad728983d8a57335e52cf1064f1affd1d454173d8cebd3ed8b4a72b48704 LICENSE diff --git a/package/python-aioconsole/python-aioconsole.mk b/package/python-aioconsole/python-aioconsole.mk index dc0eb36158bd..602564c2905f 100644 --- a/package/python-aioconsole/python-aioconsole.mk +++ b/package/python-aioconsole/python-aioconsole.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_AIOCONSOLE_VERSION = 0.5.1 +PYTHON_AIOCONSOLE_VERSION = 0.6.2 PYTHON_AIOCONSOLE_SOURCE = aioconsole-$(PYTHON_AIOCONSOLE_VERSION).tar.gz -PYTHON_AIOCONSOLE_SITE = https://files.pythonhosted.org/packages/71/74/cd64dbc518f71486b235f0e1538ea4b7cbf4375a8bdc6f96c9c9595291ab +PYTHON_AIOCONSOLE_SITE = https://files.pythonhosted.org/packages/5f/14/e5c634fad6a95ffd602fbbd1aa107f05a8ffb79d33ec0d0477f3b137f8a9 PYTHON_AIOCONSOLE_SETUP_TYPE = setuptools PYTHON_AIOCONSOLE_LICENSE = GPL-3.0 PYTHON_AIOCONSOLE_LICENSE_FILES = LICENSE diff --git a/package/python-aiodns/python-aiodns.hash b/package/python-aiodns/python-aiodns.hash index 2cdedc6f95fb..bf65691b895a 100644 --- a/package/python-aiodns/python-aiodns.hash +++ b/package/python-aiodns/python-aiodns.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/aiodns/json -md5 181e11935c78965de2b2b7b0e5efba8d aiodns-3.0.0.tar.gz -sha256 946bdfabe743fceeeb093c8a010f5d1645f708a241be849e17edfb0e49e08cd6 aiodns-3.0.0.tar.gz +md5 13fdfc38f30c9498e3e23c6f372e40ba aiodns-3.1.1.tar.gz +sha256 1073eac48185f7a4150cad7f96a5192d6911f12b4fb894de80a088508c9b3a99 aiodns-3.1.1.tar.gz # Locally computed sha256 checksums sha256 eb0455d35129425ed399883cd710923de3e246a510e2eb84d9f00032d0bbec97 LICENSE diff --git a/package/python-aiodns/python-aiodns.mk b/package/python-aiodns/python-aiodns.mk index 2318dcab3a5d..f5cbb653345a 100644 --- a/package/python-aiodns/python-aiodns.mk +++ b/package/python-aiodns/python-aiodns.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_AIODNS_VERSION = 3.0.0 +PYTHON_AIODNS_VERSION = 3.1.1 PYTHON_AIODNS_SOURCE = aiodns-$(PYTHON_AIODNS_VERSION).tar.gz -PYTHON_AIODNS_SITE = https://files.pythonhosted.org/packages/27/79/df72e25df0fdd9bf5a5ab068539731d27c5f2ae5654621ae0c92ceca94cf +PYTHON_AIODNS_SITE = https://files.pythonhosted.org/packages/fa/10/4de99e6e67703d8f6b10ea92a4d2a6c5b96a9c0708b75389a00203387925 PYTHON_AIODNS_SETUP_TYPE = setuptools PYTHON_AIODNS_LICENSE = MIT PYTHON_AIODNS_LICENSE_FILES = LICENSE diff --git a/package/python-aiofiles/python-aiofiles.hash b/package/python-aiofiles/python-aiofiles.hash index d1594c3989ce..3dc9281de77f 100644 --- a/package/python-aiofiles/python-aiofiles.hash +++ b/package/python-aiofiles/python-aiofiles.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/aiofiles/json -md5 b22db90039c881f6aa64431c6b23f30f aiofiles-22.1.0.tar.gz -sha256 9107f1ca0b2a5553987a94a3c9959fe5b491fdf731389aa5b7b1bd0733e32de6 aiofiles-22.1.0.tar.gz +md5 ab5dfab3180f56a21b46e1e90b16c6e6 aiofiles-23.2.1.tar.gz +sha256 84ec2218d8419404abcb9f0c02df3f34c6e0a68ed41072acfb1cef5cbc29051a aiofiles-23.2.1.tar.gz # Locally computed sha256 checksums sha256 cb5e8e7e5f4a3988e1063c142c60dc2df75605f4c46515e776e3aca6df976e14 LICENSE diff --git a/package/python-aiofiles/python-aiofiles.mk b/package/python-aiofiles/python-aiofiles.mk index b65d2cfa82b7..582f7908cdde 100644 --- a/package/python-aiofiles/python-aiofiles.mk +++ b/package/python-aiofiles/python-aiofiles.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_AIOFILES_VERSION = 22.1.0 +PYTHON_AIOFILES_VERSION = 23.2.1 PYTHON_AIOFILES_SOURCE = aiofiles-$(PYTHON_AIOFILES_VERSION).tar.gz -PYTHON_AIOFILES_SITE = https://files.pythonhosted.org/packages/86/26/6e5060a159a6131c430e8a01ec8327405a19a449a506224b394e36f2ebc9 +PYTHON_AIOFILES_SITE = https://files.pythonhosted.org/packages/af/41/cfed10bc64d774f497a86e5ede9248e1d062db675504b41c320954d99641 PYTHON_AIOFILES_SETUP_TYPE = setuptools PYTHON_AIOFILES_LICENSE = Apache-2.0 PYTHON_AIOFILES_LICENSE_FILES = LICENSE diff --git a/package/python-aiohttp-jinja2/python-aiohttp-jinja2.hash b/package/python-aiohttp-jinja2/python-aiohttp-jinja2.hash index fbf244e47030..0a7b7cc0581e 100644 --- a/package/python-aiohttp-jinja2/python-aiohttp-jinja2.hash +++ b/package/python-aiohttp-jinja2/python-aiohttp-jinja2.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/aiohttp-jinja2/json -md5 50f74689fd60a5bc0b0a74545277e9bc aiohttp-jinja2-1.5.tar.gz -sha256 7c3ba5eac060b691f4e50534af2d79fca2a75712ebd2b25e6fcb1295859f910b aiohttp-jinja2-1.5.tar.gz +md5 8f72451a7da006b4b91ef18ec6f75885 aiohttp-jinja2-1.5.1.tar.gz +sha256 8d149b2a57d91f794b33a394ea5bc66b567f38c74a5a6a9477afc2450f105c01 aiohttp-jinja2-1.5.1.tar.gz # Locally computed sha256 checksums sha256 d9d867affaeac220a60381cc544681dcd37c668ed6ea5ddbf9948617f828889a LICENSE diff --git a/package/python-aiohttp-jinja2/python-aiohttp-jinja2.mk b/package/python-aiohttp-jinja2/python-aiohttp-jinja2.mk index 371b4f0b3ea9..17f9a4018a84 100644 --- a/package/python-aiohttp-jinja2/python-aiohttp-jinja2.mk +++ b/package/python-aiohttp-jinja2/python-aiohttp-jinja2.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_AIOHTTP_JINJA2_VERSION = 1.5 +PYTHON_AIOHTTP_JINJA2_VERSION = 1.5.1 PYTHON_AIOHTTP_JINJA2_SOURCE = aiohttp-jinja2-$(PYTHON_AIOHTTP_JINJA2_VERSION).tar.gz -PYTHON_AIOHTTP_JINJA2_SITE = https://files.pythonhosted.org/packages/15/d7/8bdbdb65e2926de332d3c430839d655db61d30a7b5a4a9b2edafbeb3aa20 +PYTHON_AIOHTTP_JINJA2_SITE = https://files.pythonhosted.org/packages/4e/4c/fadbfcc1269fa79e69fcdb29027840ab022a91471a5aeaa8fd8b27cc5406 PYTHON_AIOHTTP_JINJA2_SETUP_TYPE = setuptools PYTHON_AIOHTTP_JINJA2_LICENSE = Apache-2.0 PYTHON_AIOHTTP_JINJA2_LICENSE_FILES = LICENSE diff --git a/package/python-aiohttp/python-aiohttp.hash b/package/python-aiohttp/python-aiohttp.hash index e59b6969e63c..35c899cb0fb4 100644 --- a/package/python-aiohttp/python-aiohttp.hash +++ b/package/python-aiohttp/python-aiohttp.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/aiohttp/json -md5 642653db642be1508e50fcdeafe0f928 aiohttp-3.8.3.tar.gz -sha256 3828fb41b7203176b82fe5d699e0d845435f2374750a44b480ea6b930f6be269 aiohttp-3.8.3.tar.gz +md5 bdf57b82c0d1804f458e10320bb0dcd5 aiohttp-3.8.6.tar.gz +sha256 b0cf2a4501bff9330a8a5248b4ce951851e415bdcce9dc158e76cfd55e15085c aiohttp-3.8.6.tar.gz # Locally computed sha256 checksums sha256 9f80d0db7d755a941db4572172c270ecbd8f082ba215ddd095985942ed94a9eb LICENSE.txt diff --git a/package/python-aiohttp/python-aiohttp.mk b/package/python-aiohttp/python-aiohttp.mk index 8b0b15f13b17..e814fc9224e9 100644 --- a/package/python-aiohttp/python-aiohttp.mk +++ b/package/python-aiohttp/python-aiohttp.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_AIOHTTP_VERSION = 3.8.3 +PYTHON_AIOHTTP_VERSION = 3.8.6 PYTHON_AIOHTTP_SOURCE = aiohttp-$(PYTHON_AIOHTTP_VERSION).tar.gz -PYTHON_AIOHTTP_SITE = https://files.pythonhosted.org/packages/ff/4f/62d9859b7d4e6dc32feda67815c5f5ab4421e6909e48cbc970b6a40d60b7 +PYTHON_AIOHTTP_SITE = https://files.pythonhosted.org/packages/fd/01/f180d31923751fd20185c96938994823f00918ee5ac7b058edc005382406 PYTHON_AIOHTTP_SETUP_TYPE = setuptools PYTHON_AIOHTTP_LICENSE = Apache-2.0 PYTHON_AIOHTTP_LICENSE_FILES = LICENSE.txt diff --git a/package/python-aiojobs/python-aiojobs.hash b/package/python-aiojobs/python-aiojobs.hash index 511953713b99..8920e3aecd70 100644 --- a/package/python-aiojobs/python-aiojobs.hash +++ b/package/python-aiojobs/python-aiojobs.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/aiojobs/json -md5 18a5b38cc13b2d59a91fdfec64588b4c aiojobs-1.1.0.tar.gz -sha256 f0c43dfc4de359052a67df309b593732c32028deef1bb787c7a363da29accde3 aiojobs-1.1.0.tar.gz +md5 529a4367f9bc63a482a2962ba54bfd51 aiojobs-1.2.0.tar.gz +sha256 a4bcfb6a2d21ad08dea904e9f73040b37657d0c33cc8d77e683e47de5fcf0b12 aiojobs-1.2.0.tar.gz # Locally computed sha256 checksums sha256 1803dc89455114eefad3b827543343edc2452432fdac29b5edc66c8b66d4cbf3 LICENSE diff --git a/package/python-aiojobs/python-aiojobs.mk b/package/python-aiojobs/python-aiojobs.mk index 075d807d8b15..be0acd3fbcb7 100644 --- a/package/python-aiojobs/python-aiojobs.mk +++ b/package/python-aiojobs/python-aiojobs.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_AIOJOBS_VERSION = 1.1.0 +PYTHON_AIOJOBS_VERSION = 1.2.0 PYTHON_AIOJOBS_SOURCE = aiojobs-$(PYTHON_AIOJOBS_VERSION).tar.gz -PYTHON_AIOJOBS_SITE = https://files.pythonhosted.org/packages/99/75/b6d3678d804fffda81ebbac6214c35a4417d5ddbd70ffe7958ad951e64d2 +PYTHON_AIOJOBS_SITE = https://files.pythonhosted.org/packages/c4/e0/4685393810a267c09edef41ddafd0dd28108d95e1b91019b1843fc6e5b83 PYTHON_AIOJOBS_SETUP_TYPE = setuptools PYTHON_AIOJOBS_LICENSE = Apache-2.0 PYTHON_AIOJOBS_LICENSE_FILES = LICENSE diff --git a/package/python-aiologstash/python-aiologstash.mk b/package/python-aiologstash/python-aiologstash.mk index be1c40b71412..de0ed820a0e5 100644 --- a/package/python-aiologstash/python-aiologstash.mk +++ b/package/python-aiologstash/python-aiologstash.mk @@ -7,7 +7,7 @@ PYTHON_AIOLOGSTASH_VERSION = 2.0.0 PYTHON_AIOLOGSTASH_SOURCE = aiologstash-$(PYTHON_AIOLOGSTASH_VERSION).tar.gz PYTHON_AIOLOGSTASH_SITE = https://files.pythonhosted.org/packages/1c/dc/382861d5d25ccc976d02118922598fc4547f74f3287793e270ed614d8176 -PYTHON_AIOLOGSTASH_SETUP_TYPE = distutils +PYTHON_AIOLOGSTASH_SETUP_TYPE = setuptools PYTHON_AIOLOGSTASH_LICENSE = MIT PYTHON_AIOLOGSTASH_LICENSE_FILES = LICENSE diff --git a/package/python-aiomonitor/python-aiomonitor.hash b/package/python-aiomonitor/python-aiomonitor.hash index 652702c479b9..b67d68e478e7 100644 --- a/package/python-aiomonitor/python-aiomonitor.hash +++ b/package/python-aiomonitor/python-aiomonitor.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/aiomonitor/json -md5 5f184e4b97ea161fc2d690aef604f997 aiomonitor-0.4.5.tar.gz -sha256 6232c1ab14bf06cd7217845801c27340032f74e283bdaf32d01cdd3b7c673d0e aiomonitor-0.4.5.tar.gz +md5 0f786c8278a68e7df8b24317e7d33271 aiomonitor-0.6.0.tar.gz +sha256 31d30d1e9c0a23926edba2a2242b8572c6e8639af9aae2692dee863064d27e48 aiomonitor-0.6.0.tar.gz # Locally computed sha256 checksums -sha256 9b42fe3a288996988c552e387e7877be7525a1649e62086aedd6b32d3cb56365 LICENSE +sha256 98397c300949e0cc1ddc68b0e48e67b10f2d0a4ffada4903d891a1315fe04156 LICENSE diff --git a/package/python-aiomonitor/python-aiomonitor.mk b/package/python-aiomonitor/python-aiomonitor.mk index a8860097d5a1..1a3b999b906c 100644 --- a/package/python-aiomonitor/python-aiomonitor.mk +++ b/package/python-aiomonitor/python-aiomonitor.mk @@ -4,11 +4,12 @@ # ################################################################################ -PYTHON_AIOMONITOR_VERSION = 0.4.5 +PYTHON_AIOMONITOR_VERSION = 0.6.0 PYTHON_AIOMONITOR_SOURCE = aiomonitor-$(PYTHON_AIOMONITOR_VERSION).tar.gz -PYTHON_AIOMONITOR_SITE = https://files.pythonhosted.org/packages/98/76/b62e9fbe267287527fb6f4b6774394d4f00650195774173bb0055a99ab3d +PYTHON_AIOMONITOR_SITE = https://files.pythonhosted.org/packages/13/ab/36fbaf36c1c7cb4d5a81b945faf69e95a48dd38cbc9b57915d41d9445f55 PYTHON_AIOMONITOR_SETUP_TYPE = setuptools PYTHON_AIOMONITOR_LICENSE = Apache-2.0 PYTHON_AIOMONITOR_LICENSE_FILES = LICENSE +PYTHON_AIOMONITOR_DEPENDENCIES = host-python-setuptools-scm $(eval $(python-package)) diff --git a/package/python-alembic/python-alembic.hash b/package/python-alembic/python-alembic.hash index f94f5ab10a92..df1f4fba0257 100644 --- a/package/python-alembic/python-alembic.hash +++ b/package/python-alembic/python-alembic.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/alembic/json -md5 999392ffc900da18afbf10d2ac31bdc6 alembic-1.9.1.tar.gz -sha256 f9f76e41061f5ebe27d4fe92600df9dd612521a7683f904dab328ba02cffa5a2 alembic-1.9.1.tar.gz +md5 642d563af853b317f018026f3edd5dba alembic-1.12.1.tar.gz +sha256 bca5877e9678b454706347bc10b97cb7d67f300320fa5c3a94423e8266e2823f alembic-1.12.1.tar.gz # Locally computed sha256 checksums -sha256 f0e3f7a5080879ccae798882d9bee3d48fe335d0bad84ca8eec86fa594375ea0 LICENSE +sha256 b285268a86f4416eaf4d05b2ae3880c156f7c59a8f935a402bc056eafb33af08 LICENSE diff --git a/package/python-alembic/python-alembic.mk b/package/python-alembic/python-alembic.mk index 64ce85bead41..fd41e0df6660 100644 --- a/package/python-alembic/python-alembic.mk +++ b/package/python-alembic/python-alembic.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_ALEMBIC_VERSION = 1.9.1 +PYTHON_ALEMBIC_VERSION = 1.12.1 PYTHON_ALEMBIC_SOURCE = alembic-$(PYTHON_ALEMBIC_VERSION).tar.gz -PYTHON_ALEMBIC_SITE = https://files.pythonhosted.org/packages/81/87/5c531d2923c61e7ae68b23c8660df289ae4241a0d38f3fbcbd8dba64ca6b +PYTHON_ALEMBIC_SITE = https://files.pythonhosted.org/packages/44/b4/253fe31261d9f5d603d89bd9e6fba1625494a6d761d319902dfe4db59016 PYTHON_ALEMBIC_SETUP_TYPE = setuptools PYTHON_ALEMBIC_LICENSE = MIT PYTHON_ALEMBIC_LICENSE_FILES = LICENSE diff --git a/package/python-alsaaudio/python-alsaaudio.hash b/package/python-alsaaudio/python-alsaaudio.hash index af3d0faad246..ab8b868b970d 100644 --- a/package/python-alsaaudio/python-alsaaudio.hash +++ b/package/python-alsaaudio/python-alsaaudio.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/pyalsaaudio/json -md5 5408be7d7017ae9272706acb4a543c2f pyalsaaudio-0.9.2.tar.gz -sha256 e74a66d6c7a6bcceb990df66d3ebc0fe382fc9d765f35f050f9d98c695304b36 pyalsaaudio-0.9.2.tar.gz +md5 720b2e1a47a5fdb587ea1b4eabbd23e6 pyalsaaudio-0.10.0.tar.gz +sha256 e21175500a2bd310ae3867e7991639defc1e2a5c92cf1b9f7083296b346738ab pyalsaaudio-0.10.0.tar.gz # Locally computed sha256 checksums sha256 ef6ba930f96986d78082e67c817ac617b9e833d60d5a0460f24c9c674a010935 LICENSE diff --git a/package/python-alsaaudio/python-alsaaudio.mk b/package/python-alsaaudio/python-alsaaudio.mk index 205bfdb86ca8..0692f4a8e9b3 100644 --- a/package/python-alsaaudio/python-alsaaudio.mk +++ b/package/python-alsaaudio/python-alsaaudio.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_ALSAAUDIO_VERSION = 0.9.2 +PYTHON_ALSAAUDIO_VERSION = 0.10.0 PYTHON_ALSAAUDIO_SOURCE = pyalsaaudio-$(PYTHON_ALSAAUDIO_VERSION).tar.gz -PYTHON_ALSAAUDIO_SITE = https://files.pythonhosted.org/packages/a9/bd/24f576c07953671edfeba2545c3c92c46e97384f622957ecf95967c2b456 +PYTHON_ALSAAUDIO_SITE = https://files.pythonhosted.org/packages/e5/f0/411140b1c2d8eea8531233f39103e7ebda560030493e298be6439ce36936 PYTHON_ALSAAUDIO_SETUP_TYPE = setuptools PYTHON_ALSAAUDIO_LICENSE = Python-2.0 PYTHON_ALSAAUDIO_LICENSE_FILES = LICENSE diff --git a/package/python-apispec/python-apispec.hash b/package/python-apispec/python-apispec.hash index f2861f920a63..f8a2350eaf30 100644 --- a/package/python-apispec/python-apispec.hash +++ b/package/python-apispec/python-apispec.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/apispec/json -md5 b4e90006a26215e2e0a6fe2629d12c10 apispec-6.0.2.tar.gz -sha256 e76d80b739edef4be213092a6384ad7fd933ba7d64f6d5a0aff8d4da1bef7887 apispec-6.0.2.tar.gz +md5 d6cc7586754cf1c653ffb7ee83955d3a apispec-6.3.0.tar.gz +sha256 6cb08d92ce73ff0b3bf46cb2ea5c00d57289b0f279fb0256a3df468182ba5344 apispec-6.3.0.tar.gz # Locally computed sha256 checksums sha256 a452afcef750956a8396f7e7a6f913a117d28ef99a13170c29dc74c3b7a95f29 LICENSE diff --git a/package/python-apispec/python-apispec.mk b/package/python-apispec/python-apispec.mk index 4674ce0c3dac..744fb7681057 100644 --- a/package/python-apispec/python-apispec.mk +++ b/package/python-apispec/python-apispec.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_APISPEC_VERSION = 6.0.2 +PYTHON_APISPEC_VERSION = 6.3.0 PYTHON_APISPEC_SOURCE = apispec-$(PYTHON_APISPEC_VERSION).tar.gz -PYTHON_APISPEC_SITE = https://files.pythonhosted.org/packages/a7/2a/b42c17e0d653341b8f5916999892cd2d8489de127dac6118ae44531674f5 +PYTHON_APISPEC_SITE = https://files.pythonhosted.org/packages/3f/1e/207c3e61c805eef214d7e5c58106312f9af4733b07f470224e4e309dc65e PYTHON_APISPEC_SETUP_TYPE = setuptools PYTHON_APISPEC_LICENSE = MIT PYTHON_APISPEC_LICENSE_FILES = LICENSE diff --git a/package/python-argh/python-argh.hash b/package/python-argh/python-argh.hash index 15f72eb015c9..8bfb45d1c3c2 100644 --- a/package/python-argh/python-argh.hash +++ b/package/python-argh/python-argh.hash @@ -1,5 +1,6 @@ # md5 from https://pypi.python.org/pypi/argh/json -md5 edda25f3f0164a963dd89c0e3c619973 argh-0.26.2.tar.gz +md5 7001dd9ff619cf1422ddf8bf813bd08a argh-0.30.4.tar.gz +sha256 9fca8e69c4dad4f8d2a7bdfbdd80b0754462b53510a03e1b5cf2b43a87e6e960 argh-0.30.4.tar.gz # Locally computed -sha256 e9535b8c84dc9571a48999094fda7f33e63c3f1b74f3e5f3ac0105a58405bb65 argh-0.26.2.tar.gz -sha256 9c318783389a2e78735dc3d633e745e5648b826744521857045e84ed2e79ce2e README.rst +sha256 2594f46b9b23a5fddeca090faeb270c7ceee8116675fe35082be859aa7466e89 COPYING +sha256 e3a994d82e644b03a792a930f574002658412f62407f5fee083f2555c5f23118 COPYING.LESSER diff --git a/package/python-argh/python-argh.mk b/package/python-argh/python-argh.mk index ac514174c8c4..ccb9f61d4840 100644 --- a/package/python-argh/python-argh.mk +++ b/package/python-argh/python-argh.mk @@ -4,11 +4,11 @@ # ################################################################################ -PYTHON_ARGH_VERSION = 0.26.2 +PYTHON_ARGH_VERSION = 0.30.4 PYTHON_ARGH_SOURCE = argh-$(PYTHON_ARGH_VERSION).tar.gz -PYTHON_ARGH_SITE = https://pypi.python.org/packages/e3/75/1183b5d1663a66aebb2c184e0398724b624cecd4f4b679cb6e25de97ed15 -PYTHON_ARGH_SETUP_TYPE = setuptools +PYTHON_ARGH_SITE = https://files.pythonhosted.org/packages/37/3a/175f4a2c47e8c20e59cf25fe69546f76cf1196251a377b182e8f4542b4c4 +PYTHON_ARGH_SETUP_TYPE = flit PYTHON_ARGH_LICENSE = LGPL-3.0+ -PYTHON_ARGH_LICENSE_FILES = README.rst +PYTHON_ARGH_LICENSE_FILES = COPYING COPYING.LESSER $(eval $(python-package)) diff --git a/package/python-argon2-cffi/python-argon2-cffi.hash b/package/python-argon2-cffi/python-argon2-cffi.hash index 09da5855a3f7..e11195e1e2ba 100644 --- a/package/python-argon2-cffi/python-argon2-cffi.hash +++ b/package/python-argon2-cffi/python-argon2-cffi.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/argon2-cffi/json -md5 b7843e8690c790f8e743d37bb75c25a8 argon2-cffi-21.3.0.tar.gz -sha256 d384164d944190a7dd7ef22c6aa3ff197da12962bd04b17f64d4e93d934dba5b argon2-cffi-21.3.0.tar.gz +md5 7371c126f21a895b33c4fe7e00ac6fc1 argon2_cffi-23.1.0.tar.gz +sha256 879c3e79a2729ce768ebb7d36d4609e3a78a4ca2ec3a9f12286ca057e3d0db08 argon2_cffi-23.1.0.tar.gz # Locally computed sha256 checksums -sha256 bf659a28b49240602f56bbdf490cbe2ec509b15b98f99d7b19a52c740e327863 LICENSE +sha256 b6944d386e87ccf49d9632da083685a4b7624733e686a7fe283dd2d428341d77 LICENSE diff --git a/package/python-argon2-cffi/python-argon2-cffi.mk b/package/python-argon2-cffi/python-argon2-cffi.mk index 0fb3e50ff357..238271f5f78f 100644 --- a/package/python-argon2-cffi/python-argon2-cffi.mk +++ b/package/python-argon2-cffi/python-argon2-cffi.mk @@ -4,11 +4,15 @@ # ################################################################################ -PYTHON_ARGON2_CFFI_VERSION = 21.3.0 -PYTHON_ARGON2_CFFI_SOURCE = argon2-cffi-$(PYTHON_ARGON2_CFFI_VERSION).tar.gz -PYTHON_ARGON2_CFFI_SITE = https://files.pythonhosted.org/packages/3f/18/20bb5b6bf55e55d14558b57afc3d4476349ab90e0c43e60f27a7c2187289 -PYTHON_ARGON2_CFFI_SETUP_TYPE = flit +PYTHON_ARGON2_CFFI_VERSION = 23.1.0 +PYTHON_ARGON2_CFFI_SOURCE = argon2_cffi-$(PYTHON_ARGON2_CFFI_VERSION).tar.gz +PYTHON_ARGON2_CFFI_SITE = https://files.pythonhosted.org/packages/31/fa/57ec2c6d16ecd2ba0cf15f3c7d1c3c2e7b5fcb83555ff56d7ab10888ec8f +PYTHON_ARGON2_CFFI_SETUP_TYPE = pep517 PYTHON_ARGON2_CFFI_LICENSE = MIT PYTHON_ARGON2_CFFI_LICENSE_FILES = LICENSE +PYTHON_ARGON2_CFFI_DEPENDENCIES = \ + host-python-hatchling \ + host-python-hatch-fancy-pypi-readme \ + host-python-hatch-vcs $(eval $(python-package)) diff --git a/package/python-arrow/Config.in b/package/python-arrow/Config.in index 244956879cfe..4a43ef98a745 100644 --- a/package/python-arrow/Config.in +++ b/package/python-arrow/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_PYTHON_ARROW bool "python-arrow" select BR2_PACKAGE_PYTHON_DATEUTIL # runtime + select BR2_PACKAGE_PYTHON_TYPES_PYTHON_DATEUTIL # runtime help Better dates and times for Python. diff --git a/package/python-arrow/python-arrow.hash b/package/python-arrow/python-arrow.hash index 30fb88e8c044..6120069abf64 100644 --- a/package/python-arrow/python-arrow.hash +++ b/package/python-arrow/python-arrow.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/arrow/json -md5 a964a7574e486b0642f3fbc02ef22773 arrow-1.2.3.tar.gz -sha256 3934b30ca1b9f292376d9db15b19446088d12ec58629bc3f0da28fd55fb633a1 arrow-1.2.3.tar.gz +md5 f03ecc3edbe2db99f366142f6e0f6d0b arrow-1.3.0.tar.gz +sha256 d4540617648cb5f895730f1ad8c82a65f2dad0166f57b75f3ca54759c4d67a85 arrow-1.3.0.tar.gz # Locally computed sha256 checksums -sha256 40d6e1255d7151f5f041a514725d3c94ffa8c1881e5a0c29b6bea93f03e2e3bb LICENSE +sha256 b481f87296cb0abdb13fd8cbb94b14c328be880ec9e68547a61b84dacffd067a LICENSE diff --git a/package/python-arrow/python-arrow.mk b/package/python-arrow/python-arrow.mk index 1e34ef09c81c..793cc2640fe4 100644 --- a/package/python-arrow/python-arrow.mk +++ b/package/python-arrow/python-arrow.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_ARROW_VERSION = 1.2.3 +PYTHON_ARROW_VERSION = 1.3.0 PYTHON_ARROW_SOURCE = arrow-$(PYTHON_ARROW_VERSION).tar.gz -PYTHON_ARROW_SITE = https://files.pythonhosted.org/packages/7f/c0/c601ea7811f422700ef809f167683899cdfddec5aa3f83597edf97349962 +PYTHON_ARROW_SITE = https://files.pythonhosted.org/packages/2e/00/0f6e8fcdb23ea632c866620cc872729ff43ed91d284c866b515c6342b173 PYTHON_ARROW_SETUP_TYPE = setuptools PYTHON_ARROW_LICENSE = Apache-2.0 PYTHON_ARROW_LICENSE_FILES = LICENSE diff --git a/package/python-asgiref/python-asgiref.hash b/package/python-asgiref/python-asgiref.hash index 26d8e78e471a..7f3bca57c0c5 100644 --- a/package/python-asgiref/python-asgiref.hash +++ b/package/python-asgiref/python-asgiref.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/asgiref/json -md5 562ecd896dcbf5576db8c29cb1881ca4 asgiref-3.6.0.tar.gz -sha256 9567dfe7bd8d3c8c892227827c41cce860b368104c3431da67a0c5a65a949506 asgiref-3.6.0.tar.gz +md5 7cd61836ec3c329f415309f88e92e0e3 asgiref-3.7.2.tar.gz +sha256 9e0ce3aa93a819ba5b45120216b23878cf6e8525eb3848653452b4192b92afed asgiref-3.7.2.tar.gz # Locally computed sha256 checksums sha256 b846415d1b514e9c1dff14a22deb906d794bc546ca6129f950a18cd091e2a669 LICENSE diff --git a/package/python-asgiref/python-asgiref.mk b/package/python-asgiref/python-asgiref.mk index bfd90f10e8d4..abd89624767f 100644 --- a/package/python-asgiref/python-asgiref.mk +++ b/package/python-asgiref/python-asgiref.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_ASGIREF_VERSION = 3.6.0 +PYTHON_ASGIREF_VERSION = 3.7.2 PYTHON_ASGIREF_SOURCE = asgiref-$(PYTHON_ASGIREF_VERSION).tar.gz -PYTHON_ASGIREF_SITE = https://files.pythonhosted.org/packages/78/2d/797c0537426266d6c9377a2ed6a4ac61e50c2d5b1ab4da101a4b9bfe26e2 +PYTHON_ASGIREF_SITE = https://files.pythonhosted.org/packages/12/19/64e38c1c2cbf0da9635b7082bbdf0e89052e93329279f59759c24a10cc96 PYTHON_ASGIREF_SETUP_TYPE = setuptools PYTHON_ASGIREF_LICENSE = BSD-3-Clause PYTHON_ASGIREF_LICENSE_FILES = LICENSE diff --git a/package/python-asttokens/Config.in b/package/python-asttokens/Config.in new file mode 100644 index 000000000000..2732b8124bce --- /dev/null +++ b/package/python-asttokens/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_ASTTOKENS + bool "python-asttokens" + select BR2_PACKAGE_PYTHON_SIX # runtime + help + Annotate AST trees with source code positions. + + https://github.com/gristlabs/asttokens diff --git a/package/python-asttokens/python-asttokens.hash b/package/python-asttokens/python-asttokens.hash new file mode 100644 index 000000000000..9042c3002d0e --- /dev/null +++ b/package/python-asttokens/python-asttokens.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/asttokens/json +md5 c353679585a40f43c24ca60fca33bbf6 asttokens-2.4.1.tar.gz +sha256 b03869718ba9a6eb027e134bfdf69f38a236d681c83c160d510768af11254ba0 asttokens-2.4.1.tar.gz +# Locally computed sha256 checksums +sha256 b40930bbcf80744c86c46a12bc9da056641d722716c378f5659b9e555ef833e1 LICENSE diff --git a/package/python-asttokens/python-asttokens.mk b/package/python-asttokens/python-asttokens.mk new file mode 100644 index 000000000000..4806d179150d --- /dev/null +++ b/package/python-asttokens/python-asttokens.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# python-asttokens +# +################################################################################ + +PYTHON_ASTTOKENS_VERSION = 2.4.1 +PYTHON_ASTTOKENS_SOURCE = asttokens-$(PYTHON_ASTTOKENS_VERSION).tar.gz +PYTHON_ASTTOKENS_SITE = https://files.pythonhosted.org/packages/45/1d/f03bcb60c4a3212e15f99a56085d93093a497718adf828d050b9d675da81 +PYTHON_ASTTOKENS_SETUP_TYPE = setuptools +PYTHON_ASTTOKENS_LICENSE = Apache-2.0 +PYTHON_ASTTOKENS_LICENSE_FILES = LICENSE + +PYTHON_ASTTOKENS_DEPENDENCIES = host-python-setuptools-scm + +$(eval $(python-package)) diff --git a/package/python-async-lru/python-async-lru.hash b/package/python-async-lru/python-async-lru.hash index 231af32baa0c..0a7cd03be933 100644 --- a/package/python-async-lru/python-async-lru.hash +++ b/package/python-async-lru/python-async-lru.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/async-lru/json -md5 4dfcb328f2e9a8fdc9cf78dfdb6d3eef async-lru-1.0.3.tar.gz -sha256 c2cb9b2915eb14e6cf3e717154b40f715bf90e596d73623677affd0d1fbcd32a async-lru-1.0.3.tar.gz +md5 cd57e4d7f51bcbe2b940c523a5851b40 async-lru-2.0.4.tar.gz +sha256 b8a59a5df60805ff63220b2a0c5b5393da5521b113cd5465a44eb037d81a5627 async-lru-2.0.4.tar.gz # Locally computed sha256 checksums sha256 ea65975679bc2093be925d520358e41096bd96fddedee3e929160a5faadcf573 LICENSE diff --git a/package/python-async-lru/python-async-lru.mk b/package/python-async-lru/python-async-lru.mk index 872540b713ce..16c6a32ffdc1 100644 --- a/package/python-async-lru/python-async-lru.mk +++ b/package/python-async-lru/python-async-lru.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_ASYNC_LRU_VERSION = 1.0.3 +PYTHON_ASYNC_LRU_VERSION = 2.0.4 PYTHON_ASYNC_LRU_SOURCE = async-lru-$(PYTHON_ASYNC_LRU_VERSION).tar.gz -PYTHON_ASYNC_LRU_SITE = https://files.pythonhosted.org/packages/fe/67/4cb179c14ffa8b4a35fbe02255744bee4cbbaf61b35612c96ba4a618e4d5 +PYTHON_ASYNC_LRU_SITE = https://files.pythonhosted.org/packages/80/e2/2b4651eff771f6fd900d233e175ddc5e2be502c7eb62c0c42f975c6d36cd PYTHON_ASYNC_LRU_SETUP_TYPE = setuptools PYTHON_ASYNC_LRU_LICENSE = MIT PYTHON_ASYNC_LRU_LICENSE_FILES = LICENSE diff --git a/package/python-async-timeout/python-async-timeout.hash b/package/python-async-timeout/python-async-timeout.hash index 0ecf1ef5ae39..d46489396f03 100644 --- a/package/python-async-timeout/python-async-timeout.hash +++ b/package/python-async-timeout/python-async-timeout.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/async-timeout/json -md5 10571272b2e0fab839ec23f8293bf482 async-timeout-4.0.2.tar.gz -sha256 2163e1640ddb52b7a8c80d0a67a08587e5d245cc9c553a74a847056bc2976b15 async-timeout-4.0.2.tar.gz +md5 9bf7b764a7310cb063c1c261c21342e4 async-timeout-4.0.3.tar.gz +sha256 4640d96be84d82d02ed59ea2b7105a0f7b33abe8703703cd0ab0bf87c427522f async-timeout-4.0.3.tar.gz # Locally computed sha256 checksums sha256 e18d7bb8f513e2c46bb585c94b585bd30720dd3ccb21ddb0786f72d16658f92c LICENSE diff --git a/package/python-async-timeout/python-async-timeout.mk b/package/python-async-timeout/python-async-timeout.mk index b3c5f79e45ff..9760b8ae25e8 100644 --- a/package/python-async-timeout/python-async-timeout.mk +++ b/package/python-async-timeout/python-async-timeout.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_ASYNC_TIMEOUT_VERSION = 4.0.2 +PYTHON_ASYNC_TIMEOUT_VERSION = 4.0.3 PYTHON_ASYNC_TIMEOUT_SOURCE = async-timeout-$(PYTHON_ASYNC_TIMEOUT_VERSION).tar.gz -PYTHON_ASYNC_TIMEOUT_SITE = https://files.pythonhosted.org/packages/54/6e/9678f7b2993537452710ffb1750c62d2c26df438aa621ad5fa9d1507a43a +PYTHON_ASYNC_TIMEOUT_SITE = https://files.pythonhosted.org/packages/87/d6/21b30a550dafea84b1b8eee21b5e23fa16d010ae006011221f33dcd8d7f8 PYTHON_ASYNC_TIMEOUT_LICENSE = Apache-2.0 PYTHON_ASYNC_TIMEOUT_LICENSE_FILES = LICENSE PYTHON_ASYNC_TIMEOUT_SETUP_TYPE = setuptools diff --git a/package/python-attrs/python-attrs.hash b/package/python-attrs/python-attrs.hash index 66b2082cfff5..0e94c7cef46a 100644 --- a/package/python-attrs/python-attrs.hash +++ b/package/python-attrs/python-attrs.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/attrs/json -md5 eff16b3bbd0d9b72e118cca83a19d380 attrs-22.2.0.tar.gz -sha256 c9227bfc2f01993c03f68db37d1d15c9690188323c067c641f1a35ca58185f99 attrs-22.2.0.tar.gz +md5 6623fed7ffa22261ba25fccaf4d99539 attrs-23.1.0.tar.gz +sha256 6279836d581513a26f1bf235f9acd333bc9115683f14f7e8fae46c98fc50e015 attrs-23.1.0.tar.gz # Locally computed sha256 checksums sha256 882115c95dfc2af1eeb6714f8ec6d5cbcabf667caff8729f42420da63f714e9f LICENSE diff --git a/package/python-attrs/python-attrs.mk b/package/python-attrs/python-attrs.mk index 0462f7cb0b92..0d704ea11195 100644 --- a/package/python-attrs/python-attrs.mk +++ b/package/python-attrs/python-attrs.mk @@ -4,11 +4,15 @@ # ################################################################################ -PYTHON_ATTRS_VERSION = 22.2.0 +PYTHON_ATTRS_VERSION = 23.1.0 PYTHON_ATTRS_SOURCE = attrs-$(PYTHON_ATTRS_VERSION).tar.gz -PYTHON_ATTRS_SITE = https://files.pythonhosted.org/packages/21/31/3f468da74c7de4fcf9b25591e682856389b3400b4b62f201e65f15ea3e07 -PYTHON_ATTRS_SETUP_TYPE = setuptools +PYTHON_ATTRS_SITE = https://files.pythonhosted.org/packages/97/90/81f95d5f705be17872843536b1868f351805acf6971251ff07c1b8334dbb +PYTHON_ATTRS_SETUP_TYPE = pep517 PYTHON_ATTRS_LICENSE = MIT PYTHON_ATTRS_LICENSE_FILES = LICENSE +PYTHON_ATTRS_DEPENDENCIES = \ + host-python-hatchling \ + host-python-hatch-fancy-pypi-readme \ + host-python-hatch-vcs $(eval $(python-package)) diff --git a/package/python-autobahn/python-autobahn.hash b/package/python-autobahn/python-autobahn.hash index f9b68dcb2210..11448fef3ac8 100644 --- a/package/python-autobahn/python-autobahn.hash +++ b/package/python-autobahn/python-autobahn.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/autobahn/json -md5 98d8451385ccd8ece2d2fac023c61a19 autobahn-22.12.1.tar.gz -sha256 43b4e8b1aeaeb20a0cc0a81572e613dc958057c0ab248a7d6b41b2763270f925 autobahn-22.12.1.tar.gz +md5 f29d3cebec06c81a87823a2776ffcc5c autobahn-23.6.2.tar.gz +sha256 ec9421c52a2103364d1ef0468036e6019ee84f71721e86b36fe19ad6966c1181 autobahn-23.6.2.tar.gz # Locally computed sha256 checksums -sha256 0387eefce570453daaa60633f28676003731eeca28b2d0a0071c628e3a0004ef LICENSE +sha256 ab1dd7a42dbdae302346c5a4571f2149691cc1ec06836232bf4923527e3fe41c LICENSE diff --git a/package/python-autobahn/python-autobahn.mk b/package/python-autobahn/python-autobahn.mk index 4c1415196086..703f10651564 100644 --- a/package/python-autobahn/python-autobahn.mk +++ b/package/python-autobahn/python-autobahn.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_AUTOBAHN_VERSION = 22.12.1 +PYTHON_AUTOBAHN_VERSION = 23.6.2 PYTHON_AUTOBAHN_SOURCE = autobahn-$(PYTHON_AUTOBAHN_VERSION).tar.gz -PYTHON_AUTOBAHN_SITE = https://files.pythonhosted.org/packages/a8/6f/78b90951f263232e468439627f31a2c0846e36043c95af96dc527a4aeee6 +PYTHON_AUTOBAHN_SITE = https://files.pythonhosted.org/packages/92/ee/c3320c326919394ff597592549ff5d29d2f7bf12be9ddaa9017caff1a170 PYTHON_AUTOBAHN_LICENSE = MIT PYTHON_AUTOBAHN_LICENSE_FILES = LICENSE PYTHON_AUTOBAHN_CPE_ID_VENDOR = crossbar diff --git a/package/python-avro/python-avro.hash b/package/python-avro/python-avro.hash index 0d457a11fdf9..e57b6a722b63 100644 --- a/package/python-avro/python-avro.hash +++ b/package/python-avro/python-avro.hash @@ -1,5 +1,5 @@ -# From https://downloads.apache.org/avro/avro-1.11.1/py/avro-1.11.1.tar.gz.sha512 -sha512 bce5983cd7ed20be848cca41d143f16bf5bab57edc010d590fc1268405de4267e028ff7ec740282a03034aff5aa528feadb2be4e71ee6879b3080e0a9e19cb37 avro-1.11.1.tar.gz +# From https://downloads.apache.org/avro/avro-1.11.3/py/avro-1.11.3.tar.gz.sha512 +sha512 c2066b4dd8b55b0534fb5bb8fc5a81abcef76ab46458b666c98732811f632c34062c1a0cefaf370aa0843c1cad5bd822f9a6ef0ad88cda5177519a3d3c73072d avro-1.11.3.tar.gz # License files sha256 c79a7fea0e3cac04cd43f20e7b648e5a0ff8fa5344e644b0ee09ca1162b62747 avro/LICENSE diff --git a/package/python-avro/python-avro.mk b/package/python-avro/python-avro.mk index 6193cbbd8e97..4e9db9fefc67 100644 --- a/package/python-avro/python-avro.mk +++ b/package/python-avro/python-avro.mk @@ -5,7 +5,7 @@ ################################################################################ # When updating the version, please also update avro-c -PYTHON_AVRO_VERSION = 1.11.1 +PYTHON_AVRO_VERSION = 1.11.3 PYTHON_AVRO_SITE = \ https://www-eu.apache.org/dist/avro/avro-$(PYTHON_AVRO_VERSION)/py PYTHON_AVRO_SOURCE = avro-$(PYTHON_AVRO_VERSION).tar.gz diff --git a/package/python-babel/python-babel.hash b/package/python-babel/python-babel.hash index 2b2f56d8c648..dc48831c4404 100644 --- a/package/python-babel/python-babel.hash +++ b/package/python-babel/python-babel.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/babel/json -md5 9ee7784fd452d456206ecd3a12694010 Babel-2.11.0.tar.gz -sha256 5ef4b3226b0180dedded4229651c8b0e1a3a6a2837d45a073272f313e4cf97f6 Babel-2.11.0.tar.gz +md5 3162229c2daa7c32674ed26f87b63127 Babel-2.13.1.tar.gz +sha256 33e0952d7dd6374af8dbf6768cc4ddf3ccfefc244f9986d4074704f2fbd18900 Babel-2.13.1.tar.gz # Locally computed sha256 checksums -sha256 2499aec3c5f041c3ac2c448a15fb233314e4c20cbac1530be04ec31b2788631c LICENSE +sha256 908e0ad72053ae27c1d17e3340bd14cff9bf935992ed56526d17c983ab6e7af7 LICENSE diff --git a/package/python-babel/python-babel.mk b/package/python-babel/python-babel.mk index 35857dc12732..f8d2ccd258c2 100644 --- a/package/python-babel/python-babel.mk +++ b/package/python-babel/python-babel.mk @@ -4,13 +4,26 @@ # ################################################################################ -PYTHON_BABEL_VERSION = 2.11.0 +PYTHON_BABEL_VERSION = 2.13.1 PYTHON_BABEL_SOURCE = Babel-$(PYTHON_BABEL_VERSION).tar.gz -PYTHON_BABEL_SITE = https://files.pythonhosted.org/packages/ff/80/45b42203ecc32c8de281f52e3ec81cb5e4ef16127e9e8543089d8b1649fb +PYTHON_BABEL_SITE = https://files.pythonhosted.org/packages/aa/6c/737d2345d86741eeb594381394016b9c74c1253b4cbe274bb1e7b5e2138e PYTHON_BABEL_SETUP_TYPE = setuptools PYTHON_BABEL_LICENSE = BSD-3-Clause PYTHON_BABEL_LICENSE_FILES = LICENSE HOST_PYTHON_BABEL_DEPENDENCIES = host-python-pytz +# purge locale data (if enabled), keep special en_US_POSIX data which +# is used by default by the python-babel code +ifeq ($(BR2_ENABLE_LOCALE_PURGE),y) +define PYTHON_BABEL_CLEANUP_LOCALE + for i in `ls $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages/babel/locale-data/*.dat`; \ + do \ + i_base=`basename "$$i" .dat`; \ + echo "$(BR2_ENABLE_LOCALE_WHITELIST) en_US_POSIX" | grep -qw "$$i_base" || rm "$$i"; \ + done +endef +PYTHON_BABEL_TARGET_FINALIZE_HOOKS += PYTHON_BABEL_CLEANUP_LOCALE +endif + $(eval $(python-package)) $(eval $(host-python-package)) diff --git a/package/python-backcall/python-backcall.mk b/package/python-backcall/python-backcall.mk index 2ead3421a83f..ea9ffb863ca4 100644 --- a/package/python-backcall/python-backcall.mk +++ b/package/python-backcall/python-backcall.mk @@ -7,7 +7,7 @@ PYTHON_BACKCALL_VERSION = 0.2.0 PYTHON_BACKCALL_SOURCE = backcall-$(PYTHON_BACKCALL_VERSION).tar.gz PYTHON_BACKCALL_SITE = https://files.pythonhosted.org/packages/a2/40/764a663805d84deee23043e1426a9175567db89c8b3287b5c2ad9f71aa93 -PYTHON_BACKCALL_SETUP_TYPE = distutils +PYTHON_BACKCALL_SETUP_TYPE = setuptools PYTHON_BACKCALL_LICENSE = BSD-3-Clause PYTHON_BACKCALL_LICENSE_FILES = LICENSE diff --git a/package/python-beautifulsoup4/python-beautifulsoup4.hash b/package/python-beautifulsoup4/python-beautifulsoup4.hash index 4641d2e3a3b8..0387af8a650f 100644 --- a/package/python-beautifulsoup4/python-beautifulsoup4.hash +++ b/package/python-beautifulsoup4/python-beautifulsoup4.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/beautifulsoup4/json -md5 22f22f89cf9da41b22e1ece9639c66a3 beautifulsoup4-4.11.1.tar.gz -sha256 ad9aa55b65ef2808eb405f46cf74df7fcb7044d5cbc26487f96eb2ef2e436693 beautifulsoup4-4.11.1.tar.gz +md5 b49a6696a762e946c2be97c36a5adaa8 beautifulsoup4-4.12.2.tar.gz +sha256 492bbc69dca35d12daac71c4db1bfff0c876c00ef4a2ffacce226d4638eb72da beautifulsoup4-4.12.2.tar.gz # Locally computed sha256 checksums -sha256 9e41dab3a48f5c734a9d5446557b28a6616e4924ee51d205598e4416bb93ce25 LICENSE +sha256 55b4d8d4b1e5bc86d10efac91b74c87bcb77526b0f5b9edaf8b9cd2adc7397b2 LICENSE diff --git a/package/python-beautifulsoup4/python-beautifulsoup4.mk b/package/python-beautifulsoup4/python-beautifulsoup4.mk index 78f885ba08b0..4c8b996d078b 100644 --- a/package/python-beautifulsoup4/python-beautifulsoup4.mk +++ b/package/python-beautifulsoup4/python-beautifulsoup4.mk @@ -4,11 +4,12 @@ # ################################################################################ -PYTHON_BEAUTIFULSOUP4_VERSION = 4.11.1 +PYTHON_BEAUTIFULSOUP4_VERSION = 4.12.2 PYTHON_BEAUTIFULSOUP4_SOURCE = beautifulsoup4-$(PYTHON_BEAUTIFULSOUP4_VERSION).tar.gz -PYTHON_BEAUTIFULSOUP4_SITE = https://files.pythonhosted.org/packages/e8/b0/cd2b968000577ec5ce6c741a54d846dfa402372369b8b6861720aa9ecea7 -PYTHON_BEAUTIFULSOUP4_SETUP_TYPE = setuptools +PYTHON_BEAUTIFULSOUP4_SITE = https://files.pythonhosted.org/packages/af/0b/44c39cf3b18a9280950ad63a579ce395dda4c32193ee9da7ff0aed547094 +PYTHON_BEAUTIFULSOUP4_SETUP_TYPE = pep517 PYTHON_BEAUTIFULSOUP4_LICENSE = MIT PYTHON_BEAUTIFULSOUP4_LICENSE_FILES = LICENSE +PYTHON_BEAUTIFULSOUP4_DEPENDENCIES = host-python-hatchling $(eval $(python-package)) diff --git a/package/python-bitstring/python-bitstring.hash b/package/python-bitstring/python-bitstring.hash index f078cc7f1462..c2ff9a69d5f0 100644 --- a/package/python-bitstring/python-bitstring.hash +++ b/package/python-bitstring/python-bitstring.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/bitstring/json -md5 ffd806650062e2fae33ee19b51906924 bitstring-4.0.1.tar.gz -sha256 7719f08f6df89ce28453a5e580d4a8ec1d1bda892dbb033466da0ccd9bdcb706 bitstring-4.0.1.tar.gz +md5 1750c35e8e45f597725037d35eed9ba1 bitstring-4.1.2.tar.gz +sha256 c22283d60fd3e1a8f386ccd4f1915d7fe13481d6349db39711421e24d4a9cccf bitstring-4.1.2.tar.gz # Locally computed sha256 checksums sha256 3705eed5a923f35d9bfaca1f10e9136cc84d6e576570aec661bda69991f129ea LICENSE diff --git a/package/python-bitstring/python-bitstring.mk b/package/python-bitstring/python-bitstring.mk index 11c9375707b6..9a5d8dfe842c 100644 --- a/package/python-bitstring/python-bitstring.mk +++ b/package/python-bitstring/python-bitstring.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_BITSTRING_VERSION = 4.0.1 +PYTHON_BITSTRING_VERSION = 4.1.2 PYTHON_BITSTRING_SOURCE = bitstring-$(PYTHON_BITSTRING_VERSION).tar.gz -PYTHON_BITSTRING_SITE = https://files.pythonhosted.org/packages/d2/64/e733b18349be383a4b7859c865d6c9e5ccc5845e9b4258504055607ec1cb +PYTHON_BITSTRING_SITE = https://files.pythonhosted.org/packages/23/fc/b5ace4f51fea5bcc7f8cca8859748ea5eb941680b82a5b3687c980d9589b PYTHON_BITSTRING_SETUP_TYPE = setuptools PYTHON_BITSTRING_LICENSE = MIT PYTHON_BITSTRING_LICENSE_FILES = LICENSE diff --git a/package/python-bleak/python-bleak.hash b/package/python-bleak/python-bleak.hash index 001ef65b65a5..8462e19d39bc 100644 --- a/package/python-bleak/python-bleak.hash +++ b/package/python-bleak/python-bleak.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/bleak/json -md5 d038483ec145c3d32c1ef03e04c42621 bleak-0.19.5.tar.gz -sha256 87845a96453c58c19031c735444a7b3156800534bcd3f23ba74e119e9ae3cd88 bleak-0.19.5.tar.gz +md5 5e27e052efc45b64da1a1f017610c561 bleak-0.21.1.tar.gz +sha256 ec4a1a2772fb315b992cbaa1153070c7e26968a52b0e2727035f443a1af5c18f bleak-0.21.1.tar.gz # Locally computed sha256 checksums sha256 c4029a2b63b3824ab68be841f414addbdde20cb79cdbe272fa80c0b2abe65374 LICENSE diff --git a/package/python-bleak/python-bleak.mk b/package/python-bleak/python-bleak.mk index 95ac1d176641..ed3c3f2f933a 100644 --- a/package/python-bleak/python-bleak.mk +++ b/package/python-bleak/python-bleak.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_BLEAK_VERSION = 0.19.5 +PYTHON_BLEAK_VERSION = 0.21.1 PYTHON_BLEAK_SOURCE = bleak-$(PYTHON_BLEAK_VERSION).tar.gz -PYTHON_BLEAK_SITE = https://files.pythonhosted.org/packages/e6/b4/e63829826a157d180831a1c5d3720e75d613c1290cb239510d148b906836 +PYTHON_BLEAK_SITE = https://files.pythonhosted.org/packages/6a/c0/3aca655fa43b8ff5340d99fac4e67061f53f42f092fc847bdd0559d67846 PYTHON_BLEAK_SETUP_TYPE = setuptools PYTHON_BLEAK_LICENSE = MIT PYTHON_BLEAK_LICENSE_FILES = LICENSE diff --git a/package/python-blinker/Config.in b/package/python-blinker/Config.in new file mode 100644 index 000000000000..3540ca745239 --- /dev/null +++ b/package/python-blinker/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_BLINKER + bool "python-blinker" + help + Fast, simple object-to-object and broadcast signaling. + + https://blinker.readthedocs.io diff --git a/package/python-blinker/python-blinker.hash b/package/python-blinker/python-blinker.hash new file mode 100644 index 000000000000..e0c1d600ebe7 --- /dev/null +++ b/package/python-blinker/python-blinker.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/blinker/json +md5 0306b831281e9918ffb0ac6e3e18b47f blinker-1.7.0.tar.gz +sha256 e6820ff6fa4e4d1d8e2747c2283749c3f547e4fee112b98555cdcdae32996182 blinker-1.7.0.tar.gz +# Locally computed sha256 checksums +sha256 9eb73a1f38597a4aa17025d2ae1be3839624c795e985d4f0e9769ce29faca467 LICENSE.rst diff --git a/package/python-blinker/python-blinker.mk b/package/python-blinker/python-blinker.mk new file mode 100644 index 000000000000..234126a50053 --- /dev/null +++ b/package/python-blinker/python-blinker.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-blinker +# +################################################################################ + +PYTHON_BLINKER_VERSION = 1.7.0 +PYTHON_BLINKER_SOURCE = blinker-$(PYTHON_BLINKER_VERSION).tar.gz +PYTHON_BLINKER_SITE = https://files.pythonhosted.org/packages/a1/13/6df5fc090ff4e5d246baf1f45fe9e5623aa8565757dfa5bd243f6a545f9e +PYTHON_BLINKER_SETUP_TYPE = setuptools +PYTHON_BLINKER_LICENSE = MIT +PYTHON_BLINKER_LICENSE_FILES = LICENSE.rst + +$(eval $(python-package)) diff --git a/package/python-bluezero/python-bluezero.hash b/package/python-bluezero/python-bluezero.hash index 6bedf62b27e6..e9ccb9133e12 100644 --- a/package/python-bluezero/python-bluezero.hash +++ b/package/python-bluezero/python-bluezero.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/bluezero/json -md5 efa07525f1bf6db9af66eb7d9775cdb0 bluezero-0.7.1.tar.gz -sha256 f146feb65ee9f6fd9f3638ff0a44df9fd6efb48cf66a39ce51a62a7d38ab5206 bluezero-0.7.1.tar.gz +md5 5c256c89c3973cfd20f340f095525af2 bluezero-0.8.0.tar.gz +sha256 9bd6706ff6b941c3bedd5b64e0447051120ae8eeac458fb65f56cc6730e1e598 bluezero-0.8.0.tar.gz # Locally computed sha256 checksums sha256 59319e80b4caa94ace4817c9f84aa16abc9d4d2b5f7866251b5fda92e87ccdef LICENSE diff --git a/package/python-bluezero/python-bluezero.mk b/package/python-bluezero/python-bluezero.mk index 34efb6155cd6..8e078f107335 100644 --- a/package/python-bluezero/python-bluezero.mk +++ b/package/python-bluezero/python-bluezero.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_BLUEZERO_VERSION = 0.7.1 +PYTHON_BLUEZERO_VERSION = 0.8.0 PYTHON_BLUEZERO_SOURCE = bluezero-$(PYTHON_BLUEZERO_VERSION).tar.gz -PYTHON_BLUEZERO_SITE = https://files.pythonhosted.org/packages/9a/66/d4a92869ed2afd9483a65aff200b2ba0ca4365429bc9a836c5803ab876a5 +PYTHON_BLUEZERO_SITE = https://files.pythonhosted.org/packages/67/e1/15fc417b9828d38aa8e09ba06df61d6889740fe45867510a781df9a8ba35 PYTHON_BLUEZERO_SETUP_TYPE = setuptools PYTHON_BLUEZERO_LICENSE = MIT PYTHON_BLUEZERO_LICENSE_FILES = LICENSE diff --git a/package/python-boto3/python-boto3.hash b/package/python-boto3/python-boto3.hash index eecc87ab2dd0..253a9de85ee0 100644 --- a/package/python-boto3/python-boto3.hash +++ b/package/python-boto3/python-boto3.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/boto3/json -md5 e3777333a201a2511dd7c814782fe9f0 boto3-1.26.45.tar.gz -sha256 cc7f652df93e1ce818413fd82ffd645d4f92a64fec67c72946212d3750eaa80f boto3-1.26.45.tar.gz +md5 12a1c0bb1e9ab692a1e33204a0da7f12 boto3-1.28.78.tar.gz +sha256 aa970b1571321846543a6e615848352fe7621f1cb96b4454e919421924af95f7 boto3-1.28.78.tar.gz # Locally computed sha256 checksums sha256 0d542e0c8804e39aa7f37eb00da5a762149dc682d7829451287e11b938e94594 LICENSE diff --git a/package/python-boto3/python-boto3.mk b/package/python-boto3/python-boto3.mk index 4d8fe587018a..f60f3467d48f 100644 --- a/package/python-boto3/python-boto3.mk +++ b/package/python-boto3/python-boto3.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_BOTO3_VERSION = 1.26.45 +PYTHON_BOTO3_VERSION = 1.28.78 PYTHON_BOTO3_SOURCE = boto3-$(PYTHON_BOTO3_VERSION).tar.gz -PYTHON_BOTO3_SITE = https://files.pythonhosted.org/packages/f5/5d/62bfcda02d90699d41d5ff2573f88b5555354fb87308e8a3427fef3956c5 +PYTHON_BOTO3_SITE = https://files.pythonhosted.org/packages/70/f7/da69e173dd5663775f114fad3827dcc49537e232e36266463ff70529f1a4 PYTHON_BOTO3_SETUP_TYPE = setuptools PYTHON_BOTO3_LICENSE = Apache-2.0 PYTHON_BOTO3_LICENSE_FILES = LICENSE diff --git a/package/python-botocore/python-botocore.hash b/package/python-botocore/python-botocore.hash index 0e9d0572d799..adf6232b24e5 100644 --- a/package/python-botocore/python-botocore.hash +++ b/package/python-botocore/python-botocore.hash @@ -1,5 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/botocore/json -md5 3946a693e09b65a0f6615a1a30f606d7 botocore-1.29.45.tar.gz -sha256 62ae03e591ff25555854aa338da35190ffe18c0b1be2ebf5cfb277164233691f botocore-1.29.45.tar.gz +md5 ee4f82382518e3af25b4ccfab38587d1 botocore-1.31.78.tar.gz +sha256 320c70bc412157813c2cf60217a592b4b345f8e97e4bf3b1ce49b6be69ed8965 botocore-1.31.78.tar.gz # Locally computed sha256 checksums sha256 0d542e0c8804e39aa7f37eb00da5a762149dc682d7829451287e11b938e94594 LICENSE.txt +sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 tests/unit/auth/aws4_testsuite/LICENSE diff --git a/package/python-botocore/python-botocore.mk b/package/python-botocore/python-botocore.mk index ceb3fbe6ead9..850fb79aa19d 100644 --- a/package/python-botocore/python-botocore.mk +++ b/package/python-botocore/python-botocore.mk @@ -4,11 +4,11 @@ # ################################################################################ -PYTHON_BOTOCORE_VERSION = 1.29.45 +PYTHON_BOTOCORE_VERSION = 1.31.78 PYTHON_BOTOCORE_SOURCE = botocore-$(PYTHON_BOTOCORE_VERSION).tar.gz -PYTHON_BOTOCORE_SITE = https://files.pythonhosted.org/packages/9d/4f/1c24126941d1f8c1f2ecf459f88959d59566af34a55a81d926368fd2e6e5 +PYTHON_BOTOCORE_SITE = https://files.pythonhosted.org/packages/84/a9/9c2752aa24c050323c37a9d2af6dec348889825b51db07fb7f1bb792e307 PYTHON_BOTOCORE_SETUP_TYPE = setuptools PYTHON_BOTOCORE_LICENSE = Apache-2.0 -PYTHON_BOTOCORE_LICENSE_FILES = LICENSE.txt +PYTHON_BOTOCORE_LICENSE_FILES = LICENSE.txt tests/unit/auth/aws4_testsuite/LICENSE $(eval $(python-package)) diff --git a/package/python-bottle/python-bottle.hash b/package/python-bottle/python-bottle.hash index 58bc52e3cb13..48a576aaecfd 100644 --- a/package/python-bottle/python-bottle.hash +++ b/package/python-bottle/python-bottle.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/bottle/json -md5 d07df795cd4baa596ee803e964ba77fd bottle-0.12.23.tar.gz -sha256 683de3aa399fb26e87b274dbcf70b1a651385d459131716387abdc3792e04167 bottle-0.12.23.tar.gz +md5 7d79d6131ecd524530f4e919bc60f444 bottle-0.12.25.tar.gz +sha256 e1a9c94970ae6d710b3fb4526294dfeb86f2cb4a81eff3a4b98dc40fb0e5e021 bottle-0.12.25.tar.gz # Locally computed sha256 checksums sha256 d0e7211f1c3c1a1c56f39d18bcb07f27f480c8a9552617756dda3a335933b8a6 LICENSE diff --git a/package/python-bottle/python-bottle.mk b/package/python-bottle/python-bottle.mk index e1691972c3fb..b35f726f9598 100644 --- a/package/python-bottle/python-bottle.mk +++ b/package/python-bottle/python-bottle.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_BOTTLE_VERSION = 0.12.23 +PYTHON_BOTTLE_VERSION = 0.12.25 PYTHON_BOTTLE_SOURCE = bottle-$(PYTHON_BOTTLE_VERSION).tar.gz -PYTHON_BOTTLE_SITE = https://files.pythonhosted.org/packages/7c/58/75f3765b0a3f86ef0b6e0b23d0503920936752ca6e0fc27efce7403b01bd +PYTHON_BOTTLE_SITE = https://files.pythonhosted.org/packages/fd/04/1c09ab851a52fe6bc063fd0df758504edede5cc741bd2e807bf434a09215 PYTHON_BOTTLE_LICENSE = MIT PYTHON_BOTTLE_LICENSE_FILES = LICENSE PYTHON_BOTTLE_CPE_ID_VENDOR = bottlepy diff --git a/package/python-brotli/python-brotli.hash b/package/python-brotli/python-brotli.hash index de4964dd2576..e8036d3bb847 100644 --- a/package/python-brotli/python-brotli.hash +++ b/package/python-brotli/python-brotli.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/brotli/json -md5 08f1f098697c64aa4596468b556d0c94 Brotli-1.0.9.zip -sha256 4d1b810aa0ed773f81dceda2cc7b403d01057458730e309856356d4ef4188438 Brotli-1.0.9.zip +md5 908d109a0309c33b626d01137eb4a060 Brotli-1.1.0.tar.gz +sha256 81de08ac11bcb85841e440c13611c00b67d3bf82698314928d0b676362546724 Brotli-1.1.0.tar.gz # Locally computed sha256 checksums sha256 3d180008e36922a4e8daec11c34c7af264fed5962d07924aea928c38e8663c94 LICENSE diff --git a/package/python-brotli/python-brotli.mk b/package/python-brotli/python-brotli.mk index ff78e6ab2c3a..865c4e363f7b 100644 --- a/package/python-brotli/python-brotli.mk +++ b/package/python-brotli/python-brotli.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_BROTLI_VERSION = 1.0.9 -PYTHON_BROTLI_SOURCE = Brotli-$(PYTHON_BROTLI_VERSION).zip -PYTHON_BROTLI_SITE = https://files.pythonhosted.org/packages/2a/18/70c32fe9357f3eea18598b23aa9ed29b1711c3001835f7cf99a9818985d0 +PYTHON_BROTLI_VERSION = 1.1.0 +PYTHON_BROTLI_SOURCE = Brotli-$(PYTHON_BROTLI_VERSION).tar.gz +PYTHON_BROTLI_SITE = https://files.pythonhosted.org/packages/2f/c2/f9e977608bdf958650638c3f1e28f85a1b075f075ebbe77db8555463787b PYTHON_BROTLI_SETUP_TYPE = setuptools PYTHON_BROTLI_LICENSE = MIT PYTHON_BROTLI_LICENSE_FILES = LICENSE @@ -19,10 +19,4 @@ endif PYTHON_BROTLI_ENV = CFLAGS="$(PYTHON_BROTLI_CFLAGS)" -define PYTHON_BROTLI_EXTRACT_CMDS - $(UNZIP) -d $(@D) $(PYTHON_BROTLI_DL_DIR)/$(PYTHON_BROTLI_SOURCE) - mv $(@D)/Brotli-$(PYTHON_BROTLI_VERSION)/* $(@D) - $(RM) -r $(@D)/Brotli-$(PYTHON_BROTLI_VERSION) -endef - $(eval $(python-package)) diff --git a/package/python-bsdiff4/python-bsdiff4.hash b/package/python-bsdiff4/python-bsdiff4.hash index bb84bb09a5f4..5f7585af6acd 100644 --- a/package/python-bsdiff4/python-bsdiff4.hash +++ b/package/python-bsdiff4/python-bsdiff4.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/bsdiff4/json -md5 fc5ea1adfe629a7c7ac6f4bb1a0dca93 bsdiff4-1.2.2.tar.gz -sha256 1880ac3f52a6c46ae6bcc6db117e4fb35f9b0ccd5af75fd4fee6907d00d6983c bsdiff4-1.2.2.tar.gz +md5 ebc06d059f3c4ed4c4a5b952f55ae239 bsdiff4-1.2.4.tar.gz +sha256 1d7129a8121860731e8cce2901d3183e14aec70244f64e8f74563275dc388067 bsdiff4-1.2.4.tar.gz # Locally computed sha256 checksums sha256 c6c921c90383f1c43beb53c49a652d28309a410a7c394c729fd8870271451cf0 LICENSE diff --git a/package/python-bsdiff4/python-bsdiff4.mk b/package/python-bsdiff4/python-bsdiff4.mk index 7a50e3379a40..71d212fb2803 100644 --- a/package/python-bsdiff4/python-bsdiff4.mk +++ b/package/python-bsdiff4/python-bsdiff4.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_BSDIFF4_VERSION = 1.2.2 +PYTHON_BSDIFF4_VERSION = 1.2.4 PYTHON_BSDIFF4_SOURCE = bsdiff4-$(PYTHON_BSDIFF4_VERSION).tar.gz -PYTHON_BSDIFF4_SITE = https://files.pythonhosted.org/packages/34/e2/e28dd282974f919a6b9adb3b7e64bb1fa4390046706c3e58a60b94aeb497 +PYTHON_BSDIFF4_SITE = https://files.pythonhosted.org/packages/58/b2/ccf01309dda2c08e0600027bc0f5a99534c91f2f8728b5009fc363df6c2c PYTHON_BSDIFF4_LICENSE = BSD-2-Clause, BSD-Protection (core.c) PYTHON_BSDIFF4_LICENSE_FILES = LICENSE PYTHON_BSDIFF4_CPE_ID_VENDOR = pypi diff --git a/package/python-calver/python-calver.hash b/package/python-calver/python-calver.hash new file mode 100644 index 000000000000..ebc054e61708 --- /dev/null +++ b/package/python-calver/python-calver.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/calver/json +md5 e1fd924b9bf953c0b28c49bdfe117d7a calver-2022.6.26.tar.gz +sha256 e05493a3b17517ef1748fbe610da11f10485faa7c416b9d33fd4a52d74894f8b calver-2022.6.26.tar.gz +# Locally computed sha256 checksums +sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE diff --git a/package/python-calver/python-calver.mk b/package/python-calver/python-calver.mk new file mode 100644 index 000000000000..2fd5468ed400 --- /dev/null +++ b/package/python-calver/python-calver.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-calver +# +################################################################################ + +PYTHON_CALVER_VERSION = 2022.6.26 +PYTHON_CALVER_SOURCE = calver-$(PYTHON_CALVER_VERSION).tar.gz +PYTHON_CALVER_SITE = https://files.pythonhosted.org/packages/b5/00/96cbed7c019c49ee04b8a08357a981983db7698ae6de402e57097cefc9ad +PYTHON_CALVER_SETUP_TYPE = setuptools +PYTHON_CALVER_LICENSE = Apache-2.0 +PYTHON_CALVER_LICENSE_FILES = LICENSE + +$(eval $(host-python-package)) diff --git a/package/python-can/Config.in b/package/python-can/Config.in index 5d21e29d88fe..68a9ffca71ba 100644 --- a/package/python-can/Config.in +++ b/package/python-can/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_PYTHON_CAN bool "python-can" + select BR2_PACKAGE_PYTHON_SETUPTOOLS # runtime select BR2_PACKAGE_PYTHON3_SQLITE # runtime select BR2_PACKAGE_PYTHON_AENUM # runtime select BR2_PACKAGE_PYTHON_MSGPACK # runtime diff --git a/package/python-can/python-can.hash b/package/python-can/python-can.hash index 73be23020160..35e752ea5477 100644 --- a/package/python-can/python-can.hash +++ b/package/python-can/python-can.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/python-can/json -md5 d8365b7a09e49f47dac0da75d8518808 python-can-4.1.0.tar.gz -sha256 3f2b6b0dc5f459591d171ee0c0136dce79acedc2740ce695024aa3444e911bb9 python-can-4.1.0.tar.gz +md5 26d799fe952cb590fba03f3d26ee66a4 python-can-4.2.2.tar.gz +sha256 6ad50f4613289f3c4d276b6d2ac8901d776dcb929994cce93f55a69e858c595f python-can-4.2.2.tar.gz # Locally computed sha256 checksums sha256 da7eabb7bafdf7d3ae5e9f223aa5bdc1eece45ac569dc21b3b037520b4464768 LICENSE.txt diff --git a/package/python-can/python-can.mk b/package/python-can/python-can.mk index ba98337d5d36..012c82682c62 100644 --- a/package/python-can/python-can.mk +++ b/package/python-can/python-can.mk @@ -4,8 +4,8 @@ # ################################################################################ -PYTHON_CAN_VERSION = 4.1.0 -PYTHON_CAN_SITE = https://files.pythonhosted.org/packages/90/55/898e69e37d5d4692bf21ba8750e095493d2ecbb29be7394d5cb735f0ab0f +PYTHON_CAN_VERSION = 4.2.2 +PYTHON_CAN_SITE = https://files.pythonhosted.org/packages/dd/f1/327caaf05b6bca594250053058a2adac537a88dfb5c41bb5498cfda9de78 PYTHON_CAN_SETUP_TYPE = setuptools PYTHON_CAN_LICENSE = LGPL-3.0 PYTHON_CAN_LICENSE_FILES = LICENSE.txt diff --git a/package/python-canopen/python-canopen.hash b/package/python-canopen/python-canopen.hash index e6485e72f060..fc3668bc6cb9 100644 --- a/package/python-canopen/python-canopen.hash +++ b/package/python-canopen/python-canopen.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/canopen/json -md5 d51443bdc8a55faea63c9da82196dd47 canopen-2.1.0.tar.gz -sha256 bc126bb1dcb62e3b34d8a12e38a07b5aa8319c17457c9bfe208f0bbbda90ff61 canopen-2.1.0.tar.gz +md5 2a757a6996f896d2e6afbf2bcf598df2 canopen-2.2.0.tar.gz +sha256 5f18651b9df6e4769b9882e969f934ae773ef24a45aabc3334b586982048d08c canopen-2.2.0.tar.gz # Locally computed sha256 checksums -sha256 d9035caf7b8b135899da92a2730e2ac2e9f5ae3220dc98bd661be18045fcf689 LICENSE.txt +sha256 0740d30978affcd91c0fc817b7cf942a332381bf0380fe17e60c6a0b377c6e0d LICENSE.txt diff --git a/package/python-canopen/python-canopen.mk b/package/python-canopen/python-canopen.mk index a0f5220ded89..963c4ab801e0 100644 --- a/package/python-canopen/python-canopen.mk +++ b/package/python-canopen/python-canopen.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CANOPEN_VERSION = 2.1.0 +PYTHON_CANOPEN_VERSION = 2.2.0 PYTHON_CANOPEN_SOURCE = canopen-$(PYTHON_CANOPEN_VERSION).tar.gz -PYTHON_CANOPEN_SITE = https://files.pythonhosted.org/packages/29/d1/54462c949c384b1a9a2bd260143a8ec6f4259a18d119bd122e8f8a791b50 +PYTHON_CANOPEN_SITE = https://files.pythonhosted.org/packages/49/55/67e555f6f4ea51d6d966e998a77881c1bd726c6e8cc602fd04852772ce87 PYTHON_CANOPEN_SETUP_TYPE = setuptools PYTHON_CANOPEN_LICENSE = MIT PYTHON_CANOPEN_LICENSE_FILES = LICENSE.txt diff --git a/package/python-cbor2/python-cbor2.hash b/package/python-cbor2/python-cbor2.hash index 70c35ca86457..42ed828d5353 100644 --- a/package/python-cbor2/python-cbor2.hash +++ b/package/python-cbor2/python-cbor2.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/cbor2/json -md5 74512376482be8a6af10596a63b6d254 cbor2-5.4.6.tar.gz -sha256 b893500db0fe033e570c3adc956af6eefc57e280026bd2d86fd53da9f1e594d7 cbor2-5.4.6.tar.gz +md5 b44037904de5b0f833020bfe01f741ca cbor2-5.5.1.tar.gz +sha256 f9e192f461a9f8f6082df28c035b006d153904213dc8640bed8a72d72bbc9475 cbor2-5.5.1.tar.gz # Locally computed sha256 checksums sha256 a6afd126d8f545a15166a22f25fadff4b9fb4978bbdd17e97d97d950b66d2fef LICENSE.txt diff --git a/package/python-cbor2/python-cbor2.mk b/package/python-cbor2/python-cbor2.mk index a2fcd73b74d3..504030186773 100644 --- a/package/python-cbor2/python-cbor2.mk +++ b/package/python-cbor2/python-cbor2.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CBOR2_VERSION = 5.4.6 +PYTHON_CBOR2_VERSION = 5.5.1 PYTHON_CBOR2_SOURCE = cbor2-$(PYTHON_CBOR2_VERSION).tar.gz -PYTHON_CBOR2_SITE = https://files.pythonhosted.org/packages/d9/69/de486293f5211d2e8fe1a19854e69f2811a18448162c52b48c67f8fbcac3 +PYTHON_CBOR2_SITE = https://files.pythonhosted.org/packages/d6/37/a0a75c2cae532ecb155d05edc1fbbe54fa3957e86f875a38542f87e1379c PYTHON_CBOR2_SETUP_TYPE = setuptools PYTHON_CBOR2_LICENSE = MIT PYTHON_CBOR2_LICENSE_FILES = LICENSE.txt diff --git a/package/python-certifi/python-certifi.hash b/package/python-certifi/python-certifi.hash index d3cf24ecfada..fe0748adb873 100644 --- a/package/python-certifi/python-certifi.hash +++ b/package/python-certifi/python-certifi.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/certifi/json -md5 d00966473b8ac42c2c033b75f4bed6f4 certifi-2022.12.7.tar.gz -sha256 35824b4c3a97115964b408844d64aa14db1cc518f6562e8d7261699d1350a9e3 certifi-2022.12.7.tar.gz +md5 10a72845d3fc2c38d212b4b7b1872c76 certifi-2023.7.22.tar.gz +sha256 539cc1d13202e33ca466e88b2807e29f4c13049d6d87031a3c110744495cb082 certifi-2023.7.22.tar.gz # Locally computed sha256 checksums sha256 a02f6c638f9fb84d06f7764c3ab085d8af7eda5b93c166da54312479077c6fb0 LICENSE diff --git a/package/python-certifi/python-certifi.mk b/package/python-certifi/python-certifi.mk index 70f9e69d2caf..9b5f8536822c 100644 --- a/package/python-certifi/python-certifi.mk +++ b/package/python-certifi/python-certifi.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CERTIFI_VERSION = 2022.12.7 +PYTHON_CERTIFI_VERSION = 2023.7.22 PYTHON_CERTIFI_SOURCE = certifi-$(PYTHON_CERTIFI_VERSION).tar.gz -PYTHON_CERTIFI_SITE = https://files.pythonhosted.org/packages/37/f7/2b1b0ec44fdc30a3d31dfebe52226be9ddc40cd6c0f34ffc8923ba423b69 +PYTHON_CERTIFI_SITE = https://files.pythonhosted.org/packages/98/98/c2ff18671db109c9f10ed27f5ef610ae05b73bd876664139cf95bd1429aa PYTHON_CERTIFI_SETUP_TYPE = setuptools PYTHON_CERTIFI_LICENSE = ISC (Python code), MPL-2.0 (cacert.pem) PYTHON_CERTIFI_LICENSE_FILES = LICENSE diff --git a/package/python-cffi/python-cffi.hash b/package/python-cffi/python-cffi.hash index ae7f9a477f89..0573d6ec066a 100644 --- a/package/python-cffi/python-cffi.hash +++ b/package/python-cffi/python-cffi.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/cffi/json -md5 f493860a6e98cd0c4178149568a6b4f6 cffi-1.15.1.tar.gz -sha256 d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9 cffi-1.15.1.tar.gz +md5 0bcaed453da3004d0bea103038345c1e cffi-1.16.0.tar.gz +sha256 bcb3ef43e58665bbda2fb198698fcae6776483e0c4a631aa5647806c25e02cc0 cffi-1.16.0.tar.gz # Locally computed sha256 checksums sha256 04b80f5b077bbed68808cfebadeb5e3523f2a8c9a96495c587bd96df1eac2a33 LICENSE diff --git a/package/python-cffi/python-cffi.mk b/package/python-cffi/python-cffi.mk index c1fcfda5fe60..1f83db079b00 100644 --- a/package/python-cffi/python-cffi.mk +++ b/package/python-cffi/python-cffi.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CFFI_VERSION = 1.15.1 +PYTHON_CFFI_VERSION = 1.16.0 PYTHON_CFFI_SOURCE = cffi-$(PYTHON_CFFI_VERSION).tar.gz -PYTHON_CFFI_SITE = https://files.pythonhosted.org/packages/2b/a8/050ab4f0c3d4c1b8aaa805f70e26e84d0e27004907c5b8ecc1d31815f92a +PYTHON_CFFI_SITE = https://files.pythonhosted.org/packages/68/ce/95b0bae7968c65473e1298efb042e10cafc7bafc14d9e4f154008241c91d PYTHON_CFFI_SETUP_TYPE = setuptools PYTHON_CFFI_DEPENDENCIES = host-pkgconf libffi PYTHON_CFFI_LICENSE = MIT diff --git a/package/python-channels-redis/Config.in b/package/python-channels-redis/Config.in index d25f8ffe31a8..785b05cac051 100644 --- a/package/python-channels-redis/Config.in +++ b/package/python-channels-redis/Config.in @@ -2,10 +2,10 @@ config BR2_PACKAGE_PYTHON_CHANNELS_REDIS bool "python-channels-redis" # python-channels -> python-daphne -> python-autobahn -> python-cryptography depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS - select BR2_PACKAGE_PYTHON_AIOREDIS # runtime select BR2_PACKAGE_PYTHON_ASGIREF # runtime select BR2_PACKAGE_PYTHON_CHANNELS # runtime select BR2_PACKAGE_PYTHON_MSGPACK # runtime + select BR2_PACKAGE_PYTHON_REDIS # runtime help A Django Channels channel layer that uses Redis as its backing store, and supports both a single-server and diff --git a/package/python-channels-redis/python-channels-redis.hash b/package/python-channels-redis/python-channels-redis.hash index eaab5814a665..943712b3fd36 100644 --- a/package/python-channels-redis/python-channels-redis.hash +++ b/package/python-channels-redis/python-channels-redis.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/channels-redis/json -md5 82898cb3b50bb19e8484b80b4d940910 channels_redis-4.0.0.tar.gz -sha256 122414f29f525f7b9e0c9d59cdcfc4dc1b0eecba16fbb6a1c23f1d9b58f49dcb channels_redis-4.0.0.tar.gz +md5 a184dded3478e618735a42174c334565 channels_redis-4.1.0.tar.gz +sha256 6bd4f75f4ab4a7db17cee495593ace886d7e914c66f8214a1f247ff6659c073a channels_redis-4.1.0.tar.gz # Locally computed sha256 checksums sha256 b846415d1b514e9c1dff14a22deb906d794bc546ca6129f950a18cd091e2a669 LICENSE diff --git a/package/python-channels-redis/python-channels-redis.mk b/package/python-channels-redis/python-channels-redis.mk index 727f403aafd1..9186f07f1707 100644 --- a/package/python-channels-redis/python-channels-redis.mk +++ b/package/python-channels-redis/python-channels-redis.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CHANNELS_REDIS_VERSION = 4.0.0 +PYTHON_CHANNELS_REDIS_VERSION = 4.1.0 PYTHON_CHANNELS_REDIS_SOURCE = channels_redis-$(PYTHON_CHANNELS_REDIS_VERSION).tar.gz -PYTHON_CHANNELS_REDIS_SITE = https://files.pythonhosted.org/packages/8a/8d/bf96c62e3ca6c5ae59eb3482804afbe026c1c98b05b3ab65a0d46663644a +PYTHON_CHANNELS_REDIS_SITE = https://files.pythonhosted.org/packages/5b/3b/941efa8e337c3537475926fbf86e8cfe38a919e0f60bb9538b1cff364b8d PYTHON_CHANNELS_REDIS_SETUP_TYPE = setuptools PYTHON_CHANNELS_REDIS_LICENSE = BSD-3-Clause PYTHON_CHANNELS_REDIS_LICENSE_FILES = LICENSE diff --git a/package/python-chardet/python-chardet.hash b/package/python-chardet/python-chardet.hash index 7887dd769d6c..bf0ed47df688 100644 --- a/package/python-chardet/python-chardet.hash +++ b/package/python-chardet/python-chardet.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/chardet/json -md5 394bd03d7a258d2771040bfbd5a7bf66 chardet-5.1.0.tar.gz -sha256 0d62712b956bc154f85fb0a266e2a3c5913c2967e00348701b32411d6def31e5 chardet-5.1.0.tar.gz +md5 cc2d8cc9a751641463b4f7cfecad2ffa chardet-5.2.0.tar.gz +sha256 1b3b6ff479a8c414bc3fa2c0852995695c4a026dcd6d0633b2dd092ca39c1cf7 chardet-5.2.0.tar.gz # Locally computed sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 LICENSE diff --git a/package/python-chardet/python-chardet.mk b/package/python-chardet/python-chardet.mk index 42646aa51323..16e5f303b62f 100644 --- a/package/python-chardet/python-chardet.mk +++ b/package/python-chardet/python-chardet.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CHARDET_VERSION = 5.1.0 +PYTHON_CHARDET_VERSION = 5.2.0 PYTHON_CHARDET_SOURCE = chardet-$(PYTHON_CHARDET_VERSION).tar.gz -PYTHON_CHARDET_SITE = https://files.pythonhosted.org/packages/41/32/cdc91dcf83849c7385bf8e2a5693d87376536ed000807fa07f5eab33430d +PYTHON_CHARDET_SITE = https://files.pythonhosted.org/packages/f3/0d/f7b6ab21ec75897ed80c17d79b15951a719226b9fababf1e40ea74d69079 PYTHON_CHARDET_SETUP_TYPE = setuptools PYTHON_CHARDET_LICENSE = LGPL-2.1+ PYTHON_CHARDET_LICENSE_FILES = LICENSE diff --git a/package/python-charset-normalizer/python-charset-normalizer.hash b/package/python-charset-normalizer/python-charset-normalizer.hash index a70499917a44..8ef0e3fed042 100644 --- a/package/python-charset-normalizer/python-charset-normalizer.hash +++ b/package/python-charset-normalizer/python-charset-normalizer.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/charset-normalizer/json -md5 12ee1c8bedbfba84e99db46d5d94f411 charset-normalizer-3.0.1.tar.gz -sha256 ebea339af930f8ca5d7a699b921106c6e29c617fe9606fa7baa043c1cdae326f charset-normalizer-3.0.1.tar.gz +md5 0a4019908d9e50ff13138e8a794d9e2b charset-normalizer-3.3.2.tar.gz +sha256 f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5 charset-normalizer-3.3.2.tar.gz # Locally computed sha256 checksums sha256 eb31a0c5a4fb09b8a4e32055d25c1e5f9c358a2752fef3cd720213d1ccfee241 LICENSE diff --git a/package/python-charset-normalizer/python-charset-normalizer.mk b/package/python-charset-normalizer/python-charset-normalizer.mk index 95c55ffd3c92..914b96eb69ad 100644 --- a/package/python-charset-normalizer/python-charset-normalizer.mk +++ b/package/python-charset-normalizer/python-charset-normalizer.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CHARSET_NORMALIZER_VERSION = 3.0.1 +PYTHON_CHARSET_NORMALIZER_VERSION = 3.3.2 PYTHON_CHARSET_NORMALIZER_SOURCE = charset-normalizer-$(PYTHON_CHARSET_NORMALIZER_VERSION).tar.gz -PYTHON_CHARSET_NORMALIZER_SITE = https://files.pythonhosted.org/packages/96/d7/1675d9089a1f4677df5eb29c3f8b064aa1e70c1251a0a8a127803158942d +PYTHON_CHARSET_NORMALIZER_SITE = https://files.pythonhosted.org/packages/63/09/c1bc53dab74b1816a00d8d030de5bf98f724c52c1635e07681d312f20be8 PYTHON_CHARSET_NORMALIZER_SETUP_TYPE = setuptools PYTHON_CHARSET_NORMALIZER_LICENSE = MIT PYTHON_CHARSET_NORMALIZER_LICENSE_FILES = LICENSE diff --git a/package/python-cheroot/Config.in b/package/python-cheroot/Config.in index bb9b4abbc3fc..4c907ff8c6a6 100644 --- a/package/python-cheroot/Config.in +++ b/package/python-cheroot/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_PYTHON_CHEROOT bool "python-cheroot" - select BR2_PACKAGE_PYTHON_SIX # runtime select BR2_PACKAGE_PYTHON_MORE_ITERTOOLS # runtime select BR2_PACKAGE_PYTHON_JARACO_FUNCTOOLS # runtime help diff --git a/package/python-cheroot/python-cheroot.hash b/package/python-cheroot/python-cheroot.hash index c3556109cd1a..d103eb6f963f 100644 --- a/package/python-cheroot/python-cheroot.hash +++ b/package/python-cheroot/python-cheroot.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/cheroot/json -md5 1617fdbaba7d6edbe5b0ff48f7563111 cheroot-9.0.0.tar.gz -sha256 3d47ad9ee19ecbec144b4758399036692fdbf67a40b96eef1fb1454367b3d338 cheroot-9.0.0.tar.gz +md5 be96fa052c54892240f916fbb06cc571 cheroot-10.0.0.tar.gz +sha256 59c4a1877fef9969b3c3c080caaaf377e2780919437853fc0d32a9df40b311f0 cheroot-10.0.0.tar.gz # Locally computed sha256 checksums sha256 e20feeb491a7e98084f15719349e9857aad41c4503c5e479f8815b063dbf7564 LICENSE.md diff --git a/package/python-cheroot/python-cheroot.mk b/package/python-cheroot/python-cheroot.mk index f75065c7da6b..86e16f7db2d6 100644 --- a/package/python-cheroot/python-cheroot.mk +++ b/package/python-cheroot/python-cheroot.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CHEROOT_VERSION = 9.0.0 +PYTHON_CHEROOT_VERSION = 10.0.0 PYTHON_CHEROOT_SOURCE = cheroot-$(PYTHON_CHEROOT_VERSION).tar.gz -PYTHON_CHEROOT_SITE = https://files.pythonhosted.org/packages/8c/e7/8e6387d59a352c5799e917a23e7b76771a8bb97322c1ce7e42934d0066c3 +PYTHON_CHEROOT_SITE = https://files.pythonhosted.org/packages/08/7c/95c154177b16077de0fec1b821b0d8b3df2b59c5c7b3575a9c1bf52a437e PYTHON_CHEROOT_LICENSE = BSD-3-Clause PYTHON_CHEROOT_LICENSE_FILES = LICENSE.md PYTHON_CHEROOT_SETUP_TYPE = setuptools diff --git a/package/python-click/python-click.hash b/package/python-click/python-click.hash index 81d19c419ea4..0fc04d638ac4 100644 --- a/package/python-click/python-click.hash +++ b/package/python-click/python-click.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/click/json -md5 a804b085de7a3ff96968e38e0f6f2e05 click-8.1.3.tar.gz -sha256 7682dc8afb30297001674575ea00d1814d808d6a36af415a82bd481d37ba7b8e click-8.1.3.tar.gz +md5 7c3b52c56fd30699f453a7dc7b42cecb click-8.1.7.tar.gz +sha256 ca9853ad459e787e2192211578cc907e7594e294c7ccc834310722b41b9ca6de click-8.1.7.tar.gz # Locally computed sha256 checksums sha256 9a8ad106a394e853bfe21f42f4e72d592819a22805d991b5f3275029292b658d LICENSE.rst diff --git a/package/python-click/python-click.mk b/package/python-click/python-click.mk index 6444d0148e2f..0e29ff034ed5 100644 --- a/package/python-click/python-click.mk +++ b/package/python-click/python-click.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CLICK_VERSION = 8.1.3 +PYTHON_CLICK_VERSION = 8.1.7 PYTHON_CLICK_SOURCE = click-$(PYTHON_CLICK_VERSION).tar.gz -PYTHON_CLICK_SITE = https://files.pythonhosted.org/packages/59/87/84326af34517fca8c58418d148f2403df25303e02736832403587318e9e8 +PYTHON_CLICK_SITE = https://files.pythonhosted.org/packages/96/d3/f04c7bfcf5c1862a2a5b845c6b2b360488cf47af55dfa79c98f6a6bf98b5 PYTHON_CLICK_LICENSE = BSD-3-Clause PYTHON_CLICK_LICENSE_FILES = LICENSE.rst PYTHON_CLICK_SETUP_TYPE = setuptools diff --git a/package/python-constantly/python-constantly.hash b/package/python-constantly/python-constantly.hash index 8e646d82ba1c..7a246e882a4b 100644 --- a/package/python-constantly/python-constantly.hash +++ b/package/python-constantly/python-constantly.hash @@ -1,5 +1,5 @@ # md5 from https://pypi.python.org/pypi/constantly/json -md5 f0762f083d83039758e53f8cf0086eef constantly-15.1.0.tar.gz +md5 c090579309b2b34be04385b54b0a5a85 constantly-23.10.4.tar.gz # Locally computed -sha256 586372eb92059873e29eba4f9dec8381541b4d3834660707faf8ba59146dfc35 constantly-15.1.0.tar.gz +sha256 aa92b70a33e2ac0bb33cd745eb61776594dc48764b06c35e0efd050b7f1c7cbd constantly-23.10.4.tar.gz sha256 020870fcaf4bf9c50b233e331817094fe109b91c0880570fd476f527cfbfc085 LICENSE diff --git a/package/python-constantly/python-constantly.mk b/package/python-constantly/python-constantly.mk index 783d198d0631..466c9bf45528 100644 --- a/package/python-constantly/python-constantly.mk +++ b/package/python-constantly/python-constantly.mk @@ -4,11 +4,12 @@ # ################################################################################ -PYTHON_CONSTANTLY_VERSION = 15.1.0 +PYTHON_CONSTANTLY_VERSION = 23.10.4 PYTHON_CONSTANTLY_SOURCE = constantly-$(PYTHON_CONSTANTLY_VERSION).tar.gz -PYTHON_CONSTANTLY_SITE = https://pypi.python.org/packages/95/f1/207a0a478c4bb34b1b49d5915e2db574cadc415c9ac3a7ef17e29b2e8951 +PYTHON_CONSTANTLY_SITE = https://files.pythonhosted.org/packages/4d/6f/cb2a94494ff74aa9528a36c5b1422756330a75a8367bf20bd63171fc324d PYTHON_CONSTANTLY_SETUP_TYPE = setuptools PYTHON_CONSTANTLY_LICENSE = MIT PYTHON_CONSTANTLY_LICENSE_FILES = LICENSE +PYTHON_CONSTANTLY_DEPENDENCIES = host-python-versioneer $(eval $(python-package)) diff --git a/package/python-construct/python-construct.hash b/package/python-construct/python-construct.hash index f406d6739ba2..a72a79a5b32b 100644 --- a/package/python-construct/python-construct.hash +++ b/package/python-construct/python-construct.hash @@ -1,5 +1,5 @@ -# md5, sha256 from https://pypi.org/project/construct -md5 e426d3dd1566066e4ef1a03fe474dec0 construct-2.10.68.tar.gz -sha256 7b2a3fd8e5f597a5aa1d614c3bd516fa065db01704c72a1efaaeec6ef23d8b45 construct-2.10.68.tar.gz +# md5, sha256 from https://pypi.org/pypi/construct/json +md5 d881ab2198ec6597e603a2d985307353 construct-2.10.69.tar.gz +sha256 08573d1573827a6fe6b846756d54270650e221a6cec6a72e06b582cde775599e construct-2.10.69.tar.gz # Locally computed sha256 checksums sha256 1552d70acfd0d3fe464ce13d30113ddc6fe4bac21e52212acc98509e3cc1a8f4 LICENSE diff --git a/package/python-construct/python-construct.mk b/package/python-construct/python-construct.mk index 3b0bb56106de..1e3065112962 100644 --- a/package/python-construct/python-construct.mk +++ b/package/python-construct/python-construct.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CONSTRUCT_VERSION = 2.10.68 +PYTHON_CONSTRUCT_VERSION = 2.10.69 PYTHON_CONSTRUCT_SOURCE = construct-$(PYTHON_CONSTRUCT_VERSION).tar.gz -PYTHON_CONSTRUCT_SITE = https://files.pythonhosted.org/packages/e0/b7/a4a032e94bcfdff481f2e6fecd472794d9da09f474a2185ed33b2c7cad64 +PYTHON_CONSTRUCT_SITE = https://files.pythonhosted.org/packages/02/88/e34d7265863f3c96077aea24041b067d4646d77d596d979110eb94758b03 PYTHON_CONSTRUCT_SETUP_TYPE = setuptools PYTHON_CONSTRUCT_LICENSE = MIT PYTHON_CONSTRUCT_LICENSE_FILES = LICENSE diff --git a/package/python-crc16/python-crc16.mk b/package/python-crc16/python-crc16.mk index 9809f1ed84a5..86e6f2ecf241 100644 --- a/package/python-crc16/python-crc16.mk +++ b/package/python-crc16/python-crc16.mk @@ -8,6 +8,6 @@ PYTHON_CRC16_VERSION = 0.1.1 PYTHON_CRC16_SITE = $(call github,gennady,pycrc16,v$(PYTHON_CRC16_VERSION)) PYTHON_CRC16_LICENSE = LGPL-3.0+ PYTHON_CRC16_LICENSE_FILES = COPYING.txt -PYTHON_CRC16_SETUP_TYPE = distutils +PYTHON_CRC16_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-crcmod/python-crcmod.mk b/package/python-crcmod/python-crcmod.mk index 1aab7f508429..c97f8808c195 100644 --- a/package/python-crcmod/python-crcmod.mk +++ b/package/python-crcmod/python-crcmod.mk @@ -7,7 +7,7 @@ PYTHON_CRCMOD_VERSION = 1.7 PYTHON_CRCMOD_SOURCE = crcmod-$(PYTHON_CRCMOD_VERSION).tar.gz PYTHON_CRCMOD_SITE = https://pypi.python.org/packages/6b/b0/e595ce2a2527e169c3bcd6c33d2473c1918e0b7f6826a043ca1245dd4e5b -PYTHON_CRCMOD_SETUP_TYPE = distutils +PYTHON_CRCMOD_SETUP_TYPE = setuptools PYTHON_CRCMOD_LICENSE = MIT PYTHON_CRCMOD_LICENSE_FILES = LICENSE diff --git a/package/python-crontab/python-crontab.hash b/package/python-crontab/python-crontab.hash index d9519096dfa4..10ba469d5a86 100644 --- a/package/python-crontab/python-crontab.hash +++ b/package/python-crontab/python-crontab.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/python-crontab/json -md5 0a71aa83eed18752c2850632d84cfd89 python-crontab-2.7.1.tar.gz -sha256 b21af4647c7bbb848fef2f020616c6b0289dcb9f94b4f991a55310ff9bec5749 python-crontab-2.7.1.tar.gz +md5 1675bdeeb821441b8b4c35e0a7ba861c python-crontab-3.0.0.tar.gz +sha256 79fb7465039ddfd4fb93d072d6ee0d45c1ac8bf1597f0686ea14fd4361dba379 python-crontab-3.0.0.tar.gz # Locally computed sha256 checksums sha256 da7eabb7bafdf7d3ae5e9f223aa5bdc1eece45ac569dc21b3b037520b4464768 COPYING diff --git a/package/python-crontab/python-crontab.mk b/package/python-crontab/python-crontab.mk index 1c2802ef613e..21a9edef9b8c 100644 --- a/package/python-crontab/python-crontab.mk +++ b/package/python-crontab/python-crontab.mk @@ -4,8 +4,8 @@ # ################################################################################ -PYTHON_CRONTAB_VERSION = 2.7.1 -PYTHON_CRONTAB_SITE = https://files.pythonhosted.org/packages/6a/b6/94d861e868698b8e3f288f7e4684e30535b0d9a6b38316ee0a3d4d31e6ae +PYTHON_CRONTAB_VERSION = 3.0.0 +PYTHON_CRONTAB_SITE = https://files.pythonhosted.org/packages/fb/6f/14adf2570e83c90f3f5af1af5225a70f914ba9e7ab9d08e675c5f6887102 PYTHON_CRONTAB_SETUP_TYPE = setuptools PYTHON_CRONTAB_LICENSE = LGPL-3.0+ PYTHON_CRONTAB_LICENSE_FILES = COPYING diff --git a/package/python-crossbar/Config.in b/package/python-crossbar/Config.in index aadcb2c3609f..357be4803c1b 100644 --- a/package/python-crossbar/Config.in +++ b/package/python-crossbar/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_PYTHON_CROSSBAR depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS # python-cryptography depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS # python-numpy depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL # python-numpy + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_9 # python-numpy depends on BR2_INSTALL_LIBSTDCPP # python-autobahn's compress and serialization # All the following dependencies are runtime dependencies. It # matches almost 1:1 the requirements-min.txt from crossbar @@ -64,8 +65,8 @@ config BR2_PACKAGE_PYTHON_CROSSBAR https://pypi.python.org/pypi/crossbar -comment "python-crossbar needs a glibc or musl toolchain w/ C++" +comment "python-crossbar needs a glibc or musl toolchain w/ C++, gcc >= 9" depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS depends on !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) || \ - !BR2_INSTALL_LIBSTDCPP + !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_9 diff --git a/package/python-cryptography/python-cryptography.hash b/package/python-cryptography/python-cryptography.hash index a23944a06f68..e08301475005 100644 --- a/package/python-cryptography/python-cryptography.hash +++ b/package/python-cryptography/python-cryptography.hash @@ -1,5 +1,5 @@ # Locally calculated after vendoring -sha256 531348679f144d118156be5b17ddac750974cdcd9f44bb0a7cfd7ddcfee79c80 cryptography-39.0.1.tar.gz +sha256 405c9a6271e1a088ea0b432bc2094e2e8baadb2241e192ce9c73a7cc9793b127 cryptography-39.0.2.tar.gz # Locally computed sha256 checksums sha256 43dad2cc752ab721cd9a9f36ece70fb53ab7713551f2d3d8694d8e8c5a06d6e2 LICENSE sha256 aac73b3148f6d1d7111dbca32099f68d26c644c6813ae1e4f05f6579aa2663fe LICENSE.APACHE diff --git a/package/python-cryptography/python-cryptography.mk b/package/python-cryptography/python-cryptography.mk index a130b2d10d96..07c88ec3da61 100644 --- a/package/python-cryptography/python-cryptography.mk +++ b/package/python-cryptography/python-cryptography.mk @@ -4,39 +4,17 @@ # ################################################################################ -PYTHON_CRYPTOGRAPHY_VERSION = 39.0.1 +PYTHON_CRYPTOGRAPHY_VERSION = 39.0.2 PYTHON_CRYPTOGRAPHY_SOURCE = cryptography-$(PYTHON_CRYPTOGRAPHY_VERSION).tar.gz -PYTHON_CRYPTOGRAPHY_SITE = https://files.pythonhosted.org/packages/6a/f5/a729774d087e50fffd1438b3877a91e9281294f985bda0fd15bf99016c78 -PYTHON_CRYPTOGRAPHY_SETUP_TYPE = setuptools +PYTHON_CRYPTOGRAPHY_SITE = https://files.pythonhosted.org/packages/fa/f3/f4b8c175ea9a1de650b0085858059050b7953a93d66c97ed89b93b232996 +PYTHON_CRYPTOGRAPHY_SETUP_TYPE = setuptools-rust PYTHON_CRYPTOGRAPHY_LICENSE = Apache-2.0 or BSD-3-Clause PYTHON_CRYPTOGRAPHY_LICENSE_FILES = LICENSE LICENSE.APACHE LICENSE.BSD PYTHON_CRYPTOGRAPHY_CPE_ID_VENDOR = cryptography_project PYTHON_CRYPTOGRAPHY_CPE_ID_PRODUCT = cryptography -PYTHON_CRYPTOGRAPHY_DEPENDENCIES = \ - host-python-setuptools-rust \ - host-python-cffi \ - host-rustc \ - openssl -HOST_PYTHON_CRYPTOGRAPHY_DEPENDENCIES = \ - host-python-setuptools-rust \ - host-python-cffi \ - host-rustc \ - host-openssl -PYTHON_CRYPTOGRAPHY_ENV = \ - $(PKG_CARGO_ENV) \ - PYO3_CROSS_LIB_DIR="$(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)" -HOST_PYTHON_CRYPTOGRAPHY_ENV = \ - $(HOST_PKG_CARGO_ENV) \ - PYO3_CROSS_LIB_DIR="$(HOST_DIR)/lib/python$(PYTHON3_VERSION_MAJOR)" -# We need to vendor the Cargo crates at download time -PYTHON_CRYPTOGRAPHY_DOWNLOAD_POST_PROCESS = cargo -PYTHON_CRYPTOGRAPHY_DOWNLOAD_DEPENDENCIES = host-rustc -PYTHON_CRYPTOGRAPHY_DL_ENV = \ - $(PKG_CARGO_ENV) \ - BR_CARGO_MANIFEST_PATH=src/rust/Cargo.toml -HOST_PYTHON_CRYPTOGRAPHY_DL_ENV = \ - $(HOST_PKG_CARGO_ENV) \ - BR_CARGO_MANIFEST_PATH=src/rust/Cargo.toml +PYTHON_CRYPTOGRAPHY_CARGO_MANIFEST_PATH = src/rust/Cargo.toml +PYTHON_CRYPTOGRAPHY_DEPENDENCIES = host-python-cffi openssl +HOST_PYTHON_CRYPTOGRAPHY_DEPENDENCIES = host-python-cffi host-openssl $(eval $(python-package)) $(eval $(host-python-package)) diff --git a/package/python-cssutils/python-cssutils.hash b/package/python-cssutils/python-cssutils.hash index cb989131a3ef..d93135a98947 100644 --- a/package/python-cssutils/python-cssutils.hash +++ b/package/python-cssutils/python-cssutils.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/cssutils/json -md5 b01ea364e79eada181c3ae46d69249af cssutils-2.6.0.tar.gz -sha256 f7dcd23c1cec909fdf3630de346e1413b7b2555936dec14ba2ebb9913bf0818e cssutils-2.6.0.tar.gz +md5 11707e5da7c40bd98e5b4998489f10e0 cssutils-2.9.0.tar.gz +sha256 89477b3d17d790e97b9fb4def708767061055795aae6f7c82ae32e967c9be4cd cssutils-2.9.0.tar.gz # Locally computed sha256 checksums sha256 03c570a068086ee577dcd795519ea93462b2ed2fcb6dcc4dfce56a71a2fd6e5a COPYING.LESSER diff --git a/package/python-cssutils/python-cssutils.mk b/package/python-cssutils/python-cssutils.mk index fff9e393f325..be5be30eee27 100644 --- a/package/python-cssutils/python-cssutils.mk +++ b/package/python-cssutils/python-cssutils.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CSSUTILS_VERSION = 2.6.0 +PYTHON_CSSUTILS_VERSION = 2.9.0 PYTHON_CSSUTILS_SOURCE = cssutils-$(PYTHON_CSSUTILS_VERSION).tar.gz -PYTHON_CSSUTILS_SITE = https://files.pythonhosted.org/packages/43/d5/505d96b7456fd334f8b963c05bd9425dacd317e209bb9adf103613339325 +PYTHON_CSSUTILS_SITE = https://files.pythonhosted.org/packages/b4/65/a054545c81eb87af898d664043578b8444ea3ded656db3da8f9d9fa21334 PYTHON_CSSUTILS_LICENSE = LGPL-3.0+ PYTHON_CSSUTILS_LICENSE_FILES = COPYING.LESSER PYTHON_CSSUTILS_SETUP_TYPE = setuptools diff --git a/package/python-cycler/python-cycler.hash b/package/python-cycler/python-cycler.hash index cef416a86d41..4c33c293a5ff 100644 --- a/package/python-cycler/python-cycler.hash +++ b/package/python-cycler/python-cycler.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/cycler/json -md5 4d0c25f418956e91c47163179682e0ef cycler-0.11.0.tar.gz -sha256 9c87405839a19696e837b3b818fed3f5f69f16f1eec1a1ad77e043dcea9c772f cycler-0.11.0.tar.gz +md5 16905ad17e5724a6919f64d46c4e7143 cycler-0.12.1.tar.gz +sha256 88bb128f02ba341da8ef447245a9e138fae777f6a23943da4540077d3601eb1c cycler-0.12.1.tar.gz # Locally computed sha256 checksums sha256 f1218143d766da3fea66f13396b7f15df46a83303f29bf96ba6e98eb4d42f408 LICENSE diff --git a/package/python-cycler/python-cycler.mk b/package/python-cycler/python-cycler.mk index 03155d724194..df7abdf92792 100644 --- a/package/python-cycler/python-cycler.mk +++ b/package/python-cycler/python-cycler.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CYCLER_VERSION = 0.11.0 +PYTHON_CYCLER_VERSION = 0.12.1 PYTHON_CYCLER_SOURCE = cycler-$(PYTHON_CYCLER_VERSION).tar.gz -PYTHON_CYCLER_SITE = https://files.pythonhosted.org/packages/34/45/a7caaacbfc2fa60bee42effc4bcc7d7c6dbe9c349500e04f65a861c15eb9 +PYTHON_CYCLER_SITE = https://files.pythonhosted.org/packages/a9/95/a3dbbb5028f35eafb79008e7522a75244477d2838f38cbb722248dabc2a8 PYTHON_CYCLER_LICENSE = BSD-3-Clause PYTHON_CYCLER_LICENSE_FILES = LICENSE PYTHON_CYCLER_SETUP_TYPE = setuptools diff --git a/package/python-cython/python-cython.hash b/package/python-cython/python-cython.hash index e7e86264d2d4..08ad8f6d84a8 100644 --- a/package/python-cython/python-cython.hash +++ b/package/python-cython/python-cython.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/cython/json -md5 bd42c555cb2298b8a94fa8de7ee679ba Cython-0.29.33.tar.gz -sha256 5040764c4a4d2ce964a395da24f0d1ae58144995dab92c6b96f44c3f4d72286a Cython-0.29.33.tar.gz +md5 a4d0f9fbc9c137f1a88937cd40e8c5ee Cython-0.29.36.tar.gz +sha256 41c0cfd2d754e383c9eeb95effc9aa4ab847d0c9747077ddd7c0dcb68c3bc01f Cython-0.29.36.tar.gz # Locally computed sha256 checksums sha256 a6cba85bc92e0cff7a450b1d873c0eaa2e9fc96bf472df0247a26bec77bf3ff9 LICENSE.txt sha256 e1eb1c49a8508e8173dac30157e4a6439a44ad8846194746c424fbc3fc2b95d7 COPYING.txt diff --git a/package/python-cython/python-cython.mk b/package/python-cython/python-cython.mk index b11d75b33d36..47e105c06507 100644 --- a/package/python-cython/python-cython.mk +++ b/package/python-cython/python-cython.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_CYTHON_VERSION = 0.29.33 +PYTHON_CYTHON_VERSION = 0.29.36 PYTHON_CYTHON_SOURCE = Cython-$(PYTHON_CYTHON_VERSION).tar.gz -PYTHON_CYTHON_SITE = https://files.pythonhosted.org/packages/dc/f6/e8e302f9942cbebede88b1a0c33d0be3a738c3ac37abae87254d58ffc51c +PYTHON_CYTHON_SITE = https://files.pythonhosted.org/packages/38/db/df0e99d6c5fe19ee5c981d22aad557be4bdeed3ecfae25d47b84b07f0f98 PYTHON_CYTHON_SETUP_TYPE = setuptools PYTHON_CYTHON_LICENSE = Apache-2.0 PYTHON_CYTHON_LICENSE_FILES = COPYING.txt LICENSE.txt diff --git a/package/python-daemon/python-daemon.hash b/package/python-daemon/python-daemon.hash index 005a96920764..695b8fb9b301 100644 --- a/package/python-daemon/python-daemon.hash +++ b/package/python-daemon/python-daemon.hash @@ -1,6 +1,6 @@ -# md5, sha256 https://pypi.org/pypi/python-daemon/json -md5 b7397fe73d516dc14921500a1245b41c python-daemon-2.3.2.tar.gz -sha256 3deeb808e72b6b89f98611889e11cc33754f5b2c1517ecfa1aaf25f402051fb5 python-daemon-2.3.2.tar.gz +# md5, sha256 from https://pypi.org/pypi/python-daemon/json +md5 4c369b8c6d3de956d8f9dfb2c872c284 python-daemon-3.0.1.tar.gz +sha256 6c57452372f7eaff40934a1c03ad1826bf5e793558e87fef49131e6464b4dae5 python-daemon-3.0.1.tar.gz # Locally computed sha256 sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.ASF-2 sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE.GPL-3 diff --git a/package/python-daemon/python-daemon.mk b/package/python-daemon/python-daemon.mk index aa8019f4be47..f4d4205a313c 100644 --- a/package/python-daemon/python-daemon.mk +++ b/package/python-daemon/python-daemon.mk @@ -4,8 +4,8 @@ # ################################################################################ -PYTHON_DAEMON_VERSION = 2.3.2 -PYTHON_DAEMON_SITE = https://files.pythonhosted.org/packages/d9/3c/727b06abb46fead341a2bdad04ba4a4db5395c44c45d8ba0aa82b517e462 +PYTHON_DAEMON_VERSION = 3.0.1 +PYTHON_DAEMON_SITE = https://files.pythonhosted.org/packages/84/50/97b81327fccbb70eb99f3c95bd05a0c9d7f13fb3f4cfd975885110d1205a PYTHON_DAEMON_LICENSE = Apache-2.0 (library), GPL-3.0+ (test, build) PYTHON_DAEMON_LICENSE_FILES = LICENSE.ASF-2 LICENSE.GPL-3 PYTHON_DAEMON_SETUP_TYPE = setuptools diff --git a/package/python-dataproperty/python-dataproperty.hash b/package/python-dataproperty/python-dataproperty.hash index 3edec5cc8c2d..ee5644a7ff74 100644 --- a/package/python-dataproperty/python-dataproperty.hash +++ b/package/python-dataproperty/python-dataproperty.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/dataproperty/json -md5 8c8864a1dc456d25456b5c4de99a3fb6 DataProperty-0.55.0.tar.gz -sha256 73ccf10f8b123968210438a1a1aa859ea6d5a16b4e1f4d307da7a81b838e79fa DataProperty-0.55.0.tar.gz +md5 aca50cd5f543b7831d8a48ab1c02a152 DataProperty-1.0.1.tar.gz +sha256 723e5729fa6e885e127a771a983ee1e0e34bb141aca4ffe1f0bfa7cde34650a4 DataProperty-1.0.1.tar.gz # Locally computed sha256 checksums sha256 a93d75bcb0774e2990106380cadad6dcb2de193c55d435ffc56ba345a08b1dc2 LICENSE diff --git a/package/python-dataproperty/python-dataproperty.mk b/package/python-dataproperty/python-dataproperty.mk index 0feef5531033..6cac4f27e5d8 100644 --- a/package/python-dataproperty/python-dataproperty.mk +++ b/package/python-dataproperty/python-dataproperty.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_DATAPROPERTY_VERSION = 0.55.0 +PYTHON_DATAPROPERTY_VERSION = 1.0.1 PYTHON_DATAPROPERTY_SOURCE = DataProperty-$(PYTHON_DATAPROPERTY_VERSION).tar.gz -PYTHON_DATAPROPERTY_SITE = https://files.pythonhosted.org/packages/85/6e/627eba99858c486c5b82468e4aaf60808c2e35d1bb768ee5da712b6fe9be +PYTHON_DATAPROPERTY_SITE = https://files.pythonhosted.org/packages/48/e2/31ffb67d2a9ab4ff70b106e08ad01a3e7696f8d409457042d1eb18244f82 PYTHON_DATAPROPERTY_SETUP_TYPE = setuptools PYTHON_DATAPROPERTY_LICENSE = MIT PYTHON_DATAPROPERTY_LICENSE_FILES = LICENSE diff --git a/package/python-dbus-fast/Config.in b/package/python-dbus-fast/Config.in index c9562fecfa01..b7168106d7a0 100644 --- a/package/python-dbus-fast/Config.in +++ b/package/python-dbus-fast/Config.in @@ -2,7 +2,6 @@ config BR2_PACKAGE_PYTHON_DBUS_FAST bool "python-dbus-fast" select BR2_PACKAGE_HOST_PYTHON_CYTHON select BR2_PACKAGE_PYTHON3_PYEXPAT # runtime - select BR2_PACKAGE_PYTHON_ASYNC_TIMEOUT # runtime help A faster version of dbus-next, a DBus library for Python with asyncio support. diff --git a/package/python-dbus-fast/python-dbus-fast.hash b/package/python-dbus-fast/python-dbus-fast.hash index e9a3992f8ef5..08d2675443e7 100644 --- a/package/python-dbus-fast/python-dbus-fast.hash +++ b/package/python-dbus-fast/python-dbus-fast.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/dbus-fast/json -md5 21e3675168e3dbe807c6c8a29267241f dbus_fast-1.84.0.tar.gz -sha256 d64f1b68c1c81268e846471caeb9264a9306a6c6ad356c30d5cdf7d1ecc251a1 dbus_fast-1.84.0.tar.gz +md5 791ce3b0c04099959161a18ae983bf25 dbus_fast-2.12.0.tar.gz +sha256 849478e11d251fa4ebb99ce5bfee332cb6383c63ef0bc97bae23cef4e0badf9c dbus_fast-2.12.0.tar.gz # Locally computed sha256 checksums sha256 c37e9c75110e01d1f0c5360dc7d7776a30ac5f70d2440db214423e4b7a77a6af LICENSE diff --git a/package/python-dbus-fast/python-dbus-fast.mk b/package/python-dbus-fast/python-dbus-fast.mk index 9dd88f613f24..b890177c74ac 100644 --- a/package/python-dbus-fast/python-dbus-fast.mk +++ b/package/python-dbus-fast/python-dbus-fast.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_DBUS_FAST_VERSION = 1.84.0 +PYTHON_DBUS_FAST_VERSION = 2.12.0 PYTHON_DBUS_FAST_SOURCE = dbus_fast-$(PYTHON_DBUS_FAST_VERSION).tar.gz -PYTHON_DBUS_FAST_SITE = https://files.pythonhosted.org/packages/81/67/a83522d6692a72911c3586e2fcd2363ce22d1522a7e17e1012f255a6083b +PYTHON_DBUS_FAST_SITE = https://files.pythonhosted.org/packages/f5/8c/220fcbe4337b842d730d5752f207fc8efd3a02405c71c329e61218e947b8 PYTHON_DBUS_FAST_SETUP_TYPE = setuptools PYTHON_DBUS_FAST_LICENSE = MIT PYTHON_DBUS_FAST_LICENSE_FILES = LICENSE diff --git a/package/python-dicttoxml/python-dicttoxml.mk b/package/python-dicttoxml/python-dicttoxml.mk index c26c16b72a3d..eb0049fd03cb 100644 --- a/package/python-dicttoxml/python-dicttoxml.mk +++ b/package/python-dicttoxml/python-dicttoxml.mk @@ -7,7 +7,7 @@ PYTHON_DICTTOXML_VERSION = 1.7.16 PYTHON_DICTTOXML_SOURCE = dicttoxml-$(PYTHON_DICTTOXML_VERSION).tar.gz PYTHON_DICTTOXML_SITE = https://files.pythonhosted.org/packages/ee/c9/3132427f9e64d572688e6a1cbe3d542d1a03f676b81fb600f3d1fd7d2ec5 -PYTHON_DICTTOXML_SETUP_TYPE = distutils +PYTHON_DICTTOXML_SETUP_TYPE = setuptools PYTHON_DICTTOXML_LICENSE = GPL-2.0 PYTHON_DICTTOXML_LICENSE_FILES = LICENCE.txt diff --git a/package/python-distlib/python-distlib.hash b/package/python-distlib/python-distlib.hash new file mode 100644 index 000000000000..506d10824c95 --- /dev/null +++ b/package/python-distlib/python-distlib.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/distlib/json +md5 44e4357e35bbd77fdf1b81e174e34f20 distlib-0.3.7.tar.gz +sha256 9dafe54b34a028eafd95039d5e5d4851a13734540f1331060d31c9916e7147a8 distlib-0.3.7.tar.gz +# Locally computed sha256 checksums +sha256 808e10c8a6ab8deb149ff9b3fb19f447a808094606d712a9ca57fead3552599d LICENSE.txt diff --git a/package/python-distlib/python-distlib.mk b/package/python-distlib/python-distlib.mk new file mode 100644 index 000000000000..cae025dbdbd6 --- /dev/null +++ b/package/python-distlib/python-distlib.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-distlib +# +################################################################################ + +PYTHON_DISTLIB_VERSION = 0.3.7 +PYTHON_DISTLIB_SOURCE = distlib-$(PYTHON_DISTLIB_VERSION).tar.gz +PYTHON_DISTLIB_SITE = https://files.pythonhosted.org/packages/29/34/63be59bdf57b3a8a8dcc252ef45c40f3c018777dc8843d45dd9b869868f0 +PYTHON_DISTLIB_SETUP_TYPE = setuptools +PYTHON_DISTLIB_LICENSE = PSF-2.0 +PYTHON_DISTLIB_LICENSE_FILES = LICENSE.txt + +$(eval $(host-python-package)) diff --git a/package/python-django/Config.in b/package/python-django/Config.in index 5830cadc93d0..c236a6dc0b47 100644 --- a/package/python-django/Config.in +++ b/package/python-django/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_PYTHON_DJANGO bool "python-django" select BR2_PACKAGE_PYTHON3_UNICODEDATA select BR2_PACKAGE_PYTHON3_PYEXPAT + select BR2_PACKAGE_PYTHON3_ZLIB # runtime select BR2_PACKAGE_PYTHON_ASGIREF # runtime select BR2_PACKAGE_PYTHON_SQLPARSE # runtime help diff --git a/package/python-django/python-django.hash b/package/python-django/python-django.hash index cb03b33bfe82..98c338f9d49b 100644 --- a/package/python-django/python-django.hash +++ b/package/python-django/python-django.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/django/json -md5 626f96c63ddfab24bab90d80c87a7aad Django-4.1.7.tar.gz -sha256 44f714b81c5f190d9d2ddad01a532fe502fa01c4cb8faf1d081f4264ed15dcd8 Django-4.1.7.tar.gz +md5 d7afe6a68b631725a1dac116a7832b10 Django-4.2.7.tar.gz +sha256 8e0f1c2c2786b5c0e39fe1afce24c926040fad47c8ea8ad30aaf1188df29fc41 Django-4.2.7.tar.gz # Locally computed sha256 checksums sha256 b846415d1b514e9c1dff14a22deb906d794bc546ca6129f950a18cd091e2a669 LICENSE diff --git a/package/python-django/python-django.mk b/package/python-django/python-django.mk index e8c91cf51f42..9b710412fa08 100644 --- a/package/python-django/python-django.mk +++ b/package/python-django/python-django.mk @@ -4,11 +4,10 @@ # ################################################################################ -PYTHON_DJANGO_VERSION = 4.1.7 +PYTHON_DJANGO_VERSION = 4.2.7 PYTHON_DJANGO_SOURCE = Django-$(PYTHON_DJANGO_VERSION).tar.gz # The official Django site has an unpractical URL -PYTHON_DJANGO_SITE = https://files.pythonhosted.org/packages/9f/a7/07939866241b7e8f8d3bf164b7d6ad428163723e29dd472700f8ab0e5fd5 - +PYTHON_DJANGO_SITE = https://files.pythonhosted.org/packages/5c/62/0c6ab2f3ac9a242b4562b6be1c418685fa7d1ccb8ca302cdb97e0b23cf4b PYTHON_DJANGO_LICENSE = BSD-3-Clause PYTHON_DJANGO_LICENSE_FILES = LICENSE PYTHON_DJANGO_CPE_ID_VENDOR = djangoproject diff --git a/package/python-dnspython/0001-Remove-spurious-wheel-build-dependency.patch b/package/python-dnspython/0001-Remove-spurious-wheel-build-dependency.patch deleted file mode 100644 index b43217edad5b..000000000000 --- a/package/python-dnspython/0001-Remove-spurious-wheel-build-dependency.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 53b989e4ce32c941d748ad33502600497595914a Mon Sep 17 00:00:00 2001 -From: James Hilliard -Date: Wed, 2 Nov 2022 14:01:58 -0600 -Subject: [PATCH] Remove spurious wheel build dependency - -Wheel isn't a build dependency so it shouldn't be in setup_requires. -Signed-off-by: James Hilliard -[james.hilliard1@gmail.com: backport from upstream commit -53b989e4ce32c941d748ad33502600497595914a] ---- - setup.cfg | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/setup.cfg b/setup.cfg -index 0abd270..2cb3e06 100644 ---- a/setup.cfg -+++ b/setup.cfg -@@ -46,7 +46,7 @@ packages = - dns.rdtypes.CH - python_requires = >=3.7 - test_suite = tests --setup_requires = setuptools>=44; wheel; setuptools_scm[toml]>=3.4.3 -+setup_requires = setuptools>=44; setuptools_scm[toml]>=3.4.3 - - [options.extras_require] - DOH = httpx>=0.21.1; h2>=4.1.0; requests; requests-toolbelt --- -2.34.1 - diff --git a/package/python-dnspython/python-dnspython.hash b/package/python-dnspython/python-dnspython.hash index 29441b41ea3e..77ffb5dedcdb 100644 --- a/package/python-dnspython/python-dnspython.hash +++ b/package/python-dnspython/python-dnspython.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/dnspython/json -md5 c7172f4115cd7b60fd5037cfcd8f9408 dnspython-2.2.1.tar.gz -sha256 0f7569a4a6ff151958b64304071d370daa3243d15941a7beedf0c9fe5105603e dnspython-2.2.1.tar.gz +md5 fac4e1580e5e9dfee722cb97bc073722 dnspython-2.4.2.tar.gz +sha256 8dcfae8c7460a2f84b4072e26f1c9f4101ca20c071649cb7c34e8b6a93d58984 dnspython-2.4.2.tar.gz # Locally computed sha256 checksums sha256 c3ea3ff5654b329c19d3bc5f7481af623c3dded4a6145585499f843ad3d741cd LICENSE diff --git a/package/python-dnspython/python-dnspython.mk b/package/python-dnspython/python-dnspython.mk index 43030ae476bd..1459ec8881ef 100644 --- a/package/python-dnspython/python-dnspython.mk +++ b/package/python-dnspython/python-dnspython.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_DNSPYTHON_VERSION = 2.2.1 +PYTHON_DNSPYTHON_VERSION = 2.4.2 PYTHON_DNSPYTHON_SOURCE = dnspython-$(PYTHON_DNSPYTHON_VERSION).tar.gz -PYTHON_DNSPYTHON_SITE = https://files.pythonhosted.org/packages/99/fb/e7cd35bba24295ad41abfdff30f6b4c271fd6ac70d20132fa503c3e768e0 +PYTHON_DNSPYTHON_SITE = https://files.pythonhosted.org/packages/65/2d/372a20e52a87b2ba0160997575809806111a72e18aa92738daccceb8d2b9 PYTHON_DNSPYTHON_LICENSE = ISC PYTHON_DNSPYTHON_LICENSE_FILES = LICENSE PYTHON_DNSPYTHON_SETUP_TYPE = setuptools diff --git a/package/python-docker/Config.in b/package/python-docker/Config.in index b2296f42eb92..944992f25198 100644 --- a/package/python-docker/Config.in +++ b/package/python-docker/Config.in @@ -2,8 +2,9 @@ config BR2_PACKAGE_PYTHON_DOCKER bool "python-docker" # docker-engine may be running on another host, so no other dependency select BR2_PACKAGE_PYTHON3_SSL # runtime + select BR2_PACKAGE_PYTHON_PACKAGING # runtime select BR2_PACKAGE_PYTHON_REQUESTS # runtime - select BR2_PACKAGE_PYTHON_SIX # runtime + select BR2_PACKAGE_PYTHON_URLLIB3 # runtime select BR2_PACKAGE_PYTHON_WEBSOCKET_CLIENT # runtime help A Python library for the Docker Engine API. diff --git a/package/python-docker/python-docker.hash b/package/python-docker/python-docker.hash index 3fc3c4f0f405..8e561e93a789 100644 --- a/package/python-docker/python-docker.hash +++ b/package/python-docker/python-docker.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/docker/json -md5 8e85e23ed30a3d07129e197d35e56eb4 docker-6.0.1.tar.gz -sha256 896c4282e5c7af5c45e8b683b0b0c33932974fe6e50fc6906a0a83616ab3da97 docker-6.0.1.tar.gz +md5 c319e75054a226776f32797e56ec82da docker-6.1.3.tar.gz +sha256 aa6d17830045ba5ef0168d5eaa34d37beeb113948c413affe1d5991fc11f9a20 docker-6.1.3.tar.gz # Locally computed sha256 checksums sha256 f2f0b07fa5e492c11d27aa0d2f3f1a0e64b9d17f32d8aa489ae2af9609af33b2 LICENSE diff --git a/package/python-docker/python-docker.mk b/package/python-docker/python-docker.mk index 4da972e017b9..ab03ac6af0b2 100644 --- a/package/python-docker/python-docker.mk +++ b/package/python-docker/python-docker.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_DOCKER_VERSION = 6.0.1 +PYTHON_DOCKER_VERSION = 6.1.3 PYTHON_DOCKER_SOURCE = docker-$(PYTHON_DOCKER_VERSION).tar.gz -PYTHON_DOCKER_SITE = https://files.pythonhosted.org/packages/79/26/6609b51ecb418e12d1534d00b888ce7e108f38b47dc6cd589598d5c6aaa2 +PYTHON_DOCKER_SITE = https://files.pythonhosted.org/packages/f0/73/f7c9a14e88e769f38cb7fb45aa88dfd795faa8e18aea11bababf6e068d5e PYTHON_DOCKER_SETUP_TYPE = setuptools PYTHON_DOCKER_LICENSE = Apache-2.0 PYTHON_DOCKER_LICENSE_FILES = LICENSE diff --git a/package/python-docutils/python-docutils.hash b/package/python-docutils/python-docutils.hash index 6a36f362e9db..2386cc2891d1 100644 --- a/package/python-docutils/python-docutils.hash +++ b/package/python-docutils/python-docutils.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/docutils/json -md5 0afa992a6e93db892107c3f087d0d9df docutils-0.19.tar.gz -sha256 33995a6753c30b7f577febfc2c50411fec6aac7f7ffeb7c4cfe5991072dcf9e6 docutils-0.19.tar.gz +md5 93bcfe0065cf1d0b6a0bcabeca7a2335 docutils-0.20.1.tar.gz +sha256 f08a4e276c3a1583a86dce3e34aba3fe04d02bba2dd51ed16106244e8a923e3b docutils-0.20.1.tar.gz # Locally computed sha256 checksums -sha256 16b78bd9994588326a871ac39f64480969ebeb57ecd46a31874744560e72390a COPYING.txt +sha256 a0d7ee761e8d757c0b904518514f98233fd94f2398da3703130d15142ca47a77 COPYING.txt diff --git a/package/python-docutils/python-docutils.mk b/package/python-docutils/python-docutils.mk index d06521d10f64..2b496f0d468f 100644 --- a/package/python-docutils/python-docutils.mk +++ b/package/python-docutils/python-docutils.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_DOCUTILS_VERSION = 0.19 +PYTHON_DOCUTILS_VERSION = 0.20.1 PYTHON_DOCUTILS_SOURCE = docutils-$(PYTHON_DOCUTILS_VERSION).tar.gz -PYTHON_DOCUTILS_SITE = https://files.pythonhosted.org/packages/6b/5c/330ea8d383eb2ce973df34d1239b3b21e91cd8c865d21ff82902d952f91f +PYTHON_DOCUTILS_SITE = https://files.pythonhosted.org/packages/1f/53/a5da4f2c5739cf66290fac1431ee52aff6851c7c8ffd8264f13affd7bcdd PYTHON_DOCUTILS_LICENSE = Public Domain, BSD-2-Clause, BSD-3-Clause, Python-2.0, GPL-3.0+ (emacs mode) PYTHON_DOCUTILS_LICENSE_FILES = COPYING.txt PYTHON_DOCUTILS_SETUP_TYPE = setuptools diff --git a/package/python-dominate/python-dominate.hash b/package/python-dominate/python-dominate.hash index 89293baec60c..9993dbe95fc5 100644 --- a/package/python-dominate/python-dominate.hash +++ b/package/python-dominate/python-dominate.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/dominate/json -md5 77bba29beaaac4dfb657092cd89db033 dominate-2.7.0.tar.gz -sha256 520101360892ebf9d0553f67d37e359ff92403d8a1e33814030503088a05da49 dominate-2.7.0.tar.gz +md5 df2d30e7c2e7f1e5b085a58820e4cc94 dominate-2.8.0.tar.gz +sha256 4c90c3befaf88e612b71f4b39af7bcbef8977acfa855cec957225a8fbf504007 dominate-2.8.0.tar.gz # Locally computed sha256 checksums sha256 9ccf26cfe845e0eb8bb58053e47366e7ab6b697ae010f7650978d4b71b7d1fc1 LICENSE.txt diff --git a/package/python-dominate/python-dominate.mk b/package/python-dominate/python-dominate.mk index 0f3687de5ff4..39e2edb82e01 100644 --- a/package/python-dominate/python-dominate.mk +++ b/package/python-dominate/python-dominate.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_DOMINATE_VERSION = 2.7.0 +PYTHON_DOMINATE_VERSION = 2.8.0 PYTHON_DOMINATE_SOURCE = dominate-$(PYTHON_DOMINATE_VERSION).tar.gz -PYTHON_DOMINATE_SITE = https://files.pythonhosted.org/packages/12/d7/5e5f50f5d5bdd4282d2a70b9479c1d91d6628bebd4829e455cdf7366a92e +PYTHON_DOMINATE_SITE = https://files.pythonhosted.org/packages/13/3d/8d22916c12184f0c4930b9cdfb136a130e8d8eacf5942fc9883f2a189f6a PYTHON_DOMINATE_SETUP_TYPE = setuptools PYTHON_DOMINATE_LICENSE = LGPL-3.0+ PYTHON_DOMINATE_LICENSE_FILES = LICENSE.txt diff --git a/package/python-dtschema/Config.in b/package/python-dtschema/Config.in index 961d0e04b209..5baad45e6430 100644 --- a/package/python-dtschema/Config.in +++ b/package/python-dtschema/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_PYTHON_DTSCHEMA bool "python-dtschema" + depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS # python-jsonschema -> python-rpds-py select BR2_PACKAGE_PYTHON_JSONSCHEMA # runtime select BR2_PACKAGE_PYTHON_PYLIBFDT # runtime select BR2_PACKAGE_PYTHON_RFC3987 # runtime diff --git a/package/python-dtschema/python-dtschema.hash b/package/python-dtschema/python-dtschema.hash index 734ff3f68167..a391e4ab218d 100644 --- a/package/python-dtschema/python-dtschema.hash +++ b/package/python-dtschema/python-dtschema.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/dtschema/json -md5 3fd3ba2d98ad320c06277274ca40d045 dtschema-2022.12.tar.gz -sha256 f532d433a915e507d4b426b7ef57a6730d23c0938b682fb4866f9dfa80a58ec6 dtschema-2022.12.tar.gz +md5 bb0ecd8b8680b76f7cb55da002f58d62 dtschema-2023.9.tar.gz +sha256 52c6d271065155ca134d8a0bcf7e0ebed67b3991acbbd7a98b74eb8642f67d87 dtschema-2023.9.tar.gz # Locally computed sha256 checksums sha256 ca0d66263406dc684fe9db60577b234f65ffdf620d7e041c708e969447b69111 LICENSE.txt diff --git a/package/python-dtschema/python-dtschema.mk b/package/python-dtschema/python-dtschema.mk index dbdf43160cc1..0fc13073f80b 100644 --- a/package/python-dtschema/python-dtschema.mk +++ b/package/python-dtschema/python-dtschema.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_DTSCHEMA_VERSION = 2022.12 +PYTHON_DTSCHEMA_VERSION = 2023.9 PYTHON_DTSCHEMA_SOURCE = dtschema-$(PYTHON_DTSCHEMA_VERSION).tar.gz -PYTHON_DTSCHEMA_SITE = https://files.pythonhosted.org/packages/f2/61/7d7e907ea6eed33708ce07766258b961fe476221fbd2e759a1921487e381 +PYTHON_DTSCHEMA_SITE = https://files.pythonhosted.org/packages/24/97/daa9109a854727cd4e1a715e4123198e5abd47db10c131de5bc0cef0acc3 PYTHON_DTSCHEMA_SETUP_TYPE = setuptools PYTHON_DTSCHEMA_LICENSE = BSD-2-Clause PYTHON_DTSCHEMA_LICENSE_FILES = LICENSE.txt diff --git a/package/python-editables/python-editables.hash b/package/python-editables/python-editables.hash index 3c28c44cc360..a34c7ad20ec8 100644 --- a/package/python-editables/python-editables.hash +++ b/package/python-editables/python-editables.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/editables/json -md5 e91709fbb0ef586cb7b785042068ab67 editables-0.3.tar.gz -sha256 167524e377358ed1f1374e61c268f0d7a4bf7dbd046c656f7b410cde16161b1a editables-0.3.tar.gz +md5 520de8c3a9dc5dfb2b365d104541c9de editables-0.5.tar.gz +sha256 309627d9b5c4adc0e668d8c6fa7bac1ba7c8c5d415c2d27f60f081f8e80d1de2 editables-0.5.tar.gz # Locally computed sha256 checksums sha256 c73e08a04e1557fdb49525fb7a579f73bcab84a254910b9350ee56daf143932d LICENSE.txt diff --git a/package/python-editables/python-editables.mk b/package/python-editables/python-editables.mk index db67e7a16d8b..e60d50f9d64d 100644 --- a/package/python-editables/python-editables.mk +++ b/package/python-editables/python-editables.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_EDITABLES_VERSION = 0.3 +PYTHON_EDITABLES_VERSION = 0.5 PYTHON_EDITABLES_SOURCE = editables-$(PYTHON_EDITABLES_VERSION).tar.gz -PYTHON_EDITABLES_SITE = https://files.pythonhosted.org/packages/01/b0/a2a87db4b6cb8e7d57004b6836faa634e0747e3e39ded126cdbe5a33ba36 +PYTHON_EDITABLES_SITE = https://files.pythonhosted.org/packages/37/4a/986d35164e2033ddfb44515168a281a7986e260d344cf369c3f52d4c3275 PYTHON_EDITABLES_LICENSE = MIT PYTHON_EDITABLES_LICENSE_FILES = LICENSE.txt PYTHON_EDITABLES_SETUP_TYPE = setuptools diff --git a/package/python-engineio/python-engineio.hash b/package/python-engineio/python-engineio.hash index 651226cc9c79..98fe647f68ad 100644 --- a/package/python-engineio/python-engineio.hash +++ b/package/python-engineio/python-engineio.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/python-engineio/json -md5 cb093c07bc5b5351e6a2edb555b02f33 python-engineio-4.3.4.tar.gz -sha256 d8d8b072799c36cadcdcc2b40d2a560ce09797ab3d2d596b2ad519a5e4df19ae python-engineio-4.3.4.tar.gz +md5 45870fb7b12e6e5dca3cb6a828f70928 python-engineio-4.8.0.tar.gz +sha256 2a32585d8fecd0118264fe0c39788670456ca9aa466d7c026d995cfff68af164 python-engineio-4.8.0.tar.gz # Locally computed sha256 checksums sha256 c9e97d3dbc1fbbcdb4f7808b282cd646db887aff4f5313fe6bbe8d4c31405a9c LICENSE diff --git a/package/python-engineio/python-engineio.mk b/package/python-engineio/python-engineio.mk index 388e66915580..e84acee88ff4 100644 --- a/package/python-engineio/python-engineio.mk +++ b/package/python-engineio/python-engineio.mk @@ -4,8 +4,8 @@ # ################################################################################ -PYTHON_ENGINEIO_VERSION = 4.3.4 -PYTHON_ENGINEIO_SITE = https://files.pythonhosted.org/packages/7e/ff/970c5d084f513fb38108cd7c90497489d7cff8666f9bfabae00a3f4e13d4 +PYTHON_ENGINEIO_VERSION = 4.8.0 +PYTHON_ENGINEIO_SITE = https://files.pythonhosted.org/packages/c4/5c/4fa0bf79eb1a433d1e9b69430b3ac818837283c642640658f12949620813 PYTHON_ENGINEIO_SETUP_TYPE = setuptools PYTHON_ENGINEIO_LICENSE = MIT PYTHON_ENGINEIO_LICENSE_FILES = LICENSE diff --git a/package/python-esptool/python-esptool.hash b/package/python-esptool/python-esptool.hash index b7246f978854..25fea229b01c 100644 --- a/package/python-esptool/python-esptool.hash +++ b/package/python-esptool/python-esptool.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/esptool/json -md5 92c38551bc33bd5271bdea033aa51610 esptool-4.4.tar.gz -sha256 8acd4dfe70819b1302861ae92894380fb4700b377f5a4739479a4ec276e0b256 esptool-4.4.tar.gz +md5 17853949fd582550a7c270f08d7691d4 esptool-4.6.2.tar.gz +sha256 549ef93eef42ee7e9462ce5a53c16df7a0c71d91b3f77e19ec15749804cdf300 esptool-4.6.2.tar.gz # Locally computed sha256 checksums sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE diff --git a/package/python-esptool/python-esptool.mk b/package/python-esptool/python-esptool.mk index 0a71e1a78bb8..c0709c64b195 100644 --- a/package/python-esptool/python-esptool.mk +++ b/package/python-esptool/python-esptool.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_ESPTOOL_VERSION = 4.4 +PYTHON_ESPTOOL_VERSION = 4.6.2 PYTHON_ESPTOOL_SOURCE = esptool-$(PYTHON_ESPTOOL_VERSION).tar.gz -PYTHON_ESPTOOL_SITE = https://files.pythonhosted.org/packages/8b/4c/82d7fe5fa0643415bbb90bebff1f861816903c481ee5156fabd6d76dc684 +PYTHON_ESPTOOL_SITE = https://files.pythonhosted.org/packages/a3/63/c757f50b606996a7e676f000b40626f65be63b3a10030563929c968e431c PYTHON_ESPTOOL_SETUP_TYPE = setuptools PYTHON_ESPTOOL_LICENSE = GPL-2.0+ PYTHON_ESPTOOL_LICENSE_FILES = LICENSE diff --git a/package/python-evdev/Config.in b/package/python-evdev/Config.in new file mode 100644 index 000000000000..33e43c1f77f2 --- /dev/null +++ b/package/python-evdev/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_PYTHON_EVDEV + bool "python-evdev" + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4 + help + Bindings to the Linux input handling subsystem. + + https://github.com/gvalkov/python-evdev + +comment "python-evdev needs a toolchain w/ headers >= 4.4" + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4 diff --git a/package/python-evdev/python-evdev.hash b/package/python-evdev/python-evdev.hash new file mode 100644 index 000000000000..9a6d0d07beb8 --- /dev/null +++ b/package/python-evdev/python-evdev.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/evdev/json +md5 905b12ef6136b518ddf418d8d5b053e4 evdev-1.6.1.tar.gz +sha256 299db8628cc73b237fc1cc57d3c2948faa0756e2a58b6194b5bf81dc2081f1e3 evdev-1.6.1.tar.gz +# Locally computed sha256 checksums +sha256 55fd76d7b3f90d312f161d318631b93c58a0e69d662d07c4f5aca2c6c9ecc85e LICENSE diff --git a/package/python-evdev/python-evdev.mk b/package/python-evdev/python-evdev.mk new file mode 100644 index 000000000000..5cf62b516037 --- /dev/null +++ b/package/python-evdev/python-evdev.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# python-evdev +# +################################################################################ + +PYTHON_EVDEV_VERSION = 1.6.1 +PYTHON_EVDEV_SOURCE = evdev-$(PYTHON_EVDEV_VERSION).tar.gz +PYTHON_EVDEV_SITE = https://files.pythonhosted.org/packages/05/50/629b011a7f61cb2fca754ea8631575784bf8605a1ec4d6970a010bc54e2b +PYTHON_EVDEV_SETUP_TYPE = setuptools +PYTHON_EVDEV_LICENSE = Revised BSD License +PYTHON_EVDEV_LICENSE_FILES = LICENSE + +PYTHON_EVDEV_BUILD_OPTS = \ + build_ecodes \ + --evdev-headers $(STAGING_DIR)/usr/include/linux/input.h:$(STAGING_DIR)/usr/include/linux/input-event-codes.h:$(STAGING_DIR)/usr/include/linux/uinput.h + +$(eval $(python-package)) diff --git a/package/python-executing/Config.in b/package/python-executing/Config.in new file mode 100644 index 000000000000..e1f8f8efdf2a --- /dev/null +++ b/package/python-executing/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_EXECUTING + bool "python-executing" + help + Get the currently executing AST node of a frame, and other + information. + + https://github.com/alexmojaki/executing diff --git a/package/python-executing/python-executing.hash b/package/python-executing/python-executing.hash new file mode 100644 index 000000000000..e21418aae981 --- /dev/null +++ b/package/python-executing/python-executing.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/executing/json +md5 91da12f933267a5fe085033db2a3b84d executing-2.0.1.tar.gz +sha256 35afe2ce3affba8ee97f2d69927fa823b08b472b7b994e36a52a964b93d16147 executing-2.0.1.tar.gz +# Locally computed sha256 checksums +sha256 a476a2cb0ef4c41450340a577a28b91ac4c7f669136b2ee148047fabd5fc4181 LICENSE.txt diff --git a/package/python-executing/python-executing.mk b/package/python-executing/python-executing.mk new file mode 100644 index 000000000000..071e86794173 --- /dev/null +++ b/package/python-executing/python-executing.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# python-executing +# +################################################################################ + +PYTHON_EXECUTING_VERSION = 2.0.1 +PYTHON_EXECUTING_SOURCE = executing-$(PYTHON_EXECUTING_VERSION).tar.gz +PYTHON_EXECUTING_SITE = https://files.pythonhosted.org/packages/08/41/85d2d28466fca93737592b7f3cc456d1cfd6bcd401beceeba17e8e792b50 +PYTHON_EXECUTING_SETUP_TYPE = setuptools +PYTHON_EXECUTING_LICENSE = MIT +PYTHON_EXECUTING_LICENSE_FILES = LICENSE.txt + +PYTHON_EXECUTING_DEPENDENCIES = host-python-setuptools-scm + +$(eval $(python-package)) diff --git a/package/python-filelock/python-filelock.hash b/package/python-filelock/python-filelock.hash index 4ef7afed00bd..3013cb6789ee 100644 --- a/package/python-filelock/python-filelock.hash +++ b/package/python-filelock/python-filelock.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/filelock/json -md5 40eeb4a2963e1b07b8eab12b5db08418 filelock-3.9.0.tar.gz -sha256 7b319f24340b51f55a2bf7a12ac0755a9b03e718311dac567a0f4f7fabd2f5de filelock-3.9.0.tar.gz +md5 368d00d1946b89c910d4bf1da68b5a66 filelock-3.13.1.tar.gz +sha256 521f5f56c50f8426f5e03ad3b281b490a87ef15bc6c526f168290f0c7148d44e filelock-3.13.1.tar.gz # Locally computed sha256 checksums sha256 88d9b4eb60579c191ec391ca04c16130572d7eedc4a86daa58bf28c6e14c9bcd LICENSE diff --git a/package/python-filelock/python-filelock.mk b/package/python-filelock/python-filelock.mk index 02759935adc5..a32517b1ad12 100644 --- a/package/python-filelock/python-filelock.mk +++ b/package/python-filelock/python-filelock.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_FILELOCK_VERSION = 3.9.0 +PYTHON_FILELOCK_VERSION = 3.13.1 PYTHON_FILELOCK_SOURCE = filelock-$(PYTHON_FILELOCK_VERSION).tar.gz -PYTHON_FILELOCK_SITE = https://files.pythonhosted.org/packages/0b/dc/eac02350f06c6ed78a655ceb04047df01b02c6b7ea3fc02d4df24ca87d24 +PYTHON_FILELOCK_SITE = https://files.pythonhosted.org/packages/70/70/41905c80dcfe71b22fb06827b8eae65781783d4a14194bce79d16a013263 PYTHON_FILELOCK_SETUP_TYPE = pep517 PYTHON_FILELOCK_LICENSE = Public Domain PYTHON_FILELOCK_LICENSE_FILES = LICENSE diff --git a/package/python-flask-babel/Config.in b/package/python-flask-babel/Config.in index 272d9ef1c116..1248783e803c 100644 --- a/package/python-flask-babel/Config.in +++ b/package/python-flask-babel/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_PYTHON_FLASK_BABEL select BR2_PACKAGE_PYTHON_FLASK # runtime select BR2_PACKAGE_PYTHON_BABEL # runtime select BR2_PACKAGE_PYTHON_JINJA2 # runtime + select BR2_PACKAGE_PYTHON_PYTZ # runtime help Flask-Babel is an extension to Flask that adds i18n and l10n support to any Flask application with the help of babel, diff --git a/package/python-flask-babel/python-flask-babel.hash b/package/python-flask-babel/python-flask-babel.hash index 484af86179d5..b946561308c3 100644 --- a/package/python-flask-babel/python-flask-babel.hash +++ b/package/python-flask-babel/python-flask-babel.hash @@ -1,6 +1,5 @@ -# From: https://pypi.org/project/Flask-Babel/#copy-hash-modal-80f92a70-1c66-4cce-bb3d-8d6f98287e3f -md5 50d5e92d96ef58787bf85b5a1b0a5567 Flask-Babel-2.0.0.tar.gz -sha256 f9faf45cdb2e1a32ea2ec14403587d4295108f35017a7821a2b1acb8cfd9257d Flask-Babel-2.0.0.tar.gz - -# License files +# md5, sha256 from https://pypi.org/pypi/flask-babel/json +md5 62116080b8d3a446e1f0f07cbaf74dc1 flask_babel-4.0.0.tar.gz +sha256 dbeab4027a3f4a87678a11686496e98e1492eb793cbdd77ab50f4e9a2602a593 flask_babel-4.0.0.tar.gz +# Locally computed sha256 checksums sha256 a526100a7047237360a394ba4f70ae801b50ff9b8c9b9e73e7795480a59f6b7e LICENSE diff --git a/package/python-flask-babel/python-flask-babel.mk b/package/python-flask-babel/python-flask-babel.mk index 35241e78db0d..b3ecdf6cf6cd 100644 --- a/package/python-flask-babel/python-flask-babel.mk +++ b/package/python-flask-babel/python-flask-babel.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_FLASK_BABEL_VERSION = 2.0.0 -PYTHON_FLASK_BABEL_SOURCE = Flask-Babel-$(PYTHON_FLASK_BABEL_VERSION).tar.gz -PYTHON_FLASK_BABEL_SITE = https://files.pythonhosted.org/packages/d7/fe/655e6a5a99ceb815fe839f0698956a9d6c7d5bcc06ca1ee7c6eb6dac154b +PYTHON_FLASK_BABEL_VERSION = 4.0.0 +PYTHON_FLASK_BABEL_SOURCE = flask_babel-$(PYTHON_FLASK_BABEL_VERSION).tar.gz +PYTHON_FLASK_BABEL_SITE = https://files.pythonhosted.org/packages/58/1a/4c65e3b90bda699a637bfb7fb96818b0a9bbff7636ea91aade67f6020a31 PYTHON_FLASK_BABEL_LICENSE = BSD-3-Clause PYTHON_FLASK_BABEL_SETUP_TYPE = setuptools PYTHON_FLASK_BABEL_LICENSE_FILES = LICENSE diff --git a/package/python-flask-cors/Config.in b/package/python-flask-cors/Config.in index e2e84797f909..fc0908e870d6 100644 --- a/package/python-flask-cors/Config.in +++ b/package/python-flask-cors/Config.in @@ -1,7 +1,6 @@ config BR2_PACKAGE_PYTHON_FLASK_CORS bool "python-flask-cors" select BR2_PACKAGE_PYTHON_FLASK # runtime - select BR2_PACKAGE_PYTHON_SIX # runtime help A Flask extension adding a decorator for CORS support. diff --git a/package/python-flask-cors/python-flask-cors.hash b/package/python-flask-cors/python-flask-cors.hash index 94ec262db898..ced7d9dceac7 100644 --- a/package/python-flask-cors/python-flask-cors.hash +++ b/package/python-flask-cors/python-flask-cors.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/flask-cors/json -md5 647ff0632b960ba063a077fb4063077e Flask-Cors-3.0.10.tar.gz -sha256 b60839393f3b84a0f3746f6cdca56c1ad7426aa738b70d6c61375857823181de Flask-Cors-3.0.10.tar.gz +md5 0ccfa375e744200243d85719b38cdbc6 Flask-Cors-4.0.0.tar.gz +sha256 f268522fcb2f73e2ecdde1ef45e2fd5c71cc48fe03cffb4b441c6d1b40684eb0 Flask-Cors-4.0.0.tar.gz # Locally computed sha256 checksums sha256 6e1a1bdc54834c1e0740cbce5d5f6f2cae1c846fd2a7f482b11649594fafbd5d LICENSE diff --git a/package/python-flask-cors/python-flask-cors.mk b/package/python-flask-cors/python-flask-cors.mk index d60015726356..bfcaf63c6416 100644 --- a/package/python-flask-cors/python-flask-cors.mk +++ b/package/python-flask-cors/python-flask-cors.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_FLASK_CORS_VERSION = 3.0.10 +PYTHON_FLASK_CORS_VERSION = 4.0.0 PYTHON_FLASK_CORS_SOURCE = Flask-Cors-$(PYTHON_FLASK_CORS_VERSION).tar.gz -PYTHON_FLASK_CORS_SITE = https://files.pythonhosted.org/packages/cf/25/e3b2553d22ed542be807739556c69621ad2ab276ae8d5d2560f4ed20f652 +PYTHON_FLASK_CORS_SITE = https://files.pythonhosted.org/packages/c8/b0/bd7130837a921497520f62023c7ba754e441dcedf959a43e6d1fd86e5451 PYTHON_FLASK_CORS_SETUP_TYPE = setuptools PYTHON_FLASK_CORS_LICENSE = MIT PYTHON_FLASK_CORS_LICENSE_FILES = LICENSE diff --git a/package/python-flask-expects-json/Config.in b/package/python-flask-expects-json/Config.in index 901234762ec7..55a752bf22c1 100644 --- a/package/python-flask-expects-json/Config.in +++ b/package/python-flask-expects-json/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_PYTHON_FLASK_EXPECTS_JSON bool "python-flask-expects-json" + depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS # python-jsonschema -> python-rpds-py select BR2_PACKAGE_PYTHON_FLASK # runtime select BR2_PACKAGE_PYTHON_JSONSCHEMA # runtime help diff --git a/package/python-flask-login/python-flask-login.hash b/package/python-flask-login/python-flask-login.hash index c88b70f2d54d..af034ae7512a 100644 --- a/package/python-flask-login/python-flask-login.hash +++ b/package/python-flask-login/python-flask-login.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/flask-login/json -md5 8020b22ad7ec6f17034f90117a520633 Flask-Login-0.6.2.tar.gz -sha256 c0a7baa9fdc448cdd3dd6f0939df72eec5177b2f7abe6cb82fc934d29caac9c3 Flask-Login-0.6.2.tar.gz +md5 689564b8b7f3782f0db382b7aa85bbc2 Flask-Login-0.6.3.tar.gz +sha256 5e23d14a607ef12806c699590b89d0f0e0d67baeec599d75947bf9c147330333 Flask-Login-0.6.3.tar.gz # Locally computed sha256 checksums sha256 7a9dfb9c5da204ed1370f3b62c13e2992a12da1da707f47e156897eeb4344e5b LICENSE diff --git a/package/python-flask-login/python-flask-login.mk b/package/python-flask-login/python-flask-login.mk index 394fe197e3f8..ed10c98f5ac9 100644 --- a/package/python-flask-login/python-flask-login.mk +++ b/package/python-flask-login/python-flask-login.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_FLASK_LOGIN_VERSION = 0.6.2 +PYTHON_FLASK_LOGIN_VERSION = 0.6.3 PYTHON_FLASK_LOGIN_SOURCE = Flask-Login-$(PYTHON_FLASK_LOGIN_VERSION).tar.gz -PYTHON_FLASK_LOGIN_SITE = https://files.pythonhosted.org/packages/cc/da/eae45ba9ec58af45b46ef94c6ca04fb211ee57c06421b696e894eb11b064 +PYTHON_FLASK_LOGIN_SITE = https://files.pythonhosted.org/packages/c3/6e/2f4e13e373bb49e68c02c51ceadd22d172715a06716f9299d9df01b6ddb2 PYTHON_FLASK_LOGIN_LICENSE = MIT PYTHON_FLASK_LOGIN_LICENSE_FILES = LICENSE PYTHON_FLASK_LOGIN_SETUP_TYPE = setuptools diff --git a/package/python-flask-smorest/python-flask-smorest.hash b/package/python-flask-smorest/python-flask-smorest.hash index 941535c50332..baeddb0e6b7c 100644 --- a/package/python-flask-smorest/python-flask-smorest.hash +++ b/package/python-flask-smorest/python-flask-smorest.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/flask-smorest/json -md5 1dad52f26c59ca2dcaf0c5d109879605 flask-smorest-0.40.0.tar.gz -sha256 9b46b4937ccf78702d99fed8cfd1cd5c37608ddefd65ff16a86d1ad5c7f7d8c0 flask-smorest-0.40.0.tar.gz +md5 3d8c01cfe9ec4ba16636d6a3078edc87 flask-smorest-0.42.1.tar.gz +sha256 7fde3f349d464c408c73b7cbbdb1884c1c36cc8c23b2562aba28d9bdfdd14cdc flask-smorest-0.42.1.tar.gz # Locally computed sha256 checksums sha256 40999ea1d9c1b8202fa44f8e6849a557e22df892481e067abf999879064b9521 LICENSE diff --git a/package/python-flask-smorest/python-flask-smorest.mk b/package/python-flask-smorest/python-flask-smorest.mk index 069d9244dd7d..8a11e96d016e 100644 --- a/package/python-flask-smorest/python-flask-smorest.mk +++ b/package/python-flask-smorest/python-flask-smorest.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_FLASK_SMOREST_VERSION = 0.40.0 +PYTHON_FLASK_SMOREST_VERSION = 0.42.1 PYTHON_FLASK_SMOREST_SOURCE = flask-smorest-$(PYTHON_FLASK_SMOREST_VERSION).tar.gz -PYTHON_FLASK_SMOREST_SITE = https://files.pythonhosted.org/packages/e6/b5/1b81ea4f7e377cf8a653aa10c249656a1c73de7a3695b2544d7a713ea3c2 +PYTHON_FLASK_SMOREST_SITE = https://files.pythonhosted.org/packages/be/6e/8e3d0287bfa2da6ca7cf94cd9c053ed209764538dd5fb1d96f535e4d43bb PYTHON_FLASK_SMOREST_SETUP_TYPE = setuptools PYTHON_FLASK_SMOREST_LICENSE = MIT PYTHON_FLASK_SMOREST_LICENSE_FILES = LICENSE diff --git a/package/python-flask-sqlalchemy/python-flask-sqlalchemy.hash b/package/python-flask-sqlalchemy/python-flask-sqlalchemy.hash index 50ca14371d58..637733d0026c 100644 --- a/package/python-flask-sqlalchemy/python-flask-sqlalchemy.hash +++ b/package/python-flask-sqlalchemy/python-flask-sqlalchemy.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/flask-sqlalchemy/json -md5 cbc5756b7e14683de1a540516159a81a Flask-SQLAlchemy-3.0.2.tar.gz -sha256 16199f5b3ddfb69e0df2f52ae4c76aedbfec823462349dabb21a1b2e0a2b65e9 Flask-SQLAlchemy-3.0.2.tar.gz +md5 b2439ba29a86fd594e0de4fc0e42ceb6 flask_sqlalchemy-3.1.1.tar.gz +sha256 e4b68bb881802dda1a7d878b2fc84c06d1ee57fb40b874d3dc97dabfa36b8312 flask_sqlalchemy-3.1.1.tar.gz # Locally computed sha256 checksums sha256 489a8e1108509ed98a37bb983e11e0f7e1d31f0bd8f99a79c8448e7ff37d07ea LICENSE.rst diff --git a/package/python-flask-sqlalchemy/python-flask-sqlalchemy.mk b/package/python-flask-sqlalchemy/python-flask-sqlalchemy.mk index ca6fd0c7933b..2ee53d4b00e5 100644 --- a/package/python-flask-sqlalchemy/python-flask-sqlalchemy.mk +++ b/package/python-flask-sqlalchemy/python-flask-sqlalchemy.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_FLASK_SQLALCHEMY_VERSION = 3.0.2 -PYTHON_FLASK_SQLALCHEMY_SOURCE = Flask-SQLAlchemy-$(PYTHON_FLASK_SQLALCHEMY_VERSION).tar.gz -PYTHON_FLASK_SQLALCHEMY_SITE = https://files.pythonhosted.org/packages/0b/b7/05a8f9c3f010775275f8dec53e40ff7ea1ae61bf1cfa4b524caf4d3da982 +PYTHON_FLASK_SQLALCHEMY_VERSION = 3.1.1 +PYTHON_FLASK_SQLALCHEMY_SOURCE = flask_sqlalchemy-$(PYTHON_FLASK_SQLALCHEMY_VERSION).tar.gz +PYTHON_FLASK_SQLALCHEMY_SITE = https://files.pythonhosted.org/packages/91/53/b0a9fcc1b1297f51e68b69ed3b7c3c40d8c45be1391d77ae198712914392 PYTHON_FLASK_SQLALCHEMY_SETUP_TYPE = setuptools PYTHON_FLASK_SQLALCHEMY_LICENSE = BSD-3-Clause PYTHON_FLASK_SQLALCHEMY_LICENSE_FILES = LICENSE.rst diff --git a/package/python-flask-wtf/python-flask-wtf.hash b/package/python-flask-wtf/python-flask-wtf.hash index 01e4290950b5..f42675795508 100644 --- a/package/python-flask-wtf/python-flask-wtf.hash +++ b/package/python-flask-wtf/python-flask-wtf.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/flask-wtf/json -md5 d86dbc0befe30fd577a623a51689b900 Flask-WTF-1.0.1.tar.gz -sha256 34fe5c6fee0f69b50e30f81a3b7ea16aa1492a771fe9ad0974d164610c09a6c9 Flask-WTF-1.0.1.tar.gz +md5 cbdd73ec30c7b3b887dc12026fd4954c flask_wtf-1.2.1.tar.gz +sha256 8bb269eb9bb46b87e7c8233d7e7debdf1f8b74bf90cc1789988c29b37a97b695 flask_wtf-1.2.1.tar.gz # Locally computed sha256 checksums sha256 d5f19036451578cb36eeef04c99ebf7d7ca2e70dcf043636519bc420e15a7c62 LICENSE.rst diff --git a/package/python-flask-wtf/python-flask-wtf.mk b/package/python-flask-wtf/python-flask-wtf.mk index 97291e1b26e4..8274585ad3ad 100644 --- a/package/python-flask-wtf/python-flask-wtf.mk +++ b/package/python-flask-wtf/python-flask-wtf.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_FLASK_WTF_VERSION = 1.0.1 -PYTHON_FLASK_WTF_SOURCE = Flask-WTF-$(PYTHON_FLASK_WTF_VERSION).tar.gz -PYTHON_FLASK_WTF_SITE = https://files.pythonhosted.org/packages/d9/38/d4798dd05be711d666e1befb08b1d3db57bd146d1a14d15657f60c88b446 +PYTHON_FLASK_WTF_VERSION = 1.2.1 +PYTHON_FLASK_WTF_SOURCE = flask_wtf-$(PYTHON_FLASK_WTF_VERSION).tar.gz +PYTHON_FLASK_WTF_SITE = https://files.pythonhosted.org/packages/9b/ef/b6ec35e02f479f6e76e02ede14594c9cfa5e6dcbab6ea0e82fa413993a2a PYTHON_FLASK_WTF_LICENSE = BSD-3-Clause PYTHON_FLASK_WTF_LICENSE_FILES = LICENSE.rst PYTHON_FLASK_WTF_SETUP_TYPE = setuptools diff --git a/package/python-flask/Config.in b/package/python-flask/Config.in index 8a44bf2db4a5..8dc2cef356dc 100644 --- a/package/python-flask/Config.in +++ b/package/python-flask/Config.in @@ -1,10 +1,10 @@ config BR2_PACKAGE_PYTHON_FLASK bool "python-flask" + select BR2_PACKAGE_PYTHON_BLINKER # runtime select BR2_PACKAGE_PYTHON_CLICK # runtime select BR2_PACKAGE_PYTHON_JINJA2 # runtime select BR2_PACKAGE_PYTHON_WERKZEUG # runtime select BR2_PACKAGE_PYTHON_ITSDANGEROUS # runtime - select BR2_PACKAGE_PYTHON_SETUPTOOLS # runtime select BR2_PACKAGE_PYTHON3_SSL select BR2_PACKAGE_PYTHON3_ZLIB help diff --git a/package/python-flask/python-flask.hash b/package/python-flask/python-flask.hash index 9b6391750aa5..3b5afc48e795 100644 --- a/package/python-flask/python-flask.hash +++ b/package/python-flask/python-flask.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/flask/json -md5 c0d2276cb7d59a06d62c915da9c77ba6 Flask-2.2.2.tar.gz -sha256 642c450d19c4ad482f96729bd2a8f6d32554aa1e231f4f6b4e7e5264b16cca2b Flask-2.2.2.tar.gz +md5 4848c9d5305197822b5b00c8e9a6d9aa flask-3.0.0.tar.gz +sha256 cfadcdb638b609361d29ec22360d6070a77d7463dcb3ab08d2c2f2f168845f58 flask-3.0.0.tar.gz # Locally computed sha256 checksums sha256 489a8e1108509ed98a37bb983e11e0f7e1d31f0bd8f99a79c8448e7ff37d07ea LICENSE.rst -sha256 7535eac513edd12fb8e33f203c6a403549629e34b363418cdbd6c6ea5464515d docs/license.rst +sha256 c9362a7258a11c84a8f7e825ccbbb5c425c6fc02368d3aee6494533fb99ba1f4 docs/license.rst diff --git a/package/python-flask/python-flask.mk b/package/python-flask/python-flask.mk index 1b1ffdf03458..1372d915c132 100644 --- a/package/python-flask/python-flask.mk +++ b/package/python-flask/python-flask.mk @@ -4,10 +4,10 @@ # ################################################################################ -PYTHON_FLASK_VERSION = 2.2.2 -PYTHON_FLASK_SOURCE = Flask-$(PYTHON_FLASK_VERSION).tar.gz -PYTHON_FLASK_SITE = https://files.pythonhosted.org/packages/69/b6/53cfa30eed5aa7343daff36622843688ba8c6fe9829bb2b92e193ab1163f -PYTHON_FLASK_SETUP_TYPE = setuptools +PYTHON_FLASK_VERSION = 3.0.0 +PYTHON_FLASK_SOURCE = flask-$(PYTHON_FLASK_VERSION).tar.gz +PYTHON_FLASK_SITE = https://files.pythonhosted.org/packages/d8/09/c1a7354d3925a3c6c8cfdebf4245bae67d633ffda1ba415add06ffc839c5 +PYTHON_FLASK_SETUP_TYPE = flit PYTHON_FLASK_LICENSE = BSD-3-Clause PYTHON_FLASK_LICENSE_FILES = LICENSE.rst docs/license.rst PYTHON_FLASK_CPE_ID_VENDOR = palletsprojects diff --git a/package/python-flit-core/python-flit-core.hash b/package/python-flit-core/python-flit-core.hash index f63a64ed1b9b..4d4907f5dc44 100644 --- a/package/python-flit-core/python-flit-core.hash +++ b/package/python-flit-core/python-flit-core.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/flit_core/json -md5 7c41da13273f7787709a24f74e0f5a99 flit_core-3.8.0.tar.gz -sha256 b305b30c99526df5e63d6022dd2310a0a941a187bd3884f4c8ef0418df6c39f3 flit_core-3.8.0.tar.gz +md5 3bc52f1952b9a78361114147da63c35b flit_core-3.9.0.tar.gz +sha256 72ad266176c4a3fcfab5f2930d76896059851240570ce9a98733b658cb786eba flit_core-3.9.0.tar.gz # Locally computed sha256 35b4f1dec512e617077fd6980dbb43ef8c2887adc5d0185edb4c04da175dd816 LICENSE diff --git a/package/python-flit-core/python-flit-core.mk b/package/python-flit-core/python-flit-core.mk index f96191ade686..ea887a02589d 100644 --- a/package/python-flit-core/python-flit-core.mk +++ b/package/python-flit-core/python-flit-core.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_FLIT_CORE_VERSION = 3.8.0 +PYTHON_FLIT_CORE_VERSION = 3.9.0 PYTHON_FLIT_CORE_SOURCE = flit_core-$(PYTHON_FLIT_CORE_VERSION).tar.gz -PYTHON_FLIT_CORE_SITE = https://files.pythonhosted.org/packages/10/e5/be08751d07b30889af130cec20955c987a74380a10058e6e8856e4010afc +PYTHON_FLIT_CORE_SITE = https://files.pythonhosted.org/packages/c4/e6/c1ac50fe3eebb38a155155711e6e864e254ce4b6e17fe2429b4c4d5b9e80 PYTHON_FLIT_CORE_LICENSE = BSD-3-Clause PYTHON_FLIT_CORE_LICENSE_FILES = LICENSE PYTHON_FLIT_CORE_SETUP_TYPE = flit-bootstrap diff --git a/package/python-fonttools/python-fonttools.hash b/package/python-fonttools/python-fonttools.hash index 4b4751dc8224..8bcabb0c4570 100644 --- a/package/python-fonttools/python-fonttools.hash +++ b/package/python-fonttools/python-fonttools.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/fonttools/json -md5 f4775967d29b0da2f29ba499eed34f88 fonttools-4.38.0.zip -sha256 2bb244009f9bf3fa100fc3ead6aeb99febe5985fa20afbfbaa2f8946c2fbdaf1 fonttools-4.38.0.zip +md5 717f907e93dd6be3dd46fbdcdc33bbd7 fonttools-4.44.0.tar.gz +sha256 4e90dd81b6e0d97ebfe52c0d12a17a9ef7f305d6bfbb93081265057d6092f252 fonttools-4.44.0.tar.gz # Locally computed sha256 checksums sha256 6787208f83f659ccbc2223b2fde952ffa6f7e8aca62f1a8a2bf5bc51bb1b2383 LICENSE diff --git a/package/python-fonttools/python-fonttools.mk b/package/python-fonttools/python-fonttools.mk index d31d3a28898f..2f8a738600a3 100644 --- a/package/python-fonttools/python-fonttools.mk +++ b/package/python-fonttools/python-fonttools.mk @@ -4,19 +4,13 @@ # ################################################################################ -PYTHON_FONTTOOLS_VERSION = 4.38.0 -PYTHON_FONTTOOLS_SOURCE = fonttools-$(PYTHON_FONTTOOLS_VERSION).zip -PYTHON_FONTTOOLS_SITE = https://files.pythonhosted.org/packages/55/5c/a4a25cf6db42d113d8f626901bb156b2f7cf7c7564a6bbc7b5cd6f7cb484 +PYTHON_FONTTOOLS_VERSION = 4.44.0 +PYTHON_FONTTOOLS_SOURCE = fonttools-$(PYTHON_FONTTOOLS_VERSION).tar.gz +PYTHON_FONTTOOLS_SITE = https://files.pythonhosted.org/packages/6d/f8/d3116b436553856df4ed9094584ac55c5e99ee9d9f3369f2912bbb8d0b90 PYTHON_FONTTOOLS_SETUP_TYPE = setuptools PYTHON_FONTTOOLS_LICENSE = MIT PYTHON_FONTTOOLS_LICENSE_FILES = LICENSE PYTHON_FONTTOOLS_DEPENDENCIES = host-python-cython PYTHON_FONTTOOLS_ENV = FONTTOOLS_WITH_CYTHON=1 -define PYTHON_FONTTOOLS_EXTRACT_CMDS - $(UNZIP) -d $(@D) $(PYTHON_FONTTOOLS_DL_DIR)/$(PYTHON_FONTTOOLS_SOURCE) - mv $(@D)/fonttools-$(PYTHON_FONTTOOLS_VERSION)/* $(@D) - $(RM) -r $(@D)/fonttools-$(PYTHON_FONTTOOLS_VERSION) -endef - $(eval $(python-package)) diff --git a/package/python-frozenlist/python-frozenlist.hash b/package/python-frozenlist/python-frozenlist.hash index 04a3a44e8944..466dd6931b21 100644 --- a/package/python-frozenlist/python-frozenlist.hash +++ b/package/python-frozenlist/python-frozenlist.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/frozenlist/json -md5 14e9ffd849c6a1dfa3c6b1fb1ff77b14 frozenlist-1.3.3.tar.gz -sha256 58bcc55721e8a90b88332d6cd441261ebb22342e238296bb330968952fbb3a6a frozenlist-1.3.3.tar.gz +md5 4a14df2fe30853d9e18f73002493a860 frozenlist-1.4.0.tar.gz +sha256 09163bdf0b2907454042edb19f887c6d33806adc71fbd54afc14908bfdc22251 frozenlist-1.4.0.tar.gz # Locally computed sha256 checksums sha256 6fd5243e92dd7f98ec69c7ac377728e74905709ff527a5bf98d6d0263c04f5b6 LICENSE diff --git a/package/python-frozenlist/python-frozenlist.mk b/package/python-frozenlist/python-frozenlist.mk index 88833b0465a1..10c6bc6314a3 100644 --- a/package/python-frozenlist/python-frozenlist.mk +++ b/package/python-frozenlist/python-frozenlist.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_FROZENLIST_VERSION = 1.3.3 +PYTHON_FROZENLIST_VERSION = 1.4.0 PYTHON_FROZENLIST_SOURCE = frozenlist-$(PYTHON_FROZENLIST_VERSION).tar.gz -PYTHON_FROZENLIST_SITE = https://files.pythonhosted.org/packages/e9/10/d629476346112b85c912527b9080944fd2c39a816c2225413dbc0bb6fcc0 +PYTHON_FROZENLIST_SITE = https://files.pythonhosted.org/packages/8c/1f/49c96ccc87127682ba900b092863ef7c20302a2144b3185412a08480ca22 PYTHON_FROZENLIST_SETUP_TYPE = setuptools PYTHON_FROZENLIST_LICENSE = Apache-2.0 PYTHON_FROZENLIST_LICENSE_FILES = LICENSE diff --git a/package/python-gast/python-gast.hash b/package/python-gast/python-gast.hash index f16d001a6a8e..9ce529693868 100644 --- a/package/python-gast/python-gast.hash +++ b/package/python-gast/python-gast.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/gast/json -md5 fdff900805e03e9dd76d377eb4cbaed7 gast-0.5.3.tar.gz -sha256 cfbea25820e653af9c7d1807f659ce0a0a9c64f2439421a7bba4f0983f532dea gast-0.5.3.tar.gz +md5 907c689e3fdbc7a48cc010e665195baa gast-0.5.4.tar.gz +sha256 9c270fe5f4b130969b54174de7db4e764b09b4f7f67ccfc32480e29f78348d97 gast-0.5.4.tar.gz # Locally computed sha256 checksums sha256 6a04bbabd9b48bea6bf7c0bd3f3a062e1476b3c403a746448fd69b0d902e148f LICENSE diff --git a/package/python-gast/python-gast.mk b/package/python-gast/python-gast.mk index e02e87fb23eb..0db1dbe93ebe 100644 --- a/package/python-gast/python-gast.mk +++ b/package/python-gast/python-gast.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_GAST_VERSION = 0.5.3 +PYTHON_GAST_VERSION = 0.5.4 PYTHON_GAST_SOURCE = gast-$(PYTHON_GAST_VERSION).tar.gz -PYTHON_GAST_SITE = https://files.pythonhosted.org/packages/48/a3/0bd844c54ae8141642088b7ae09dd38fec2ec7faa9b7d25bb6a23c1f266f +PYTHON_GAST_SITE = https://files.pythonhosted.org/packages/e4/41/f26f62ebef1a80148e20951a6e9ef4d0ebbe2090124bc143da26e12a934c PYTHON_GAST_SETUP_TYPE = setuptools PYTHON_GAST_LICENSE = BSD-3-Clause PYTHON_GAST_LICENSE_FILES = LICENSE diff --git a/package/python-git/Config.in b/package/python-git/Config.in index 3c23f91c3654..183b377c4606 100644 --- a/package/python-git/Config.in +++ b/package/python-git/Config.in @@ -3,7 +3,6 @@ config BR2_PACKAGE_PYTHON_GIT depends on BR2_USE_MMU # git select BR2_PACKAGE_GIT # runtime select BR2_PACKAGE_PYTHON_GITDB2 # runtime - select BR2_PACKAGE_PYTHON_TYPING_EXTENSIONS # runtime help GitPython is a python library used to interact with git repositories, high-level like git-porcelain, or low-level diff --git a/package/python-git/python-git.hash b/package/python-git/python-git.hash index 0c8c764bf37b..a9798717960b 100644 --- a/package/python-git/python-git.hash +++ b/package/python-git/python-git.hash @@ -1,3 +1,5 @@ -# locally computed hashes -sha256 8282d0d1169a3a98546979bfae1524608670fadc4ca7636517aadd428e0cfbeb python-git-3.1.24.tar.gz -sha256 fd657ffc2cef63d25c78cab7808d414dd03a282e63893491fd11c32f98be67fb LICENSE +# md5, sha256 from https://pypi.org/pypi/gitpython/json +md5 db4f2a27c8abc4a7e25504e3aeab4a84 GitPython-3.1.40.tar.gz +sha256 22b126e9ffb671fdd0c129796343a02bf67bf2994b35449ffc9321aa755e18a4 GitPython-3.1.40.tar.gz +# Locally computed sha256 checksums +sha256 86fc94c321a9afbc11514713511bafded225f25100dcc0f7350e82bc231b8beb LICENSE diff --git a/package/python-git/python-git.mk b/package/python-git/python-git.mk index 9b2771ca0701..91d6b07ab195 100644 --- a/package/python-git/python-git.mk +++ b/package/python-git/python-git.mk @@ -4,8 +4,9 @@ # ################################################################################ -PYTHON_GIT_VERSION = 3.1.24 -PYTHON_GIT_SITE = $(call github,gitpython-developers,GitPython,$(PYTHON_GIT_VERSION)) +PYTHON_GIT_VERSION = 3.1.40 +PYTHON_GIT_SOURCE = GitPython-$(PYTHON_GIT_VERSION).tar.gz +PYTHON_GIT_SITE = https://files.pythonhosted.org/packages/0d/b2/37265877ae607a2cbf9a471f4581dbf5ed13a501b90cb4c773f9ccfff3ea PYTHON_GIT_LICENSE = BSD-3-Clause PYTHON_GIT_LICENSE_FILES = LICENSE PYTHON_GIT_SETUP_TYPE = setuptools diff --git a/package/python-gitdb2/python-gitdb2.hash b/package/python-gitdb2/python-gitdb2.hash index 7bc187cf53f3..c70c1aade92e 100644 --- a/package/python-gitdb2/python-gitdb2.hash +++ b/package/python-gitdb2/python-gitdb2.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/gitdb/json -md5 3f52187435ab0b6e64a15782ffaf29ab gitdb-4.0.7.tar.gz -sha256 96bf5c08b157a666fec41129e6d327235284cca4c81e92109260f353ba138005 gitdb-4.0.7.tar.gz +md5 6071755f2899cd4882b83a070b045bac gitdb-4.0.11.tar.gz +sha256 bf5421126136d6d0af55bc1e7c1af1c397a34f5b7bd79e776cd3e89785c2b04b gitdb-4.0.11.tar.gz # Locally computed sha256 checksums sha256 efd29f596a08e8857e68e7694a50bcda72839792da7c3f041bcbff5f18009239 LICENSE diff --git a/package/python-gitdb2/python-gitdb2.mk b/package/python-gitdb2/python-gitdb2.mk index 91a17e24a767..424f37f8f4e4 100644 --- a/package/python-gitdb2/python-gitdb2.mk +++ b/package/python-gitdb2/python-gitdb2.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_GITDB2_VERSION = 4.0.7 +PYTHON_GITDB2_VERSION = 4.0.11 PYTHON_GITDB2_SOURCE = gitdb-$(PYTHON_GITDB2_VERSION).tar.gz -PYTHON_GITDB2_SITE = https://files.pythonhosted.org/packages/34/fe/9265459642ab6e29afe734479f94385870e8702e7f892270ed6e52dd15bf +PYTHON_GITDB2_SITE = https://files.pythonhosted.org/packages/19/0d/bbb5b5ee188dec84647a4664f3e11b06ade2bde568dbd489d9d64adef8ed PYTHON_GITDB2_SETUP_TYPE = setuptools PYTHON_GITDB2_LICENSE = BSD-3-Clause PYTHON_GITDB2_LICENSE_FILES = LICENSE diff --git a/package/python-gnupg/python-gnupg.hash b/package/python-gnupg/python-gnupg.hash index 7886ff7daef4..d52b634b8d20 100644 --- a/package/python-gnupg/python-gnupg.hash +++ b/package/python-gnupg/python-gnupg.hash @@ -1,5 +1,8 @@ # md5, sha256 from https://pypi.org/pypi/python-gnupg/json -md5 19cc1aef3a612b7b5f13e388260e65d4 python-gnupg-0.5.0.tar.gz -sha256 70758e387fc0e0c4badbcb394f61acbe68b34970a8fed7e0f7c89469fe17912a python-gnupg-0.5.0.tar.gz +# also checked PGP signature from: +# https://bitbucket.org/vinay.sajip/python-gnupg/downloads/python-gnupg-0.5.1.tar.gz.asc +# with key: 9147B477339A9B86 +md5 c5d99c5f0456f8cbf69324ec5e6acaff python-gnupg-0.5.1.tar.gz +sha256 5674bad4e93876c0b0d3197e314d7f942d39018bf31e2b833f6788a6813c3fb8 python-gnupg-0.5.1.tar.gz # Locally computed sha256 checksums sha256 4104ca980dbca7603fc553078378eb14566a76f819d033d7bff89fd6a97e181b LICENSE.txt diff --git a/package/python-gnupg/python-gnupg.mk b/package/python-gnupg/python-gnupg.mk index b51ac61892e1..f582f4cdb779 100644 --- a/package/python-gnupg/python-gnupg.mk +++ b/package/python-gnupg/python-gnupg.mk @@ -4,8 +4,8 @@ # ################################################################################ -PYTHON_GNUPG_VERSION = 0.5.0 -PYTHON_GNUPG_SITE = https://files.pythonhosted.org/packages/e3/5c/5ff9877001616912a74f4377cd5f80925b31a678087800beae5b28bdb80e +PYTHON_GNUPG_VERSION = 0.5.1 +PYTHON_GNUPG_SITE = https://files.pythonhosted.org/packages/98/62/7737485f44bd4d7d904f4094372f4119195865b29f119fa51a98e121a13a PYTHON_GNUPG_LICENSE = BSD-3-Clause PYTHON_GNUPG_LICENSE_FILES = LICENSE.txt PYTHON_GNUPG_CPE_ID_VENDOR = python diff --git a/package/python-gpiozero/python-gpiozero.hash b/package/python-gpiozero/python-gpiozero.hash index 7359f6405ecb..d019b5434635 100644 --- a/package/python-gpiozero/python-gpiozero.hash +++ b/package/python-gpiozero/python-gpiozero.hash @@ -1,4 +1,5 @@ -# Locally computed -sha256 7e6da923774437e24edc0c056e486415bace8c4ba4123c22ac4214147854ea6d python-gpiozero-1.6.2.tar.gz -# Locally computed +# md5, sha256 from https://pypi.org/pypi/gpiozero/json +md5 b8b63443961de2710d88b82671ec6d8a gpiozero-2.0.tar.gz +sha256 403bcc9e7f24f0877653e7fced91ba51508d5197c9d1f80e383fe6693b9c3c27 gpiozero-2.0.tar.gz +# Locally computed sha256 checksums sha256 b6fdd587f3dc3a9b8cc5adae00918e3ffa909b1092bd4decf7e8b1b08fa5d0fb LICENSE.rst diff --git a/package/python-gpiozero/python-gpiozero.mk b/package/python-gpiozero/python-gpiozero.mk index a68c39db1f5d..bce7644a34c5 100644 --- a/package/python-gpiozero/python-gpiozero.mk +++ b/package/python-gpiozero/python-gpiozero.mk @@ -4,8 +4,9 @@ # ################################################################################ -PYTHON_GPIOZERO_VERSION = 1.6.2 -PYTHON_GPIOZERO_SITE = $(call github,gpiozero,gpiozero,v$(PYTHON_GPIOZERO_VERSION)) +PYTHON_GPIOZERO_VERSION = 2.0 +PYTHON_GPIOZERO_SOURCE = gpiozero-$(PYTHON_GPIOZERO_VERSION).tar.gz +PYTHON_GPIOZERO_SITE = https://files.pythonhosted.org/packages/b3/a7/85676e0689114ea08ea3c88b7813efd988a9ead64dc9e1b24545b17af4fd PYTHON_GPIOZERO_LICENSE = BSD-3-Clause PYTHON_GPIOZERO_LICENSE_FILES = LICENSE.rst PYTHON_GPIOZERO_SETUP_TYPE = setuptools diff --git a/package/python-greenlet/python-greenlet.hash b/package/python-greenlet/python-greenlet.hash index f378436beb56..2de253e1b5eb 100644 --- a/package/python-greenlet/python-greenlet.hash +++ b/package/python-greenlet/python-greenlet.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/greenlet/json -md5 e6637d59015cba7e86f2111e6aa8168b greenlet-2.0.2.tar.gz -sha256 e7c8dc13af7db097bed64a051d2dd49e9f0af495c26995c00a9ee842690d34c0 greenlet-2.0.2.tar.gz +md5 3905122960191e81410714f7db4835e4 greenlet-3.0.1.tar.gz +sha256 816bd9488a94cba78d93e1abb58000e8266fa9cc2aa9ccdd6eb0696acb24005b greenlet-3.0.1.tar.gz # Locally computed sha256 checksums sha256 769831d6e5dfaf2c20802faccff1fafb4c2025dd8f6253dfa47fcad59d4d0979 LICENSE sha256 e5ff3c23c110e494cd7d736c10fd96d462457bafeca310840db6527298c7d46b LICENSE.PSF diff --git a/package/python-greenlet/python-greenlet.mk b/package/python-greenlet/python-greenlet.mk index 40f05f667e83..7ca1ac1674be 100644 --- a/package/python-greenlet/python-greenlet.mk +++ b/package/python-greenlet/python-greenlet.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_GREENLET_VERSION = 2.0.2 +PYTHON_GREENLET_VERSION = 3.0.1 PYTHON_GREENLET_SOURCE = greenlet-$(PYTHON_GREENLET_VERSION).tar.gz -PYTHON_GREENLET_SITE = https://files.pythonhosted.org/packages/1e/1e/632e55a04d732c8184201238d911207682b119c35cecbb9a573a6c566731 +PYTHON_GREENLET_SITE = https://files.pythonhosted.org/packages/54/df/718c9b3e90edba70fa919bb3aaa5c3c8dabf3a8252ad1e93d33c348e5ca4 PYTHON_GREENLET_SETUP_TYPE = setuptools PYTHON_GREENLET_LICENSE = MIT, PSF-2.0 PYTHON_GREENLET_LICENSE_FILES = LICENSE LICENSE.PSF diff --git a/package/python-gunicorn/Config.in b/package/python-gunicorn/Config.in index 18f0c034ba8e..a670dd4814f0 100644 --- a/package/python-gunicorn/Config.in +++ b/package/python-gunicorn/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_PYTHON_GUNICORN bool "python-gunicorn" - select BR2_PACKAGE_PYTHON_SETUPTOOLS # runtime + select BR2_PACKAGE_PYTHON_PACKAGING # runtime select BR2_PACKAGE_PYTHON3_SSL # runtime help Gunicorn 'Green Unicorn' is a Python WSGI HTTP Server for diff --git a/package/python-gunicorn/python-gunicorn.hash b/package/python-gunicorn/python-gunicorn.hash index cff4915b72a8..bd4dc1b3ca6f 100644 --- a/package/python-gunicorn/python-gunicorn.hash +++ b/package/python-gunicorn/python-gunicorn.hash @@ -1,5 +1,5 @@ -# md5, sha256 from https://pypi.python.org/pypi/gunicorn/json -md5 db8a7c5c2064000af70286534803bf1d gunicorn-20.1.0.tar.gz -sha256 e0a968b5ba15f8a328fdfd7ab1fcb5af4470c28aaf7e55df02a99bc13138e6e8 gunicorn-20.1.0.tar.gz -# Locally computed sha256 -sha256 789fe11b92e1cabfbcf744b5fcc392c9bd5c6798603a4e89f925b6337984d1df LICENSE +# md5, sha256 from https://pypi.org/pypi/gunicorn/json +md5 cb41319d6929842c5af7003d48c513a2 gunicorn-21.2.0.tar.gz +sha256 88ec8bff1d634f98e61b9f65bc4bf3cd918a90806c6f5c48bc5603849ec81033 gunicorn-21.2.0.tar.gz +# Locally computed sha256 checksums +sha256 fc71b8f2ce774a47090c106ac5d1145359f5c0e25a0d9ab42acacd230f596936 LICENSE diff --git a/package/python-gunicorn/python-gunicorn.mk b/package/python-gunicorn/python-gunicorn.mk index fb747bc00e76..03ff5a49df89 100644 --- a/package/python-gunicorn/python-gunicorn.mk +++ b/package/python-gunicorn/python-gunicorn.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_GUNICORN_VERSION = 20.1.0 +PYTHON_GUNICORN_VERSION = 21.2.0 PYTHON_GUNICORN_SOURCE = gunicorn-$(PYTHON_GUNICORN_VERSION).tar.gz -PYTHON_GUNICORN_SITE = https://files.pythonhosted.org/packages/28/5b/0d1f0296485a6af03366604142ea8f19f0833894db3512a40ed07b2a56dd +PYTHON_GUNICORN_SITE = https://files.pythonhosted.org/packages/06/89/acd9879fa6a5309b4bf16a5a8855f1e58f26d38e0c18ede9b3a70996b021 PYTHON_GUNICORN_SETUP_TYPE = setuptools PYTHON_GUNICORN_LICENSE = MIT PYTHON_GUNICORN_LICENSE_FILES = LICENSE diff --git a/package/python-hatch-fancy-pypi-readme/python-hatch-fancy-pypi-readme.hash b/package/python-hatch-fancy-pypi-readme/python-hatch-fancy-pypi-readme.hash index 1b287072b7f4..d9fdb88e1f02 100644 --- a/package/python-hatch-fancy-pypi-readme/python-hatch-fancy-pypi-readme.hash +++ b/package/python-hatch-fancy-pypi-readme/python-hatch-fancy-pypi-readme.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/hatch_fancy_pypi_readme/json -md5 588776ea8e3608714d4cbba16dffa92b hatch_fancy_pypi_readme-22.8.0.tar.gz -sha256 da91282ca09601c18aded8e378daf8b578c70214866f0971156ee9bb9ce6c26a hatch_fancy_pypi_readme-22.8.0.tar.gz +md5 8755cce1a4a4d5e5d84992089801acbf hatch_fancy_pypi_readme-23.1.0.tar.gz +sha256 b1df44063094af1e8248ceacd47a92c9cf313d6b9823bf66af8a927c3960287d hatch_fancy_pypi_readme-23.1.0.tar.gz # Locally computed sha256 checksums sha256 e69ea57f96e599e617f61af3e85bf326b87e833994709fb5e5908a81197730a2 LICENSE.txt diff --git a/package/python-hatch-fancy-pypi-readme/python-hatch-fancy-pypi-readme.mk b/package/python-hatch-fancy-pypi-readme/python-hatch-fancy-pypi-readme.mk index f28721181a4d..6195a30436fa 100644 --- a/package/python-hatch-fancy-pypi-readme/python-hatch-fancy-pypi-readme.mk +++ b/package/python-hatch-fancy-pypi-readme/python-hatch-fancy-pypi-readme.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_HATCH_FANCY_PYPI_README_VERSION = 22.8.0 +PYTHON_HATCH_FANCY_PYPI_README_VERSION = 23.1.0 PYTHON_HATCH_FANCY_PYPI_README_SOURCE = hatch_fancy_pypi_readme-$(PYTHON_HATCH_FANCY_PYPI_README_VERSION).tar.gz -PYTHON_HATCH_FANCY_PYPI_README_SITE = https://files.pythonhosted.org/packages/4e/ab/9b48589d6e3a2f72cc1e8f5221c28ff28fcdf116dbbd6e9beb946054212d +PYTHON_HATCH_FANCY_PYPI_README_SITE = https://files.pythonhosted.org/packages/85/a6/58d585eba4321bf2e7a4d1ed2af141c99d88c1afa4b751926be160f09325 PYTHON_HATCH_FANCY_PYPI_README_LICENSE = MIT PYTHON_HATCH_FANCY_PYPI_README_LICENSE_FILES = LICENSE.txt PYTHON_HATCH_FANCY_PYPI_README_SETUP_TYPE = pep517 diff --git a/package/python-hatchling/python-hatchling.hash b/package/python-hatchling/python-hatchling.hash index 154c1fdcac2d..ebb412d19762 100644 --- a/package/python-hatchling/python-hatchling.hash +++ b/package/python-hatchling/python-hatchling.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/hatchling/json -md5 5a6e2fd0c877feea7e71b9d72bbdbed9 hatchling-1.12.2.tar.gz -sha256 8a6d719d96653a0f3901072b12710c9c3cc934f9061b443775c6789b45333495 hatchling-1.12.2.tar.gz +md5 43f7203cacb6c3c178b93149b8a8151d hatchling-1.18.0.tar.gz +sha256 50e99c3110ce0afc3f7bdbadff1c71c17758e476731c27607940cfa6686489ca hatchling-1.18.0.tar.gz # Locally computed sha256 checksums sha256 7f143a8127ad4873862d70854b5bd2abd0085aa73e64fd2b08704a3b9f5c07fc LICENSE.txt diff --git a/package/python-hatchling/python-hatchling.mk b/package/python-hatchling/python-hatchling.mk index 61aa1a6c23a5..f13e6d3e28c7 100644 --- a/package/python-hatchling/python-hatchling.mk +++ b/package/python-hatchling/python-hatchling.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_HATCHLING_VERSION = 1.12.2 +PYTHON_HATCHLING_VERSION = 1.18.0 PYTHON_HATCHLING_SOURCE = hatchling-$(PYTHON_HATCHLING_VERSION).tar.gz -PYTHON_HATCHLING_SITE = https://files.pythonhosted.org/packages/f5/ea/3ed5a7ecdd8a8f7e84cffd3b5ec24279a09ce2694c218ff922c35c6f1a77 +PYTHON_HATCHLING_SITE = https://files.pythonhosted.org/packages/e3/57/87da2c5adc173950ebe9f1acce4d5f2cd0a960783992fd4879a899a0b637 PYTHON_HATCHLING_LICENSE = MIT PYTHON_HATCHLING_LICENSE_FILES = LICENSE.txt PYTHON_HATCHLING_SETUP_TYPE = pep517 @@ -14,6 +14,7 @@ HOST_PYTHON_HATCHLING_DEPENDENCIES = \ host-python-editables \ host-python-packaging \ host-python-pathspec \ - host-python-pluggy + host-python-pluggy \ + host-python-trove-classifiers $(eval $(host-python-package)) diff --git a/package/python-hiredis/0001-setup.py-fix-build-with-gcc-4.8.patch b/package/python-hiredis/0001-setup.py-fix-build-with-gcc-4.8.patch deleted file mode 100644 index 93f9440a749c..000000000000 --- a/package/python-hiredis/0001-setup.py-fix-build-with-gcc-4.8.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 204898e28c7650089bf664eea8adfc16a22ba4f4 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Tue, 6 Apr 2021 10:37:49 +0200 -Subject: [PATCH] setup.py: fix build with gcc 4.8 - -Fix the following build failure on gcc 4.8 which is raised since version -2.0.0 and -https://github.com/redis/hiredis-py/commit/9084152f624e8e593b4e86ddf8bd13329fdfc043: - -vendor/hiredis/read.c: In function 'redisReaderFree': -vendor/hiredis/read.c:646:9: error: 'for' loop initial declarations are only allowed in C99 mode - for (int i = 0; i < r->tasks; i++) { - ^ -vendor/hiredis/read.c:646:9: note: use option -std=c99 or -std=gnu99 to compile your code - -This build failure is raised because hiredis source code is built -without C99: -https://github.com/redis/hiredis/commit/13a35bdb64615e381c5e1151cdd4e78bba71a6db - -Fixes: - - http://autobuild.buildroot.org/results/04cbcddf6d83ebad8c98400754f9445375e9e489 - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/redis/hiredis-py/pull/110] ---- - setup.py | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/setup.py b/setup.py -index d83153b..1f623c9 100755 ---- a/setup.py -+++ b/setup.py -@@ -13,6 +13,7 @@ def version(): - ext = Extension("hiredis.hiredis", - sources=sorted(glob.glob("src/*.c") + - ["vendor/hiredis/%s.c" % src for src in ("alloc", "read", "sds")]), -+ extra_compile_args=["-std=c99"], - include_dirs=["vendor"]) - - setup( --- -2.30.2 - diff --git a/package/python-hiredis/python-hiredis.hash b/package/python-hiredis/python-hiredis.hash index 2e73d2f37bf2..372f2f50aec8 100644 --- a/package/python-hiredis/python-hiredis.hash +++ b/package/python-hiredis/python-hiredis.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/hiredis/json -md5 0ab76a8b29deb737c9bfc7f631969e38 hiredis-2.0.0.tar.gz -sha256 81d6d8e39695f2c37954d1011c0480ef7cf444d4e3ae24bc5e89ee5de360139a hiredis-2.0.0.tar.gz +md5 670a932c2972cbd88f910c2b29f85c3c hiredis-2.2.3.tar.gz +sha256 e75163773a309e56a9b58165cf5a50e0f84b755f6ff863b2c01a38918fe92daa hiredis-2.2.3.tar.gz # Locally computed sha256 checksums -sha256 70edfa6d3e11f9d7497c2c2f298d06f33b11d10f37f76605102c5ab3b1f28262 COPYING +sha256 65d467915fa36249f60e6942c9d44dfe54d75882e6b66e94fc6c3971fcde1722 LICENSE sha256 dca05ce8fc87a8261783b4aed0deef8becc9350b6aa770bc714d0c1833b896eb vendor/hiredis/COPYING diff --git a/package/python-hiredis/python-hiredis.mk b/package/python-hiredis/python-hiredis.mk index 55f9a09f55e7..5aceb15ae1f6 100644 --- a/package/python-hiredis/python-hiredis.mk +++ b/package/python-hiredis/python-hiredis.mk @@ -4,11 +4,11 @@ # ################################################################################ -PYTHON_HIREDIS_VERSION = 2.0.0 +PYTHON_HIREDIS_VERSION = 2.2.3 PYTHON_HIREDIS_SOURCE = hiredis-$(PYTHON_HIREDIS_VERSION).tar.gz -PYTHON_HIREDIS_SITE = https://files.pythonhosted.org/packages/0c/39/eae11344d69ba435ec13d6bcc1a9eea3d2278324506fcd0e52d1ed8958c8 +PYTHON_HIREDIS_SITE = https://files.pythonhosted.org/packages/b0/04/dab6792584fc548803ffa50b5bb2b99f01d3ab04d7c7f64e85f1a22fb847 PYTHON_HIREDIS_SETUP_TYPE = setuptools PYTHON_HIREDIS_LICENSE = BSD-3-Clause -PYTHON_HIREDIS_LICENSE_FILES = COPYING vendor/hiredis/COPYING +PYTHON_HIREDIS_LICENSE_FILES = LICENSE vendor/hiredis/COPYING $(eval $(python-package)) diff --git a/package/python-httplib2/python-httplib2.hash b/package/python-httplib2/python-httplib2.hash index 4da8f26e4304..cfbf55a4b03d 100644 --- a/package/python-httplib2/python-httplib2.hash +++ b/package/python-httplib2/python-httplib2.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/httplib2/json -md5 b42f508585d988e77eac3980db1fd967 httplib2-0.21.0.tar.gz -sha256 fc144f091c7286b82bec71bdbd9b27323ba709cc612568d3000893bfd9cb4b34 httplib2-0.21.0.tar.gz +md5 7ca0a2bfd95ba4ab4b6e28804cdb94ed httplib2-0.22.0.tar.gz +sha256 d7a10bc5ef5ab08322488bde8c726eeee5c8618723fdb399597ec58f3d82df81 httplib2-0.22.0.tar.gz # Locally computed sha256 checksums sha256 589eec38f72df2be203711d3b8cbece9b908c5e7ff00bc3cab7f63bae9e366b4 LICENSE diff --git a/package/python-httplib2/python-httplib2.mk b/package/python-httplib2/python-httplib2.mk index 1093ecab39c5..9d7061cfacf5 100644 --- a/package/python-httplib2/python-httplib2.mk +++ b/package/python-httplib2/python-httplib2.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_HTTPLIB2_VERSION = 0.21.0 +PYTHON_HTTPLIB2_VERSION = 0.22.0 PYTHON_HTTPLIB2_SOURCE = httplib2-$(PYTHON_HTTPLIB2_VERSION).tar.gz -PYTHON_HTTPLIB2_SITE = https://files.pythonhosted.org/packages/c2/37/a093aaa902f6b2301f0f2cff5285548dbc4ab9b9a29215eb440381cbb32b +PYTHON_HTTPLIB2_SITE = https://files.pythonhosted.org/packages/3d/ad/2371116b22d616c194aa25ec410c9c6c37f23599dcd590502b74db197584 PYTHON_HTTPLIB2_SETUP_TYPE = setuptools PYTHON_HTTPLIB2_LICENSE = MIT PYTHON_HTTPLIB2_LICENSE_FILES = LICENSE @@ -14,3 +14,4 @@ PYTHON_HTTPLIB2_CPE_ID_VENDOR = httplib2_project PYTHON_HTTPLIB2_CPE_ID_PRODUCT = httplib2 $(eval $(python-package)) +$(eval $(host-python-package)) diff --git a/package/python-hwdata/Config.in b/package/python-hwdata/Config.in new file mode 100644 index 000000000000..923d0a7d8ac3 --- /dev/null +++ b/package/python-hwdata/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_PYTHON_HWDATA + bool "python-hwdata" + select BR2_PACKAGE_HWDATA # runtime + select BR2_PACKAGE_HWDATA_PCI_IDS + select BR2_PACKAGE_HWDATA_PNP_IDS + select BR2_PACKAGE_HWDATA_USB_IDS + help + Provides python interface to database stored in hwdata + package. It allows you to get human readable description of + USB and PCI devices. + + https://github.com/xsuchy/python-hwdata diff --git a/package/python-hwdata/python-hwdata.hash b/package/python-hwdata/python-hwdata.hash new file mode 100644 index 000000000000..0c7ca31476c3 --- /dev/null +++ b/package/python-hwdata/python-hwdata.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/hwdata/json +md5 dccf3b28d06fb9c6f56875e148356c24 hwdata-2.3.7.tar.gz +sha256 9e5c96be38d9218ffde40834d4ca03344b8dfaed29c8c5afe0030125ea03db03 hwdata-2.3.7.tar.gz +# Locally computed +sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 LICENSE diff --git a/package/python-hwdata/python-hwdata.mk b/package/python-hwdata/python-hwdata.mk new file mode 100644 index 000000000000..5e968ce847f9 --- /dev/null +++ b/package/python-hwdata/python-hwdata.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# python-hwdata +# +################################################################################ + +PYTHON_HWDATA_VERSION = 2.3.7 +PYTHON_HWDATA_SOURCE = hwdata-$(PYTHON_HWDATA_VERSION).tar.gz +PYTHON_HWDATA_SITE = https://files.pythonhosted.org/packages/15/26/f5bc1b42129fbcbd1c99c29714af1685fc89e2cf37680a9930d4fcac1808 +PYTHON_HWDATA_SETUP_TYPE = setuptools +PYTHON_HWDATA_LICENSE = GPL-2.0+ +PYTHON_HWDATA_LICENSE_FILES = LICENSE + +# There is no LICENSE file in the PyPi tarball, but it is available in +# upstream git repository: +PYTHON_HWDATA_EXTRA_DOWNLOADS = https://raw.githubusercontent.com/xsuchy/python-hwdata/python-hwdata-$(PYTHON_HWDATA_VERSION)-1/LICENSE + +define PYTHON_HWDATA_ADD_LICENSE_FILE + cp $(PYTHON_HWDATA_DL_DIR)/LICENSE $(@D) +endef +PYTHON_HWDATA_POST_EXTRACT_HOOKS += PYTHON_HWDATA_ADD_LICENSE_FILE + +$(eval $(python-package)) diff --git a/package/python-iniparse/python-iniparse.mk b/package/python-iniparse/python-iniparse.mk index e76987d1e954..9f00cf73875a 100644 --- a/package/python-iniparse/python-iniparse.mk +++ b/package/python-iniparse/python-iniparse.mk @@ -10,6 +10,9 @@ PYTHON_INIPARSE_SITE = https://pypi.python.org/packages/source/i/iniparse PYTHON_INIPARSE_LICENSE = Python-2.0, MIT PYTHON_INIPARSE_LICENSE_FILES = LICENSE-PSF LICENSE PYTHON_INIPARSE_SETUP_TYPE = setuptools +# This is a runtime dependency, but we don't have the concept of +# runtime dependencies for host packages. +HOST_PYTHON_INIPARSE_DEPENDENCIES = host-python-six $(eval $(python-package)) $(eval $(host-python-package)) diff --git a/package/python-installer/python-installer.hash b/package/python-installer/python-installer.hash index 97d455b87c6d..577b23a7ab9d 100644 --- a/package/python-installer/python-installer.hash +++ b/package/python-installer/python-installer.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/installer/json -md5 ac5fee994b04f228c151306f5ad96b04 installer-0.6.0.tar.gz -sha256 f3bd36cd261b440a88a1190b1becca0578fee90b4b62decc796932fdd5ae8839 installer-0.6.0.tar.gz +md5 d961d1105c9270049528b1167ed021bc installer-0.7.0.tar.gz +sha256 a26d3e3116289bb08216e0d0f7d925fcef0b0194eedfa0c944bcaaa106c4b631 installer-0.7.0.tar.gz # Locally computed sha256 checksums sha256 37b8b9f2569892fa54406383d431169dbb2115980d78b7efba6eeae5664c484f LICENSE diff --git a/package/python-installer/python-installer.mk b/package/python-installer/python-installer.mk index 3430e46b5113..094a91809034 100644 --- a/package/python-installer/python-installer.mk +++ b/package/python-installer/python-installer.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_INSTALLER_VERSION = 0.6.0 +PYTHON_INSTALLER_VERSION = 0.7.0 PYTHON_INSTALLER_SOURCE = installer-$(PYTHON_INSTALLER_VERSION).tar.gz -PYTHON_INSTALLER_SITE = https://files.pythonhosted.org/packages/c9/ab/a9141dc175ec7b620fffe7e0295251a7b6a0ffb4325d64aeb128dff8c698 +PYTHON_INSTALLER_SITE = https://files.pythonhosted.org/packages/05/18/ceeb4e3ab3aa54495775775b38ae42b10a92f42ce42dfa44da684289b8c8 PYTHON_INSTALLER_LICENSE = MIT PYTHON_INSTALLER_LICENSE_FILES = LICENSE PYTHON_INSTALLER_SETUP_TYPE = flit-bootstrap diff --git a/package/python-iowait/python-iowait.mk b/package/python-iowait/python-iowait.mk index e327053e8ecb..028001d7f30c 100644 --- a/package/python-iowait/python-iowait.mk +++ b/package/python-iowait/python-iowait.mk @@ -7,7 +7,7 @@ PYTHON_IOWAIT_VERSION = 0.2 PYTHON_IOWAIT_SOURCE = iowait-$(PYTHON_IOWAIT_VERSION).tar.gz PYTHON_IOWAIT_SITE = https://pypi.python.org/packages/65/30/e953673fe9619938e9c74408401cf865f37716da89f61f6e5d9328c0f71e -PYTHON_IOWAIT_SETUP_TYPE = distutils +PYTHON_IOWAIT_SETUP_TYPE = setuptools PYTHON_IOWAIT_LICENSE = LGPL-3.0+ PYTHON_IOWAIT_LICENSE_FILES = COPYING.LESSER diff --git a/package/python-ipdb/python-ipdb.hash b/package/python-ipdb/python-ipdb.hash index 1e8a45fbd618..041df3b249d3 100644 --- a/package/python-ipdb/python-ipdb.hash +++ b/package/python-ipdb/python-ipdb.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/ipdb/json -md5 e624221cbc9261f68f412b748179d5e2 ipdb-0.13.11.tar.gz -sha256 c23b6736f01fd4586cc2ecbebdf79a5eb454796853e1cd8f2ed3b7b91d4a3e93 ipdb-0.13.11.tar.gz +md5 e1e25e7221c0a09880cc5ee3fec1fbe4 ipdb-0.13.13.tar.gz +sha256 e3ac6018ef05126d442af680aad863006ec19d02290561ac88b8b1c0b0cfc726 ipdb-0.13.13.tar.gz # Locally computed sha256 checksums sha256 4eeb49de04f4894f8ea1f69a04f500799041b750b3d554c06de5ca877258e734 COPYING.txt diff --git a/package/python-ipdb/python-ipdb.mk b/package/python-ipdb/python-ipdb.mk index 151a3d45a46a..71f70be5d4e8 100644 --- a/package/python-ipdb/python-ipdb.mk +++ b/package/python-ipdb/python-ipdb.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_IPDB_VERSION = 0.13.11 +PYTHON_IPDB_VERSION = 0.13.13 PYTHON_IPDB_SOURCE = ipdb-$(PYTHON_IPDB_VERSION).tar.gz -PYTHON_IPDB_SITE = https://files.pythonhosted.org/packages/23/b2/c972cc266b0ba8508b42dab7f5dea1be03ea32213258441bf1b00baca555 +PYTHON_IPDB_SITE = https://files.pythonhosted.org/packages/3d/1b/7e07e7b752017f7693a0f4d41c13e5ca29ce8cbcfdcc1fd6c4ad8c0a27a0 PYTHON_IPDB_SETUP_TYPE = setuptools PYTHON_IPDB_LICENSE = BSD-3-Clause PYTHON_IPDB_LICENSE_FILES = COPYING.txt diff --git a/package/python-iptables/0001-use-sysconfig-get_path-instead-of-get_python_lib.patch b/package/python-iptables/0001-use-sysconfig-get_path-instead-of-get_python_lib.patch new file mode 100644 index 000000000000..2a4de3daf282 --- /dev/null +++ b/package/python-iptables/0001-use-sysconfig-get_path-instead-of-get_python_lib.patch @@ -0,0 +1,40 @@ +From fd415a3613fad872062fb7cb4e271ac1476402ef Mon Sep 17 00:00:00 2001 +From: Adam Duskett +Date: Tue, 24 Oct 2023 08:47:12 +0200 +Subject: [PATCH] use sysconfig.get_path instead of get_python_lib + +Distutils has been removed from python 3.12.0. Use sysconfig.get_path instead +of get_python_lib. + +Upstream: https://github.com/ldx/python-iptables/pull/340 + +Signed-off-by: Adam Duskett +--- + iptc/util.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/iptc/util.py b/iptc/util.py +index 04fe905..94befc5 100644 +--- a/iptc/util.py ++++ b/iptc/util.py +@@ -3,7 +3,7 @@ import os + import sys + import ctypes + import ctypes.util +-from distutils.sysconfig import get_python_lib ++import sysconfig + from itertools import product + from subprocess import Popen, PIPE + from sys import version_info +@@ -64,7 +64,7 @@ def _do_find_library(name): + + # probably we have been installed in a virtualenv + try: +- lib = ctypes.CDLL(os.path.join(get_python_lib(), name), ++ lib = ctypes.CDLL(os.path.join(sysconfig.get_path("purelib"), name), + mode=ctypes.RTLD_GLOBAL) + return lib + except: +-- +2.41.0 + diff --git a/package/python-iptables/python-iptables.hash b/package/python-iptables/python-iptables.hash index ee5f765fba7c..1b7c9e932449 100644 --- a/package/python-iptables/python-iptables.hash +++ b/package/python-iptables/python-iptables.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/python-iptables/json -md5 3fb27da1107bdb62196850fa70e8b0d4 python-iptables-1.0.0.tar.gz -sha256 480470adb5f29bf84269b4e53dbad9623af91c79aa666cc0274dec199a555bc5 python-iptables-1.0.0.tar.gz +md5 bd6950c1ed9c6b48b7d552ff8e6766c5 python-iptables-1.0.1.tar.gz +sha256 1989f2b48598392c3574052a95f456985cb06fb4287b61bf8794e93ebc37eddb python-iptables-1.0.1.tar.gz # Locally calculated sha256 b827789c74144d9bb92595ed3bc568aef767a7e8d930fba61c2cdd9f6ec27599 NOTICE diff --git a/package/python-iptables/python-iptables.mk b/package/python-iptables/python-iptables.mk index 0ccf064217db..d01545d8b250 100644 --- a/package/python-iptables/python-iptables.mk +++ b/package/python-iptables/python-iptables.mk @@ -4,8 +4,8 @@ # ################################################################################ -PYTHON_IPTABLES_VERSION = 1.0.0 -PYTHON_IPTABLES_SITE = https://files.pythonhosted.org/packages/ca/6e/cba9c6f4b5a1963b7f5b015f5ed5e2eec7a94ac460570e3474177c4004d6 +PYTHON_IPTABLES_VERSION = 1.0.1 +PYTHON_IPTABLES_SITE = https://files.pythonhosted.org/packages/35/e4/33e639b9e153c2d798d73342a96715a4edca6f46431d763b275a34b3aeca PYTHON_IPTABLES_SETUP_TYPE = setuptools PYTHON_IPTABLES_LICENSE = Apache-2.0 PYTHON_IPTABLES_LICENSE_FILES = NOTICE @@ -15,6 +15,7 @@ define PYTHON_IPTABLES_SET_XTABLES_ENV_VARS XTABLES_VERSION=`awk '/XTABLES_VERSION_CODE/ {print $$NF}' $(STAGING_DIR)/usr/include/xtables-version.h`; \ sed -i "s%os.getenv(\"PYTHON_IPTABLES_XTABLES_VERSION\")%$$XTABLES_VERSION%" $(@D)/iptc/xtables.py sed -i "s%os.getenv(\"XTABLES_LIBDIR\")%\"/usr/lib/xtables\"%" $(@D)/iptc/xtables.py + sed -i "s%os.environ.get('IPTABLES_LIBDIR', None)%\"/usr/lib\"%" $(@D)/iptc/util.py endef PYTHON_IPTABLES_PRE_BUILD_HOOKS += PYTHON_IPTABLES_SET_XTABLES_ENV_VARS diff --git a/package/python-ipy/python-ipy.mk b/package/python-ipy/python-ipy.mk index 2a01daf4cac2..ec03adcb6031 100644 --- a/package/python-ipy/python-ipy.mk +++ b/package/python-ipy/python-ipy.mk @@ -9,6 +9,6 @@ PYTHON_IPY_SOURCE = IPy-$(PYTHON_IPY_VERSION).tar.gz PYTHON_IPY_SITE = https://files.pythonhosted.org/packages/64/a4/9c0d88d95666ff1571d7baec6c5e26abc08051801feb6e6ddf40f6027e22 PYTHON_IPY_LICENSE = BSD-3-Clause PYTHON_IPY_LICENSE_FILES = COPYING -PYTHON_IPY_SETUP_TYPE = distutils +PYTHON_IPY_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-ipython-genutils/python-ipython-genutils.mk b/package/python-ipython-genutils/python-ipython-genutils.mk index 4e8cc287fe93..08a0b8ba9aee 100644 --- a/package/python-ipython-genutils/python-ipython-genutils.mk +++ b/package/python-ipython-genutils/python-ipython-genutils.mk @@ -9,6 +9,6 @@ PYTHON_IPYTHON_GENUTILS_SOURCE = ipython_genutils-$(PYTHON_IPYTHON_GENUTILS_VERS PYTHON_IPYTHON_GENUTILS_SITE = https://pypi.python.org/packages/e8/69/fbeffffc05236398ebfcfb512b6d2511c622871dca1746361006da310399 PYTHON_IPYTHON_GENUTILS_LICENSE = BSD-3-Clause PYTHON_IPYTHON_GENUTILS_LICENSE_FILES = COPYING.md -PYTHON_IPYTHON_GENUTILS_SETUP_TYPE = distutils +PYTHON_IPYTHON_GENUTILS_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-ipython/Config.in b/package/python-ipython/Config.in index 3de49ae57420..c217efcfd1ee 100644 --- a/package/python-ipython/Config.in +++ b/package/python-ipython/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_PYTHON_IPYTHON bool "python-ipython" + select BR2_PACKAGE_PYTHON3_SQLITE # runtime select BR2_PACKAGE_PYTHON_BACKCALL # runtime select BR2_PACKAGE_PYTHON_DECORATOR # runtime select BR2_PACKAGE_PYTHON_JEDI # runtime @@ -7,6 +8,7 @@ config BR2_PACKAGE_PYTHON_IPYTHON select BR2_PACKAGE_PYTHON_PROMPT_TOOLKIT # runtime select BR2_PACKAGE_PYTHON_PYGMENTS # runtime select BR2_PACKAGE_PYTHON_PEXPECT # runtime + select BR2_PACKAGE_PYTHON_STACK_DATA # runtime select BR2_PACKAGE_PYTHON_TRAITLETS # runtime help IPython is a command shell for interactive computing in diff --git a/package/python-ipython/python-ipython.hash b/package/python-ipython/python-ipython.hash index f11ad1e18c5c..f68b3ba78c67 100644 --- a/package/python-ipython/python-ipython.hash +++ b/package/python-ipython/python-ipython.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/ipython/json -md5 a1ea9b6e43c5568e5031974eb3a6acb0 ipython-8.8.0.tar.gz -sha256 f3bf2c08505ad2c3f4ed5c46ae0331a8547d36bf4b21a451e8ae80c0791db95b ipython-8.8.0.tar.gz +md5 ac2ff5bad97aa09befdf7f0f27323699 ipython-8.17.2.tar.gz +sha256 126bb57e1895594bb0d91ea3090bbd39384f6fe87c3d57fd558d0670f50339bb ipython-8.17.2.tar.gz # Locally computed sha256 checksums sha256 341afcbd729887b7046fe7b98fc4f4edff3aed8d38f06eefd9b30670f043df17 COPYING.rst sha256 e0e390748ed440ab893ca1f135a88a920aaf5409dbb90a5b427c75c5e51268fb LICENSE diff --git a/package/python-ipython/python-ipython.mk b/package/python-ipython/python-ipython.mk index f5a114c2f308..13351216883c 100644 --- a/package/python-ipython/python-ipython.mk +++ b/package/python-ipython/python-ipython.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_IPYTHON_VERSION = 8.8.0 +PYTHON_IPYTHON_VERSION = 8.17.2 PYTHON_IPYTHON_SOURCE = ipython-$(PYTHON_IPYTHON_VERSION).tar.gz -PYTHON_IPYTHON_SITE = https://files.pythonhosted.org/packages/f5/39/89664d8c3e4dfb0a73862cbbff8eb4028a1e3d4305da80ab0a493848ed9b +PYTHON_IPYTHON_SITE = https://files.pythonhosted.org/packages/a9/e9/c83d1a5756bf44f1802045a54dacc910d3d254c5ec56040993978d8c1b8d PYTHON_IPYTHON_LICENSE = BSD-3-Clause PYTHON_IPYTHON_LICENSE_FILES = COPYING.rst LICENSE PYTHON_IPYTHON_CPE_ID_VENDOR = ipython diff --git a/package/python-iso8601/python-iso8601.hash b/package/python-iso8601/python-iso8601.hash index 7c6d3f3ded05..fe643ce8b734 100644 --- a/package/python-iso8601/python-iso8601.hash +++ b/package/python-iso8601/python-iso8601.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/iso8601/json -md5 29dd454d638bd684bd3466583f6724dc iso8601-1.1.0.tar.gz -sha256 32811e7b81deee2063ea6d2e94f8819a86d1f3811e49d23623a41fa832bef03f iso8601-1.1.0.tar.gz +md5 6e33910eba87066b3be7fcf3d59d16b5 iso8601-2.1.0.tar.gz +sha256 6b1d3829ee8921c4301998c909f7829fa9ed3cbdac0d3b16af2d743aed1ba8df iso8601-2.1.0.tar.gz # Locally computed sha256 checksums sha256 516b02cd11e78c37a04f9effadd85af0483dda7ab1e715eef1cc94f97dc49e13 LICENSE diff --git a/package/python-iso8601/python-iso8601.mk b/package/python-iso8601/python-iso8601.mk index 68bf69933a6f..ce25a2fb2854 100644 --- a/package/python-iso8601/python-iso8601.mk +++ b/package/python-iso8601/python-iso8601.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_ISO8601_VERSION = 1.1.0 +PYTHON_ISO8601_VERSION = 2.1.0 PYTHON_ISO8601_SOURCE = iso8601-$(PYTHON_ISO8601_VERSION).tar.gz -PYTHON_ISO8601_SITE = https://files.pythonhosted.org/packages/31/8c/1c342fdd2f4af0857684d16af766201393ef53318c15fa785fcb6c3b7c32 +PYTHON_ISO8601_SITE = https://files.pythonhosted.org/packages/b9/f3/ef59cee614d5e0accf6fd0cbba025b93b272e626ca89fb70a3e9187c5d15 PYTHON_ISO8601_SETUP_TYPE = setuptools PYTHON_ISO8601_LICENSE = MIT PYTHON_ISO8601_LICENSE_FILES = LICENSE diff --git a/package/python-jaraco-classes/Config.in b/package/python-jaraco-classes/Config.in index 05c11237abb7..6d79062a1819 100644 --- a/package/python-jaraco-classes/Config.in +++ b/package/python-jaraco-classes/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_PYTHON_JARACO_CLASSES bool "python-jaraco-classes" - select BR2_PACKAGE_PYTHON_SIX # runtime + select BR2_PACKAGE_PYTHON_MORE_ITERTOOLS # runtime help Utility functions for Python class constructs. diff --git a/package/python-jaraco-classes/python-jaraco-classes.hash b/package/python-jaraco-classes/python-jaraco-classes.hash index 0e170d58d118..701aa07b8303 100644 --- a/package/python-jaraco-classes/python-jaraco-classes.hash +++ b/package/python-jaraco-classes/python-jaraco-classes.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/jaraco.classes/json -md5 a661acdae43995c08500324a8df62f03 jaraco.classes-3.2.3.tar.gz -sha256 89559fa5c1d3c34eff6f631ad80bb21f378dbcbb35dd161fd2c6b93f5be2f98a jaraco.classes-3.2.3.tar.gz +md5 26ae65ab8cda78455ddab0b05fe0a553 jaraco.classes-3.3.0.tar.gz +sha256 c063dd08e89217cee02c8d5e5ec560f2c8ce6cdc2fcdc2e68f7b2e5547ed3621 jaraco.classes-3.3.0.tar.gz # Locally computed sha256 checksums -sha256 db3f0246b1f9278f15845b99fec478b8b506eb76487993722f8c6e254285faf8 LICENSE +sha256 86da0f01aeae46348a3c3d465195dc1ceccde79f79e87769a64b8da04b2a4741 LICENSE diff --git a/package/python-jaraco-classes/python-jaraco-classes.mk b/package/python-jaraco-classes/python-jaraco-classes.mk index 4790516330fc..45950556b08f 100644 --- a/package/python-jaraco-classes/python-jaraco-classes.mk +++ b/package/python-jaraco-classes/python-jaraco-classes.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_JARACO_CLASSES_VERSION = 3.2.3 +PYTHON_JARACO_CLASSES_VERSION = 3.3.0 PYTHON_JARACO_CLASSES_SOURCE = jaraco.classes-$(PYTHON_JARACO_CLASSES_VERSION).tar.gz -PYTHON_JARACO_CLASSES_SITE = https://files.pythonhosted.org/packages/bf/02/a956c9bfd2dfe60b30c065ed8e28df7fcf72b292b861dca97e951c145ef6 +PYTHON_JARACO_CLASSES_SITE = https://files.pythonhosted.org/packages/8b/de/d0a466824ce8b53c474bb29344e6d6113023eb2c3793d1c58c0908588bfa PYTHON_JARACO_CLASSES_LICENSE = MIT PYTHON_JARACO_CLASSES_LICENSE_FILES = LICENSE PYTHON_JARACO_CLASSES_SETUP_TYPE = setuptools diff --git a/package/python-jaraco-functools/python-jaraco-functools.hash b/package/python-jaraco-functools/python-jaraco-functools.hash index a7cbb3daf1b8..97db6b75fb00 100644 --- a/package/python-jaraco-functools/python-jaraco-functools.hash +++ b/package/python-jaraco-functools/python-jaraco-functools.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/jaraco.functools/json -md5 f25708d7f38b9264459046fcc0afc8c1 jaraco.functools-3.5.2.tar.gz -sha256 45b05c158f3ad28731075556ffd4749bd254ec67f91e1eb367dcfebff1151db4 jaraco.functools-3.5.2.tar.gz +md5 6683d6f56930d4f0b34157b083813cf3 jaraco.functools-4.0.0.tar.gz +sha256 c279cb24c93d694ef7270f970d499cab4d3813f4e08273f95398651a634f0925 jaraco.functools-4.0.0.tar.gz # Locally computed sha256 checksums -sha256 db3f0246b1f9278f15845b99fec478b8b506eb76487993722f8c6e254285faf8 LICENSE +sha256 86da0f01aeae46348a3c3d465195dc1ceccde79f79e87769a64b8da04b2a4741 LICENSE diff --git a/package/python-jaraco-functools/python-jaraco-functools.mk b/package/python-jaraco-functools/python-jaraco-functools.mk index 8f64c4687e0d..5637b756290a 100644 --- a/package/python-jaraco-functools/python-jaraco-functools.mk +++ b/package/python-jaraco-functools/python-jaraco-functools.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_JARACO_FUNCTOOLS_VERSION = 3.5.2 +PYTHON_JARACO_FUNCTOOLS_VERSION = 4.0.0 PYTHON_JARACO_FUNCTOOLS_SOURCE = jaraco.functools-$(PYTHON_JARACO_FUNCTOOLS_VERSION).tar.gz -PYTHON_JARACO_FUNCTOOLS_SITE = https://files.pythonhosted.org/packages/b4/ea/9abca360081de9157668fcc52765989158aaf29b4826f26fcb17852d08e6 +PYTHON_JARACO_FUNCTOOLS_SITE = https://files.pythonhosted.org/packages/57/7c/fe770e264913f9a49ddb9387cca2757b8d7d26f06735c1bfbb018912afce PYTHON_JARACO_FUNCTOOLS_LICENSE = MIT PYTHON_JARACO_FUNCTOOLS_LICENSE_FILES = LICENSE PYTHON_JARACO_FUNCTOOLS_SETUP_TYPE = setuptools diff --git a/package/python-jedi/python-jedi.hash b/package/python-jedi/python-jedi.hash index dee8810e8934..99034d20bbea 100644 --- a/package/python-jedi/python-jedi.hash +++ b/package/python-jedi/python-jedi.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/jedi/json -md5 47e89a2b8bedcfeb1527fac37b9ba1b3 jedi-0.18.2.tar.gz -sha256 bae794c30d07f6d910d32a7048af09b5a39ed740918da923c6b780790ebac612 jedi-0.18.2.tar.gz +md5 0951191b506b660bfdb90c3dcd5b3254 jedi-0.19.1.tar.gz +sha256 cf0496f3651bc65d7174ac1b7d043eff454892c708a87d1b683e57b569927ffd jedi-0.19.1.tar.gz # Locally computed sha256 checksums sha256 78e60cd0b8f28694f30195482c33d76908d846b0d15278deb7332aa22ba8e412 LICENSE.txt sha256 235e993965d399a25e7d493d25c8622f78718510884b9c051f1f1866b6f34e9d jedi/third_party/django-stubs/LICENSE.txt diff --git a/package/python-jedi/python-jedi.mk b/package/python-jedi/python-jedi.mk index 40de61f0e8d6..5d54642a0727 100644 --- a/package/python-jedi/python-jedi.mk +++ b/package/python-jedi/python-jedi.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_JEDI_VERSION = 0.18.2 +PYTHON_JEDI_VERSION = 0.19.1 PYTHON_JEDI_SOURCE = jedi-$(PYTHON_JEDI_VERSION).tar.gz -PYTHON_JEDI_SITE = https://files.pythonhosted.org/packages/15/02/afd43c5066de05f6b3188f3aa74136a3289e6c30e7a45f351546cab0928c +PYTHON_JEDI_SITE = https://files.pythonhosted.org/packages/d6/99/99b493cec4bf43176b678de30f81ed003fd6a647a301b9c927280c600f0a PYTHON_JEDI_SETUP_TYPE = setuptools PYTHON_JEDI_LICENSE = MIT, Apache-2.0 (typeshed) PYTHON_JEDI_LICENSE_FILES = LICENSE.txt jedi/third_party/django-stubs/LICENSE.txt jedi/third_party/typeshed/LICENSE diff --git a/package/python-jeepney/Config.in b/package/python-jeepney/Config.in new file mode 100644 index 000000000000..700176e12fe9 --- /dev/null +++ b/package/python-jeepney/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_JEEPNEY + bool "python-jeepney" + help + Low-level, pure Python DBus protocol wrapper. + + https://gitlab.com/takluyver/jeepney diff --git a/package/python-jeepney/python-jeepney.hash b/package/python-jeepney/python-jeepney.hash new file mode 100644 index 000000000000..31a5bac18392 --- /dev/null +++ b/package/python-jeepney/python-jeepney.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/jeepney/json +md5 7e2151e9197c751ceca6550bc6b3294c jeepney-0.8.0.tar.gz +sha256 5efe48d255973902f6badc3ce55e2aa6c5c3b3bc642059ef3a91247bcfcc5806 jeepney-0.8.0.tar.gz +# Locally computed sha256 checksums +sha256 1b22b049b5267d6dfc23a67bf4a84d8ec04b9fdfb1a51d360e42b4342c8b4154 LICENSE diff --git a/package/python-jeepney/python-jeepney.mk b/package/python-jeepney/python-jeepney.mk new file mode 100644 index 000000000000..ac4c0283a888 --- /dev/null +++ b/package/python-jeepney/python-jeepney.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-jeepney +# +################################################################################ + +PYTHON_JEEPNEY_VERSION = 0.8.0 +PYTHON_JEEPNEY_SOURCE = jeepney-$(PYTHON_JEEPNEY_VERSION).tar.gz +PYTHON_JEEPNEY_SITE = https://files.pythonhosted.org/packages/d6/f4/154cf374c2daf2020e05c3c6a03c91348d59b23c5366e968feb198306fdf +PYTHON_JEEPNEY_SETUP_TYPE = flit +PYTHON_JEEPNEY_LICENSE = MIT +PYTHON_JEEPNEY_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-jinja2/Config.in b/package/python-jinja2/Config.in index 84a46bd26474..5623d4723cef 100644 --- a/package/python-jinja2/Config.in +++ b/package/python-jinja2/Config.in @@ -7,4 +7,4 @@ config BR2_PACKAGE_PYTHON_JINJA2 provides a Django inspired non-XML syntax but supports inline expressions and an optional sandboxed environment. - http://jinja.pocoo.org/ + https://jinja.palletsprojects.com diff --git a/package/python-jsonschema-specifications/Config.in b/package/python-jsonschema-specifications/Config.in new file mode 100644 index 000000000000..31453a12ea68 --- /dev/null +++ b/package/python-jsonschema-specifications/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PYTHON_JSONSCHEMA_SPECIFICATIONS + bool "python-jsonschema-specifications" + depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS # python-referencing -> python-rpds-py + select BR2_PACKAGE_PYTHON_REFERENCING # runtime + help + The JSON Schema meta-schemas and vocabularies, exposed as a + Registry. + + https://github.com/python-jsonschema/jsonschema-specifications diff --git a/package/python-jsonschema-specifications/python-jsonschema-specifications.hash b/package/python-jsonschema-specifications/python-jsonschema-specifications.hash new file mode 100644 index 000000000000..5aaba45210cd --- /dev/null +++ b/package/python-jsonschema-specifications/python-jsonschema-specifications.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/jsonschema-specifications/json +md5 d37762167688d8a05024b92dc8a1e20f jsonschema_specifications-2023.7.1.tar.gz +sha256 c91a50404e88a1f6ba40636778e2ee08f6e24c5613fe4c53ac24578a5a7f72bb jsonschema_specifications-2023.7.1.tar.gz +# Locally computed sha256 checksums +sha256 42dcd63495f87b4eb7c7757afa379bb55a53f94afd7a5f657d9adf57236e515c COPYING diff --git a/package/python-jsonschema-specifications/python-jsonschema-specifications.mk b/package/python-jsonschema-specifications/python-jsonschema-specifications.mk new file mode 100644 index 000000000000..7a19eee4236f --- /dev/null +++ b/package/python-jsonschema-specifications/python-jsonschema-specifications.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# python-jsonschema-specifications +# +################################################################################ + +PYTHON_JSONSCHEMA_SPECIFICATIONS_VERSION = 2023.7.1 +PYTHON_JSONSCHEMA_SPECIFICATIONS_SOURCE = jsonschema_specifications-$(PYTHON_JSONSCHEMA_SPECIFICATIONS_VERSION).tar.gz +PYTHON_JSONSCHEMA_SPECIFICATIONS_SITE = https://files.pythonhosted.org/packages/12/ce/eb5396b34c28cbac19a6a8632f0e03d309135d77285536258b82120198d8 +PYTHON_JSONSCHEMA_SPECIFICATIONS_SETUP_TYPE = pep517 +PYTHON_JSONSCHEMA_SPECIFICATIONS_LICENSE = MIT +PYTHON_JSONSCHEMA_SPECIFICATIONS_LICENSE_FILES = COPYING +PYTHON_JSONSCHEMA_SPECIFICATIONS_DEPENDENCIES = \ + host-python-hatchling \ + host-python-hatch-vcs + +$(eval $(python-package)) diff --git a/package/python-jsonschema/Config.in b/package/python-jsonschema/Config.in index d9508c370513..66d2417adc14 100644 --- a/package/python-jsonschema/Config.in +++ b/package/python-jsonschema/Config.in @@ -1,8 +1,11 @@ config BR2_PACKAGE_PYTHON_JSONSCHEMA bool "python-jsonschema" + depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS # python-rpds-py select BR2_PACKAGE_PYTHON_ATTRS # runtime - select BR2_PACKAGE_PYTHON_PYRSISTENT # runtime + select BR2_PACKAGE_PYTHON_JSONSCHEMA_SPECIFICATIONS # runtime + select BR2_PACKAGE_PYTHON_REFERENCING # runtime + select BR2_PACKAGE_PYTHON_RPDS_PY # runtime help An implementation of JSON Schema validation for Python. - http://github.com/Julian/jsonschema + https://github.com/python-jsonschema/jsonschema diff --git a/package/python-jsonschema/python-jsonschema.hash b/package/python-jsonschema/python-jsonschema.hash index f7105764619e..f421b8a48bfc 100644 --- a/package/python-jsonschema/python-jsonschema.hash +++ b/package/python-jsonschema/python-jsonschema.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/jsonschema/json -md5 7c65ceb8923c83cb1f22c2b5a86d99b0 jsonschema-4.17.3.tar.gz -sha256 0f864437ab8b6076ba6707453ef8f98a6a0d512a80e93f8abdb676f737ecb60d jsonschema-4.17.3.tar.gz +md5 8bf5f0a2342dc4c8390c28a99be555e7 jsonschema-4.19.2.tar.gz +sha256 c9ff4d7447eed9592c23a12ccee508baf0dd0d59650615e847feb6cdca74f392 jsonschema-4.19.2.tar.gz # Locally computed sha256 checksums sha256 4f92a015a13c4d1a040bef018aa13430b4f1bc73b41b16bb846c346766de7439 COPYING sha256 837402bd25fad9b704265801ca3f92566a98157c1f9a7acd6f446299ba1c305a json/LICENSE diff --git a/package/python-jsonschema/python-jsonschema.mk b/package/python-jsonschema/python-jsonschema.mk index 16fc660ec941..dee87e8f9d9b 100644 --- a/package/python-jsonschema/python-jsonschema.mk +++ b/package/python-jsonschema/python-jsonschema.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_JSONSCHEMA_VERSION = 4.17.3 +PYTHON_JSONSCHEMA_VERSION = 4.19.2 PYTHON_JSONSCHEMA_SOURCE = jsonschema-$(PYTHON_JSONSCHEMA_VERSION).tar.gz -PYTHON_JSONSCHEMA_SITE = https://files.pythonhosted.org/packages/36/3d/ca032d5ac064dff543aa13c984737795ac81abc9fb130cd2fcff17cfabc7 +PYTHON_JSONSCHEMA_SITE = https://files.pythonhosted.org/packages/95/18/618159fb2efbe3fb2cd32b16c40278954cde94744957734ef0482286a052 PYTHON_JSONSCHEMA_SETUP_TYPE = pep517 PYTHON_JSONSCHEMA_LICENSE = MIT PYTHON_JSONSCHEMA_LICENSE_FILES = COPYING json/LICENSE diff --git a/package/python-keyring/Config.in b/package/python-keyring/Config.in index 6b33686cbee6..6c03317f6174 100644 --- a/package/python-keyring/Config.in +++ b/package/python-keyring/Config.in @@ -3,6 +3,8 @@ config BR2_PACKAGE_PYTHON_KEYRING # python-secretstorage -> python-cryptography depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS select BR2_PACKAGE_PYTHON_ENTRYPOINTS # runtime + select BR2_PACKAGE_PYTHON_JARACO_CLASSES # runtime + select BR2_PACKAGE_PYTHON_JEEPNEY # runtime select BR2_PACKAGE_PYTHON_SECRETSTORAGE # runtime help The Python keyring lib provides a easy way to access the diff --git a/package/python-keyring/python-keyring.hash b/package/python-keyring/python-keyring.hash index 837743f5c2fe..50ac3df3427a 100644 --- a/package/python-keyring/python-keyring.hash +++ b/package/python-keyring/python-keyring.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/keyring/json -md5 a0640ab7525b4fe58061b5999cca5026 keyring-23.13.1.tar.gz -sha256 ba2e15a9b35e21908d0aaf4e0a47acc52d6ae33444df0da2b49d41a46ef6d678 keyring-23.13.1.tar.gz +md5 ed5df85d33c36bb268a79d4472a13312 keyring-24.2.0.tar.gz +sha256 ca0746a19ec421219f4d713f848fa297a661a8a8c1504867e55bfb5e09091509 keyring-24.2.0.tar.gz # Locally computed sha256 checksums -sha256 db3f0246b1f9278f15845b99fec478b8b506eb76487993722f8c6e254285faf8 LICENSE +sha256 86da0f01aeae46348a3c3d465195dc1ceccde79f79e87769a64b8da04b2a4741 LICENSE diff --git a/package/python-keyring/python-keyring.mk b/package/python-keyring/python-keyring.mk index 766139f5252e..87b51a89602b 100644 --- a/package/python-keyring/python-keyring.mk +++ b/package/python-keyring/python-keyring.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_KEYRING_VERSION = 23.13.1 +PYTHON_KEYRING_VERSION = 24.2.0 PYTHON_KEYRING_SOURCE = keyring-$(PYTHON_KEYRING_VERSION).tar.gz -PYTHON_KEYRING_SITE = https://files.pythonhosted.org/packages/55/fe/282f4c205add8e8bb3a1635cbbac59d6def2e0891b145aa553a0e40dd2d0 +PYTHON_KEYRING_SITE = https://files.pythonhosted.org/packages/14/c5/7a2a66489c66ee29562300ddc5be63636f70b4025a74df71466e62d929b1 PYTHON_KEYRING_SETUP_TYPE = setuptools PYTHON_KEYRING_LICENSE = MIT PYTHON_KEYRING_LICENSE_FILES = LICENSE diff --git a/package/python-kiwisolver/python-kiwisolver.hash b/package/python-kiwisolver/python-kiwisolver.hash index 7f2e263a5bc0..900027a88b18 100644 --- a/package/python-kiwisolver/python-kiwisolver.hash +++ b/package/python-kiwisolver/python-kiwisolver.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/kiwisolver/json -md5 34796908455c3b23c889439b541e424b kiwisolver-1.4.4.tar.gz -sha256 d41997519fcba4a1e46eb4a2fe31bc12f0ff957b2b81bac28db24744f333e955 kiwisolver-1.4.4.tar.gz +md5 20dea6992699d6be8a563995d7fe0309 kiwisolver-1.4.5.tar.gz +sha256 e57e563a57fb22a142da34f38acc2fc1a5c864bc29ca1517a88abc963e60d6ec kiwisolver-1.4.5.tar.gz # Locally computed sha256 checksums sha256 26da8d49744796f2601fb5fe9e5d8b9e8102064ca60a8dc1825b6177cb05450c LICENSE diff --git a/package/python-kiwisolver/python-kiwisolver.mk b/package/python-kiwisolver/python-kiwisolver.mk index 2c5db26dbcbb..04a0779b37da 100644 --- a/package/python-kiwisolver/python-kiwisolver.mk +++ b/package/python-kiwisolver/python-kiwisolver.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_KIWISOLVER_VERSION = 1.4.4 +PYTHON_KIWISOLVER_VERSION = 1.4.5 PYTHON_KIWISOLVER_SOURCE = kiwisolver-$(PYTHON_KIWISOLVER_VERSION).tar.gz -PYTHON_KIWISOLVER_SITE = https://files.pythonhosted.org/packages/5f/5c/272a7dd49a1914f35cd8d6d9f386defa8b047f6fbd06badd6b77b3ba24e7 +PYTHON_KIWISOLVER_SITE = https://files.pythonhosted.org/packages/b9/2d/226779e405724344fc678fcc025b812587617ea1a48b9442628b688e85ea PYTHON_KIWISOLVER_LICENSE = BSD-3-Clause PYTHON_KIWISOLVER_LICENSE_FILES = LICENSE PYTHON_KIWISOLVER_SETUP_TYPE = setuptools diff --git a/package/python-kmod/Config.in b/package/python-kmod/Config.in new file mode 100644 index 000000000000..244baee3a004 --- /dev/null +++ b/package/python-kmod/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_PYTHON_KMOD + bool "python-kmod" + depends on !BR2_STATIC_LIBS # kmod + select BR2_PACKAGE_HOST_PYTHON_CYTHON + select BR2_PACKAGE_KMOD + help + Python binding for kmod + + https://github.com/maurizio-lombardi/python-kmod + +comment "python-kmod needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/python-kmod/python-kmod.hash b/package/python-kmod/python-kmod.hash new file mode 100644 index 000000000000..b838914c1997 --- /dev/null +++ b/package/python-kmod/python-kmod.hash @@ -0,0 +1,3 @@ +# Locally computed sha256 checksums +sha256 0100ff27b7030a73e68ec07829d6123f412ce195dc761b954c92a38d18ba8539 python-kmod-0.9.2.tar.gz +sha256 1a136f227d8318af7d2320dad880a9f1a057c08cff044b545bb33430ab9c6860 COPYING.LESSER diff --git a/package/python-kmod/python-kmod.mk b/package/python-kmod/python-kmod.mk new file mode 100644 index 000000000000..6164b0f1eb24 --- /dev/null +++ b/package/python-kmod/python-kmod.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# python-kmod +# +################################################################################ + +# The python-kmod package listed at https://pypi.org/project/kmod/#description +# is not the same as the one listed below. +PYTHON_KMOD_VERSION = 0.9.2 +PYTHON_KMOD_SITE = $(call github,maurizio-lombardi,python-kmod,v$(PYTHON_KMOD_VERSION)) +PYTHON_KMOD_SETUP_TYPE = setuptools +PYTHON_KMOD_LICENSE = LGPL-2.1 +PYTHON_KMOD_LICENSE_FILES = COPYING.LESSER +PYTHON_KMOD_DEPENDENCIES = host-python-cython kmod + +$(eval $(python-package)) diff --git a/package/python-lark/python-lark.hash b/package/python-lark/python-lark.hash index 6e192684a881..9ea778c8da5c 100644 --- a/package/python-lark/python-lark.hash +++ b/package/python-lark/python-lark.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/lark/json -md5 b9048974c5ce56997e9e536dda475159 lark-1.1.5.tar.gz -sha256 4b534eae1f9af5b4ea000bea95776350befe1981658eea3820a01c37e504bb4d lark-1.1.5.tar.gz +md5 124c36ea3b68783f06cea5fe6ee8a6f2 lark-1.1.8.tar.gz +sha256 7ef424db57f59c1ffd6f0d4c2b705119927f566b68c0fe1942dddcc0e44391a5 lark-1.1.8.tar.gz # Locally computed sha256 checksums sha256 8263e5652d07cecb3adadf05140b65e70cfa169ecec5f520fe1671479ce12a83 LICENSE diff --git a/package/python-lark/python-lark.mk b/package/python-lark/python-lark.mk index c08fc2cabd05..9cb30abb6516 100644 --- a/package/python-lark/python-lark.mk +++ b/package/python-lark/python-lark.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_LARK_VERSION = 1.1.5 +PYTHON_LARK_VERSION = 1.1.8 PYTHON_LARK_SOURCE = lark-$(PYTHON_LARK_VERSION).tar.gz -PYTHON_LARK_SITE = https://files.pythonhosted.org/packages/a2/25/8e16de418fc83bb00dabaf8c7110bc45a90bf5481a70aa5f1668fcea73bc +PYTHON_LARK_SITE = https://files.pythonhosted.org/packages/12/1c/b466b58dacac15ffefce9bcb5128e18948a143849610a7d5300f31920be0 PYTHON_LARK_SETUP_TYPE = setuptools PYTHON_LARK_LICENSE = MIT PYTHON_LARK_LICENSE_FILES = LICENSE diff --git a/package/python-libconf/python-libconf.hash b/package/python-libconf/python-libconf.hash new file mode 100644 index 000000000000..d05efd37fdb7 --- /dev/null +++ b/package/python-libconf/python-libconf.hash @@ -0,0 +1,4 @@ +# Locally calculated +sha256 66897870fcafce05624eafcc99e2dc8e150124e91019d9c29cc4f3bef64311dd python-libconf-2.0.1.tar.gz +# Locally computed sha256 checksums +sha256 3c2afc8c9f7a12032f225e6fa870e85af14d1b71236afe28d94a4b67e5e8c873 LICENSE diff --git a/package/python-libconf/python-libconf.mk b/package/python-libconf/python-libconf.mk new file mode 100644 index 000000000000..b349e3e60ec6 --- /dev/null +++ b/package/python-libconf/python-libconf.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-libconf +# +################################################################################ + +PYTHON_LIBCONF_VERSION = 2.0.1 +PYTHON_LIBCONF_SITE = $(call github,ChrisAichinger,python-libconf,$(PYTHON_LIBCONF_VERSION)) +PYTHON_LIBCONF_SETUP_TYPE = setuptools +PYTHON_LIBCONF_LICENSE = MIT +PYTHON_LIBCONF_LICENSE_FILES = LICENSE + +$(eval $(host-python-package)) diff --git a/package/python-libusb1/python-libusb1.hash b/package/python-libusb1/python-libusb1.hash index 86dea08c895b..effecd85319f 100644 --- a/package/python-libusb1/python-libusb1.hash +++ b/package/python-libusb1/python-libusb1.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/libusb1/json -md5 ffbb02bf9aa49f973a6a58112aed7b06 libusb1-3.0.0.tar.gz -sha256 5792a9defee40f15d330a40d9b1800545c32e47ba7fc66b6f28f133c9fcc8538 libusb1-3.0.0.tar.gz +md5 7b4f094786d1dfc8d011c7649d8ccb97 libusb1-3.1.0.tar.gz +sha256 4ee9b0a55f8bd0b3ea7017ae919a6c1f439af742c4a4b04543c5fd7af89b828c libusb1-3.1.0.tar.gz # Locally computed sha256 checksums sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LESSER diff --git a/package/python-libusb1/python-libusb1.mk b/package/python-libusb1/python-libusb1.mk index 48a0b1dea3ba..39fd7e40d332 100644 --- a/package/python-libusb1/python-libusb1.mk +++ b/package/python-libusb1/python-libusb1.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_LIBUSB1_VERSION = 3.0.0 +PYTHON_LIBUSB1_VERSION = 3.1.0 PYTHON_LIBUSB1_SOURCE = libusb1-$(PYTHON_LIBUSB1_VERSION).tar.gz -PYTHON_LIBUSB1_SITE = https://files.pythonhosted.org/packages/f4/83/59bf75e74e0c4859ea63eae0c7da660c1dcb78b31667d4a5f735d52f5974 +PYTHON_LIBUSB1_SITE = https://files.pythonhosted.org/packages/af/19/53ecbfb96d6832f2272d13b84658c360802fcfff7c0c497ab8f6bf15ac40 PYTHON_LIBUSB1_SETUP_TYPE = setuptools PYTHON_LIBUSB1_LICENSE = LGPL-2.1+ PYTHON_LIBUSB1_LICENSE_FILES = COPYING.LESSER diff --git a/package/python-lmdb/python-lmdb.hash b/package/python-lmdb/python-lmdb.hash index c8137ce4c0bb..ad176d5d215d 100644 --- a/package/python-lmdb/python-lmdb.hash +++ b/package/python-lmdb/python-lmdb.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/lmdb/json -md5 230103e2cd8efbca8ee7cf29151afd0d lmdb-1.4.0.tar.gz -sha256 39f6c4ee145d28d17025d350720abb6f95db816514e868db57444fdef51cbb47 lmdb-1.4.0.tar.gz +md5 d216e0220c625aa72de2acc158e81a0e lmdb-1.4.1.tar.gz +sha256 1f4c76af24e907593487c904ef5eba1993beb38ed385af82adb25a858f2d658d lmdb-1.4.1.tar.gz # Locally computed sha256 checksums sha256 310fe25c858a9515fc8c8d7d1f24a67c9496f84a91e0a0e41ea9975b1371e569 LICENSE diff --git a/package/python-lmdb/python-lmdb.mk b/package/python-lmdb/python-lmdb.mk index 071106605fae..52617b6ed0b2 100644 --- a/package/python-lmdb/python-lmdb.mk +++ b/package/python-lmdb/python-lmdb.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_LMDB_VERSION = 1.4.0 +PYTHON_LMDB_VERSION = 1.4.1 PYTHON_LMDB_SOURCE = lmdb-$(PYTHON_LMDB_VERSION).tar.gz -PYTHON_LMDB_SITE = https://files.pythonhosted.org/packages/fd/78/4cdc5927d5f3c3c86c4da0108c2eeba544cd67e773232164d59f3e442ff0 +PYTHON_LMDB_SITE = https://files.pythonhosted.org/packages/de/13/dd9b0c1924f0becc93e0bacd123a4e7a347966e3e74753ace3b1e85acc39 PYTHON_LMDB_LICENSE = OLDAP-2.8 PYTHON_LMDB_LICENSE_FILES = LICENSE PYTHON_LMDB_SETUP_TYPE = setuptools diff --git a/package/python-logstash/python-logstash.mk b/package/python-logstash/python-logstash.mk index a78b6e6590d3..6cdbe2009bee 100644 --- a/package/python-logstash/python-logstash.mk +++ b/package/python-logstash/python-logstash.mk @@ -6,7 +6,7 @@ PYTHON_LOGSTASH_VERSION = 0.4.8 PYTHON_LOGSTASH_SITE = https://files.pythonhosted.org/packages/f7/3b/c3a957bbdd23859f07905fc3d1adfe89957217a347478c58409f0315cf1d -PYTHON_LOGSTASH_SETUP_TYPE = distutils +PYTHON_LOGSTASH_SETUP_TYPE = setuptools PYTHON_LOGSTASH_LICENSE = MIT PYTHON_LOGSTASH_LICENSE_FILES = LICENSE diff --git a/package/python-lxml/python-lxml.hash b/package/python-lxml/python-lxml.hash index 72df6d027873..e34cb193f4de 100644 --- a/package/python-lxml/python-lxml.hash +++ b/package/python-lxml/python-lxml.hash @@ -1,5 +1,6 @@ +# From https://pypi.org/project/lxml/ +sha256 48628bd53a426c9eb9bc066a923acaa0878d1e86129fd5359aee99285f4eed9c lxml-4.9.3.tar.gz # Locally computed -sha256 2455cfaeb7ac70338b3257f41e21f0724f4b5b0c0e7702da67ee6c3640835b67 lxml-4.9.2.tar.gz sha256 41d49dd406aa0e1548a6d5f21a30d6bf638b3cd96eb7289dd348d83ed2e40392 LICENSES.txt sha256 69edb445c1335a8312d4c09271847e9956d84f0d9f724d125340cc3fad767b2a doc/licenses/BSD.txt sha256 0497ae8138811ef4466ede653bab7a59feb3d3c14f9ed50fc33a00aeb5bec32e doc/licenses/elementtree.txt diff --git a/package/python-lxml/python-lxml.mk b/package/python-lxml/python-lxml.mk index 657622a9620f..3ef3aabdbc89 100644 --- a/package/python-lxml/python-lxml.mk +++ b/package/python-lxml/python-lxml.mk @@ -4,8 +4,8 @@ # ################################################################################ -PYTHON_LXML_VERSION = 4.9.2 -PYTHON_LXML_SITE = https://files.pythonhosted.org/packages/06/5a/e11cad7b79f2cf3dd2ff8f81fa8ca667e7591d3d8451768589996b65dec1 +PYTHON_LXML_VERSION = 4.9.3 +PYTHON_LXML_SITE = https://files.pythonhosted.org/packages/30/39/7305428d1c4f28282a4f5bdbef24e0f905d351f34cf351ceb131f5cddf78 PYTHON_LXML_SOURCE = lxml-$(PYTHON_LXML_VERSION).tar.gz # Not including the GPL, because it is used only for the test scripts. diff --git a/package/python-m2crypto/0001-Mitigate-the-Bleichenbacher-timing-attacks-in-the-RSA-decryption-API-CVE-2020-25657.patch b/package/python-m2crypto/0001-Mitigate-the-Bleichenbacher-timing-attacks-in-the-RSA-decryption-API-CVE-2020-25657.patch deleted file mode 100644 index 68200b7d9b7f..000000000000 --- a/package/python-m2crypto/0001-Mitigate-the-Bleichenbacher-timing-attacks-in-the-RSA-decryption-API-CVE-2020-25657.patch +++ /dev/null @@ -1,174 +0,0 @@ -From 84c53958def0f510e92119fca14d74f94215827a Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Mat=C4=9Bj=20Cepl?= -Date: Tue, 28 Jun 2022 21:17:01 +0200 -Subject: [PATCH] Mitigate the Bleichenbacher timing attacks in the RSA - decryption API (CVE-2020-25657) - -Fixes #282 - -[Retrieved from: -https://gitlab.com/m2crypto/m2crypto/-/commit/84c53958def0f510e92119fca14d74f94215827a] -Signed-off-by: Fabrice Fontaine ---- - src/SWIG/_m2crypto_wrap.c | 20 ++++++++++++-------- - src/SWIG/_rsa.i | 20 ++++++++++++-------- - tests/test_rsa.py | 15 +++++++-------- - 3 files changed, 31 insertions(+), 24 deletions(-) - -diff --git a/src/SWIG/_m2crypto_wrap.c b/src/SWIG/_m2crypto_wrap.c -index aba9eb6d..a9f30da9 100644 ---- a/src/SWIG/_m2crypto_wrap.c -+++ b/src/SWIG/_m2crypto_wrap.c -@@ -7040,9 +7040,10 @@ PyObject *rsa_private_encrypt(RSA *rsa, PyObject *from, int padding) { - tlen = RSA_private_encrypt(flen, (unsigned char *)fbuf, - (unsigned char *)tbuf, rsa, padding); - if (tlen == -1) { -- m2_PyErr_Msg(_rsa_err); -+ ERR_clear_error(); -+ PyErr_Clear(); - PyMem_Free(tbuf); -- return NULL; -+ Py_RETURN_NONE; - } - - ret = PyBytes_FromStringAndSize((const char *)tbuf, tlen); -@@ -7070,9 +7071,10 @@ PyObject *rsa_public_decrypt(RSA *rsa, PyObject *from, int padding) { - tlen = RSA_public_decrypt(flen, (unsigned char *)fbuf, - (unsigned char *)tbuf, rsa, padding); - if (tlen == -1) { -- m2_PyErr_Msg(_rsa_err); -+ ERR_clear_error(); -+ PyErr_Clear(); - PyMem_Free(tbuf); -- return NULL; -+ Py_RETURN_NONE; - } - - ret = PyBytes_FromStringAndSize((const char *)tbuf, tlen); -@@ -7097,9 +7099,10 @@ PyObject *rsa_public_encrypt(RSA *rsa, PyObject *from, int padding) { - tlen = RSA_public_encrypt(flen, (unsigned char *)fbuf, - (unsigned char *)tbuf, rsa, padding); - if (tlen == -1) { -- m2_PyErr_Msg(_rsa_err); -+ ERR_clear_error(); -+ PyErr_Clear(); - PyMem_Free(tbuf); -- return NULL; -+ Py_RETURN_NONE; - } - - ret = PyBytes_FromStringAndSize((const char *)tbuf, tlen); -@@ -7124,9 +7127,10 @@ PyObject *rsa_private_decrypt(RSA *rsa, PyObject *from, int padding) { - tlen = RSA_private_decrypt(flen, (unsigned char *)fbuf, - (unsigned char *)tbuf, rsa, padding); - if (tlen == -1) { -- m2_PyErr_Msg(_rsa_err); -+ ERR_clear_error(); -+ PyErr_Clear(); - PyMem_Free(tbuf); -- return NULL; -+ Py_RETURN_NONE; - } - ret = PyBytes_FromStringAndSize((const char *)tbuf, tlen); - -diff --git a/src/SWIG/_rsa.i b/src/SWIG/_rsa.i -index bc714e01..1377b8be 100644 ---- a/src/SWIG/_rsa.i -+++ b/src/SWIG/_rsa.i -@@ -239,9 +239,10 @@ PyObject *rsa_private_encrypt(RSA *rsa, PyObject *from, int padding) { - tlen = RSA_private_encrypt(flen, (unsigned char *)fbuf, - (unsigned char *)tbuf, rsa, padding); - if (tlen == -1) { -- m2_PyErr_Msg(_rsa_err); -+ ERR_clear_error(); -+ PyErr_Clear(); - PyMem_Free(tbuf); -- return NULL; -+ Py_RETURN_NONE; - } - - ret = PyBytes_FromStringAndSize((const char *)tbuf, tlen); -@@ -269,9 +270,10 @@ PyObject *rsa_public_decrypt(RSA *rsa, PyObject *from, int padding) { - tlen = RSA_public_decrypt(flen, (unsigned char *)fbuf, - (unsigned char *)tbuf, rsa, padding); - if (tlen == -1) { -- m2_PyErr_Msg(_rsa_err); -+ ERR_clear_error(); -+ PyErr_Clear(); - PyMem_Free(tbuf); -- return NULL; -+ Py_RETURN_NONE; - } - - ret = PyBytes_FromStringAndSize((const char *)tbuf, tlen); -@@ -296,9 +298,10 @@ PyObject *rsa_public_encrypt(RSA *rsa, PyObject *from, int padding) { - tlen = RSA_public_encrypt(flen, (unsigned char *)fbuf, - (unsigned char *)tbuf, rsa, padding); - if (tlen == -1) { -- m2_PyErr_Msg(_rsa_err); -+ ERR_clear_error(); -+ PyErr_Clear(); - PyMem_Free(tbuf); -- return NULL; -+ Py_RETURN_NONE; - } - - ret = PyBytes_FromStringAndSize((const char *)tbuf, tlen); -@@ -323,9 +326,10 @@ PyObject *rsa_private_decrypt(RSA *rsa, PyObject *from, int padding) { - tlen = RSA_private_decrypt(flen, (unsigned char *)fbuf, - (unsigned char *)tbuf, rsa, padding); - if (tlen == -1) { -- m2_PyErr_Msg(_rsa_err); -+ ERR_clear_error(); -+ PyErr_Clear(); - PyMem_Free(tbuf); -- return NULL; -+ Py_RETURN_NONE; - } - ret = PyBytes_FromStringAndSize((const char *)tbuf, tlen); - -diff --git a/tests/test_rsa.py b/tests/test_rsa.py -index 7bb3af75..5e75d681 100644 ---- a/tests/test_rsa.py -+++ b/tests/test_rsa.py -@@ -109,8 +109,9 @@ class RSATestCase(unittest.TestCase): - # The other paddings. - for padding in self.s_padding_nok: - p = getattr(RSA, padding) -- with self.assertRaises(RSA.RSAError): -- priv.private_encrypt(self.data, p) -+ # Exception disabled as a part of mitigation against CVE-2020-25657 -+ # with self.assertRaises(RSA.RSAError): -+ priv.private_encrypt(self.data, p) - # Type-check the data to be encrypted. - with self.assertRaises(TypeError): - priv.private_encrypt(self.gen_callback, RSA.pkcs1_padding) -@@ -127,10 +128,12 @@ class RSATestCase(unittest.TestCase): - self.assertEqual(ptxt, self.data) - - # no_padding -- with six.assertRaisesRegex(self, RSA.RSAError, 'data too small'): -- priv.public_encrypt(self.data, RSA.no_padding) -+ # Exception disabled as a part of mitigation against CVE-2020-25657 -+ # with six.assertRaisesRegex(self, RSA.RSAError, 'data too small'): -+ priv.public_encrypt(self.data, RSA.no_padding) - - # Type-check the data to be encrypted. -+ # Exception disabled as a part of mitigation against CVE-2020-25657 - with self.assertRaises(TypeError): - priv.public_encrypt(self.gen_callback, RSA.pkcs1_padding) - -@@ -146,10 +149,6 @@ class RSATestCase(unittest.TestCase): - b'\000\000\000\003\001\000\001') # aka 65537 aka 0xf4 - with self.assertRaises(RSA.RSAError): - setattr(rsa, 'e', '\000\000\000\003\001\000\001') -- with self.assertRaises(RSA.RSAError): -- rsa.private_encrypt(1) -- with self.assertRaises(RSA.RSAError): -- rsa.private_decrypt(1) - assert rsa.check_key() - - def test_loadpub_bad(self): --- -GitLab - diff --git a/package/python-m2crypto/python-m2crypto.hash b/package/python-m2crypto/python-m2crypto.hash index 879f232565ff..782837081ef2 100644 --- a/package/python-m2crypto/python-m2crypto.hash +++ b/package/python-m2crypto/python-m2crypto.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/m2crypto/json -md5 8f39bfac730b6567e0c2179d15318c60 M2Crypto-0.38.0.tar.gz -sha256 99f2260a30901c949a8dc6d5f82cd5312ffb8abc92e76633baf231bbbcb2decb M2Crypto-0.38.0.tar.gz +md5 280c20072afbe7010cf9e9620ea25c7b M2Crypto-0.40.1.tar.gz +sha256 bbfd113ec55708c05816252a4f09e4237df4f3bbfc8171cbbc33057d257bbb30 M2Crypto-0.40.1.tar.gz # Locally computed sha256 checksums sha256 4eca478396f4b2b020729a111fce3f096456d74500bfd8f2b0388c3c69f997c0 LICENCE diff --git a/package/python-m2crypto/python-m2crypto.mk b/package/python-m2crypto/python-m2crypto.mk index 3c28fa3b0de8..69a0c28df553 100644 --- a/package/python-m2crypto/python-m2crypto.mk +++ b/package/python-m2crypto/python-m2crypto.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_M2CRYPTO_VERSION = 0.38.0 +PYTHON_M2CRYPTO_VERSION = 0.40.1 PYTHON_M2CRYPTO_SOURCE = M2Crypto-$(PYTHON_M2CRYPTO_VERSION).tar.gz -PYTHON_M2CRYPTO_SITE = https://files.pythonhosted.org/packages/2c/52/c35ec79dd97a8ecf6b2bbd651df528abb47705def774a4a15b99977274e8 +PYTHON_M2CRYPTO_SITE = https://files.pythonhosted.org/packages/9e/a3/9433817493ea250db67a05de3361cb0a1d58531847d50406f2f28455e68c PYTHON_M2CRYPTO_SETUP_TYPE = setuptools PYTHON_M2CRYPTO_LICENSE = MIT PYTHON_M2CRYPTO_LICENSE_FILES = LICENCE @@ -15,7 +15,4 @@ PYTHON_M2CRYPTO_CPE_ID_PRODUCT = m2crypto PYTHON_M2CRYPTO_DEPENDENCIES = openssl host-swig PYTHON_M2CRYPTO_BUILD_OPTS = --openssl=$(STAGING_DIR)/usr -# 0001-Mitigate-the-Bleichenbacher-timing-attacks-in-the-RSA-decryption-API-CVE-2020-25657.patch -PYTHON_M2CRYPTO_IGNORE_CVES += CVE-2020-25657 - $(eval $(python-package)) diff --git a/package/python-magic-wormhole-mailbox-server/0002-Update-versioneer-to-0.29.patch b/package/python-magic-wormhole-mailbox-server/0002-Update-versioneer-to-0.29.patch new file mode 100644 index 000000000000..3152f1aae793 --- /dev/null +++ b/package/python-magic-wormhole-mailbox-server/0002-Update-versioneer-to-0.29.patch @@ -0,0 +1,2194 @@ +From 76b422b7f53dbc41195a184d966230106f6ddc7d Mon Sep 17 00:00:00 2001 +From: Adam Duskett +Date: Tue, 24 Oct 2023 09:50:41 +0200 +Subject: [PATCH] Update versioneer to 0.29 + +Fixes builds against Python 3.12.0 + +Upstream: https://github.com/magic-wormhole/magic-wormhole-mailbox-server/pull/40 + +Signed-off-by: Adam Duskett +--- + versioneer.py | 1350 ++++++++++++++++++++++++++++++++++--------------- + 1 file changed, 931 insertions(+), 419 deletions(-) + +diff --git a/versioneer.py b/versioneer.py +index 64fea1c..de97d90 100644 +--- a/versioneer.py ++++ b/versioneer.py +@@ -1,5 +1,4 @@ +- +-# Version: 0.18 ++# Version: 0.29 + + """The Versioneer - like a rocketeer, but for versions. + +@@ -7,18 +6,14 @@ The Versioneer + ============== + + * like a rocketeer, but for versions! +-* https://github.com/warner/python-versioneer ++* https://github.com/python-versioneer/python-versioneer + * Brian Warner +-* License: Public Domain +-* Compatible With: python2.6, 2.7, 3.2, 3.3, 3.4, 3.5, 3.6, and pypy +-* [![Latest Version] +-(https://pypip.in/version/versioneer/badge.svg?style=flat) +-](https://pypi.python.org/pypi/versioneer/) +-* [![Build Status] +-(https://travis-ci.org/warner/python-versioneer.png?branch=master) +-](https://travis-ci.org/warner/python-versioneer) +- +-This is a tool for managing a recorded version number in distutils-based ++* License: Public Domain (Unlicense) ++* Compatible with: Python 3.7, 3.8, 3.9, 3.10, 3.11 and pypy3 ++* [![Latest Version][pypi-image]][pypi-url] ++* [![Build Status][travis-image]][travis-url] ++ ++This is a tool for managing a recorded version number in setuptools-based + python projects. The goal is to remove the tedious and error-prone "update + the embedded version string" step from your release process. Making a new + release should be as easy as recording a new tag in your version-control +@@ -27,9 +22,38 @@ system, and maybe making new tarballs. + + ## Quick Install + +-* `pip install versioneer` to somewhere to your $PATH +-* add a `[versioneer]` section to your setup.cfg (see below) +-* run `versioneer install` in your source tree, commit the results ++Versioneer provides two installation modes. The "classic" vendored mode installs ++a copy of versioneer into your repository. The experimental build-time dependency mode ++is intended to allow you to skip this step and simplify the process of upgrading. ++ ++### Vendored mode ++ ++* `pip install versioneer` to somewhere in your $PATH ++ * A [conda-forge recipe](https://github.com/conda-forge/versioneer-feedstock) is ++ available, so you can also use `conda install -c conda-forge versioneer` ++* add a `[tool.versioneer]` section to your `pyproject.toml` or a ++ `[versioneer]` section to your `setup.cfg` (see [Install](INSTALL.md)) ++ * Note that you will need to add `tomli; python_version < "3.11"` to your ++ build-time dependencies if you use `pyproject.toml` ++* run `versioneer install --vendor` in your source tree, commit the results ++* verify version information with `python setup.py version` ++ ++### Build-time dependency mode ++ ++* `pip install versioneer` to somewhere in your $PATH ++ * A [conda-forge recipe](https://github.com/conda-forge/versioneer-feedstock) is ++ available, so you can also use `conda install -c conda-forge versioneer` ++* add a `[tool.versioneer]` section to your `pyproject.toml` or a ++ `[versioneer]` section to your `setup.cfg` (see [Install](INSTALL.md)) ++* add `versioneer` (with `[toml]` extra, if configuring in `pyproject.toml`) ++ to the `requires` key of the `build-system` table in `pyproject.toml`: ++ ```toml ++ [build-system] ++ requires = ["setuptools", "versioneer[toml]"] ++ build-backend = "setuptools.build_meta" ++ ``` ++* run `versioneer install --no-vendor` in your source tree, commit the results ++* verify version information with `python setup.py version` + + ## Version Identifiers + +@@ -61,7 +85,7 @@ version 1.3). Many VCS systems can report a description that captures this, + for example `git describe --tags --dirty --always` reports things like + "0.7-1-g574ab98-dirty" to indicate that the checkout is one revision past the + 0.7 tag, has a unique revision id of "574ab98", and is "dirty" (it has +-uncommitted changes. ++uncommitted changes). + + The version identifier is used for multiple purposes: + +@@ -166,7 +190,7 @@ which may help identify what went wrong). + + Some situations are known to cause problems for Versioneer. This details the + most significant ones. More can be found on Github +-[issues page](https://github.com/warner/python-versioneer/issues). ++[issues page](https://github.com/python-versioneer/python-versioneer/issues). + + ### Subprojects + +@@ -180,7 +204,7 @@ two common reasons why `setup.py` might not be in the root: + `setup.cfg`, and `tox.ini`. Projects like these produce multiple PyPI + distributions (and upload multiple independently-installable tarballs). + * Source trees whose main purpose is to contain a C library, but which also +- provide bindings to Python (and perhaps other langauges) in subdirectories. ++ provide bindings to Python (and perhaps other languages) in subdirectories. + + Versioneer will look for `.git` in parent directories, and most operations + should get the right version string. However `pip` and `setuptools` have bugs +@@ -194,9 +218,9 @@ work too. + Pip-8.1.1 is known to have this problem, but hopefully it will get fixed in + some later version. + +-[Bug #38](https://github.com/warner/python-versioneer/issues/38) is tracking ++[Bug #38](https://github.com/python-versioneer/python-versioneer/issues/38) is tracking + this issue. The discussion in +-[PR #61](https://github.com/warner/python-versioneer/pull/61) describes the ++[PR #61](https://github.com/python-versioneer/python-versioneer/pull/61) describes the + issue from the Versioneer side in more detail. + [pip PR#3176](https://github.com/pypa/pip/pull/3176) and + [pip PR#3615](https://github.com/pypa/pip/pull/3615) contain work to improve +@@ -224,31 +248,20 @@ regenerated while a different version is checked out. Many setup.py commands + cause egg_info to be rebuilt (including `sdist`, `wheel`, and installing into + a different virtualenv), so this can be surprising. + +-[Bug #83](https://github.com/warner/python-versioneer/issues/83) describes ++[Bug #83](https://github.com/python-versioneer/python-versioneer/issues/83) describes + this one, but upgrading to a newer version of setuptools should probably + resolve it. + +-### Unicode version strings +- +-While Versioneer works (and is continually tested) with both Python 2 and +-Python 3, it is not entirely consistent with bytes-vs-unicode distinctions. +-Newer releases probably generate unicode version strings on py2. It's not +-clear that this is wrong, but it may be surprising for applications when then +-write these strings to a network connection or include them in bytes-oriented +-APIs like cryptographic checksums. +- +-[Bug #71](https://github.com/warner/python-versioneer/issues/71) investigates +-this question. +- + + ## Updating Versioneer + + To upgrade your project to a new release of Versioneer, do the following: + + * install the new Versioneer (`pip install -U versioneer` or equivalent) +-* edit `setup.cfg`, if necessary, to include any new configuration settings +- indicated by the release notes. See [UPGRADING](./UPGRADING.md) for details. +-* re-run `versioneer install` in your source tree, to replace ++* edit `setup.cfg` and `pyproject.toml`, if necessary, ++ to include any new configuration settings indicated by the release notes. ++ See [UPGRADING](./UPGRADING.md) for details. ++* re-run `versioneer install --[no-]vendor` in your source tree, to replace + `SRC/_version.py` + * commit any changed files + +@@ -265,35 +278,70 @@ installation by editing setup.py . Alternatively, it might go the other + direction and include code from all supported VCS systems, reducing the + number of intermediate scripts. + ++## Similar projects ++ ++* [setuptools_scm](https://github.com/pypa/setuptools_scm/) - a non-vendored build-time ++ dependency ++* [minver](https://github.com/jbweston/miniver) - a lightweight reimplementation of ++ versioneer ++* [versioningit](https://github.com/jwodder/versioningit) - a PEP 518-based setuptools ++ plugin + + ## License + + To make Versioneer easier to embed, all its code is dedicated to the public + domain. The `_version.py` that it creates is also in the public domain. +-Specifically, both are released under the Creative Commons "Public Domain +-Dedication" license (CC0-1.0), as described in +-https://creativecommons.org/publicdomain/zero/1.0/ . ++Specifically, both are released under the "Unlicense", as described in ++https://unlicense.org/. ++ ++[pypi-image]: https://img.shields.io/pypi/v/versioneer.svg ++[pypi-url]: https://pypi.python.org/pypi/versioneer/ ++[travis-image]: ++https://img.shields.io/travis/com/python-versioneer/python-versioneer.svg ++[travis-url]: https://travis-ci.com/github/python-versioneer/python-versioneer + + """ ++# pylint:disable=invalid-name,import-outside-toplevel,missing-function-docstring ++# pylint:disable=missing-class-docstring,too-many-branches,too-many-statements ++# pylint:disable=raise-missing-from,too-many-lines,too-many-locals,import-error ++# pylint:disable=too-few-public-methods,redefined-outer-name,consider-using-with ++# pylint:disable=attribute-defined-outside-init,too-many-arguments + +-from __future__ import print_function +-try: +- import configparser +-except ImportError: +- import ConfigParser as configparser ++import configparser + import errno + import json + import os + import re + import subprocess + import sys ++from pathlib import Path ++from typing import Any, Callable, cast, Dict, List, Optional, Tuple, Union ++from typing import NoReturn ++import functools ++ ++have_tomllib = True ++if sys.version_info >= (3, 11): ++ import tomllib ++else: ++ try: ++ import tomli as tomllib ++ except ImportError: ++ have_tomllib = False + + + class VersioneerConfig: + """Container for Versioneer configuration parameters.""" + ++ VCS: str ++ style: str ++ tag_prefix: str ++ versionfile_source: str ++ versionfile_build: Optional[str] ++ parentdir_prefix: Optional[str] ++ verbose: Optional[bool] ++ + +-def get_root(): ++def get_root() -> str: + """Get the project root directory. + + We require that all commands are run from the project root, i.e. the +@@ -301,18 +349,30 @@ def get_root(): + """ + root = os.path.realpath(os.path.abspath(os.getcwd())) + setup_py = os.path.join(root, "setup.py") ++ pyproject_toml = os.path.join(root, "pyproject.toml") + versioneer_py = os.path.join(root, "versioneer.py") +- if not (os.path.exists(setup_py) or os.path.exists(versioneer_py)): ++ if not ( ++ os.path.exists(setup_py) ++ or os.path.exists(pyproject_toml) ++ or os.path.exists(versioneer_py) ++ ): + # allow 'python path/to/setup.py COMMAND' + root = os.path.dirname(os.path.realpath(os.path.abspath(sys.argv[0]))) + setup_py = os.path.join(root, "setup.py") ++ pyproject_toml = os.path.join(root, "pyproject.toml") + versioneer_py = os.path.join(root, "versioneer.py") +- if not (os.path.exists(setup_py) or os.path.exists(versioneer_py)): +- err = ("Versioneer was unable to run the project root directory. " +- "Versioneer requires setup.py to be executed from " +- "its immediate directory (like 'python setup.py COMMAND'), " +- "or in a way that lets it use sys.argv[0] to find the root " +- "(like 'python path/to/setup.py COMMAND').") ++ if not ( ++ os.path.exists(setup_py) ++ or os.path.exists(pyproject_toml) ++ or os.path.exists(versioneer_py) ++ ): ++ err = ( ++ "Versioneer was unable to run the project root directory. " ++ "Versioneer requires setup.py to be executed from " ++ "its immediate directory (like 'python setup.py COMMAND'), " ++ "or in a way that lets it use sys.argv[0] to find the root " ++ "(like 'python path/to/setup.py COMMAND')." ++ ) + raise VersioneerBadRootError(err) + try: + # Certain runtime workflows (setup.py install/develop in a setuptools +@@ -321,43 +381,64 @@ def get_root(): + # module-import table will cache the first one. So we can't use + # os.path.dirname(__file__), as that will find whichever + # versioneer.py was first imported, even in later projects. +- me = os.path.realpath(os.path.abspath(__file__)) +- me_dir = os.path.normcase(os.path.splitext(me)[0]) ++ my_path = os.path.realpath(os.path.abspath(__file__)) ++ me_dir = os.path.normcase(os.path.splitext(my_path)[0]) + vsr_dir = os.path.normcase(os.path.splitext(versioneer_py)[0]) +- if me_dir != vsr_dir: +- print("Warning: build in %s is using versioneer.py from %s" +- % (os.path.dirname(me), versioneer_py)) ++ if me_dir != vsr_dir and "VERSIONEER_PEP518" not in globals(): ++ print( ++ "Warning: build in %s is using versioneer.py from %s" ++ % (os.path.dirname(my_path), versioneer_py) ++ ) + except NameError: + pass + return root + + +-def get_config_from_root(root): ++def get_config_from_root(root: str) -> VersioneerConfig: + """Read the project setup.cfg file to determine Versioneer config.""" +- # This might raise EnvironmentError (if setup.cfg is missing), or ++ # This might raise OSError (if setup.cfg is missing), or + # configparser.NoSectionError (if it lacks a [versioneer] section), or + # configparser.NoOptionError (if it lacks "VCS="). See the docstring at + # the top of versioneer.py for instructions on writing your setup.cfg . +- setup_cfg = os.path.join(root, "setup.cfg") +- parser = configparser.SafeConfigParser() +- with open(setup_cfg, "r") as f: +- parser.readfp(f) +- VCS = parser.get("versioneer", "VCS") # mandatory +- +- def get(parser, name): +- if parser.has_option("versioneer", name): +- return parser.get("versioneer", name) +- return None ++ root_pth = Path(root) ++ pyproject_toml = root_pth / "pyproject.toml" ++ setup_cfg = root_pth / "setup.cfg" ++ section: Union[Dict[str, Any], configparser.SectionProxy, None] = None ++ if pyproject_toml.exists() and have_tomllib: ++ try: ++ with open(pyproject_toml, "rb") as fobj: ++ pp = tomllib.load(fobj) ++ section = pp["tool"]["versioneer"] ++ except (tomllib.TOMLDecodeError, KeyError) as e: ++ print(f"Failed to load config from {pyproject_toml}: {e}") ++ print("Try to load it from setup.cfg") ++ if not section: ++ parser = configparser.ConfigParser() ++ with open(setup_cfg) as cfg_file: ++ parser.read_file(cfg_file) ++ parser.get("versioneer", "VCS") # raise error if missing ++ ++ section = parser["versioneer"] ++ ++ # `cast`` really shouldn't be used, but its simplest for the ++ # common VersioneerConfig users at the moment. We verify against ++ # `None` values elsewhere where it matters ++ + cfg = VersioneerConfig() +- cfg.VCS = VCS +- cfg.style = get(parser, "style") or "" +- cfg.versionfile_source = get(parser, "versionfile_source") +- cfg.versionfile_build = get(parser, "versionfile_build") +- cfg.tag_prefix = get(parser, "tag_prefix") +- if cfg.tag_prefix in ("''", '""'): ++ cfg.VCS = section["VCS"] ++ cfg.style = section.get("style", "") ++ cfg.versionfile_source = cast(str, section.get("versionfile_source")) ++ cfg.versionfile_build = section.get("versionfile_build") ++ cfg.tag_prefix = cast(str, section.get("tag_prefix")) ++ if cfg.tag_prefix in ("''", '""', None): + cfg.tag_prefix = "" +- cfg.parentdir_prefix = get(parser, "parentdir_prefix") +- cfg.verbose = get(parser, "verbose") ++ cfg.parentdir_prefix = section.get("parentdir_prefix") ++ if isinstance(section, configparser.SectionProxy): ++ # Make sure configparser translates to bool ++ cfg.verbose = section.getboolean("verbose") ++ else: ++ cfg.verbose = section.get("verbose") ++ + return cfg + + +@@ -366,37 +447,54 @@ class NotThisMethod(Exception): + + + # these dictionaries contain VCS-specific tools +-LONG_VERSION_PY = {} +-HANDLERS = {} ++LONG_VERSION_PY: Dict[str, str] = {} ++HANDLERS: Dict[str, Dict[str, Callable]] = {} + + +-def register_vcs_handler(vcs, method): # decorator +- """Decorator to mark a method as the handler for a particular VCS.""" +- def decorate(f): ++def register_vcs_handler(vcs: str, method: str) -> Callable: # decorator ++ """Create decorator to mark a method as the handler of a VCS.""" ++ ++ def decorate(f: Callable) -> Callable: + """Store f in HANDLERS[vcs][method].""" +- if vcs not in HANDLERS: +- HANDLERS[vcs] = {} +- HANDLERS[vcs][method] = f ++ HANDLERS.setdefault(vcs, {})[method] = f + return f ++ + return decorate + + +-def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, +- env=None): ++def run_command( ++ commands: List[str], ++ args: List[str], ++ cwd: Optional[str] = None, ++ verbose: bool = False, ++ hide_stderr: bool = False, ++ env: Optional[Dict[str, str]] = None, ++) -> Tuple[Optional[str], Optional[int]]: + """Call the given command(s).""" + assert isinstance(commands, list) +- p = None +- for c in commands: ++ process = None ++ ++ popen_kwargs: Dict[str, Any] = {} ++ if sys.platform == "win32": ++ # This hides the console window if pythonw.exe is used ++ startupinfo = subprocess.STARTUPINFO() ++ startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW ++ popen_kwargs["startupinfo"] = startupinfo ++ ++ for command in commands: + try: +- dispcmd = str([c] + args) ++ dispcmd = str([command] + args) + # remember shell=False, so use git.cmd on windows, not just git +- p = subprocess.Popen([c] + args, cwd=cwd, env=env, +- stdout=subprocess.PIPE, +- stderr=(subprocess.PIPE if hide_stderr +- else None)) ++ process = subprocess.Popen( ++ [command] + args, ++ cwd=cwd, ++ env=env, ++ stdout=subprocess.PIPE, ++ stderr=(subprocess.PIPE if hide_stderr else None), ++ **popen_kwargs, ++ ) + break +- except EnvironmentError: +- e = sys.exc_info()[1] ++ except OSError as e: + if e.errno == errno.ENOENT: + continue + if verbose: +@@ -407,26 +505,27 @@ def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, + if verbose: + print("unable to find command, tried %s" % (commands,)) + return None, None +- stdout = p.communicate()[0].strip() +- if sys.version_info[0] >= 3: +- stdout = stdout.decode() +- if p.returncode != 0: ++ stdout = process.communicate()[0].strip().decode() ++ if process.returncode != 0: + if verbose: + print("unable to run %s (error)" % dispcmd) + print("stdout was %s" % stdout) +- return None, p.returncode +- return stdout, p.returncode ++ return None, process.returncode ++ return stdout, process.returncode + + +-LONG_VERSION_PY['git'] = ''' ++LONG_VERSION_PY[ ++ "git" ++] = r''' + # This file helps to compute a version number in source trees obtained from + # git-archive tarball (such as those provided by githubs download-from-tag + # feature). Distribution tarballs (built by setup.py sdist) and build + # directories (produced by setup.py build) will contain a much shorter file + # that just contains the computed version number. + +-# This file is released into the public domain. Generated by +-# versioneer-0.18 (https://github.com/warner/python-versioneer) ++# This file is released into the public domain. ++# Generated by versioneer-0.29 ++# https://github.com/python-versioneer/python-versioneer + + """Git implementation of _version.py.""" + +@@ -435,9 +534,11 @@ import os + import re + import subprocess + import sys ++from typing import Any, Callable, Dict, List, Optional, Tuple ++import functools + + +-def get_keywords(): ++def get_keywords() -> Dict[str, str]: + """Get the keywords needed to look up the version information.""" + # these strings will be replaced by git during git-archive. + # setup.py/versioneer.py will grep for the variable names, so they must +@@ -453,8 +554,15 @@ def get_keywords(): + class VersioneerConfig: + """Container for Versioneer configuration parameters.""" + ++ VCS: str ++ style: str ++ tag_prefix: str ++ parentdir_prefix: str ++ versionfile_source: str ++ verbose: bool ++ + +-def get_config(): ++def get_config() -> VersioneerConfig: + """Create, populate and return the VersioneerConfig() object.""" + # these strings are filled in when 'setup.py versioneer' creates + # _version.py +@@ -472,13 +580,13 @@ class NotThisMethod(Exception): + """Exception raised if a method is not valid for the current scenario.""" + + +-LONG_VERSION_PY = {} +-HANDLERS = {} ++LONG_VERSION_PY: Dict[str, str] = {} ++HANDLERS: Dict[str, Dict[str, Callable]] = {} + + +-def register_vcs_handler(vcs, method): # decorator +- """Decorator to mark a method as the handler for a particular VCS.""" +- def decorate(f): ++def register_vcs_handler(vcs: str, method: str) -> Callable: # decorator ++ """Create decorator to mark a method as the handler of a VCS.""" ++ def decorate(f: Callable) -> Callable: + """Store f in HANDLERS[vcs][method].""" + if vcs not in HANDLERS: + HANDLERS[vcs] = {} +@@ -487,22 +595,35 @@ def register_vcs_handler(vcs, method): # decorator + return decorate + + +-def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, +- env=None): ++def run_command( ++ commands: List[str], ++ args: List[str], ++ cwd: Optional[str] = None, ++ verbose: bool = False, ++ hide_stderr: bool = False, ++ env: Optional[Dict[str, str]] = None, ++) -> Tuple[Optional[str], Optional[int]]: + """Call the given command(s).""" + assert isinstance(commands, list) +- p = None +- for c in commands: ++ process = None ++ ++ popen_kwargs: Dict[str, Any] = {} ++ if sys.platform == "win32": ++ # This hides the console window if pythonw.exe is used ++ startupinfo = subprocess.STARTUPINFO() ++ startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW ++ popen_kwargs["startupinfo"] = startupinfo ++ ++ for command in commands: + try: +- dispcmd = str([c] + args) ++ dispcmd = str([command] + args) + # remember shell=False, so use git.cmd on windows, not just git +- p = subprocess.Popen([c] + args, cwd=cwd, env=env, +- stdout=subprocess.PIPE, +- stderr=(subprocess.PIPE if hide_stderr +- else None)) ++ process = subprocess.Popen([command] + args, cwd=cwd, env=env, ++ stdout=subprocess.PIPE, ++ stderr=(subprocess.PIPE if hide_stderr ++ else None), **popen_kwargs) + break +- except EnvironmentError: +- e = sys.exc_info()[1] ++ except OSError as e: + if e.errno == errno.ENOENT: + continue + if verbose: +@@ -513,18 +634,20 @@ def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, + if verbose: + print("unable to find command, tried %%s" %% (commands,)) + return None, None +- stdout = p.communicate()[0].strip() +- if sys.version_info[0] >= 3: +- stdout = stdout.decode() +- if p.returncode != 0: ++ stdout = process.communicate()[0].strip().decode() ++ if process.returncode != 0: + if verbose: + print("unable to run %%s (error)" %% dispcmd) + print("stdout was %%s" %% stdout) +- return None, p.returncode +- return stdout, p.returncode ++ return None, process.returncode ++ return stdout, process.returncode + + +-def versions_from_parentdir(parentdir_prefix, root, verbose): ++def versions_from_parentdir( ++ parentdir_prefix: str, ++ root: str, ++ verbose: bool, ++) -> Dict[str, Any]: + """Try to determine the version from the parent directory name. + + Source tarballs conventionally unpack into a directory that includes both +@@ -533,15 +656,14 @@ def versions_from_parentdir(parentdir_prefix, root, verbose): + """ + rootdirs = [] + +- for i in range(3): ++ for _ in range(3): + dirname = os.path.basename(root) + if dirname.startswith(parentdir_prefix): + return {"version": dirname[len(parentdir_prefix):], + "full-revisionid": None, + "dirty": False, "error": None, "date": None} +- else: +- rootdirs.append(root) +- root = os.path.dirname(root) # up a level ++ rootdirs.append(root) ++ root = os.path.dirname(root) # up a level + + if verbose: + print("Tried directories %%s but none started with prefix %%s" %% +@@ -550,41 +672,48 @@ def versions_from_parentdir(parentdir_prefix, root, verbose): + + + @register_vcs_handler("git", "get_keywords") +-def git_get_keywords(versionfile_abs): ++def git_get_keywords(versionfile_abs: str) -> Dict[str, str]: + """Extract version information from the given file.""" + # the code embedded in _version.py can just fetch the value of these + # keywords. When used from setup.py, we don't want to import _version.py, + # so we do it with a regexp instead. This function is not used from + # _version.py. +- keywords = {} ++ keywords: Dict[str, str] = {} + try: +- f = open(versionfile_abs, "r") +- for line in f.readlines(): +- if line.strip().startswith("git_refnames ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["refnames"] = mo.group(1) +- if line.strip().startswith("git_full ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["full"] = mo.group(1) +- if line.strip().startswith("git_date ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["date"] = mo.group(1) +- f.close() +- except EnvironmentError: ++ with open(versionfile_abs, "r") as fobj: ++ for line in fobj: ++ if line.strip().startswith("git_refnames ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["refnames"] = mo.group(1) ++ if line.strip().startswith("git_full ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["full"] = mo.group(1) ++ if line.strip().startswith("git_date ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["date"] = mo.group(1) ++ except OSError: + pass + return keywords + + + @register_vcs_handler("git", "keywords") +-def git_versions_from_keywords(keywords, tag_prefix, verbose): ++def git_versions_from_keywords( ++ keywords: Dict[str, str], ++ tag_prefix: str, ++ verbose: bool, ++) -> Dict[str, Any]: + """Get version information from git keywords.""" +- if not keywords: +- raise NotThisMethod("no keywords at all, weird") ++ if "refnames" not in keywords: ++ raise NotThisMethod("Short version file found") + date = keywords.get("date") + if date is not None: ++ # Use only the last line. Previous lines may contain GPG signature ++ # information. ++ date = date.splitlines()[-1] ++ + # git-2.2.0 added "%%cI", which expands to an ISO-8601 -compliant + # datestamp. However we prefer "%%ci" (which expands to an "ISO-8601 + # -like" string, which we must then edit to make compliant), because +@@ -597,11 +726,11 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + if verbose: + print("keywords are unexpanded, not using") + raise NotThisMethod("unexpanded keywords, not a git-archive tarball") +- refs = set([r.strip() for r in refnames.strip("()").split(",")]) ++ refs = {r.strip() for r in refnames.strip("()").split(",")} + # starting in git-1.8.3, tags are listed as "tag: foo-1.0" instead of + # just "foo-1.0". If we see a "tag: " prefix, prefer those. + TAG = "tag: " +- tags = set([r[len(TAG):] for r in refs if r.startswith(TAG)]) ++ tags = {r[len(TAG):] for r in refs if r.startswith(TAG)} + if not tags: + # Either we're using git < 1.8.3, or there really are no tags. We use + # a heuristic: assume all version tags have a digit. The old git %%d +@@ -610,7 +739,7 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + # between branches and tags. By ignoring refnames without digits, we + # filter out many common branch names like "release" and + # "stabilization", as well as "HEAD" and "master". +- tags = set([r for r in refs if re.search(r'\d', r)]) ++ tags = {r for r in refs if re.search(r'\d', r)} + if verbose: + print("discarding '%%s', no digits" %% ",".join(refs - tags)) + if verbose: +@@ -619,6 +748,11 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + # sorting will prefer e.g. "2.0" over "2.0rc1" + if ref.startswith(tag_prefix): + r = ref[len(tag_prefix):] ++ # Filter out refs that exactly match prefix or that don't start ++ # with a number once the prefix is stripped (mostly a concern ++ # when prefix is '') ++ if not re.match(r'\d', r): ++ continue + if verbose: + print("picking %%s" %% r) + return {"version": r, +@@ -634,7 +768,12 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + + + @register_vcs_handler("git", "pieces_from_vcs") +-def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): ++def git_pieces_from_vcs( ++ tag_prefix: str, ++ root: str, ++ verbose: bool, ++ runner: Callable = run_command ++) -> Dict[str, Any]: + """Get version from 'git describe' in the root of the source tree. + + This only gets called if the git-archive 'subst' keywords were *not* +@@ -645,8 +784,15 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + if sys.platform == "win32": + GITS = ["git.cmd", "git.exe"] + +- out, rc = run_command(GITS, ["rev-parse", "--git-dir"], cwd=root, +- hide_stderr=True) ++ # GIT_DIR can interfere with correct operation of Versioneer. ++ # It may be intended to be passed to the Versioneer-versioned project, ++ # but that should not change where we get our version from. ++ env = os.environ.copy() ++ env.pop("GIT_DIR", None) ++ runner = functools.partial(runner, env=env) ++ ++ _, rc = runner(GITS, ["rev-parse", "--git-dir"], cwd=root, ++ hide_stderr=not verbose) + if rc != 0: + if verbose: + print("Directory %%s not under git control" %% root) +@@ -654,24 +800,57 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + + # if there is a tag matching tag_prefix, this yields TAG-NUM-gHEX[-dirty] + # if there isn't one, this yields HEX[-dirty] (no NUM) +- describe_out, rc = run_command(GITS, ["describe", "--tags", "--dirty", +- "--always", "--long", +- "--match", "%%s*" %% tag_prefix], +- cwd=root) ++ describe_out, rc = runner(GITS, [ ++ "describe", "--tags", "--dirty", "--always", "--long", ++ "--match", f"{tag_prefix}[[:digit:]]*" ++ ], cwd=root) + # --long was added in git-1.5.5 + if describe_out is None: + raise NotThisMethod("'git describe' failed") + describe_out = describe_out.strip() +- full_out, rc = run_command(GITS, ["rev-parse", "HEAD"], cwd=root) ++ full_out, rc = runner(GITS, ["rev-parse", "HEAD"], cwd=root) + if full_out is None: + raise NotThisMethod("'git rev-parse' failed") + full_out = full_out.strip() + +- pieces = {} ++ pieces: Dict[str, Any] = {} + pieces["long"] = full_out + pieces["short"] = full_out[:7] # maybe improved later + pieces["error"] = None + ++ branch_name, rc = runner(GITS, ["rev-parse", "--abbrev-ref", "HEAD"], ++ cwd=root) ++ # --abbrev-ref was added in git-1.6.3 ++ if rc != 0 or branch_name is None: ++ raise NotThisMethod("'git rev-parse --abbrev-ref' returned error") ++ branch_name = branch_name.strip() ++ ++ if branch_name == "HEAD": ++ # If we aren't exactly on a branch, pick a branch which represents ++ # the current commit. If all else fails, we are on a branchless ++ # commit. ++ branches, rc = runner(GITS, ["branch", "--contains"], cwd=root) ++ # --contains was added in git-1.5.4 ++ if rc != 0 or branches is None: ++ raise NotThisMethod("'git branch --contains' returned error") ++ branches = branches.split("\n") ++ ++ # Remove the first line if we're running detached ++ if "(" in branches[0]: ++ branches.pop(0) ++ ++ # Strip off the leading "* " from the list of branches. ++ branches = [branch[2:] for branch in branches] ++ if "master" in branches: ++ branch_name = "master" ++ elif not branches: ++ branch_name = None ++ else: ++ # Pick the first branch that is returned. Good or bad. ++ branch_name = branches[0] ++ ++ pieces["branch"] = branch_name ++ + # parse describe_out. It will be like TAG-NUM-gHEX[-dirty] or HEX[-dirty] + # TAG might have hyphens. + git_describe = describe_out +@@ -688,7 +867,7 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + # TAG-NUM-gHEX + mo = re.search(r'^(.+)-(\d+)-g([0-9a-f]+)$', git_describe) + if not mo: +- # unparseable. Maybe git-describe is misbehaving? ++ # unparsable. Maybe git-describe is misbehaving? + pieces["error"] = ("unable to parse git-describe output: '%%s'" + %% describe_out) + return pieces +@@ -713,26 +892,27 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + else: + # HEX: no tags + pieces["closest-tag"] = None +- count_out, rc = run_command(GITS, ["rev-list", "HEAD", "--count"], +- cwd=root) +- pieces["distance"] = int(count_out) # total number of commits ++ out, rc = runner(GITS, ["rev-list", "HEAD", "--left-right"], cwd=root) ++ pieces["distance"] = len(out.split()) # total number of commits + + # commit date: see ISO-8601 comment in git_versions_from_keywords() +- date = run_command(GITS, ["show", "-s", "--format=%%ci", "HEAD"], +- cwd=root)[0].strip() ++ date = runner(GITS, ["show", "-s", "--format=%%ci", "HEAD"], cwd=root)[0].strip() ++ # Use only the last line. Previous lines may contain GPG signature ++ # information. ++ date = date.splitlines()[-1] + pieces["date"] = date.strip().replace(" ", "T", 1).replace(" ", "", 1) + + return pieces + + +-def plus_or_dot(pieces): ++def plus_or_dot(pieces: Dict[str, Any]) -> str: + """Return a + if we don't already have one, else return a .""" + if "+" in pieces.get("closest-tag", ""): + return "." + return "+" + + +-def render_pep440(pieces): ++def render_pep440(pieces: Dict[str, Any]) -> str: + """Build up version string, with post-release "local version identifier". + + Our goal: TAG[+DISTANCE.gHEX[.dirty]] . Note that if you +@@ -757,23 +937,71 @@ def render_pep440(pieces): + return rendered + + +-def render_pep440_pre(pieces): +- """TAG[.post.devDISTANCE] -- No -dirty. ++def render_pep440_branch(pieces: Dict[str, Any]) -> str: ++ """TAG[[.dev0]+DISTANCE.gHEX[.dirty]] . ++ ++ The ".dev0" means not master branch. Note that .dev0 sorts backwards ++ (a feature branch will appear "older" than the master branch). + + Exceptions: +- 1: no tags. 0.post.devDISTANCE ++ 1: no tags. 0[.dev0]+untagged.DISTANCE.gHEX[.dirty] + """ + if pieces["closest-tag"]: + rendered = pieces["closest-tag"] ++ if pieces["distance"] or pieces["dirty"]: ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += plus_or_dot(pieces) ++ rendered += "%%d.g%%s" %% (pieces["distance"], pieces["short"]) ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ else: ++ # exception #1 ++ rendered = "0" ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += "+untagged.%%d.g%%s" %% (pieces["distance"], ++ pieces["short"]) ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ return rendered ++ ++ ++def pep440_split_post(ver: str) -> Tuple[str, Optional[int]]: ++ """Split pep440 version string at the post-release segment. ++ ++ Returns the release segments before the post-release and the ++ post-release version number (or -1 if no post-release segment is present). ++ """ ++ vc = str.split(ver, ".post") ++ return vc[0], int(vc[1] or 0) if len(vc) == 2 else None ++ ++ ++def render_pep440_pre(pieces: Dict[str, Any]) -> str: ++ """TAG[.postN.devDISTANCE] -- No -dirty. ++ ++ Exceptions: ++ 1: no tags. 0.post0.devDISTANCE ++ """ ++ if pieces["closest-tag"]: + if pieces["distance"]: +- rendered += ".post.dev%%d" %% pieces["distance"] ++ # update the post release segment ++ tag_version, post_version = pep440_split_post(pieces["closest-tag"]) ++ rendered = tag_version ++ if post_version is not None: ++ rendered += ".post%%d.dev%%d" %% (post_version + 1, pieces["distance"]) ++ else: ++ rendered += ".post0.dev%%d" %% (pieces["distance"]) ++ else: ++ # no commits, use the tag as the version ++ rendered = pieces["closest-tag"] + else: + # exception #1 +- rendered = "0.post.dev%%d" %% pieces["distance"] ++ rendered = "0.post0.dev%%d" %% pieces["distance"] + return rendered + + +-def render_pep440_post(pieces): ++def render_pep440_post(pieces: Dict[str, Any]) -> str: + """TAG[.postDISTANCE[.dev0]+gHEX] . + + The ".dev0" means dirty. Note that .dev0 sorts backwards +@@ -800,12 +1028,41 @@ def render_pep440_post(pieces): + return rendered + + +-def render_pep440_old(pieces): ++def render_pep440_post_branch(pieces: Dict[str, Any]) -> str: ++ """TAG[.postDISTANCE[.dev0]+gHEX[.dirty]] . ++ ++ The ".dev0" means not master branch. ++ ++ Exceptions: ++ 1: no tags. 0.postDISTANCE[.dev0]+gHEX[.dirty] ++ """ ++ if pieces["closest-tag"]: ++ rendered = pieces["closest-tag"] ++ if pieces["distance"] or pieces["dirty"]: ++ rendered += ".post%%d" %% pieces["distance"] ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += plus_or_dot(pieces) ++ rendered += "g%%s" %% pieces["short"] ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ else: ++ # exception #1 ++ rendered = "0.post%%d" %% pieces["distance"] ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += "+g%%s" %% pieces["short"] ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ return rendered ++ ++ ++def render_pep440_old(pieces: Dict[str, Any]) -> str: + """TAG[.postDISTANCE[.dev0]] . + + The ".dev0" means dirty. + +- Eexceptions: ++ Exceptions: + 1: no tags. 0.postDISTANCE[.dev0] + """ + if pieces["closest-tag"]: +@@ -822,7 +1079,7 @@ def render_pep440_old(pieces): + return rendered + + +-def render_git_describe(pieces): ++def render_git_describe(pieces: Dict[str, Any]) -> str: + """TAG[-DISTANCE-gHEX][-dirty]. + + Like 'git describe --tags --dirty --always'. +@@ -842,7 +1099,7 @@ def render_git_describe(pieces): + return rendered + + +-def render_git_describe_long(pieces): ++def render_git_describe_long(pieces: Dict[str, Any]) -> str: + """TAG-DISTANCE-gHEX[-dirty]. + + Like 'git describe --tags --dirty --always -long'. +@@ -862,7 +1119,7 @@ def render_git_describe_long(pieces): + return rendered + + +-def render(pieces, style): ++def render(pieces: Dict[str, Any], style: str) -> Dict[str, Any]: + """Render the given version pieces into the requested style.""" + if pieces["error"]: + return {"version": "unknown", +@@ -876,10 +1133,14 @@ def render(pieces, style): + + if style == "pep440": + rendered = render_pep440(pieces) ++ elif style == "pep440-branch": ++ rendered = render_pep440_branch(pieces) + elif style == "pep440-pre": + rendered = render_pep440_pre(pieces) + elif style == "pep440-post": + rendered = render_pep440_post(pieces) ++ elif style == "pep440-post-branch": ++ rendered = render_pep440_post_branch(pieces) + elif style == "pep440-old": + rendered = render_pep440_old(pieces) + elif style == "git-describe": +@@ -894,7 +1155,7 @@ def render(pieces, style): + "date": pieces.get("date")} + + +-def get_versions(): ++def get_versions() -> Dict[str, Any]: + """Get version information or return default if unable to do so.""" + # I am in _version.py, which lives at ROOT/VERSIONFILE_SOURCE. If we have + # __file__, we can work backwards from there to the root. Some +@@ -915,7 +1176,7 @@ def get_versions(): + # versionfile_source is the relative path from the top of the source + # tree (where the .git directory might live) to this file. Invert + # this to find the root from __file__. +- for i in cfg.versionfile_source.split('/'): ++ for _ in cfg.versionfile_source.split('/'): + root = os.path.dirname(root) + except NameError: + return {"version": "0+unknown", "full-revisionid": None, +@@ -942,41 +1203,48 @@ def get_versions(): + + + @register_vcs_handler("git", "get_keywords") +-def git_get_keywords(versionfile_abs): ++def git_get_keywords(versionfile_abs: str) -> Dict[str, str]: + """Extract version information from the given file.""" + # the code embedded in _version.py can just fetch the value of these + # keywords. When used from setup.py, we don't want to import _version.py, + # so we do it with a regexp instead. This function is not used from + # _version.py. +- keywords = {} ++ keywords: Dict[str, str] = {} + try: +- f = open(versionfile_abs, "r") +- for line in f.readlines(): +- if line.strip().startswith("git_refnames ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["refnames"] = mo.group(1) +- if line.strip().startswith("git_full ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["full"] = mo.group(1) +- if line.strip().startswith("git_date ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["date"] = mo.group(1) +- f.close() +- except EnvironmentError: ++ with open(versionfile_abs, "r") as fobj: ++ for line in fobj: ++ if line.strip().startswith("git_refnames ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["refnames"] = mo.group(1) ++ if line.strip().startswith("git_full ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["full"] = mo.group(1) ++ if line.strip().startswith("git_date ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["date"] = mo.group(1) ++ except OSError: + pass + return keywords + + + @register_vcs_handler("git", "keywords") +-def git_versions_from_keywords(keywords, tag_prefix, verbose): ++def git_versions_from_keywords( ++ keywords: Dict[str, str], ++ tag_prefix: str, ++ verbose: bool, ++) -> Dict[str, Any]: + """Get version information from git keywords.""" +- if not keywords: +- raise NotThisMethod("no keywords at all, weird") ++ if "refnames" not in keywords: ++ raise NotThisMethod("Short version file found") + date = keywords.get("date") + if date is not None: ++ # Use only the last line. Previous lines may contain GPG signature ++ # information. ++ date = date.splitlines()[-1] ++ + # git-2.2.0 added "%cI", which expands to an ISO-8601 -compliant + # datestamp. However we prefer "%ci" (which expands to an "ISO-8601 + # -like" string, which we must then edit to make compliant), because +@@ -989,11 +1257,11 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + if verbose: + print("keywords are unexpanded, not using") + raise NotThisMethod("unexpanded keywords, not a git-archive tarball") +- refs = set([r.strip() for r in refnames.strip("()").split(",")]) ++ refs = {r.strip() for r in refnames.strip("()").split(",")} + # starting in git-1.8.3, tags are listed as "tag: foo-1.0" instead of + # just "foo-1.0". If we see a "tag: " prefix, prefer those. + TAG = "tag: " +- tags = set([r[len(TAG):] for r in refs if r.startswith(TAG)]) ++ tags = {r[len(TAG) :] for r in refs if r.startswith(TAG)} + if not tags: + # Either we're using git < 1.8.3, or there really are no tags. We use + # a heuristic: assume all version tags have a digit. The old git %d +@@ -1002,7 +1270,7 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + # between branches and tags. By ignoring refnames without digits, we + # filter out many common branch names like "release" and + # "stabilization", as well as "HEAD" and "master". +- tags = set([r for r in refs if re.search(r'\d', r)]) ++ tags = {r for r in refs if re.search(r"\d", r)} + if verbose: + print("discarding '%s', no digits" % ",".join(refs - tags)) + if verbose: +@@ -1010,23 +1278,37 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + for ref in sorted(tags): + # sorting will prefer e.g. "2.0" over "2.0rc1" + if ref.startswith(tag_prefix): +- r = ref[len(tag_prefix):] ++ r = ref[len(tag_prefix) :] ++ # Filter out refs that exactly match prefix or that don't start ++ # with a number once the prefix is stripped (mostly a concern ++ # when prefix is '') ++ if not re.match(r"\d", r): ++ continue + if verbose: + print("picking %s" % r) +- return {"version": r, +- "full-revisionid": keywords["full"].strip(), +- "dirty": False, "error": None, +- "date": date} ++ return { ++ "version": r, ++ "full-revisionid": keywords["full"].strip(), ++ "dirty": False, ++ "error": None, ++ "date": date, ++ } + # no suitable tags, so version is "0+unknown", but full hex is still there + if verbose: + print("no suitable tags, using unknown + full revision id") +- return {"version": "0+unknown", +- "full-revisionid": keywords["full"].strip(), +- "dirty": False, "error": "no suitable tags", "date": None} ++ return { ++ "version": "0+unknown", ++ "full-revisionid": keywords["full"].strip(), ++ "dirty": False, ++ "error": "no suitable tags", ++ "date": None, ++ } + + + @register_vcs_handler("git", "pieces_from_vcs") +-def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): ++def git_pieces_from_vcs( ++ tag_prefix: str, root: str, verbose: bool, runner: Callable = run_command ++) -> Dict[str, Any]: + """Get version from 'git describe' in the root of the source tree. + + This only gets called if the git-archive 'subst' keywords were *not* +@@ -1037,8 +1319,14 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + if sys.platform == "win32": + GITS = ["git.cmd", "git.exe"] + +- out, rc = run_command(GITS, ["rev-parse", "--git-dir"], cwd=root, +- hide_stderr=True) ++ # GIT_DIR can interfere with correct operation of Versioneer. ++ # It may be intended to be passed to the Versioneer-versioned project, ++ # but that should not change where we get our version from. ++ env = os.environ.copy() ++ env.pop("GIT_DIR", None) ++ runner = functools.partial(runner, env=env) ++ ++ _, rc = runner(GITS, ["rev-parse", "--git-dir"], cwd=root, hide_stderr=not verbose) + if rc != 0: + if verbose: + print("Directory %s not under git control" % root) +@@ -1046,24 +1334,65 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + + # if there is a tag matching tag_prefix, this yields TAG-NUM-gHEX[-dirty] + # if there isn't one, this yields HEX[-dirty] (no NUM) +- describe_out, rc = run_command(GITS, ["describe", "--tags", "--dirty", +- "--always", "--long", +- "--match", "%s*" % tag_prefix], +- cwd=root) ++ describe_out, rc = runner( ++ GITS, ++ [ ++ "describe", ++ "--tags", ++ "--dirty", ++ "--always", ++ "--long", ++ "--match", ++ f"{tag_prefix}[[:digit:]]*", ++ ], ++ cwd=root, ++ ) + # --long was added in git-1.5.5 + if describe_out is None: + raise NotThisMethod("'git describe' failed") + describe_out = describe_out.strip() +- full_out, rc = run_command(GITS, ["rev-parse", "HEAD"], cwd=root) ++ full_out, rc = runner(GITS, ["rev-parse", "HEAD"], cwd=root) + if full_out is None: + raise NotThisMethod("'git rev-parse' failed") + full_out = full_out.strip() + +- pieces = {} ++ pieces: Dict[str, Any] = {} + pieces["long"] = full_out + pieces["short"] = full_out[:7] # maybe improved later + pieces["error"] = None + ++ branch_name, rc = runner(GITS, ["rev-parse", "--abbrev-ref", "HEAD"], cwd=root) ++ # --abbrev-ref was added in git-1.6.3 ++ if rc != 0 or branch_name is None: ++ raise NotThisMethod("'git rev-parse --abbrev-ref' returned error") ++ branch_name = branch_name.strip() ++ ++ if branch_name == "HEAD": ++ # If we aren't exactly on a branch, pick a branch which represents ++ # the current commit. If all else fails, we are on a branchless ++ # commit. ++ branches, rc = runner(GITS, ["branch", "--contains"], cwd=root) ++ # --contains was added in git-1.5.4 ++ if rc != 0 or branches is None: ++ raise NotThisMethod("'git branch --contains' returned error") ++ branches = branches.split("\n") ++ ++ # Remove the first line if we're running detached ++ if "(" in branches[0]: ++ branches.pop(0) ++ ++ # Strip off the leading "* " from the list of branches. ++ branches = [branch[2:] for branch in branches] ++ if "master" in branches: ++ branch_name = "master" ++ elif not branches: ++ branch_name = None ++ else: ++ # Pick the first branch that is returned. Good or bad. ++ branch_name = branches[0] ++ ++ pieces["branch"] = branch_name ++ + # parse describe_out. It will be like TAG-NUM-gHEX[-dirty] or HEX[-dirty] + # TAG might have hyphens. + git_describe = describe_out +@@ -1072,17 +1401,16 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + dirty = git_describe.endswith("-dirty") + pieces["dirty"] = dirty + if dirty: +- git_describe = git_describe[:git_describe.rindex("-dirty")] ++ git_describe = git_describe[: git_describe.rindex("-dirty")] + + # now we have TAG-NUM-gHEX or HEX + + if "-" in git_describe: + # TAG-NUM-gHEX +- mo = re.search(r'^(.+)-(\d+)-g([0-9a-f]+)$', git_describe) ++ mo = re.search(r"^(.+)-(\d+)-g([0-9a-f]+)$", git_describe) + if not mo: +- # unparseable. Maybe git-describe is misbehaving? +- pieces["error"] = ("unable to parse git-describe output: '%s'" +- % describe_out) ++ # unparsable. Maybe git-describe is misbehaving? ++ pieces["error"] = "unable to parse git-describe output: '%s'" % describe_out + return pieces + + # tag +@@ -1091,10 +1419,12 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + if verbose: + fmt = "tag '%s' doesn't start with prefix '%s'" + print(fmt % (full_tag, tag_prefix)) +- pieces["error"] = ("tag '%s' doesn't start with prefix '%s'" +- % (full_tag, tag_prefix)) ++ pieces["error"] = "tag '%s' doesn't start with prefix '%s'" % ( ++ full_tag, ++ tag_prefix, ++ ) + return pieces +- pieces["closest-tag"] = full_tag[len(tag_prefix):] ++ pieces["closest-tag"] = full_tag[len(tag_prefix) :] + + # distance: number of commits since tag + pieces["distance"] = int(mo.group(2)) +@@ -1105,19 +1435,20 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + else: + # HEX: no tags + pieces["closest-tag"] = None +- count_out, rc = run_command(GITS, ["rev-list", "HEAD", "--count"], +- cwd=root) +- pieces["distance"] = int(count_out) # total number of commits ++ out, rc = runner(GITS, ["rev-list", "HEAD", "--left-right"], cwd=root) ++ pieces["distance"] = len(out.split()) # total number of commits + + # commit date: see ISO-8601 comment in git_versions_from_keywords() +- date = run_command(GITS, ["show", "-s", "--format=%ci", "HEAD"], +- cwd=root)[0].strip() ++ date = runner(GITS, ["show", "-s", "--format=%ci", "HEAD"], cwd=root)[0].strip() ++ # Use only the last line. Previous lines may contain GPG signature ++ # information. ++ date = date.splitlines()[-1] + pieces["date"] = date.strip().replace(" ", "T", 1).replace(" ", "", 1) + + return pieces + + +-def do_vcs_install(manifest_in, versionfile_source, ipy): ++def do_vcs_install(versionfile_source: str, ipy: Optional[str]) -> None: + """Git-specific installation logic for Versioneer. + + For Git, this means creating/changing .gitattributes to mark _version.py +@@ -1126,36 +1457,40 @@ def do_vcs_install(manifest_in, versionfile_source, ipy): + GITS = ["git"] + if sys.platform == "win32": + GITS = ["git.cmd", "git.exe"] +- files = [manifest_in, versionfile_source] ++ files = [versionfile_source] + if ipy: + files.append(ipy) +- try: +- me = __file__ +- if me.endswith(".pyc") or me.endswith(".pyo"): +- me = os.path.splitext(me)[0] + ".py" +- versioneer_file = os.path.relpath(me) +- except NameError: +- versioneer_file = "versioneer.py" +- files.append(versioneer_file) ++ if "VERSIONEER_PEP518" not in globals(): ++ try: ++ my_path = __file__ ++ if my_path.endswith((".pyc", ".pyo")): ++ my_path = os.path.splitext(my_path)[0] + ".py" ++ versioneer_file = os.path.relpath(my_path) ++ except NameError: ++ versioneer_file = "versioneer.py" ++ files.append(versioneer_file) + present = False + try: +- f = open(".gitattributes", "r") +- for line in f.readlines(): +- if line.strip().startswith(versionfile_source): +- if "export-subst" in line.strip().split()[1:]: +- present = True +- f.close() +- except EnvironmentError: ++ with open(".gitattributes", "r") as fobj: ++ for line in fobj: ++ if line.strip().startswith(versionfile_source): ++ if "export-subst" in line.strip().split()[1:]: ++ present = True ++ break ++ except OSError: + pass + if not present: +- f = open(".gitattributes", "a+") +- f.write("%s export-subst\n" % versionfile_source) +- f.close() ++ with open(".gitattributes", "a+") as fobj: ++ fobj.write(f"{versionfile_source} export-subst\n") + files.append(".gitattributes") + run_command(GITS, ["add", "--"] + files) + + +-def versions_from_parentdir(parentdir_prefix, root, verbose): ++def versions_from_parentdir( ++ parentdir_prefix: str, ++ root: str, ++ verbose: bool, ++) -> Dict[str, Any]: + """Try to determine the version from the parent directory name. + + Source tarballs conventionally unpack into a directory that includes both +@@ -1164,24 +1499,29 @@ def versions_from_parentdir(parentdir_prefix, root, verbose): + """ + rootdirs = [] + +- for i in range(3): ++ for _ in range(3): + dirname = os.path.basename(root) + if dirname.startswith(parentdir_prefix): +- return {"version": dirname[len(parentdir_prefix):], +- "full-revisionid": None, +- "dirty": False, "error": None, "date": None} +- else: +- rootdirs.append(root) +- root = os.path.dirname(root) # up a level ++ return { ++ "version": dirname[len(parentdir_prefix) :], ++ "full-revisionid": None, ++ "dirty": False, ++ "error": None, ++ "date": None, ++ } ++ rootdirs.append(root) ++ root = os.path.dirname(root) # up a level + + if verbose: +- print("Tried directories %s but none started with prefix %s" % +- (str(rootdirs), parentdir_prefix)) ++ print( ++ "Tried directories %s but none started with prefix %s" ++ % (str(rootdirs), parentdir_prefix) ++ ) + raise NotThisMethod("rootdir doesn't start with parentdir_prefix") + + + SHORT_VERSION_PY = """ +-# This file was generated by 'versioneer.py' (0.18) from ++# This file was generated by 'versioneer.py' (0.29) from + # revision-control system data, or from the parent directory name of an + # unpacked source archive. Distribution tarballs contain a pre-generated copy + # of this file. +@@ -1198,42 +1538,42 @@ def get_versions(): + """ + + +-def versions_from_file(filename): ++def versions_from_file(filename: str) -> Dict[str, Any]: + """Try to determine the version from _version.py if present.""" + try: + with open(filename) as f: + contents = f.read() +- except EnvironmentError: ++ except OSError: + raise NotThisMethod("unable to read _version.py") +- mo = re.search(r"version_json = '''\n(.*)''' # END VERSION_JSON", +- contents, re.M | re.S) ++ mo = re.search( ++ r"version_json = '''\n(.*)''' # END VERSION_JSON", contents, re.M | re.S ++ ) + if not mo: +- mo = re.search(r"version_json = '''\r\n(.*)''' # END VERSION_JSON", +- contents, re.M | re.S) ++ mo = re.search( ++ r"version_json = '''\r\n(.*)''' # END VERSION_JSON", contents, re.M | re.S ++ ) + if not mo: + raise NotThisMethod("no version_json in _version.py") + return json.loads(mo.group(1)) + + +-def write_to_version_file(filename, versions): ++def write_to_version_file(filename: str, versions: Dict[str, Any]) -> None: + """Write the given version number to the given _version.py file.""" +- os.unlink(filename) +- contents = json.dumps(versions, sort_keys=True, +- indent=1, separators=(",", ": ")) ++ contents = json.dumps(versions, sort_keys=True, indent=1, separators=(",", ": ")) + with open(filename, "w") as f: + f.write(SHORT_VERSION_PY % contents) + + print("set %s to '%s'" % (filename, versions["version"])) + + +-def plus_or_dot(pieces): ++def plus_or_dot(pieces: Dict[str, Any]) -> str: + """Return a + if we don't already have one, else return a .""" + if "+" in pieces.get("closest-tag", ""): + return "." + return "+" + + +-def render_pep440(pieces): ++def render_pep440(pieces: Dict[str, Any]) -> str: + """Build up version string, with post-release "local version identifier". + + Our goal: TAG[+DISTANCE.gHEX[.dirty]] . Note that if you +@@ -1251,30 +1591,76 @@ def render_pep440(pieces): + rendered += ".dirty" + else: + # exception #1 +- rendered = "0+untagged.%d.g%s" % (pieces["distance"], +- pieces["short"]) ++ rendered = "0+untagged.%d.g%s" % (pieces["distance"], pieces["short"]) + if pieces["dirty"]: + rendered += ".dirty" + return rendered + + +-def render_pep440_pre(pieces): +- """TAG[.post.devDISTANCE] -- No -dirty. ++def render_pep440_branch(pieces: Dict[str, Any]) -> str: ++ """TAG[[.dev0]+DISTANCE.gHEX[.dirty]] . ++ ++ The ".dev0" means not master branch. Note that .dev0 sorts backwards ++ (a feature branch will appear "older" than the master branch). + + Exceptions: +- 1: no tags. 0.post.devDISTANCE ++ 1: no tags. 0[.dev0]+untagged.DISTANCE.gHEX[.dirty] + """ + if pieces["closest-tag"]: + rendered = pieces["closest-tag"] ++ if pieces["distance"] or pieces["dirty"]: ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += plus_or_dot(pieces) ++ rendered += "%d.g%s" % (pieces["distance"], pieces["short"]) ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ else: ++ # exception #1 ++ rendered = "0" ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += "+untagged.%d.g%s" % (pieces["distance"], pieces["short"]) ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ return rendered ++ ++ ++def pep440_split_post(ver: str) -> Tuple[str, Optional[int]]: ++ """Split pep440 version string at the post-release segment. ++ ++ Returns the release segments before the post-release and the ++ post-release version number (or -1 if no post-release segment is present). ++ """ ++ vc = str.split(ver, ".post") ++ return vc[0], int(vc[1] or 0) if len(vc) == 2 else None ++ ++ ++def render_pep440_pre(pieces: Dict[str, Any]) -> str: ++ """TAG[.postN.devDISTANCE] -- No -dirty. ++ ++ Exceptions: ++ 1: no tags. 0.post0.devDISTANCE ++ """ ++ if pieces["closest-tag"]: + if pieces["distance"]: +- rendered += ".post.dev%d" % pieces["distance"] ++ # update the post release segment ++ tag_version, post_version = pep440_split_post(pieces["closest-tag"]) ++ rendered = tag_version ++ if post_version is not None: ++ rendered += ".post%d.dev%d" % (post_version + 1, pieces["distance"]) ++ else: ++ rendered += ".post0.dev%d" % (pieces["distance"]) ++ else: ++ # no commits, use the tag as the version ++ rendered = pieces["closest-tag"] + else: + # exception #1 +- rendered = "0.post.dev%d" % pieces["distance"] ++ rendered = "0.post0.dev%d" % pieces["distance"] + return rendered + + +-def render_pep440_post(pieces): ++def render_pep440_post(pieces: Dict[str, Any]) -> str: + """TAG[.postDISTANCE[.dev0]+gHEX] . + + The ".dev0" means dirty. Note that .dev0 sorts backwards +@@ -1301,12 +1687,41 @@ def render_pep440_post(pieces): + return rendered + + +-def render_pep440_old(pieces): ++def render_pep440_post_branch(pieces: Dict[str, Any]) -> str: ++ """TAG[.postDISTANCE[.dev0]+gHEX[.dirty]] . ++ ++ The ".dev0" means not master branch. ++ ++ Exceptions: ++ 1: no tags. 0.postDISTANCE[.dev0]+gHEX[.dirty] ++ """ ++ if pieces["closest-tag"]: ++ rendered = pieces["closest-tag"] ++ if pieces["distance"] or pieces["dirty"]: ++ rendered += ".post%d" % pieces["distance"] ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += plus_or_dot(pieces) ++ rendered += "g%s" % pieces["short"] ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ else: ++ # exception #1 ++ rendered = "0.post%d" % pieces["distance"] ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += "+g%s" % pieces["short"] ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ return rendered ++ ++ ++def render_pep440_old(pieces: Dict[str, Any]) -> str: + """TAG[.postDISTANCE[.dev0]] . + + The ".dev0" means dirty. + +- Eexceptions: ++ Exceptions: + 1: no tags. 0.postDISTANCE[.dev0] + """ + if pieces["closest-tag"]: +@@ -1323,7 +1738,7 @@ def render_pep440_old(pieces): + return rendered + + +-def render_git_describe(pieces): ++def render_git_describe(pieces: Dict[str, Any]) -> str: + """TAG[-DISTANCE-gHEX][-dirty]. + + Like 'git describe --tags --dirty --always'. +@@ -1343,7 +1758,7 @@ def render_git_describe(pieces): + return rendered + + +-def render_git_describe_long(pieces): ++def render_git_describe_long(pieces: Dict[str, Any]) -> str: + """TAG-DISTANCE-gHEX[-dirty]. + + Like 'git describe --tags --dirty --always -long'. +@@ -1363,24 +1778,30 @@ def render_git_describe_long(pieces): + return rendered + + +-def render(pieces, style): ++def render(pieces: Dict[str, Any], style: str) -> Dict[str, Any]: + """Render the given version pieces into the requested style.""" + if pieces["error"]: +- return {"version": "unknown", +- "full-revisionid": pieces.get("long"), +- "dirty": None, +- "error": pieces["error"], +- "date": None} ++ return { ++ "version": "unknown", ++ "full-revisionid": pieces.get("long"), ++ "dirty": None, ++ "error": pieces["error"], ++ "date": None, ++ } + + if not style or style == "default": + style = "pep440" # the default + + if style == "pep440": + rendered = render_pep440(pieces) ++ elif style == "pep440-branch": ++ rendered = render_pep440_branch(pieces) + elif style == "pep440-pre": + rendered = render_pep440_pre(pieces) + elif style == "pep440-post": + rendered = render_pep440_post(pieces) ++ elif style == "pep440-post-branch": ++ rendered = render_pep440_post_branch(pieces) + elif style == "pep440-old": + rendered = render_pep440_old(pieces) + elif style == "git-describe": +@@ -1390,16 +1811,20 @@ def render(pieces, style): + else: + raise ValueError("unknown style '%s'" % style) + +- return {"version": rendered, "full-revisionid": pieces["long"], +- "dirty": pieces["dirty"], "error": None, +- "date": pieces.get("date")} ++ return { ++ "version": rendered, ++ "full-revisionid": pieces["long"], ++ "dirty": pieces["dirty"], ++ "error": None, ++ "date": pieces.get("date"), ++ } + + + class VersioneerBadRootError(Exception): + """The project root directory is unknown or missing key files.""" + + +-def get_versions(verbose=False): ++def get_versions(verbose: bool = False) -> Dict[str, Any]: + """Get the project version from whatever source is available. + + Returns dict with two keys: 'version' and 'full'. +@@ -1414,9 +1839,10 @@ def get_versions(verbose=False): + assert cfg.VCS is not None, "please set [versioneer]VCS= in setup.cfg" + handlers = HANDLERS.get(cfg.VCS) + assert handlers, "unrecognized VCS '%s'" % cfg.VCS +- verbose = verbose or cfg.verbose +- assert cfg.versionfile_source is not None, \ +- "please set versioneer.versionfile_source" ++ verbose = verbose or bool(cfg.verbose) # `bool()` used to avoid `None` ++ assert ( ++ cfg.versionfile_source is not None ++ ), "please set versioneer.versionfile_source" + assert cfg.tag_prefix is not None, "please set versioneer.tag_prefix" + + versionfile_abs = os.path.join(root, cfg.versionfile_source) +@@ -1470,18 +1896,26 @@ def get_versions(verbose=False): + if verbose: + print("unable to compute version") + +- return {"version": "0+unknown", "full-revisionid": None, +- "dirty": None, "error": "unable to compute version", +- "date": None} ++ return { ++ "version": "0+unknown", ++ "full-revisionid": None, ++ "dirty": None, ++ "error": "unable to compute version", ++ "date": None, ++ } + + +-def get_version(): ++def get_version() -> str: + """Get the short version string for this project.""" + return get_versions()["version"] + + +-def get_cmdclass(): +- """Get the custom setuptools/distutils subclasses used by Versioneer.""" ++def get_cmdclass(cmdclass: Optional[Dict[str, Any]] = None): ++ """Get the custom setuptools subclasses used by Versioneer. ++ ++ If the package uses a different cmdclass (e.g. one from numpy), it ++ should be provide as an argument. ++ """ + if "versioneer" in sys.modules: + del sys.modules["versioneer"] + # this fixes the "python setup.py develop" case (also 'install' and +@@ -1495,25 +1929,25 @@ def get_cmdclass(): + # parent is protected against the child's "import versioneer". By + # removing ourselves from sys.modules here, before the child build + # happens, we protect the child from the parent's versioneer too. +- # Also see https://github.com/warner/python-versioneer/issues/52 ++ # Also see https://github.com/python-versioneer/python-versioneer/issues/52 + +- cmds = {} ++ cmds = {} if cmdclass is None else cmdclass.copy() + +- # we add "version" to both distutils and setuptools +- from distutils.core import Command ++ # we add "version" to setuptools ++ from setuptools import Command + + class cmd_version(Command): + description = "report generated version string" +- user_options = [] +- boolean_options = [] ++ user_options: List[Tuple[str, str, str]] = [] ++ boolean_options: List[str] = [] + +- def initialize_options(self): ++ def initialize_options(self) -> None: + pass + +- def finalize_options(self): ++ def finalize_options(self) -> None: + pass + +- def run(self): ++ def run(self) -> None: + vers = get_versions(verbose=True) + print("Version: %s" % vers["version"]) + print(" full-revisionid: %s" % vers.get("full-revisionid")) +@@ -1521,9 +1955,10 @@ def get_cmdclass(): + print(" date: %s" % vers.get("date")) + if vers["error"]: + print(" error: %s" % vers["error"]) ++ + cmds["version"] = cmd_version + +- # we override "build_py" in both distutils and setuptools ++ # we override "build_py" in setuptools + # + # most invocation pathways end up running build_py: + # distutils/build -> build_py +@@ -1538,29 +1973,71 @@ def get_cmdclass(): + # then does setup.py bdist_wheel, or sometimes setup.py install + # setup.py egg_info -> ? + ++ # pip install -e . and setuptool/editable_wheel will invoke build_py ++ # but the build_py command is not expected to copy any files. ++ + # we override different "build_py" commands for both environments +- if "setuptools" in sys.modules: +- from setuptools.command.build_py import build_py as _build_py ++ if "build_py" in cmds: ++ _build_py: Any = cmds["build_py"] + else: +- from distutils.command.build_py import build_py as _build_py ++ from setuptools.command.build_py import build_py as _build_py + + class cmd_build_py(_build_py): +- def run(self): ++ def run(self) -> None: + root = get_root() + cfg = get_config_from_root(root) + versions = get_versions() + _build_py.run(self) ++ if getattr(self, "editable_mode", False): ++ # During editable installs `.py` and data files are ++ # not copied to build_lib ++ return + # now locate _version.py in the new build/ directory and replace + # it with an updated value + if cfg.versionfile_build: +- target_versionfile = os.path.join(self.build_lib, +- cfg.versionfile_build) ++ target_versionfile = os.path.join(self.build_lib, cfg.versionfile_build) + print("UPDATING %s" % target_versionfile) + write_to_version_file(target_versionfile, versions) ++ + cmds["build_py"] = cmd_build_py + ++ if "build_ext" in cmds: ++ _build_ext: Any = cmds["build_ext"] ++ else: ++ from setuptools.command.build_ext import build_ext as _build_ext ++ ++ class cmd_build_ext(_build_ext): ++ def run(self) -> None: ++ root = get_root() ++ cfg = get_config_from_root(root) ++ versions = get_versions() ++ _build_ext.run(self) ++ if self.inplace: ++ # build_ext --inplace will only build extensions in ++ # build/lib<..> dir with no _version.py to write to. ++ # As in place builds will already have a _version.py ++ # in the module dir, we do not need to write one. ++ return ++ # now locate _version.py in the new build/ directory and replace ++ # it with an updated value ++ if not cfg.versionfile_build: ++ return ++ target_versionfile = os.path.join(self.build_lib, cfg.versionfile_build) ++ if not os.path.exists(target_versionfile): ++ print( ++ f"Warning: {target_versionfile} does not exist, skipping " ++ "version update. This can happen if you are running build_ext " ++ "without first running build_py." ++ ) ++ return ++ print("UPDATING %s" % target_versionfile) ++ write_to_version_file(target_versionfile, versions) ++ ++ cmds["build_ext"] = cmd_build_ext ++ + if "cx_Freeze" in sys.modules: # cx_freeze enabled? +- from cx_Freeze.dist import build_exe as _build_exe ++ from cx_Freeze.dist import build_exe as _build_exe # type: ignore ++ + # nczeczulin reports that py2exe won't like the pep440-style string + # as FILEVERSION, but it can be used for PRODUCTVERSION, e.g. + # setup(console=[{ +@@ -1569,7 +2046,7 @@ def get_cmdclass(): + # ... + + class cmd_build_exe(_build_exe): +- def run(self): ++ def run(self) -> None: + root = get_root() + cfg = get_config_from_root(root) + versions = get_versions() +@@ -1581,24 +2058,28 @@ def get_cmdclass(): + os.unlink(target_versionfile) + with open(cfg.versionfile_source, "w") as f: + LONG = LONG_VERSION_PY[cfg.VCS] +- f.write(LONG % +- {"DOLLAR": "$", +- "STYLE": cfg.style, +- "TAG_PREFIX": cfg.tag_prefix, +- "PARENTDIR_PREFIX": cfg.parentdir_prefix, +- "VERSIONFILE_SOURCE": cfg.versionfile_source, +- }) ++ f.write( ++ LONG ++ % { ++ "DOLLAR": "$", ++ "STYLE": cfg.style, ++ "TAG_PREFIX": cfg.tag_prefix, ++ "PARENTDIR_PREFIX": cfg.parentdir_prefix, ++ "VERSIONFILE_SOURCE": cfg.versionfile_source, ++ } ++ ) ++ + cmds["build_exe"] = cmd_build_exe + del cmds["build_py"] + +- if 'py2exe' in sys.modules: # py2exe enabled? ++ if "py2exe" in sys.modules: # py2exe enabled? + try: +- from py2exe.distutils_buildexe import py2exe as _py2exe # py3 ++ from py2exe.setuptools_buildexe import py2exe as _py2exe # type: ignore + except ImportError: +- from py2exe.build_exe import py2exe as _py2exe # py2 ++ from py2exe.distutils_buildexe import py2exe as _py2exe # type: ignore + + class cmd_py2exe(_py2exe): +- def run(self): ++ def run(self) -> None: + root = get_root() + cfg = get_config_from_root(root) + versions = get_versions() +@@ -1610,23 +2091,67 @@ def get_cmdclass(): + os.unlink(target_versionfile) + with open(cfg.versionfile_source, "w") as f: + LONG = LONG_VERSION_PY[cfg.VCS] +- f.write(LONG % +- {"DOLLAR": "$", +- "STYLE": cfg.style, +- "TAG_PREFIX": cfg.tag_prefix, +- "PARENTDIR_PREFIX": cfg.parentdir_prefix, +- "VERSIONFILE_SOURCE": cfg.versionfile_source, +- }) ++ f.write( ++ LONG ++ % { ++ "DOLLAR": "$", ++ "STYLE": cfg.style, ++ "TAG_PREFIX": cfg.tag_prefix, ++ "PARENTDIR_PREFIX": cfg.parentdir_prefix, ++ "VERSIONFILE_SOURCE": cfg.versionfile_source, ++ } ++ ) ++ + cmds["py2exe"] = cmd_py2exe + ++ # sdist farms its file list building out to egg_info ++ if "egg_info" in cmds: ++ _egg_info: Any = cmds["egg_info"] ++ else: ++ from setuptools.command.egg_info import egg_info as _egg_info ++ ++ class cmd_egg_info(_egg_info): ++ def find_sources(self) -> None: ++ # egg_info.find_sources builds the manifest list and writes it ++ # in one shot ++ super().find_sources() ++ ++ # Modify the filelist and normalize it ++ root = get_root() ++ cfg = get_config_from_root(root) ++ self.filelist.append("versioneer.py") ++ if cfg.versionfile_source: ++ # There are rare cases where versionfile_source might not be ++ # included by default, so we must be explicit ++ self.filelist.append(cfg.versionfile_source) ++ self.filelist.sort() ++ self.filelist.remove_duplicates() ++ ++ # The write method is hidden in the manifest_maker instance that ++ # generated the filelist and was thrown away ++ # We will instead replicate their final normalization (to unicode, ++ # and POSIX-style paths) ++ from setuptools import unicode_utils ++ ++ normalized = [ ++ unicode_utils.filesys_decode(f).replace(os.sep, "/") ++ for f in self.filelist.files ++ ] ++ ++ manifest_filename = os.path.join(self.egg_info, "SOURCES.txt") ++ with open(manifest_filename, "w") as fobj: ++ fobj.write("\n".join(normalized)) ++ ++ cmds["egg_info"] = cmd_egg_info ++ + # we override different "sdist" commands for both environments +- if "setuptools" in sys.modules: +- from setuptools.command.sdist import sdist as _sdist ++ if "sdist" in cmds: ++ _sdist: Any = cmds["sdist"] + else: +- from distutils.command.sdist import sdist as _sdist ++ from setuptools.command.sdist import sdist as _sdist + + class cmd_sdist(_sdist): +- def run(self): ++ def run(self) -> None: + versions = get_versions() + self._versioneer_generated_versions = versions + # unless we update this, the command will keep using the old +@@ -1634,7 +2159,7 @@ def get_cmdclass(): + self.distribution.metadata.version = versions["version"] + return _sdist.run(self) + +- def make_release_tree(self, base_dir, files): ++ def make_release_tree(self, base_dir: str, files: List[str]) -> None: + root = get_root() + cfg = get_config_from_root(root) + _sdist.make_release_tree(self, base_dir, files) +@@ -1643,8 +2168,10 @@ def get_cmdclass(): + # updated value + target_versionfile = os.path.join(base_dir, cfg.versionfile_source) + print("UPDATING %s" % target_versionfile) +- write_to_version_file(target_versionfile, +- self._versioneer_generated_versions) ++ write_to_version_file( ++ target_versionfile, self._versioneer_generated_versions ++ ) ++ + cmds["sdist"] = cmd_sdist + + return cmds +@@ -1687,23 +2214,26 @@ SAMPLE_CONFIG = """ + + """ + +-INIT_PY_SNIPPET = """ ++OLD_SNIPPET = """ + from ._version import get_versions + __version__ = get_versions()['version'] + del get_versions + """ + ++INIT_PY_SNIPPET = """ ++from . import {0} ++__version__ = {0}.get_versions()['version'] ++""" ++ + +-def do_setup(): +- """Main VCS-independent setup function for installing Versioneer.""" ++def do_setup() -> int: ++ """Do main VCS-independent setup function for installing Versioneer.""" + root = get_root() + try: + cfg = get_config_from_root(root) +- except (EnvironmentError, configparser.NoSectionError, +- configparser.NoOptionError) as e: +- if isinstance(e, (EnvironmentError, configparser.NoSectionError)): +- print("Adding sample versioneer config to setup.cfg", +- file=sys.stderr) ++ except (OSError, configparser.NoSectionError, configparser.NoOptionError) as e: ++ if isinstance(e, (OSError, configparser.NoSectionError)): ++ print("Adding sample versioneer config to setup.cfg", file=sys.stderr) + with open(os.path.join(root, "setup.cfg"), "a") as f: + f.write(SAMPLE_CONFIG) + print(CONFIG_ERROR, file=sys.stderr) +@@ -1712,71 +2242,49 @@ def do_setup(): + print(" creating %s" % cfg.versionfile_source) + with open(cfg.versionfile_source, "w") as f: + LONG = LONG_VERSION_PY[cfg.VCS] +- f.write(LONG % {"DOLLAR": "$", +- "STYLE": cfg.style, +- "TAG_PREFIX": cfg.tag_prefix, +- "PARENTDIR_PREFIX": cfg.parentdir_prefix, +- "VERSIONFILE_SOURCE": cfg.versionfile_source, +- }) +- +- ipy = os.path.join(os.path.dirname(cfg.versionfile_source), +- "__init__.py") ++ f.write( ++ LONG ++ % { ++ "DOLLAR": "$", ++ "STYLE": cfg.style, ++ "TAG_PREFIX": cfg.tag_prefix, ++ "PARENTDIR_PREFIX": cfg.parentdir_prefix, ++ "VERSIONFILE_SOURCE": cfg.versionfile_source, ++ } ++ ) ++ ++ ipy = os.path.join(os.path.dirname(cfg.versionfile_source), "__init__.py") ++ maybe_ipy: Optional[str] = ipy + if os.path.exists(ipy): + try: + with open(ipy, "r") as f: + old = f.read() +- except EnvironmentError: ++ except OSError: + old = "" +- if INIT_PY_SNIPPET not in old: ++ module = os.path.splitext(os.path.basename(cfg.versionfile_source))[0] ++ snippet = INIT_PY_SNIPPET.format(module) ++ if OLD_SNIPPET in old: ++ print(" replacing boilerplate in %s" % ipy) ++ with open(ipy, "w") as f: ++ f.write(old.replace(OLD_SNIPPET, snippet)) ++ elif snippet not in old: + print(" appending to %s" % ipy) + with open(ipy, "a") as f: +- f.write(INIT_PY_SNIPPET) ++ f.write(snippet) + else: + print(" %s unmodified" % ipy) + else: + print(" %s doesn't exist, ok" % ipy) +- ipy = None +- +- # Make sure both the top-level "versioneer.py" and versionfile_source +- # (PKG/_version.py, used by runtime code) are in MANIFEST.in, so +- # they'll be copied into source distributions. Pip won't be able to +- # install the package without this. +- manifest_in = os.path.join(root, "MANIFEST.in") +- simple_includes = set() +- try: +- with open(manifest_in, "r") as f: +- for line in f: +- if line.startswith("include "): +- for include in line.split()[1:]: +- simple_includes.add(include) +- except EnvironmentError: +- pass +- # That doesn't cover everything MANIFEST.in can do +- # (http://docs.python.org/2/distutils/sourcedist.html#commands), so +- # it might give some false negatives. Appending redundant 'include' +- # lines is safe, though. +- if "versioneer.py" not in simple_includes: +- print(" appending 'versioneer.py' to MANIFEST.in") +- with open(manifest_in, "a") as f: +- f.write("include versioneer.py\n") +- else: +- print(" 'versioneer.py' already in MANIFEST.in") +- if cfg.versionfile_source not in simple_includes: +- print(" appending versionfile_source ('%s') to MANIFEST.in" % +- cfg.versionfile_source) +- with open(manifest_in, "a") as f: +- f.write("include %s\n" % cfg.versionfile_source) +- else: +- print(" versionfile_source already in MANIFEST.in") ++ maybe_ipy = None + + # Make VCS-specific changes. For git, this means creating/changing + # .gitattributes to mark _version.py for export-subst keyword + # substitution. +- do_vcs_install(manifest_in, cfg.versionfile_source, ipy) ++ do_vcs_install(cfg.versionfile_source, maybe_ipy) + return 0 + + +-def scan_setup_py(): ++def scan_setup_py() -> int: + """Validate the contents of setup.py against Versioneer's expectations.""" + found = set() + setters = False +@@ -1813,10 +2321,14 @@ def scan_setup_py(): + return errors + + ++def setup_command() -> NoReturn: ++ """Set up Versioneer and exit with appropriate error code.""" ++ errors = do_setup() ++ errors += scan_setup_py() ++ sys.exit(1 if errors else 0) ++ ++ + if __name__ == "__main__": + cmd = sys.argv[1] + if cmd == "setup": +- errors = do_setup() +- errors += scan_setup_py() +- if errors: +- sys.exit(1) ++ setup_command() +-- +2.41.0 + diff --git a/package/python-magic-wormhole-transit-relay/0001-Update-versioneer-to-0.29.patch b/package/python-magic-wormhole-transit-relay/0001-Update-versioneer-to-0.29.patch new file mode 100644 index 000000000000..51cecd138a0a --- /dev/null +++ b/package/python-magic-wormhole-transit-relay/0001-Update-versioneer-to-0.29.patch @@ -0,0 +1,2194 @@ +From f00f54ecbd9bea970795da4f1f6091828a011bcd Mon Sep 17 00:00:00 2001 +From: Adam Duskett +Date: Tue, 24 Oct 2023 09:52:45 +0200 +Subject: [PATCH] Update versioneer to 0.29 + +Fixes builds against Python 3.12.0 + +Upstream: https://github.com/magic-wormhole/magic-wormhole-transit-relay/pull/34 + +Signed-off-by: Adam Duskett +--- + versioneer.py | 1350 ++++++++++++++++++++++++++++++++++--------------- + 1 file changed, 931 insertions(+), 419 deletions(-) + +diff --git a/versioneer.py b/versioneer.py +index 64fea1c..de97d90 100644 +--- a/versioneer.py ++++ b/versioneer.py +@@ -1,5 +1,4 @@ +- +-# Version: 0.18 ++# Version: 0.29 + + """The Versioneer - like a rocketeer, but for versions. + +@@ -7,18 +6,14 @@ The Versioneer + ============== + + * like a rocketeer, but for versions! +-* https://github.com/warner/python-versioneer ++* https://github.com/python-versioneer/python-versioneer + * Brian Warner +-* License: Public Domain +-* Compatible With: python2.6, 2.7, 3.2, 3.3, 3.4, 3.5, 3.6, and pypy +-* [![Latest Version] +-(https://pypip.in/version/versioneer/badge.svg?style=flat) +-](https://pypi.python.org/pypi/versioneer/) +-* [![Build Status] +-(https://travis-ci.org/warner/python-versioneer.png?branch=master) +-](https://travis-ci.org/warner/python-versioneer) +- +-This is a tool for managing a recorded version number in distutils-based ++* License: Public Domain (Unlicense) ++* Compatible with: Python 3.7, 3.8, 3.9, 3.10, 3.11 and pypy3 ++* [![Latest Version][pypi-image]][pypi-url] ++* [![Build Status][travis-image]][travis-url] ++ ++This is a tool for managing a recorded version number in setuptools-based + python projects. The goal is to remove the tedious and error-prone "update + the embedded version string" step from your release process. Making a new + release should be as easy as recording a new tag in your version-control +@@ -27,9 +22,38 @@ system, and maybe making new tarballs. + + ## Quick Install + +-* `pip install versioneer` to somewhere to your $PATH +-* add a `[versioneer]` section to your setup.cfg (see below) +-* run `versioneer install` in your source tree, commit the results ++Versioneer provides two installation modes. The "classic" vendored mode installs ++a copy of versioneer into your repository. The experimental build-time dependency mode ++is intended to allow you to skip this step and simplify the process of upgrading. ++ ++### Vendored mode ++ ++* `pip install versioneer` to somewhere in your $PATH ++ * A [conda-forge recipe](https://github.com/conda-forge/versioneer-feedstock) is ++ available, so you can also use `conda install -c conda-forge versioneer` ++* add a `[tool.versioneer]` section to your `pyproject.toml` or a ++ `[versioneer]` section to your `setup.cfg` (see [Install](INSTALL.md)) ++ * Note that you will need to add `tomli; python_version < "3.11"` to your ++ build-time dependencies if you use `pyproject.toml` ++* run `versioneer install --vendor` in your source tree, commit the results ++* verify version information with `python setup.py version` ++ ++### Build-time dependency mode ++ ++* `pip install versioneer` to somewhere in your $PATH ++ * A [conda-forge recipe](https://github.com/conda-forge/versioneer-feedstock) is ++ available, so you can also use `conda install -c conda-forge versioneer` ++* add a `[tool.versioneer]` section to your `pyproject.toml` or a ++ `[versioneer]` section to your `setup.cfg` (see [Install](INSTALL.md)) ++* add `versioneer` (with `[toml]` extra, if configuring in `pyproject.toml`) ++ to the `requires` key of the `build-system` table in `pyproject.toml`: ++ ```toml ++ [build-system] ++ requires = ["setuptools", "versioneer[toml]"] ++ build-backend = "setuptools.build_meta" ++ ``` ++* run `versioneer install --no-vendor` in your source tree, commit the results ++* verify version information with `python setup.py version` + + ## Version Identifiers + +@@ -61,7 +85,7 @@ version 1.3). Many VCS systems can report a description that captures this, + for example `git describe --tags --dirty --always` reports things like + "0.7-1-g574ab98-dirty" to indicate that the checkout is one revision past the + 0.7 tag, has a unique revision id of "574ab98", and is "dirty" (it has +-uncommitted changes. ++uncommitted changes). + + The version identifier is used for multiple purposes: + +@@ -166,7 +190,7 @@ which may help identify what went wrong). + + Some situations are known to cause problems for Versioneer. This details the + most significant ones. More can be found on Github +-[issues page](https://github.com/warner/python-versioneer/issues). ++[issues page](https://github.com/python-versioneer/python-versioneer/issues). + + ### Subprojects + +@@ -180,7 +204,7 @@ two common reasons why `setup.py` might not be in the root: + `setup.cfg`, and `tox.ini`. Projects like these produce multiple PyPI + distributions (and upload multiple independently-installable tarballs). + * Source trees whose main purpose is to contain a C library, but which also +- provide bindings to Python (and perhaps other langauges) in subdirectories. ++ provide bindings to Python (and perhaps other languages) in subdirectories. + + Versioneer will look for `.git` in parent directories, and most operations + should get the right version string. However `pip` and `setuptools` have bugs +@@ -194,9 +218,9 @@ work too. + Pip-8.1.1 is known to have this problem, but hopefully it will get fixed in + some later version. + +-[Bug #38](https://github.com/warner/python-versioneer/issues/38) is tracking ++[Bug #38](https://github.com/python-versioneer/python-versioneer/issues/38) is tracking + this issue. The discussion in +-[PR #61](https://github.com/warner/python-versioneer/pull/61) describes the ++[PR #61](https://github.com/python-versioneer/python-versioneer/pull/61) describes the + issue from the Versioneer side in more detail. + [pip PR#3176](https://github.com/pypa/pip/pull/3176) and + [pip PR#3615](https://github.com/pypa/pip/pull/3615) contain work to improve +@@ -224,31 +248,20 @@ regenerated while a different version is checked out. Many setup.py commands + cause egg_info to be rebuilt (including `sdist`, `wheel`, and installing into + a different virtualenv), so this can be surprising. + +-[Bug #83](https://github.com/warner/python-versioneer/issues/83) describes ++[Bug #83](https://github.com/python-versioneer/python-versioneer/issues/83) describes + this one, but upgrading to a newer version of setuptools should probably + resolve it. + +-### Unicode version strings +- +-While Versioneer works (and is continually tested) with both Python 2 and +-Python 3, it is not entirely consistent with bytes-vs-unicode distinctions. +-Newer releases probably generate unicode version strings on py2. It's not +-clear that this is wrong, but it may be surprising for applications when then +-write these strings to a network connection or include them in bytes-oriented +-APIs like cryptographic checksums. +- +-[Bug #71](https://github.com/warner/python-versioneer/issues/71) investigates +-this question. +- + + ## Updating Versioneer + + To upgrade your project to a new release of Versioneer, do the following: + + * install the new Versioneer (`pip install -U versioneer` or equivalent) +-* edit `setup.cfg`, if necessary, to include any new configuration settings +- indicated by the release notes. See [UPGRADING](./UPGRADING.md) for details. +-* re-run `versioneer install` in your source tree, to replace ++* edit `setup.cfg` and `pyproject.toml`, if necessary, ++ to include any new configuration settings indicated by the release notes. ++ See [UPGRADING](./UPGRADING.md) for details. ++* re-run `versioneer install --[no-]vendor` in your source tree, to replace + `SRC/_version.py` + * commit any changed files + +@@ -265,35 +278,70 @@ installation by editing setup.py . Alternatively, it might go the other + direction and include code from all supported VCS systems, reducing the + number of intermediate scripts. + ++## Similar projects ++ ++* [setuptools_scm](https://github.com/pypa/setuptools_scm/) - a non-vendored build-time ++ dependency ++* [minver](https://github.com/jbweston/miniver) - a lightweight reimplementation of ++ versioneer ++* [versioningit](https://github.com/jwodder/versioningit) - a PEP 518-based setuptools ++ plugin + + ## License + + To make Versioneer easier to embed, all its code is dedicated to the public + domain. The `_version.py` that it creates is also in the public domain. +-Specifically, both are released under the Creative Commons "Public Domain +-Dedication" license (CC0-1.0), as described in +-https://creativecommons.org/publicdomain/zero/1.0/ . ++Specifically, both are released under the "Unlicense", as described in ++https://unlicense.org/. ++ ++[pypi-image]: https://img.shields.io/pypi/v/versioneer.svg ++[pypi-url]: https://pypi.python.org/pypi/versioneer/ ++[travis-image]: ++https://img.shields.io/travis/com/python-versioneer/python-versioneer.svg ++[travis-url]: https://travis-ci.com/github/python-versioneer/python-versioneer + + """ ++# pylint:disable=invalid-name,import-outside-toplevel,missing-function-docstring ++# pylint:disable=missing-class-docstring,too-many-branches,too-many-statements ++# pylint:disable=raise-missing-from,too-many-lines,too-many-locals,import-error ++# pylint:disable=too-few-public-methods,redefined-outer-name,consider-using-with ++# pylint:disable=attribute-defined-outside-init,too-many-arguments + +-from __future__ import print_function +-try: +- import configparser +-except ImportError: +- import ConfigParser as configparser ++import configparser + import errno + import json + import os + import re + import subprocess + import sys ++from pathlib import Path ++from typing import Any, Callable, cast, Dict, List, Optional, Tuple, Union ++from typing import NoReturn ++import functools ++ ++have_tomllib = True ++if sys.version_info >= (3, 11): ++ import tomllib ++else: ++ try: ++ import tomli as tomllib ++ except ImportError: ++ have_tomllib = False + + + class VersioneerConfig: + """Container for Versioneer configuration parameters.""" + ++ VCS: str ++ style: str ++ tag_prefix: str ++ versionfile_source: str ++ versionfile_build: Optional[str] ++ parentdir_prefix: Optional[str] ++ verbose: Optional[bool] ++ + +-def get_root(): ++def get_root() -> str: + """Get the project root directory. + + We require that all commands are run from the project root, i.e. the +@@ -301,18 +349,30 @@ def get_root(): + """ + root = os.path.realpath(os.path.abspath(os.getcwd())) + setup_py = os.path.join(root, "setup.py") ++ pyproject_toml = os.path.join(root, "pyproject.toml") + versioneer_py = os.path.join(root, "versioneer.py") +- if not (os.path.exists(setup_py) or os.path.exists(versioneer_py)): ++ if not ( ++ os.path.exists(setup_py) ++ or os.path.exists(pyproject_toml) ++ or os.path.exists(versioneer_py) ++ ): + # allow 'python path/to/setup.py COMMAND' + root = os.path.dirname(os.path.realpath(os.path.abspath(sys.argv[0]))) + setup_py = os.path.join(root, "setup.py") ++ pyproject_toml = os.path.join(root, "pyproject.toml") + versioneer_py = os.path.join(root, "versioneer.py") +- if not (os.path.exists(setup_py) or os.path.exists(versioneer_py)): +- err = ("Versioneer was unable to run the project root directory. " +- "Versioneer requires setup.py to be executed from " +- "its immediate directory (like 'python setup.py COMMAND'), " +- "or in a way that lets it use sys.argv[0] to find the root " +- "(like 'python path/to/setup.py COMMAND').") ++ if not ( ++ os.path.exists(setup_py) ++ or os.path.exists(pyproject_toml) ++ or os.path.exists(versioneer_py) ++ ): ++ err = ( ++ "Versioneer was unable to run the project root directory. " ++ "Versioneer requires setup.py to be executed from " ++ "its immediate directory (like 'python setup.py COMMAND'), " ++ "or in a way that lets it use sys.argv[0] to find the root " ++ "(like 'python path/to/setup.py COMMAND')." ++ ) + raise VersioneerBadRootError(err) + try: + # Certain runtime workflows (setup.py install/develop in a setuptools +@@ -321,43 +381,64 @@ def get_root(): + # module-import table will cache the first one. So we can't use + # os.path.dirname(__file__), as that will find whichever + # versioneer.py was first imported, even in later projects. +- me = os.path.realpath(os.path.abspath(__file__)) +- me_dir = os.path.normcase(os.path.splitext(me)[0]) ++ my_path = os.path.realpath(os.path.abspath(__file__)) ++ me_dir = os.path.normcase(os.path.splitext(my_path)[0]) + vsr_dir = os.path.normcase(os.path.splitext(versioneer_py)[0]) +- if me_dir != vsr_dir: +- print("Warning: build in %s is using versioneer.py from %s" +- % (os.path.dirname(me), versioneer_py)) ++ if me_dir != vsr_dir and "VERSIONEER_PEP518" not in globals(): ++ print( ++ "Warning: build in %s is using versioneer.py from %s" ++ % (os.path.dirname(my_path), versioneer_py) ++ ) + except NameError: + pass + return root + + +-def get_config_from_root(root): ++def get_config_from_root(root: str) -> VersioneerConfig: + """Read the project setup.cfg file to determine Versioneer config.""" +- # This might raise EnvironmentError (if setup.cfg is missing), or ++ # This might raise OSError (if setup.cfg is missing), or + # configparser.NoSectionError (if it lacks a [versioneer] section), or + # configparser.NoOptionError (if it lacks "VCS="). See the docstring at + # the top of versioneer.py for instructions on writing your setup.cfg . +- setup_cfg = os.path.join(root, "setup.cfg") +- parser = configparser.SafeConfigParser() +- with open(setup_cfg, "r") as f: +- parser.readfp(f) +- VCS = parser.get("versioneer", "VCS") # mandatory +- +- def get(parser, name): +- if parser.has_option("versioneer", name): +- return parser.get("versioneer", name) +- return None ++ root_pth = Path(root) ++ pyproject_toml = root_pth / "pyproject.toml" ++ setup_cfg = root_pth / "setup.cfg" ++ section: Union[Dict[str, Any], configparser.SectionProxy, None] = None ++ if pyproject_toml.exists() and have_tomllib: ++ try: ++ with open(pyproject_toml, "rb") as fobj: ++ pp = tomllib.load(fobj) ++ section = pp["tool"]["versioneer"] ++ except (tomllib.TOMLDecodeError, KeyError) as e: ++ print(f"Failed to load config from {pyproject_toml}: {e}") ++ print("Try to load it from setup.cfg") ++ if not section: ++ parser = configparser.ConfigParser() ++ with open(setup_cfg) as cfg_file: ++ parser.read_file(cfg_file) ++ parser.get("versioneer", "VCS") # raise error if missing ++ ++ section = parser["versioneer"] ++ ++ # `cast`` really shouldn't be used, but its simplest for the ++ # common VersioneerConfig users at the moment. We verify against ++ # `None` values elsewhere where it matters ++ + cfg = VersioneerConfig() +- cfg.VCS = VCS +- cfg.style = get(parser, "style") or "" +- cfg.versionfile_source = get(parser, "versionfile_source") +- cfg.versionfile_build = get(parser, "versionfile_build") +- cfg.tag_prefix = get(parser, "tag_prefix") +- if cfg.tag_prefix in ("''", '""'): ++ cfg.VCS = section["VCS"] ++ cfg.style = section.get("style", "") ++ cfg.versionfile_source = cast(str, section.get("versionfile_source")) ++ cfg.versionfile_build = section.get("versionfile_build") ++ cfg.tag_prefix = cast(str, section.get("tag_prefix")) ++ if cfg.tag_prefix in ("''", '""', None): + cfg.tag_prefix = "" +- cfg.parentdir_prefix = get(parser, "parentdir_prefix") +- cfg.verbose = get(parser, "verbose") ++ cfg.parentdir_prefix = section.get("parentdir_prefix") ++ if isinstance(section, configparser.SectionProxy): ++ # Make sure configparser translates to bool ++ cfg.verbose = section.getboolean("verbose") ++ else: ++ cfg.verbose = section.get("verbose") ++ + return cfg + + +@@ -366,37 +447,54 @@ class NotThisMethod(Exception): + + + # these dictionaries contain VCS-specific tools +-LONG_VERSION_PY = {} +-HANDLERS = {} ++LONG_VERSION_PY: Dict[str, str] = {} ++HANDLERS: Dict[str, Dict[str, Callable]] = {} + + +-def register_vcs_handler(vcs, method): # decorator +- """Decorator to mark a method as the handler for a particular VCS.""" +- def decorate(f): ++def register_vcs_handler(vcs: str, method: str) -> Callable: # decorator ++ """Create decorator to mark a method as the handler of a VCS.""" ++ ++ def decorate(f: Callable) -> Callable: + """Store f in HANDLERS[vcs][method].""" +- if vcs not in HANDLERS: +- HANDLERS[vcs] = {} +- HANDLERS[vcs][method] = f ++ HANDLERS.setdefault(vcs, {})[method] = f + return f ++ + return decorate + + +-def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, +- env=None): ++def run_command( ++ commands: List[str], ++ args: List[str], ++ cwd: Optional[str] = None, ++ verbose: bool = False, ++ hide_stderr: bool = False, ++ env: Optional[Dict[str, str]] = None, ++) -> Tuple[Optional[str], Optional[int]]: + """Call the given command(s).""" + assert isinstance(commands, list) +- p = None +- for c in commands: ++ process = None ++ ++ popen_kwargs: Dict[str, Any] = {} ++ if sys.platform == "win32": ++ # This hides the console window if pythonw.exe is used ++ startupinfo = subprocess.STARTUPINFO() ++ startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW ++ popen_kwargs["startupinfo"] = startupinfo ++ ++ for command in commands: + try: +- dispcmd = str([c] + args) ++ dispcmd = str([command] + args) + # remember shell=False, so use git.cmd on windows, not just git +- p = subprocess.Popen([c] + args, cwd=cwd, env=env, +- stdout=subprocess.PIPE, +- stderr=(subprocess.PIPE if hide_stderr +- else None)) ++ process = subprocess.Popen( ++ [command] + args, ++ cwd=cwd, ++ env=env, ++ stdout=subprocess.PIPE, ++ stderr=(subprocess.PIPE if hide_stderr else None), ++ **popen_kwargs, ++ ) + break +- except EnvironmentError: +- e = sys.exc_info()[1] ++ except OSError as e: + if e.errno == errno.ENOENT: + continue + if verbose: +@@ -407,26 +505,27 @@ def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, + if verbose: + print("unable to find command, tried %s" % (commands,)) + return None, None +- stdout = p.communicate()[0].strip() +- if sys.version_info[0] >= 3: +- stdout = stdout.decode() +- if p.returncode != 0: ++ stdout = process.communicate()[0].strip().decode() ++ if process.returncode != 0: + if verbose: + print("unable to run %s (error)" % dispcmd) + print("stdout was %s" % stdout) +- return None, p.returncode +- return stdout, p.returncode ++ return None, process.returncode ++ return stdout, process.returncode + + +-LONG_VERSION_PY['git'] = ''' ++LONG_VERSION_PY[ ++ "git" ++] = r''' + # This file helps to compute a version number in source trees obtained from + # git-archive tarball (such as those provided by githubs download-from-tag + # feature). Distribution tarballs (built by setup.py sdist) and build + # directories (produced by setup.py build) will contain a much shorter file + # that just contains the computed version number. + +-# This file is released into the public domain. Generated by +-# versioneer-0.18 (https://github.com/warner/python-versioneer) ++# This file is released into the public domain. ++# Generated by versioneer-0.29 ++# https://github.com/python-versioneer/python-versioneer + + """Git implementation of _version.py.""" + +@@ -435,9 +534,11 @@ import os + import re + import subprocess + import sys ++from typing import Any, Callable, Dict, List, Optional, Tuple ++import functools + + +-def get_keywords(): ++def get_keywords() -> Dict[str, str]: + """Get the keywords needed to look up the version information.""" + # these strings will be replaced by git during git-archive. + # setup.py/versioneer.py will grep for the variable names, so they must +@@ -453,8 +554,15 @@ def get_keywords(): + class VersioneerConfig: + """Container for Versioneer configuration parameters.""" + ++ VCS: str ++ style: str ++ tag_prefix: str ++ parentdir_prefix: str ++ versionfile_source: str ++ verbose: bool ++ + +-def get_config(): ++def get_config() -> VersioneerConfig: + """Create, populate and return the VersioneerConfig() object.""" + # these strings are filled in when 'setup.py versioneer' creates + # _version.py +@@ -472,13 +580,13 @@ class NotThisMethod(Exception): + """Exception raised if a method is not valid for the current scenario.""" + + +-LONG_VERSION_PY = {} +-HANDLERS = {} ++LONG_VERSION_PY: Dict[str, str] = {} ++HANDLERS: Dict[str, Dict[str, Callable]] = {} + + +-def register_vcs_handler(vcs, method): # decorator +- """Decorator to mark a method as the handler for a particular VCS.""" +- def decorate(f): ++def register_vcs_handler(vcs: str, method: str) -> Callable: # decorator ++ """Create decorator to mark a method as the handler of a VCS.""" ++ def decorate(f: Callable) -> Callable: + """Store f in HANDLERS[vcs][method].""" + if vcs not in HANDLERS: + HANDLERS[vcs] = {} +@@ -487,22 +595,35 @@ def register_vcs_handler(vcs, method): # decorator + return decorate + + +-def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, +- env=None): ++def run_command( ++ commands: List[str], ++ args: List[str], ++ cwd: Optional[str] = None, ++ verbose: bool = False, ++ hide_stderr: bool = False, ++ env: Optional[Dict[str, str]] = None, ++) -> Tuple[Optional[str], Optional[int]]: + """Call the given command(s).""" + assert isinstance(commands, list) +- p = None +- for c in commands: ++ process = None ++ ++ popen_kwargs: Dict[str, Any] = {} ++ if sys.platform == "win32": ++ # This hides the console window if pythonw.exe is used ++ startupinfo = subprocess.STARTUPINFO() ++ startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW ++ popen_kwargs["startupinfo"] = startupinfo ++ ++ for command in commands: + try: +- dispcmd = str([c] + args) ++ dispcmd = str([command] + args) + # remember shell=False, so use git.cmd on windows, not just git +- p = subprocess.Popen([c] + args, cwd=cwd, env=env, +- stdout=subprocess.PIPE, +- stderr=(subprocess.PIPE if hide_stderr +- else None)) ++ process = subprocess.Popen([command] + args, cwd=cwd, env=env, ++ stdout=subprocess.PIPE, ++ stderr=(subprocess.PIPE if hide_stderr ++ else None), **popen_kwargs) + break +- except EnvironmentError: +- e = sys.exc_info()[1] ++ except OSError as e: + if e.errno == errno.ENOENT: + continue + if verbose: +@@ -513,18 +634,20 @@ def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, + if verbose: + print("unable to find command, tried %%s" %% (commands,)) + return None, None +- stdout = p.communicate()[0].strip() +- if sys.version_info[0] >= 3: +- stdout = stdout.decode() +- if p.returncode != 0: ++ stdout = process.communicate()[0].strip().decode() ++ if process.returncode != 0: + if verbose: + print("unable to run %%s (error)" %% dispcmd) + print("stdout was %%s" %% stdout) +- return None, p.returncode +- return stdout, p.returncode ++ return None, process.returncode ++ return stdout, process.returncode + + +-def versions_from_parentdir(parentdir_prefix, root, verbose): ++def versions_from_parentdir( ++ parentdir_prefix: str, ++ root: str, ++ verbose: bool, ++) -> Dict[str, Any]: + """Try to determine the version from the parent directory name. + + Source tarballs conventionally unpack into a directory that includes both +@@ -533,15 +656,14 @@ def versions_from_parentdir(parentdir_prefix, root, verbose): + """ + rootdirs = [] + +- for i in range(3): ++ for _ in range(3): + dirname = os.path.basename(root) + if dirname.startswith(parentdir_prefix): + return {"version": dirname[len(parentdir_prefix):], + "full-revisionid": None, + "dirty": False, "error": None, "date": None} +- else: +- rootdirs.append(root) +- root = os.path.dirname(root) # up a level ++ rootdirs.append(root) ++ root = os.path.dirname(root) # up a level + + if verbose: + print("Tried directories %%s but none started with prefix %%s" %% +@@ -550,41 +672,48 @@ def versions_from_parentdir(parentdir_prefix, root, verbose): + + + @register_vcs_handler("git", "get_keywords") +-def git_get_keywords(versionfile_abs): ++def git_get_keywords(versionfile_abs: str) -> Dict[str, str]: + """Extract version information from the given file.""" + # the code embedded in _version.py can just fetch the value of these + # keywords. When used from setup.py, we don't want to import _version.py, + # so we do it with a regexp instead. This function is not used from + # _version.py. +- keywords = {} ++ keywords: Dict[str, str] = {} + try: +- f = open(versionfile_abs, "r") +- for line in f.readlines(): +- if line.strip().startswith("git_refnames ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["refnames"] = mo.group(1) +- if line.strip().startswith("git_full ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["full"] = mo.group(1) +- if line.strip().startswith("git_date ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["date"] = mo.group(1) +- f.close() +- except EnvironmentError: ++ with open(versionfile_abs, "r") as fobj: ++ for line in fobj: ++ if line.strip().startswith("git_refnames ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["refnames"] = mo.group(1) ++ if line.strip().startswith("git_full ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["full"] = mo.group(1) ++ if line.strip().startswith("git_date ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["date"] = mo.group(1) ++ except OSError: + pass + return keywords + + + @register_vcs_handler("git", "keywords") +-def git_versions_from_keywords(keywords, tag_prefix, verbose): ++def git_versions_from_keywords( ++ keywords: Dict[str, str], ++ tag_prefix: str, ++ verbose: bool, ++) -> Dict[str, Any]: + """Get version information from git keywords.""" +- if not keywords: +- raise NotThisMethod("no keywords at all, weird") ++ if "refnames" not in keywords: ++ raise NotThisMethod("Short version file found") + date = keywords.get("date") + if date is not None: ++ # Use only the last line. Previous lines may contain GPG signature ++ # information. ++ date = date.splitlines()[-1] ++ + # git-2.2.0 added "%%cI", which expands to an ISO-8601 -compliant + # datestamp. However we prefer "%%ci" (which expands to an "ISO-8601 + # -like" string, which we must then edit to make compliant), because +@@ -597,11 +726,11 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + if verbose: + print("keywords are unexpanded, not using") + raise NotThisMethod("unexpanded keywords, not a git-archive tarball") +- refs = set([r.strip() for r in refnames.strip("()").split(",")]) ++ refs = {r.strip() for r in refnames.strip("()").split(",")} + # starting in git-1.8.3, tags are listed as "tag: foo-1.0" instead of + # just "foo-1.0". If we see a "tag: " prefix, prefer those. + TAG = "tag: " +- tags = set([r[len(TAG):] for r in refs if r.startswith(TAG)]) ++ tags = {r[len(TAG):] for r in refs if r.startswith(TAG)} + if not tags: + # Either we're using git < 1.8.3, or there really are no tags. We use + # a heuristic: assume all version tags have a digit. The old git %%d +@@ -610,7 +739,7 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + # between branches and tags. By ignoring refnames without digits, we + # filter out many common branch names like "release" and + # "stabilization", as well as "HEAD" and "master". +- tags = set([r for r in refs if re.search(r'\d', r)]) ++ tags = {r for r in refs if re.search(r'\d', r)} + if verbose: + print("discarding '%%s', no digits" %% ",".join(refs - tags)) + if verbose: +@@ -619,6 +748,11 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + # sorting will prefer e.g. "2.0" over "2.0rc1" + if ref.startswith(tag_prefix): + r = ref[len(tag_prefix):] ++ # Filter out refs that exactly match prefix or that don't start ++ # with a number once the prefix is stripped (mostly a concern ++ # when prefix is '') ++ if not re.match(r'\d', r): ++ continue + if verbose: + print("picking %%s" %% r) + return {"version": r, +@@ -634,7 +768,12 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + + + @register_vcs_handler("git", "pieces_from_vcs") +-def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): ++def git_pieces_from_vcs( ++ tag_prefix: str, ++ root: str, ++ verbose: bool, ++ runner: Callable = run_command ++) -> Dict[str, Any]: + """Get version from 'git describe' in the root of the source tree. + + This only gets called if the git-archive 'subst' keywords were *not* +@@ -645,8 +784,15 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + if sys.platform == "win32": + GITS = ["git.cmd", "git.exe"] + +- out, rc = run_command(GITS, ["rev-parse", "--git-dir"], cwd=root, +- hide_stderr=True) ++ # GIT_DIR can interfere with correct operation of Versioneer. ++ # It may be intended to be passed to the Versioneer-versioned project, ++ # but that should not change where we get our version from. ++ env = os.environ.copy() ++ env.pop("GIT_DIR", None) ++ runner = functools.partial(runner, env=env) ++ ++ _, rc = runner(GITS, ["rev-parse", "--git-dir"], cwd=root, ++ hide_stderr=not verbose) + if rc != 0: + if verbose: + print("Directory %%s not under git control" %% root) +@@ -654,24 +800,57 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + + # if there is a tag matching tag_prefix, this yields TAG-NUM-gHEX[-dirty] + # if there isn't one, this yields HEX[-dirty] (no NUM) +- describe_out, rc = run_command(GITS, ["describe", "--tags", "--dirty", +- "--always", "--long", +- "--match", "%%s*" %% tag_prefix], +- cwd=root) ++ describe_out, rc = runner(GITS, [ ++ "describe", "--tags", "--dirty", "--always", "--long", ++ "--match", f"{tag_prefix}[[:digit:]]*" ++ ], cwd=root) + # --long was added in git-1.5.5 + if describe_out is None: + raise NotThisMethod("'git describe' failed") + describe_out = describe_out.strip() +- full_out, rc = run_command(GITS, ["rev-parse", "HEAD"], cwd=root) ++ full_out, rc = runner(GITS, ["rev-parse", "HEAD"], cwd=root) + if full_out is None: + raise NotThisMethod("'git rev-parse' failed") + full_out = full_out.strip() + +- pieces = {} ++ pieces: Dict[str, Any] = {} + pieces["long"] = full_out + pieces["short"] = full_out[:7] # maybe improved later + pieces["error"] = None + ++ branch_name, rc = runner(GITS, ["rev-parse", "--abbrev-ref", "HEAD"], ++ cwd=root) ++ # --abbrev-ref was added in git-1.6.3 ++ if rc != 0 or branch_name is None: ++ raise NotThisMethod("'git rev-parse --abbrev-ref' returned error") ++ branch_name = branch_name.strip() ++ ++ if branch_name == "HEAD": ++ # If we aren't exactly on a branch, pick a branch which represents ++ # the current commit. If all else fails, we are on a branchless ++ # commit. ++ branches, rc = runner(GITS, ["branch", "--contains"], cwd=root) ++ # --contains was added in git-1.5.4 ++ if rc != 0 or branches is None: ++ raise NotThisMethod("'git branch --contains' returned error") ++ branches = branches.split("\n") ++ ++ # Remove the first line if we're running detached ++ if "(" in branches[0]: ++ branches.pop(0) ++ ++ # Strip off the leading "* " from the list of branches. ++ branches = [branch[2:] for branch in branches] ++ if "master" in branches: ++ branch_name = "master" ++ elif not branches: ++ branch_name = None ++ else: ++ # Pick the first branch that is returned. Good or bad. ++ branch_name = branches[0] ++ ++ pieces["branch"] = branch_name ++ + # parse describe_out. It will be like TAG-NUM-gHEX[-dirty] or HEX[-dirty] + # TAG might have hyphens. + git_describe = describe_out +@@ -688,7 +867,7 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + # TAG-NUM-gHEX + mo = re.search(r'^(.+)-(\d+)-g([0-9a-f]+)$', git_describe) + if not mo: +- # unparseable. Maybe git-describe is misbehaving? ++ # unparsable. Maybe git-describe is misbehaving? + pieces["error"] = ("unable to parse git-describe output: '%%s'" + %% describe_out) + return pieces +@@ -713,26 +892,27 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + else: + # HEX: no tags + pieces["closest-tag"] = None +- count_out, rc = run_command(GITS, ["rev-list", "HEAD", "--count"], +- cwd=root) +- pieces["distance"] = int(count_out) # total number of commits ++ out, rc = runner(GITS, ["rev-list", "HEAD", "--left-right"], cwd=root) ++ pieces["distance"] = len(out.split()) # total number of commits + + # commit date: see ISO-8601 comment in git_versions_from_keywords() +- date = run_command(GITS, ["show", "-s", "--format=%%ci", "HEAD"], +- cwd=root)[0].strip() ++ date = runner(GITS, ["show", "-s", "--format=%%ci", "HEAD"], cwd=root)[0].strip() ++ # Use only the last line. Previous lines may contain GPG signature ++ # information. ++ date = date.splitlines()[-1] + pieces["date"] = date.strip().replace(" ", "T", 1).replace(" ", "", 1) + + return pieces + + +-def plus_or_dot(pieces): ++def plus_or_dot(pieces: Dict[str, Any]) -> str: + """Return a + if we don't already have one, else return a .""" + if "+" in pieces.get("closest-tag", ""): + return "." + return "+" + + +-def render_pep440(pieces): ++def render_pep440(pieces: Dict[str, Any]) -> str: + """Build up version string, with post-release "local version identifier". + + Our goal: TAG[+DISTANCE.gHEX[.dirty]] . Note that if you +@@ -757,23 +937,71 @@ def render_pep440(pieces): + return rendered + + +-def render_pep440_pre(pieces): +- """TAG[.post.devDISTANCE] -- No -dirty. ++def render_pep440_branch(pieces: Dict[str, Any]) -> str: ++ """TAG[[.dev0]+DISTANCE.gHEX[.dirty]] . ++ ++ The ".dev0" means not master branch. Note that .dev0 sorts backwards ++ (a feature branch will appear "older" than the master branch). + + Exceptions: +- 1: no tags. 0.post.devDISTANCE ++ 1: no tags. 0[.dev0]+untagged.DISTANCE.gHEX[.dirty] + """ + if pieces["closest-tag"]: + rendered = pieces["closest-tag"] ++ if pieces["distance"] or pieces["dirty"]: ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += plus_or_dot(pieces) ++ rendered += "%%d.g%%s" %% (pieces["distance"], pieces["short"]) ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ else: ++ # exception #1 ++ rendered = "0" ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += "+untagged.%%d.g%%s" %% (pieces["distance"], ++ pieces["short"]) ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ return rendered ++ ++ ++def pep440_split_post(ver: str) -> Tuple[str, Optional[int]]: ++ """Split pep440 version string at the post-release segment. ++ ++ Returns the release segments before the post-release and the ++ post-release version number (or -1 if no post-release segment is present). ++ """ ++ vc = str.split(ver, ".post") ++ return vc[0], int(vc[1] or 0) if len(vc) == 2 else None ++ ++ ++def render_pep440_pre(pieces: Dict[str, Any]) -> str: ++ """TAG[.postN.devDISTANCE] -- No -dirty. ++ ++ Exceptions: ++ 1: no tags. 0.post0.devDISTANCE ++ """ ++ if pieces["closest-tag"]: + if pieces["distance"]: +- rendered += ".post.dev%%d" %% pieces["distance"] ++ # update the post release segment ++ tag_version, post_version = pep440_split_post(pieces["closest-tag"]) ++ rendered = tag_version ++ if post_version is not None: ++ rendered += ".post%%d.dev%%d" %% (post_version + 1, pieces["distance"]) ++ else: ++ rendered += ".post0.dev%%d" %% (pieces["distance"]) ++ else: ++ # no commits, use the tag as the version ++ rendered = pieces["closest-tag"] + else: + # exception #1 +- rendered = "0.post.dev%%d" %% pieces["distance"] ++ rendered = "0.post0.dev%%d" %% pieces["distance"] + return rendered + + +-def render_pep440_post(pieces): ++def render_pep440_post(pieces: Dict[str, Any]) -> str: + """TAG[.postDISTANCE[.dev0]+gHEX] . + + The ".dev0" means dirty. Note that .dev0 sorts backwards +@@ -800,12 +1028,41 @@ def render_pep440_post(pieces): + return rendered + + +-def render_pep440_old(pieces): ++def render_pep440_post_branch(pieces: Dict[str, Any]) -> str: ++ """TAG[.postDISTANCE[.dev0]+gHEX[.dirty]] . ++ ++ The ".dev0" means not master branch. ++ ++ Exceptions: ++ 1: no tags. 0.postDISTANCE[.dev0]+gHEX[.dirty] ++ """ ++ if pieces["closest-tag"]: ++ rendered = pieces["closest-tag"] ++ if pieces["distance"] or pieces["dirty"]: ++ rendered += ".post%%d" %% pieces["distance"] ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += plus_or_dot(pieces) ++ rendered += "g%%s" %% pieces["short"] ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ else: ++ # exception #1 ++ rendered = "0.post%%d" %% pieces["distance"] ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += "+g%%s" %% pieces["short"] ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ return rendered ++ ++ ++def render_pep440_old(pieces: Dict[str, Any]) -> str: + """TAG[.postDISTANCE[.dev0]] . + + The ".dev0" means dirty. + +- Eexceptions: ++ Exceptions: + 1: no tags. 0.postDISTANCE[.dev0] + """ + if pieces["closest-tag"]: +@@ -822,7 +1079,7 @@ def render_pep440_old(pieces): + return rendered + + +-def render_git_describe(pieces): ++def render_git_describe(pieces: Dict[str, Any]) -> str: + """TAG[-DISTANCE-gHEX][-dirty]. + + Like 'git describe --tags --dirty --always'. +@@ -842,7 +1099,7 @@ def render_git_describe(pieces): + return rendered + + +-def render_git_describe_long(pieces): ++def render_git_describe_long(pieces: Dict[str, Any]) -> str: + """TAG-DISTANCE-gHEX[-dirty]. + + Like 'git describe --tags --dirty --always -long'. +@@ -862,7 +1119,7 @@ def render_git_describe_long(pieces): + return rendered + + +-def render(pieces, style): ++def render(pieces: Dict[str, Any], style: str) -> Dict[str, Any]: + """Render the given version pieces into the requested style.""" + if pieces["error"]: + return {"version": "unknown", +@@ -876,10 +1133,14 @@ def render(pieces, style): + + if style == "pep440": + rendered = render_pep440(pieces) ++ elif style == "pep440-branch": ++ rendered = render_pep440_branch(pieces) + elif style == "pep440-pre": + rendered = render_pep440_pre(pieces) + elif style == "pep440-post": + rendered = render_pep440_post(pieces) ++ elif style == "pep440-post-branch": ++ rendered = render_pep440_post_branch(pieces) + elif style == "pep440-old": + rendered = render_pep440_old(pieces) + elif style == "git-describe": +@@ -894,7 +1155,7 @@ def render(pieces, style): + "date": pieces.get("date")} + + +-def get_versions(): ++def get_versions() -> Dict[str, Any]: + """Get version information or return default if unable to do so.""" + # I am in _version.py, which lives at ROOT/VERSIONFILE_SOURCE. If we have + # __file__, we can work backwards from there to the root. Some +@@ -915,7 +1176,7 @@ def get_versions(): + # versionfile_source is the relative path from the top of the source + # tree (where the .git directory might live) to this file. Invert + # this to find the root from __file__. +- for i in cfg.versionfile_source.split('/'): ++ for _ in cfg.versionfile_source.split('/'): + root = os.path.dirname(root) + except NameError: + return {"version": "0+unknown", "full-revisionid": None, +@@ -942,41 +1203,48 @@ def get_versions(): + + + @register_vcs_handler("git", "get_keywords") +-def git_get_keywords(versionfile_abs): ++def git_get_keywords(versionfile_abs: str) -> Dict[str, str]: + """Extract version information from the given file.""" + # the code embedded in _version.py can just fetch the value of these + # keywords. When used from setup.py, we don't want to import _version.py, + # so we do it with a regexp instead. This function is not used from + # _version.py. +- keywords = {} ++ keywords: Dict[str, str] = {} + try: +- f = open(versionfile_abs, "r") +- for line in f.readlines(): +- if line.strip().startswith("git_refnames ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["refnames"] = mo.group(1) +- if line.strip().startswith("git_full ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["full"] = mo.group(1) +- if line.strip().startswith("git_date ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["date"] = mo.group(1) +- f.close() +- except EnvironmentError: ++ with open(versionfile_abs, "r") as fobj: ++ for line in fobj: ++ if line.strip().startswith("git_refnames ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["refnames"] = mo.group(1) ++ if line.strip().startswith("git_full ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["full"] = mo.group(1) ++ if line.strip().startswith("git_date ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["date"] = mo.group(1) ++ except OSError: + pass + return keywords + + + @register_vcs_handler("git", "keywords") +-def git_versions_from_keywords(keywords, tag_prefix, verbose): ++def git_versions_from_keywords( ++ keywords: Dict[str, str], ++ tag_prefix: str, ++ verbose: bool, ++) -> Dict[str, Any]: + """Get version information from git keywords.""" +- if not keywords: +- raise NotThisMethod("no keywords at all, weird") ++ if "refnames" not in keywords: ++ raise NotThisMethod("Short version file found") + date = keywords.get("date") + if date is not None: ++ # Use only the last line. Previous lines may contain GPG signature ++ # information. ++ date = date.splitlines()[-1] ++ + # git-2.2.0 added "%cI", which expands to an ISO-8601 -compliant + # datestamp. However we prefer "%ci" (which expands to an "ISO-8601 + # -like" string, which we must then edit to make compliant), because +@@ -989,11 +1257,11 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + if verbose: + print("keywords are unexpanded, not using") + raise NotThisMethod("unexpanded keywords, not a git-archive tarball") +- refs = set([r.strip() for r in refnames.strip("()").split(",")]) ++ refs = {r.strip() for r in refnames.strip("()").split(",")} + # starting in git-1.8.3, tags are listed as "tag: foo-1.0" instead of + # just "foo-1.0". If we see a "tag: " prefix, prefer those. + TAG = "tag: " +- tags = set([r[len(TAG):] for r in refs if r.startswith(TAG)]) ++ tags = {r[len(TAG) :] for r in refs if r.startswith(TAG)} + if not tags: + # Either we're using git < 1.8.3, or there really are no tags. We use + # a heuristic: assume all version tags have a digit. The old git %d +@@ -1002,7 +1270,7 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + # between branches and tags. By ignoring refnames without digits, we + # filter out many common branch names like "release" and + # "stabilization", as well as "HEAD" and "master". +- tags = set([r for r in refs if re.search(r'\d', r)]) ++ tags = {r for r in refs if re.search(r"\d", r)} + if verbose: + print("discarding '%s', no digits" % ",".join(refs - tags)) + if verbose: +@@ -1010,23 +1278,37 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + for ref in sorted(tags): + # sorting will prefer e.g. "2.0" over "2.0rc1" + if ref.startswith(tag_prefix): +- r = ref[len(tag_prefix):] ++ r = ref[len(tag_prefix) :] ++ # Filter out refs that exactly match prefix or that don't start ++ # with a number once the prefix is stripped (mostly a concern ++ # when prefix is '') ++ if not re.match(r"\d", r): ++ continue + if verbose: + print("picking %s" % r) +- return {"version": r, +- "full-revisionid": keywords["full"].strip(), +- "dirty": False, "error": None, +- "date": date} ++ return { ++ "version": r, ++ "full-revisionid": keywords["full"].strip(), ++ "dirty": False, ++ "error": None, ++ "date": date, ++ } + # no suitable tags, so version is "0+unknown", but full hex is still there + if verbose: + print("no suitable tags, using unknown + full revision id") +- return {"version": "0+unknown", +- "full-revisionid": keywords["full"].strip(), +- "dirty": False, "error": "no suitable tags", "date": None} ++ return { ++ "version": "0+unknown", ++ "full-revisionid": keywords["full"].strip(), ++ "dirty": False, ++ "error": "no suitable tags", ++ "date": None, ++ } + + + @register_vcs_handler("git", "pieces_from_vcs") +-def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): ++def git_pieces_from_vcs( ++ tag_prefix: str, root: str, verbose: bool, runner: Callable = run_command ++) -> Dict[str, Any]: + """Get version from 'git describe' in the root of the source tree. + + This only gets called if the git-archive 'subst' keywords were *not* +@@ -1037,8 +1319,14 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + if sys.platform == "win32": + GITS = ["git.cmd", "git.exe"] + +- out, rc = run_command(GITS, ["rev-parse", "--git-dir"], cwd=root, +- hide_stderr=True) ++ # GIT_DIR can interfere with correct operation of Versioneer. ++ # It may be intended to be passed to the Versioneer-versioned project, ++ # but that should not change where we get our version from. ++ env = os.environ.copy() ++ env.pop("GIT_DIR", None) ++ runner = functools.partial(runner, env=env) ++ ++ _, rc = runner(GITS, ["rev-parse", "--git-dir"], cwd=root, hide_stderr=not verbose) + if rc != 0: + if verbose: + print("Directory %s not under git control" % root) +@@ -1046,24 +1334,65 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + + # if there is a tag matching tag_prefix, this yields TAG-NUM-gHEX[-dirty] + # if there isn't one, this yields HEX[-dirty] (no NUM) +- describe_out, rc = run_command(GITS, ["describe", "--tags", "--dirty", +- "--always", "--long", +- "--match", "%s*" % tag_prefix], +- cwd=root) ++ describe_out, rc = runner( ++ GITS, ++ [ ++ "describe", ++ "--tags", ++ "--dirty", ++ "--always", ++ "--long", ++ "--match", ++ f"{tag_prefix}[[:digit:]]*", ++ ], ++ cwd=root, ++ ) + # --long was added in git-1.5.5 + if describe_out is None: + raise NotThisMethod("'git describe' failed") + describe_out = describe_out.strip() +- full_out, rc = run_command(GITS, ["rev-parse", "HEAD"], cwd=root) ++ full_out, rc = runner(GITS, ["rev-parse", "HEAD"], cwd=root) + if full_out is None: + raise NotThisMethod("'git rev-parse' failed") + full_out = full_out.strip() + +- pieces = {} ++ pieces: Dict[str, Any] = {} + pieces["long"] = full_out + pieces["short"] = full_out[:7] # maybe improved later + pieces["error"] = None + ++ branch_name, rc = runner(GITS, ["rev-parse", "--abbrev-ref", "HEAD"], cwd=root) ++ # --abbrev-ref was added in git-1.6.3 ++ if rc != 0 or branch_name is None: ++ raise NotThisMethod("'git rev-parse --abbrev-ref' returned error") ++ branch_name = branch_name.strip() ++ ++ if branch_name == "HEAD": ++ # If we aren't exactly on a branch, pick a branch which represents ++ # the current commit. If all else fails, we are on a branchless ++ # commit. ++ branches, rc = runner(GITS, ["branch", "--contains"], cwd=root) ++ # --contains was added in git-1.5.4 ++ if rc != 0 or branches is None: ++ raise NotThisMethod("'git branch --contains' returned error") ++ branches = branches.split("\n") ++ ++ # Remove the first line if we're running detached ++ if "(" in branches[0]: ++ branches.pop(0) ++ ++ # Strip off the leading "* " from the list of branches. ++ branches = [branch[2:] for branch in branches] ++ if "master" in branches: ++ branch_name = "master" ++ elif not branches: ++ branch_name = None ++ else: ++ # Pick the first branch that is returned. Good or bad. ++ branch_name = branches[0] ++ ++ pieces["branch"] = branch_name ++ + # parse describe_out. It will be like TAG-NUM-gHEX[-dirty] or HEX[-dirty] + # TAG might have hyphens. + git_describe = describe_out +@@ -1072,17 +1401,16 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + dirty = git_describe.endswith("-dirty") + pieces["dirty"] = dirty + if dirty: +- git_describe = git_describe[:git_describe.rindex("-dirty")] ++ git_describe = git_describe[: git_describe.rindex("-dirty")] + + # now we have TAG-NUM-gHEX or HEX + + if "-" in git_describe: + # TAG-NUM-gHEX +- mo = re.search(r'^(.+)-(\d+)-g([0-9a-f]+)$', git_describe) ++ mo = re.search(r"^(.+)-(\d+)-g([0-9a-f]+)$", git_describe) + if not mo: +- # unparseable. Maybe git-describe is misbehaving? +- pieces["error"] = ("unable to parse git-describe output: '%s'" +- % describe_out) ++ # unparsable. Maybe git-describe is misbehaving? ++ pieces["error"] = "unable to parse git-describe output: '%s'" % describe_out + return pieces + + # tag +@@ -1091,10 +1419,12 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + if verbose: + fmt = "tag '%s' doesn't start with prefix '%s'" + print(fmt % (full_tag, tag_prefix)) +- pieces["error"] = ("tag '%s' doesn't start with prefix '%s'" +- % (full_tag, tag_prefix)) ++ pieces["error"] = "tag '%s' doesn't start with prefix '%s'" % ( ++ full_tag, ++ tag_prefix, ++ ) + return pieces +- pieces["closest-tag"] = full_tag[len(tag_prefix):] ++ pieces["closest-tag"] = full_tag[len(tag_prefix) :] + + # distance: number of commits since tag + pieces["distance"] = int(mo.group(2)) +@@ -1105,19 +1435,20 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + else: + # HEX: no tags + pieces["closest-tag"] = None +- count_out, rc = run_command(GITS, ["rev-list", "HEAD", "--count"], +- cwd=root) +- pieces["distance"] = int(count_out) # total number of commits ++ out, rc = runner(GITS, ["rev-list", "HEAD", "--left-right"], cwd=root) ++ pieces["distance"] = len(out.split()) # total number of commits + + # commit date: see ISO-8601 comment in git_versions_from_keywords() +- date = run_command(GITS, ["show", "-s", "--format=%ci", "HEAD"], +- cwd=root)[0].strip() ++ date = runner(GITS, ["show", "-s", "--format=%ci", "HEAD"], cwd=root)[0].strip() ++ # Use only the last line. Previous lines may contain GPG signature ++ # information. ++ date = date.splitlines()[-1] + pieces["date"] = date.strip().replace(" ", "T", 1).replace(" ", "", 1) + + return pieces + + +-def do_vcs_install(manifest_in, versionfile_source, ipy): ++def do_vcs_install(versionfile_source: str, ipy: Optional[str]) -> None: + """Git-specific installation logic for Versioneer. + + For Git, this means creating/changing .gitattributes to mark _version.py +@@ -1126,36 +1457,40 @@ def do_vcs_install(manifest_in, versionfile_source, ipy): + GITS = ["git"] + if sys.platform == "win32": + GITS = ["git.cmd", "git.exe"] +- files = [manifest_in, versionfile_source] ++ files = [versionfile_source] + if ipy: + files.append(ipy) +- try: +- me = __file__ +- if me.endswith(".pyc") or me.endswith(".pyo"): +- me = os.path.splitext(me)[0] + ".py" +- versioneer_file = os.path.relpath(me) +- except NameError: +- versioneer_file = "versioneer.py" +- files.append(versioneer_file) ++ if "VERSIONEER_PEP518" not in globals(): ++ try: ++ my_path = __file__ ++ if my_path.endswith((".pyc", ".pyo")): ++ my_path = os.path.splitext(my_path)[0] + ".py" ++ versioneer_file = os.path.relpath(my_path) ++ except NameError: ++ versioneer_file = "versioneer.py" ++ files.append(versioneer_file) + present = False + try: +- f = open(".gitattributes", "r") +- for line in f.readlines(): +- if line.strip().startswith(versionfile_source): +- if "export-subst" in line.strip().split()[1:]: +- present = True +- f.close() +- except EnvironmentError: ++ with open(".gitattributes", "r") as fobj: ++ for line in fobj: ++ if line.strip().startswith(versionfile_source): ++ if "export-subst" in line.strip().split()[1:]: ++ present = True ++ break ++ except OSError: + pass + if not present: +- f = open(".gitattributes", "a+") +- f.write("%s export-subst\n" % versionfile_source) +- f.close() ++ with open(".gitattributes", "a+") as fobj: ++ fobj.write(f"{versionfile_source} export-subst\n") + files.append(".gitattributes") + run_command(GITS, ["add", "--"] + files) + + +-def versions_from_parentdir(parentdir_prefix, root, verbose): ++def versions_from_parentdir( ++ parentdir_prefix: str, ++ root: str, ++ verbose: bool, ++) -> Dict[str, Any]: + """Try to determine the version from the parent directory name. + + Source tarballs conventionally unpack into a directory that includes both +@@ -1164,24 +1499,29 @@ def versions_from_parentdir(parentdir_prefix, root, verbose): + """ + rootdirs = [] + +- for i in range(3): ++ for _ in range(3): + dirname = os.path.basename(root) + if dirname.startswith(parentdir_prefix): +- return {"version": dirname[len(parentdir_prefix):], +- "full-revisionid": None, +- "dirty": False, "error": None, "date": None} +- else: +- rootdirs.append(root) +- root = os.path.dirname(root) # up a level ++ return { ++ "version": dirname[len(parentdir_prefix) :], ++ "full-revisionid": None, ++ "dirty": False, ++ "error": None, ++ "date": None, ++ } ++ rootdirs.append(root) ++ root = os.path.dirname(root) # up a level + + if verbose: +- print("Tried directories %s but none started with prefix %s" % +- (str(rootdirs), parentdir_prefix)) ++ print( ++ "Tried directories %s but none started with prefix %s" ++ % (str(rootdirs), parentdir_prefix) ++ ) + raise NotThisMethod("rootdir doesn't start with parentdir_prefix") + + + SHORT_VERSION_PY = """ +-# This file was generated by 'versioneer.py' (0.18) from ++# This file was generated by 'versioneer.py' (0.29) from + # revision-control system data, or from the parent directory name of an + # unpacked source archive. Distribution tarballs contain a pre-generated copy + # of this file. +@@ -1198,42 +1538,42 @@ def get_versions(): + """ + + +-def versions_from_file(filename): ++def versions_from_file(filename: str) -> Dict[str, Any]: + """Try to determine the version from _version.py if present.""" + try: + with open(filename) as f: + contents = f.read() +- except EnvironmentError: ++ except OSError: + raise NotThisMethod("unable to read _version.py") +- mo = re.search(r"version_json = '''\n(.*)''' # END VERSION_JSON", +- contents, re.M | re.S) ++ mo = re.search( ++ r"version_json = '''\n(.*)''' # END VERSION_JSON", contents, re.M | re.S ++ ) + if not mo: +- mo = re.search(r"version_json = '''\r\n(.*)''' # END VERSION_JSON", +- contents, re.M | re.S) ++ mo = re.search( ++ r"version_json = '''\r\n(.*)''' # END VERSION_JSON", contents, re.M | re.S ++ ) + if not mo: + raise NotThisMethod("no version_json in _version.py") + return json.loads(mo.group(1)) + + +-def write_to_version_file(filename, versions): ++def write_to_version_file(filename: str, versions: Dict[str, Any]) -> None: + """Write the given version number to the given _version.py file.""" +- os.unlink(filename) +- contents = json.dumps(versions, sort_keys=True, +- indent=1, separators=(",", ": ")) ++ contents = json.dumps(versions, sort_keys=True, indent=1, separators=(",", ": ")) + with open(filename, "w") as f: + f.write(SHORT_VERSION_PY % contents) + + print("set %s to '%s'" % (filename, versions["version"])) + + +-def plus_or_dot(pieces): ++def plus_or_dot(pieces: Dict[str, Any]) -> str: + """Return a + if we don't already have one, else return a .""" + if "+" in pieces.get("closest-tag", ""): + return "." + return "+" + + +-def render_pep440(pieces): ++def render_pep440(pieces: Dict[str, Any]) -> str: + """Build up version string, with post-release "local version identifier". + + Our goal: TAG[+DISTANCE.gHEX[.dirty]] . Note that if you +@@ -1251,30 +1591,76 @@ def render_pep440(pieces): + rendered += ".dirty" + else: + # exception #1 +- rendered = "0+untagged.%d.g%s" % (pieces["distance"], +- pieces["short"]) ++ rendered = "0+untagged.%d.g%s" % (pieces["distance"], pieces["short"]) + if pieces["dirty"]: + rendered += ".dirty" + return rendered + + +-def render_pep440_pre(pieces): +- """TAG[.post.devDISTANCE] -- No -dirty. ++def render_pep440_branch(pieces: Dict[str, Any]) -> str: ++ """TAG[[.dev0]+DISTANCE.gHEX[.dirty]] . ++ ++ The ".dev0" means not master branch. Note that .dev0 sorts backwards ++ (a feature branch will appear "older" than the master branch). + + Exceptions: +- 1: no tags. 0.post.devDISTANCE ++ 1: no tags. 0[.dev0]+untagged.DISTANCE.gHEX[.dirty] + """ + if pieces["closest-tag"]: + rendered = pieces["closest-tag"] ++ if pieces["distance"] or pieces["dirty"]: ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += plus_or_dot(pieces) ++ rendered += "%d.g%s" % (pieces["distance"], pieces["short"]) ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ else: ++ # exception #1 ++ rendered = "0" ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += "+untagged.%d.g%s" % (pieces["distance"], pieces["short"]) ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ return rendered ++ ++ ++def pep440_split_post(ver: str) -> Tuple[str, Optional[int]]: ++ """Split pep440 version string at the post-release segment. ++ ++ Returns the release segments before the post-release and the ++ post-release version number (or -1 if no post-release segment is present). ++ """ ++ vc = str.split(ver, ".post") ++ return vc[0], int(vc[1] or 0) if len(vc) == 2 else None ++ ++ ++def render_pep440_pre(pieces: Dict[str, Any]) -> str: ++ """TAG[.postN.devDISTANCE] -- No -dirty. ++ ++ Exceptions: ++ 1: no tags. 0.post0.devDISTANCE ++ """ ++ if pieces["closest-tag"]: + if pieces["distance"]: +- rendered += ".post.dev%d" % pieces["distance"] ++ # update the post release segment ++ tag_version, post_version = pep440_split_post(pieces["closest-tag"]) ++ rendered = tag_version ++ if post_version is not None: ++ rendered += ".post%d.dev%d" % (post_version + 1, pieces["distance"]) ++ else: ++ rendered += ".post0.dev%d" % (pieces["distance"]) ++ else: ++ # no commits, use the tag as the version ++ rendered = pieces["closest-tag"] + else: + # exception #1 +- rendered = "0.post.dev%d" % pieces["distance"] ++ rendered = "0.post0.dev%d" % pieces["distance"] + return rendered + + +-def render_pep440_post(pieces): ++def render_pep440_post(pieces: Dict[str, Any]) -> str: + """TAG[.postDISTANCE[.dev0]+gHEX] . + + The ".dev0" means dirty. Note that .dev0 sorts backwards +@@ -1301,12 +1687,41 @@ def render_pep440_post(pieces): + return rendered + + +-def render_pep440_old(pieces): ++def render_pep440_post_branch(pieces: Dict[str, Any]) -> str: ++ """TAG[.postDISTANCE[.dev0]+gHEX[.dirty]] . ++ ++ The ".dev0" means not master branch. ++ ++ Exceptions: ++ 1: no tags. 0.postDISTANCE[.dev0]+gHEX[.dirty] ++ """ ++ if pieces["closest-tag"]: ++ rendered = pieces["closest-tag"] ++ if pieces["distance"] or pieces["dirty"]: ++ rendered += ".post%d" % pieces["distance"] ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += plus_or_dot(pieces) ++ rendered += "g%s" % pieces["short"] ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ else: ++ # exception #1 ++ rendered = "0.post%d" % pieces["distance"] ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += "+g%s" % pieces["short"] ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ return rendered ++ ++ ++def render_pep440_old(pieces: Dict[str, Any]) -> str: + """TAG[.postDISTANCE[.dev0]] . + + The ".dev0" means dirty. + +- Eexceptions: ++ Exceptions: + 1: no tags. 0.postDISTANCE[.dev0] + """ + if pieces["closest-tag"]: +@@ -1323,7 +1738,7 @@ def render_pep440_old(pieces): + return rendered + + +-def render_git_describe(pieces): ++def render_git_describe(pieces: Dict[str, Any]) -> str: + """TAG[-DISTANCE-gHEX][-dirty]. + + Like 'git describe --tags --dirty --always'. +@@ -1343,7 +1758,7 @@ def render_git_describe(pieces): + return rendered + + +-def render_git_describe_long(pieces): ++def render_git_describe_long(pieces: Dict[str, Any]) -> str: + """TAG-DISTANCE-gHEX[-dirty]. + + Like 'git describe --tags --dirty --always -long'. +@@ -1363,24 +1778,30 @@ def render_git_describe_long(pieces): + return rendered + + +-def render(pieces, style): ++def render(pieces: Dict[str, Any], style: str) -> Dict[str, Any]: + """Render the given version pieces into the requested style.""" + if pieces["error"]: +- return {"version": "unknown", +- "full-revisionid": pieces.get("long"), +- "dirty": None, +- "error": pieces["error"], +- "date": None} ++ return { ++ "version": "unknown", ++ "full-revisionid": pieces.get("long"), ++ "dirty": None, ++ "error": pieces["error"], ++ "date": None, ++ } + + if not style or style == "default": + style = "pep440" # the default + + if style == "pep440": + rendered = render_pep440(pieces) ++ elif style == "pep440-branch": ++ rendered = render_pep440_branch(pieces) + elif style == "pep440-pre": + rendered = render_pep440_pre(pieces) + elif style == "pep440-post": + rendered = render_pep440_post(pieces) ++ elif style == "pep440-post-branch": ++ rendered = render_pep440_post_branch(pieces) + elif style == "pep440-old": + rendered = render_pep440_old(pieces) + elif style == "git-describe": +@@ -1390,16 +1811,20 @@ def render(pieces, style): + else: + raise ValueError("unknown style '%s'" % style) + +- return {"version": rendered, "full-revisionid": pieces["long"], +- "dirty": pieces["dirty"], "error": None, +- "date": pieces.get("date")} ++ return { ++ "version": rendered, ++ "full-revisionid": pieces["long"], ++ "dirty": pieces["dirty"], ++ "error": None, ++ "date": pieces.get("date"), ++ } + + + class VersioneerBadRootError(Exception): + """The project root directory is unknown or missing key files.""" + + +-def get_versions(verbose=False): ++def get_versions(verbose: bool = False) -> Dict[str, Any]: + """Get the project version from whatever source is available. + + Returns dict with two keys: 'version' and 'full'. +@@ -1414,9 +1839,10 @@ def get_versions(verbose=False): + assert cfg.VCS is not None, "please set [versioneer]VCS= in setup.cfg" + handlers = HANDLERS.get(cfg.VCS) + assert handlers, "unrecognized VCS '%s'" % cfg.VCS +- verbose = verbose or cfg.verbose +- assert cfg.versionfile_source is not None, \ +- "please set versioneer.versionfile_source" ++ verbose = verbose or bool(cfg.verbose) # `bool()` used to avoid `None` ++ assert ( ++ cfg.versionfile_source is not None ++ ), "please set versioneer.versionfile_source" + assert cfg.tag_prefix is not None, "please set versioneer.tag_prefix" + + versionfile_abs = os.path.join(root, cfg.versionfile_source) +@@ -1470,18 +1896,26 @@ def get_versions(verbose=False): + if verbose: + print("unable to compute version") + +- return {"version": "0+unknown", "full-revisionid": None, +- "dirty": None, "error": "unable to compute version", +- "date": None} ++ return { ++ "version": "0+unknown", ++ "full-revisionid": None, ++ "dirty": None, ++ "error": "unable to compute version", ++ "date": None, ++ } + + +-def get_version(): ++def get_version() -> str: + """Get the short version string for this project.""" + return get_versions()["version"] + + +-def get_cmdclass(): +- """Get the custom setuptools/distutils subclasses used by Versioneer.""" ++def get_cmdclass(cmdclass: Optional[Dict[str, Any]] = None): ++ """Get the custom setuptools subclasses used by Versioneer. ++ ++ If the package uses a different cmdclass (e.g. one from numpy), it ++ should be provide as an argument. ++ """ + if "versioneer" in sys.modules: + del sys.modules["versioneer"] + # this fixes the "python setup.py develop" case (also 'install' and +@@ -1495,25 +1929,25 @@ def get_cmdclass(): + # parent is protected against the child's "import versioneer". By + # removing ourselves from sys.modules here, before the child build + # happens, we protect the child from the parent's versioneer too. +- # Also see https://github.com/warner/python-versioneer/issues/52 ++ # Also see https://github.com/python-versioneer/python-versioneer/issues/52 + +- cmds = {} ++ cmds = {} if cmdclass is None else cmdclass.copy() + +- # we add "version" to both distutils and setuptools +- from distutils.core import Command ++ # we add "version" to setuptools ++ from setuptools import Command + + class cmd_version(Command): + description = "report generated version string" +- user_options = [] +- boolean_options = [] ++ user_options: List[Tuple[str, str, str]] = [] ++ boolean_options: List[str] = [] + +- def initialize_options(self): ++ def initialize_options(self) -> None: + pass + +- def finalize_options(self): ++ def finalize_options(self) -> None: + pass + +- def run(self): ++ def run(self) -> None: + vers = get_versions(verbose=True) + print("Version: %s" % vers["version"]) + print(" full-revisionid: %s" % vers.get("full-revisionid")) +@@ -1521,9 +1955,10 @@ def get_cmdclass(): + print(" date: %s" % vers.get("date")) + if vers["error"]: + print(" error: %s" % vers["error"]) ++ + cmds["version"] = cmd_version + +- # we override "build_py" in both distutils and setuptools ++ # we override "build_py" in setuptools + # + # most invocation pathways end up running build_py: + # distutils/build -> build_py +@@ -1538,29 +1973,71 @@ def get_cmdclass(): + # then does setup.py bdist_wheel, or sometimes setup.py install + # setup.py egg_info -> ? + ++ # pip install -e . and setuptool/editable_wheel will invoke build_py ++ # but the build_py command is not expected to copy any files. ++ + # we override different "build_py" commands for both environments +- if "setuptools" in sys.modules: +- from setuptools.command.build_py import build_py as _build_py ++ if "build_py" in cmds: ++ _build_py: Any = cmds["build_py"] + else: +- from distutils.command.build_py import build_py as _build_py ++ from setuptools.command.build_py import build_py as _build_py + + class cmd_build_py(_build_py): +- def run(self): ++ def run(self) -> None: + root = get_root() + cfg = get_config_from_root(root) + versions = get_versions() + _build_py.run(self) ++ if getattr(self, "editable_mode", False): ++ # During editable installs `.py` and data files are ++ # not copied to build_lib ++ return + # now locate _version.py in the new build/ directory and replace + # it with an updated value + if cfg.versionfile_build: +- target_versionfile = os.path.join(self.build_lib, +- cfg.versionfile_build) ++ target_versionfile = os.path.join(self.build_lib, cfg.versionfile_build) + print("UPDATING %s" % target_versionfile) + write_to_version_file(target_versionfile, versions) ++ + cmds["build_py"] = cmd_build_py + ++ if "build_ext" in cmds: ++ _build_ext: Any = cmds["build_ext"] ++ else: ++ from setuptools.command.build_ext import build_ext as _build_ext ++ ++ class cmd_build_ext(_build_ext): ++ def run(self) -> None: ++ root = get_root() ++ cfg = get_config_from_root(root) ++ versions = get_versions() ++ _build_ext.run(self) ++ if self.inplace: ++ # build_ext --inplace will only build extensions in ++ # build/lib<..> dir with no _version.py to write to. ++ # As in place builds will already have a _version.py ++ # in the module dir, we do not need to write one. ++ return ++ # now locate _version.py in the new build/ directory and replace ++ # it with an updated value ++ if not cfg.versionfile_build: ++ return ++ target_versionfile = os.path.join(self.build_lib, cfg.versionfile_build) ++ if not os.path.exists(target_versionfile): ++ print( ++ f"Warning: {target_versionfile} does not exist, skipping " ++ "version update. This can happen if you are running build_ext " ++ "without first running build_py." ++ ) ++ return ++ print("UPDATING %s" % target_versionfile) ++ write_to_version_file(target_versionfile, versions) ++ ++ cmds["build_ext"] = cmd_build_ext ++ + if "cx_Freeze" in sys.modules: # cx_freeze enabled? +- from cx_Freeze.dist import build_exe as _build_exe ++ from cx_Freeze.dist import build_exe as _build_exe # type: ignore ++ + # nczeczulin reports that py2exe won't like the pep440-style string + # as FILEVERSION, but it can be used for PRODUCTVERSION, e.g. + # setup(console=[{ +@@ -1569,7 +2046,7 @@ def get_cmdclass(): + # ... + + class cmd_build_exe(_build_exe): +- def run(self): ++ def run(self) -> None: + root = get_root() + cfg = get_config_from_root(root) + versions = get_versions() +@@ -1581,24 +2058,28 @@ def get_cmdclass(): + os.unlink(target_versionfile) + with open(cfg.versionfile_source, "w") as f: + LONG = LONG_VERSION_PY[cfg.VCS] +- f.write(LONG % +- {"DOLLAR": "$", +- "STYLE": cfg.style, +- "TAG_PREFIX": cfg.tag_prefix, +- "PARENTDIR_PREFIX": cfg.parentdir_prefix, +- "VERSIONFILE_SOURCE": cfg.versionfile_source, +- }) ++ f.write( ++ LONG ++ % { ++ "DOLLAR": "$", ++ "STYLE": cfg.style, ++ "TAG_PREFIX": cfg.tag_prefix, ++ "PARENTDIR_PREFIX": cfg.parentdir_prefix, ++ "VERSIONFILE_SOURCE": cfg.versionfile_source, ++ } ++ ) ++ + cmds["build_exe"] = cmd_build_exe + del cmds["build_py"] + +- if 'py2exe' in sys.modules: # py2exe enabled? ++ if "py2exe" in sys.modules: # py2exe enabled? + try: +- from py2exe.distutils_buildexe import py2exe as _py2exe # py3 ++ from py2exe.setuptools_buildexe import py2exe as _py2exe # type: ignore + except ImportError: +- from py2exe.build_exe import py2exe as _py2exe # py2 ++ from py2exe.distutils_buildexe import py2exe as _py2exe # type: ignore + + class cmd_py2exe(_py2exe): +- def run(self): ++ def run(self) -> None: + root = get_root() + cfg = get_config_from_root(root) + versions = get_versions() +@@ -1610,23 +2091,67 @@ def get_cmdclass(): + os.unlink(target_versionfile) + with open(cfg.versionfile_source, "w") as f: + LONG = LONG_VERSION_PY[cfg.VCS] +- f.write(LONG % +- {"DOLLAR": "$", +- "STYLE": cfg.style, +- "TAG_PREFIX": cfg.tag_prefix, +- "PARENTDIR_PREFIX": cfg.parentdir_prefix, +- "VERSIONFILE_SOURCE": cfg.versionfile_source, +- }) ++ f.write( ++ LONG ++ % { ++ "DOLLAR": "$", ++ "STYLE": cfg.style, ++ "TAG_PREFIX": cfg.tag_prefix, ++ "PARENTDIR_PREFIX": cfg.parentdir_prefix, ++ "VERSIONFILE_SOURCE": cfg.versionfile_source, ++ } ++ ) ++ + cmds["py2exe"] = cmd_py2exe + ++ # sdist farms its file list building out to egg_info ++ if "egg_info" in cmds: ++ _egg_info: Any = cmds["egg_info"] ++ else: ++ from setuptools.command.egg_info import egg_info as _egg_info ++ ++ class cmd_egg_info(_egg_info): ++ def find_sources(self) -> None: ++ # egg_info.find_sources builds the manifest list and writes it ++ # in one shot ++ super().find_sources() ++ ++ # Modify the filelist and normalize it ++ root = get_root() ++ cfg = get_config_from_root(root) ++ self.filelist.append("versioneer.py") ++ if cfg.versionfile_source: ++ # There are rare cases where versionfile_source might not be ++ # included by default, so we must be explicit ++ self.filelist.append(cfg.versionfile_source) ++ self.filelist.sort() ++ self.filelist.remove_duplicates() ++ ++ # The write method is hidden in the manifest_maker instance that ++ # generated the filelist and was thrown away ++ # We will instead replicate their final normalization (to unicode, ++ # and POSIX-style paths) ++ from setuptools import unicode_utils ++ ++ normalized = [ ++ unicode_utils.filesys_decode(f).replace(os.sep, "/") ++ for f in self.filelist.files ++ ] ++ ++ manifest_filename = os.path.join(self.egg_info, "SOURCES.txt") ++ with open(manifest_filename, "w") as fobj: ++ fobj.write("\n".join(normalized)) ++ ++ cmds["egg_info"] = cmd_egg_info ++ + # we override different "sdist" commands for both environments +- if "setuptools" in sys.modules: +- from setuptools.command.sdist import sdist as _sdist ++ if "sdist" in cmds: ++ _sdist: Any = cmds["sdist"] + else: +- from distutils.command.sdist import sdist as _sdist ++ from setuptools.command.sdist import sdist as _sdist + + class cmd_sdist(_sdist): +- def run(self): ++ def run(self) -> None: + versions = get_versions() + self._versioneer_generated_versions = versions + # unless we update this, the command will keep using the old +@@ -1634,7 +2159,7 @@ def get_cmdclass(): + self.distribution.metadata.version = versions["version"] + return _sdist.run(self) + +- def make_release_tree(self, base_dir, files): ++ def make_release_tree(self, base_dir: str, files: List[str]) -> None: + root = get_root() + cfg = get_config_from_root(root) + _sdist.make_release_tree(self, base_dir, files) +@@ -1643,8 +2168,10 @@ def get_cmdclass(): + # updated value + target_versionfile = os.path.join(base_dir, cfg.versionfile_source) + print("UPDATING %s" % target_versionfile) +- write_to_version_file(target_versionfile, +- self._versioneer_generated_versions) ++ write_to_version_file( ++ target_versionfile, self._versioneer_generated_versions ++ ) ++ + cmds["sdist"] = cmd_sdist + + return cmds +@@ -1687,23 +2214,26 @@ SAMPLE_CONFIG = """ + + """ + +-INIT_PY_SNIPPET = """ ++OLD_SNIPPET = """ + from ._version import get_versions + __version__ = get_versions()['version'] + del get_versions + """ + ++INIT_PY_SNIPPET = """ ++from . import {0} ++__version__ = {0}.get_versions()['version'] ++""" ++ + +-def do_setup(): +- """Main VCS-independent setup function for installing Versioneer.""" ++def do_setup() -> int: ++ """Do main VCS-independent setup function for installing Versioneer.""" + root = get_root() + try: + cfg = get_config_from_root(root) +- except (EnvironmentError, configparser.NoSectionError, +- configparser.NoOptionError) as e: +- if isinstance(e, (EnvironmentError, configparser.NoSectionError)): +- print("Adding sample versioneer config to setup.cfg", +- file=sys.stderr) ++ except (OSError, configparser.NoSectionError, configparser.NoOptionError) as e: ++ if isinstance(e, (OSError, configparser.NoSectionError)): ++ print("Adding sample versioneer config to setup.cfg", file=sys.stderr) + with open(os.path.join(root, "setup.cfg"), "a") as f: + f.write(SAMPLE_CONFIG) + print(CONFIG_ERROR, file=sys.stderr) +@@ -1712,71 +2242,49 @@ def do_setup(): + print(" creating %s" % cfg.versionfile_source) + with open(cfg.versionfile_source, "w") as f: + LONG = LONG_VERSION_PY[cfg.VCS] +- f.write(LONG % {"DOLLAR": "$", +- "STYLE": cfg.style, +- "TAG_PREFIX": cfg.tag_prefix, +- "PARENTDIR_PREFIX": cfg.parentdir_prefix, +- "VERSIONFILE_SOURCE": cfg.versionfile_source, +- }) +- +- ipy = os.path.join(os.path.dirname(cfg.versionfile_source), +- "__init__.py") ++ f.write( ++ LONG ++ % { ++ "DOLLAR": "$", ++ "STYLE": cfg.style, ++ "TAG_PREFIX": cfg.tag_prefix, ++ "PARENTDIR_PREFIX": cfg.parentdir_prefix, ++ "VERSIONFILE_SOURCE": cfg.versionfile_source, ++ } ++ ) ++ ++ ipy = os.path.join(os.path.dirname(cfg.versionfile_source), "__init__.py") ++ maybe_ipy: Optional[str] = ipy + if os.path.exists(ipy): + try: + with open(ipy, "r") as f: + old = f.read() +- except EnvironmentError: ++ except OSError: + old = "" +- if INIT_PY_SNIPPET not in old: ++ module = os.path.splitext(os.path.basename(cfg.versionfile_source))[0] ++ snippet = INIT_PY_SNIPPET.format(module) ++ if OLD_SNIPPET in old: ++ print(" replacing boilerplate in %s" % ipy) ++ with open(ipy, "w") as f: ++ f.write(old.replace(OLD_SNIPPET, snippet)) ++ elif snippet not in old: + print(" appending to %s" % ipy) + with open(ipy, "a") as f: +- f.write(INIT_PY_SNIPPET) ++ f.write(snippet) + else: + print(" %s unmodified" % ipy) + else: + print(" %s doesn't exist, ok" % ipy) +- ipy = None +- +- # Make sure both the top-level "versioneer.py" and versionfile_source +- # (PKG/_version.py, used by runtime code) are in MANIFEST.in, so +- # they'll be copied into source distributions. Pip won't be able to +- # install the package without this. +- manifest_in = os.path.join(root, "MANIFEST.in") +- simple_includes = set() +- try: +- with open(manifest_in, "r") as f: +- for line in f: +- if line.startswith("include "): +- for include in line.split()[1:]: +- simple_includes.add(include) +- except EnvironmentError: +- pass +- # That doesn't cover everything MANIFEST.in can do +- # (http://docs.python.org/2/distutils/sourcedist.html#commands), so +- # it might give some false negatives. Appending redundant 'include' +- # lines is safe, though. +- if "versioneer.py" not in simple_includes: +- print(" appending 'versioneer.py' to MANIFEST.in") +- with open(manifest_in, "a") as f: +- f.write("include versioneer.py\n") +- else: +- print(" 'versioneer.py' already in MANIFEST.in") +- if cfg.versionfile_source not in simple_includes: +- print(" appending versionfile_source ('%s') to MANIFEST.in" % +- cfg.versionfile_source) +- with open(manifest_in, "a") as f: +- f.write("include %s\n" % cfg.versionfile_source) +- else: +- print(" versionfile_source already in MANIFEST.in") ++ maybe_ipy = None + + # Make VCS-specific changes. For git, this means creating/changing + # .gitattributes to mark _version.py for export-subst keyword + # substitution. +- do_vcs_install(manifest_in, cfg.versionfile_source, ipy) ++ do_vcs_install(cfg.versionfile_source, maybe_ipy) + return 0 + + +-def scan_setup_py(): ++def scan_setup_py() -> int: + """Validate the contents of setup.py against Versioneer's expectations.""" + found = set() + setters = False +@@ -1813,10 +2321,14 @@ def scan_setup_py(): + return errors + + ++def setup_command() -> NoReturn: ++ """Set up Versioneer and exit with appropriate error code.""" ++ errors = do_setup() ++ errors += scan_setup_py() ++ sys.exit(1 if errors else 0) ++ ++ + if __name__ == "__main__": + cmd = sys.argv[1] + if cmd == "setup": +- errors = do_setup() +- errors += scan_setup_py() +- if errors: +- sys.exit(1) ++ setup_command() +-- +2.41.0 + diff --git a/package/python-magic-wormhole/0001-Update-versioneer-to-0.29.patch b/package/python-magic-wormhole/0001-Update-versioneer-to-0.29.patch new file mode 100644 index 000000000000..54b5fe8b1d93 --- /dev/null +++ b/package/python-magic-wormhole/0001-Update-versioneer-to-0.29.patch @@ -0,0 +1,2185 @@ +From b283ce50c6f32387d0f474c935ed6015585b986c Mon Sep 17 00:00:00 2001 +From: Adam Duskett +Date: Tue, 24 Oct 2023 09:54:40 +0200 +Subject: [PATCH] Update versioneer to 0.29 + +Fixes builds against Python 3.12.0 + +Upstream: https://github.com/magic-wormhole/magic-wormhole/pull/505 + +Signed-off-by: Adam Duskett +--- + versioneer.py | 1348 ++++++++++++++++++++++++++++++++++--------------- + 1 file changed, 930 insertions(+), 418 deletions(-) + +diff --git a/versioneer.py b/versioneer.py +index ebe628e..de97d90 100644 +--- a/versioneer.py ++++ b/versioneer.py +@@ -1,5 +1,4 @@ +- +-# Version: 0.18 ++# Version: 0.29 + + """The Versioneer - like a rocketeer, but for versions. + +@@ -7,18 +6,14 @@ The Versioneer + ============== + + * like a rocketeer, but for versions! +-* https://github.com/warner/python-versioneer ++* https://github.com/python-versioneer/python-versioneer + * Brian Warner +-* License: Public Domain +-* Compatible With: python2.6, 2.7, 3.2, 3.3, 3.4, 3.5, 3.6, and pypy +-* [![Latest Version] +-(https://pypip.in/version/versioneer/badge.svg?style=flat) +-](https://pypi.python.org/pypi/versioneer/) +-* [![Build Status] +-(https://travis-ci.org/warner/python-versioneer.png?branch=master) +-](https://travis-ci.org/warner/python-versioneer) +- +-This is a tool for managing a recorded version number in distutils-based ++* License: Public Domain (Unlicense) ++* Compatible with: Python 3.7, 3.8, 3.9, 3.10, 3.11 and pypy3 ++* [![Latest Version][pypi-image]][pypi-url] ++* [![Build Status][travis-image]][travis-url] ++ ++This is a tool for managing a recorded version number in setuptools-based + python projects. The goal is to remove the tedious and error-prone "update + the embedded version string" step from your release process. Making a new + release should be as easy as recording a new tag in your version-control +@@ -27,9 +22,38 @@ system, and maybe making new tarballs. + + ## Quick Install + +-* `pip install versioneer` to somewhere to your $PATH +-* add a `[versioneer]` section to your setup.cfg (see below) +-* run `versioneer install` in your source tree, commit the results ++Versioneer provides two installation modes. The "classic" vendored mode installs ++a copy of versioneer into your repository. The experimental build-time dependency mode ++is intended to allow you to skip this step and simplify the process of upgrading. ++ ++### Vendored mode ++ ++* `pip install versioneer` to somewhere in your $PATH ++ * A [conda-forge recipe](https://github.com/conda-forge/versioneer-feedstock) is ++ available, so you can also use `conda install -c conda-forge versioneer` ++* add a `[tool.versioneer]` section to your `pyproject.toml` or a ++ `[versioneer]` section to your `setup.cfg` (see [Install](INSTALL.md)) ++ * Note that you will need to add `tomli; python_version < "3.11"` to your ++ build-time dependencies if you use `pyproject.toml` ++* run `versioneer install --vendor` in your source tree, commit the results ++* verify version information with `python setup.py version` ++ ++### Build-time dependency mode ++ ++* `pip install versioneer` to somewhere in your $PATH ++ * A [conda-forge recipe](https://github.com/conda-forge/versioneer-feedstock) is ++ available, so you can also use `conda install -c conda-forge versioneer` ++* add a `[tool.versioneer]` section to your `pyproject.toml` or a ++ `[versioneer]` section to your `setup.cfg` (see [Install](INSTALL.md)) ++* add `versioneer` (with `[toml]` extra, if configuring in `pyproject.toml`) ++ to the `requires` key of the `build-system` table in `pyproject.toml`: ++ ```toml ++ [build-system] ++ requires = ["setuptools", "versioneer[toml]"] ++ build-backend = "setuptools.build_meta" ++ ``` ++* run `versioneer install --no-vendor` in your source tree, commit the results ++* verify version information with `python setup.py version` + + ## Version Identifiers + +@@ -61,7 +85,7 @@ version 1.3). Many VCS systems can report a description that captures this, + for example `git describe --tags --dirty --always` reports things like + "0.7-1-g574ab98-dirty" to indicate that the checkout is one revision past the + 0.7 tag, has a unique revision id of "574ab98", and is "dirty" (it has +-uncommitted changes. ++uncommitted changes). + + The version identifier is used for multiple purposes: + +@@ -166,7 +190,7 @@ which may help identify what went wrong). + + Some situations are known to cause problems for Versioneer. This details the + most significant ones. More can be found on Github +-[issues page](https://github.com/warner/python-versioneer/issues). ++[issues page](https://github.com/python-versioneer/python-versioneer/issues). + + ### Subprojects + +@@ -194,9 +218,9 @@ work too. + Pip-8.1.1 is known to have this problem, but hopefully it will get fixed in + some later version. + +-[Bug #38](https://github.com/warner/python-versioneer/issues/38) is tracking ++[Bug #38](https://github.com/python-versioneer/python-versioneer/issues/38) is tracking + this issue. The discussion in +-[PR #61](https://github.com/warner/python-versioneer/pull/61) describes the ++[PR #61](https://github.com/python-versioneer/python-versioneer/pull/61) describes the + issue from the Versioneer side in more detail. + [pip PR#3176](https://github.com/pypa/pip/pull/3176) and + [pip PR#3615](https://github.com/pypa/pip/pull/3615) contain work to improve +@@ -224,31 +248,20 @@ regenerated while a different version is checked out. Many setup.py commands + cause egg_info to be rebuilt (including `sdist`, `wheel`, and installing into + a different virtualenv), so this can be surprising. + +-[Bug #83](https://github.com/warner/python-versioneer/issues/83) describes ++[Bug #83](https://github.com/python-versioneer/python-versioneer/issues/83) describes + this one, but upgrading to a newer version of setuptools should probably + resolve it. + +-### Unicode version strings +- +-While Versioneer works (and is continually tested) with both Python 2 and +-Python 3, it is not entirely consistent with bytes-vs-unicode distinctions. +-Newer releases probably generate unicode version strings on py2. It's not +-clear that this is wrong, but it may be surprising for applications when then +-write these strings to a network connection or include them in bytes-oriented +-APIs like cryptographic checksums. +- +-[Bug #71](https://github.com/warner/python-versioneer/issues/71) investigates +-this question. +- + + ## Updating Versioneer + + To upgrade your project to a new release of Versioneer, do the following: + + * install the new Versioneer (`pip install -U versioneer` or equivalent) +-* edit `setup.cfg`, if necessary, to include any new configuration settings +- indicated by the release notes. See [UPGRADING](./UPGRADING.md) for details. +-* re-run `versioneer install` in your source tree, to replace ++* edit `setup.cfg` and `pyproject.toml`, if necessary, ++ to include any new configuration settings indicated by the release notes. ++ See [UPGRADING](./UPGRADING.md) for details. ++* re-run `versioneer install --[no-]vendor` in your source tree, to replace + `SRC/_version.py` + * commit any changed files + +@@ -265,35 +278,70 @@ installation by editing setup.py . Alternatively, it might go the other + direction and include code from all supported VCS systems, reducing the + number of intermediate scripts. + ++## Similar projects ++ ++* [setuptools_scm](https://github.com/pypa/setuptools_scm/) - a non-vendored build-time ++ dependency ++* [minver](https://github.com/jbweston/miniver) - a lightweight reimplementation of ++ versioneer ++* [versioningit](https://github.com/jwodder/versioningit) - a PEP 518-based setuptools ++ plugin + + ## License + + To make Versioneer easier to embed, all its code is dedicated to the public + domain. The `_version.py` that it creates is also in the public domain. +-Specifically, both are released under the Creative Commons "Public Domain +-Dedication" license (CC0-1.0), as described in +-https://creativecommons.org/publicdomain/zero/1.0/ . ++Specifically, both are released under the "Unlicense", as described in ++https://unlicense.org/. ++ ++[pypi-image]: https://img.shields.io/pypi/v/versioneer.svg ++[pypi-url]: https://pypi.python.org/pypi/versioneer/ ++[travis-image]: ++https://img.shields.io/travis/com/python-versioneer/python-versioneer.svg ++[travis-url]: https://travis-ci.com/github/python-versioneer/python-versioneer + + """ ++# pylint:disable=invalid-name,import-outside-toplevel,missing-function-docstring ++# pylint:disable=missing-class-docstring,too-many-branches,too-many-statements ++# pylint:disable=raise-missing-from,too-many-lines,too-many-locals,import-error ++# pylint:disable=too-few-public-methods,redefined-outer-name,consider-using-with ++# pylint:disable=attribute-defined-outside-init,too-many-arguments + +-from __future__ import print_function +-try: +- import configparser +-except ImportError: +- import ConfigParser as configparser ++import configparser + import errno + import json + import os + import re + import subprocess + import sys ++from pathlib import Path ++from typing import Any, Callable, cast, Dict, List, Optional, Tuple, Union ++from typing import NoReturn ++import functools ++ ++have_tomllib = True ++if sys.version_info >= (3, 11): ++ import tomllib ++else: ++ try: ++ import tomli as tomllib ++ except ImportError: ++ have_tomllib = False + + + class VersioneerConfig: + """Container for Versioneer configuration parameters.""" + ++ VCS: str ++ style: str ++ tag_prefix: str ++ versionfile_source: str ++ versionfile_build: Optional[str] ++ parentdir_prefix: Optional[str] ++ verbose: Optional[bool] ++ + +-def get_root(): ++def get_root() -> str: + """Get the project root directory. + + We require that all commands are run from the project root, i.e. the +@@ -301,18 +349,30 @@ def get_root(): + """ + root = os.path.realpath(os.path.abspath(os.getcwd())) + setup_py = os.path.join(root, "setup.py") ++ pyproject_toml = os.path.join(root, "pyproject.toml") + versioneer_py = os.path.join(root, "versioneer.py") +- if not (os.path.exists(setup_py) or os.path.exists(versioneer_py)): ++ if not ( ++ os.path.exists(setup_py) ++ or os.path.exists(pyproject_toml) ++ or os.path.exists(versioneer_py) ++ ): + # allow 'python path/to/setup.py COMMAND' + root = os.path.dirname(os.path.realpath(os.path.abspath(sys.argv[0]))) + setup_py = os.path.join(root, "setup.py") ++ pyproject_toml = os.path.join(root, "pyproject.toml") + versioneer_py = os.path.join(root, "versioneer.py") +- if not (os.path.exists(setup_py) or os.path.exists(versioneer_py)): +- err = ("Versioneer was unable to run the project root directory. " +- "Versioneer requires setup.py to be executed from " +- "its immediate directory (like 'python setup.py COMMAND'), " +- "or in a way that lets it use sys.argv[0] to find the root " +- "(like 'python path/to/setup.py COMMAND').") ++ if not ( ++ os.path.exists(setup_py) ++ or os.path.exists(pyproject_toml) ++ or os.path.exists(versioneer_py) ++ ): ++ err = ( ++ "Versioneer was unable to run the project root directory. " ++ "Versioneer requires setup.py to be executed from " ++ "its immediate directory (like 'python setup.py COMMAND'), " ++ "or in a way that lets it use sys.argv[0] to find the root " ++ "(like 'python path/to/setup.py COMMAND')." ++ ) + raise VersioneerBadRootError(err) + try: + # Certain runtime workflows (setup.py install/develop in a setuptools +@@ -321,43 +381,64 @@ def get_root(): + # module-import table will cache the first one. So we can't use + # os.path.dirname(__file__), as that will find whichever + # versioneer.py was first imported, even in later projects. +- me = os.path.realpath(os.path.abspath(__file__)) +- me_dir = os.path.normcase(os.path.splitext(me)[0]) ++ my_path = os.path.realpath(os.path.abspath(__file__)) ++ me_dir = os.path.normcase(os.path.splitext(my_path)[0]) + vsr_dir = os.path.normcase(os.path.splitext(versioneer_py)[0]) +- if me_dir != vsr_dir: +- print("Warning: build in %s is using versioneer.py from %s" +- % (os.path.dirname(me), versioneer_py)) ++ if me_dir != vsr_dir and "VERSIONEER_PEP518" not in globals(): ++ print( ++ "Warning: build in %s is using versioneer.py from %s" ++ % (os.path.dirname(my_path), versioneer_py) ++ ) + except NameError: + pass + return root + + +-def get_config_from_root(root): ++def get_config_from_root(root: str) -> VersioneerConfig: + """Read the project setup.cfg file to determine Versioneer config.""" +- # This might raise EnvironmentError (if setup.cfg is missing), or ++ # This might raise OSError (if setup.cfg is missing), or + # configparser.NoSectionError (if it lacks a [versioneer] section), or + # configparser.NoOptionError (if it lacks "VCS="). See the docstring at + # the top of versioneer.py for instructions on writing your setup.cfg . +- setup_cfg = os.path.join(root, "setup.cfg") +- parser = configparser.SafeConfigParser() +- with open(setup_cfg, "r") as f: +- parser.readfp(f) +- VCS = parser.get("versioneer", "VCS") # mandatory +- +- def get(parser, name): +- if parser.has_option("versioneer", name): +- return parser.get("versioneer", name) +- return None ++ root_pth = Path(root) ++ pyproject_toml = root_pth / "pyproject.toml" ++ setup_cfg = root_pth / "setup.cfg" ++ section: Union[Dict[str, Any], configparser.SectionProxy, None] = None ++ if pyproject_toml.exists() and have_tomllib: ++ try: ++ with open(pyproject_toml, "rb") as fobj: ++ pp = tomllib.load(fobj) ++ section = pp["tool"]["versioneer"] ++ except (tomllib.TOMLDecodeError, KeyError) as e: ++ print(f"Failed to load config from {pyproject_toml}: {e}") ++ print("Try to load it from setup.cfg") ++ if not section: ++ parser = configparser.ConfigParser() ++ with open(setup_cfg) as cfg_file: ++ parser.read_file(cfg_file) ++ parser.get("versioneer", "VCS") # raise error if missing ++ ++ section = parser["versioneer"] ++ ++ # `cast`` really shouldn't be used, but its simplest for the ++ # common VersioneerConfig users at the moment. We verify against ++ # `None` values elsewhere where it matters ++ + cfg = VersioneerConfig() +- cfg.VCS = VCS +- cfg.style = get(parser, "style") or "" +- cfg.versionfile_source = get(parser, "versionfile_source") +- cfg.versionfile_build = get(parser, "versionfile_build") +- cfg.tag_prefix = get(parser, "tag_prefix") +- if cfg.tag_prefix in ("''", '""'): ++ cfg.VCS = section["VCS"] ++ cfg.style = section.get("style", "") ++ cfg.versionfile_source = cast(str, section.get("versionfile_source")) ++ cfg.versionfile_build = section.get("versionfile_build") ++ cfg.tag_prefix = cast(str, section.get("tag_prefix")) ++ if cfg.tag_prefix in ("''", '""', None): + cfg.tag_prefix = "" +- cfg.parentdir_prefix = get(parser, "parentdir_prefix") +- cfg.verbose = get(parser, "verbose") ++ cfg.parentdir_prefix = section.get("parentdir_prefix") ++ if isinstance(section, configparser.SectionProxy): ++ # Make sure configparser translates to bool ++ cfg.verbose = section.getboolean("verbose") ++ else: ++ cfg.verbose = section.get("verbose") ++ + return cfg + + +@@ -366,37 +447,54 @@ class NotThisMethod(Exception): + + + # these dictionaries contain VCS-specific tools +-LONG_VERSION_PY = {} +-HANDLERS = {} ++LONG_VERSION_PY: Dict[str, str] = {} ++HANDLERS: Dict[str, Dict[str, Callable]] = {} + + +-def register_vcs_handler(vcs, method): # decorator +- """Decorator to mark a method as the handler for a particular VCS.""" +- def decorate(f): ++def register_vcs_handler(vcs: str, method: str) -> Callable: # decorator ++ """Create decorator to mark a method as the handler of a VCS.""" ++ ++ def decorate(f: Callable) -> Callable: + """Store f in HANDLERS[vcs][method].""" +- if vcs not in HANDLERS: +- HANDLERS[vcs] = {} +- HANDLERS[vcs][method] = f ++ HANDLERS.setdefault(vcs, {})[method] = f + return f ++ + return decorate + + +-def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, +- env=None): ++def run_command( ++ commands: List[str], ++ args: List[str], ++ cwd: Optional[str] = None, ++ verbose: bool = False, ++ hide_stderr: bool = False, ++ env: Optional[Dict[str, str]] = None, ++) -> Tuple[Optional[str], Optional[int]]: + """Call the given command(s).""" + assert isinstance(commands, list) +- p = None +- for c in commands: ++ process = None ++ ++ popen_kwargs: Dict[str, Any] = {} ++ if sys.platform == "win32": ++ # This hides the console window if pythonw.exe is used ++ startupinfo = subprocess.STARTUPINFO() ++ startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW ++ popen_kwargs["startupinfo"] = startupinfo ++ ++ for command in commands: + try: +- dispcmd = str([c] + args) ++ dispcmd = str([command] + args) + # remember shell=False, so use git.cmd on windows, not just git +- p = subprocess.Popen([c] + args, cwd=cwd, env=env, +- stdout=subprocess.PIPE, +- stderr=(subprocess.PIPE if hide_stderr +- else None)) ++ process = subprocess.Popen( ++ [command] + args, ++ cwd=cwd, ++ env=env, ++ stdout=subprocess.PIPE, ++ stderr=(subprocess.PIPE if hide_stderr else None), ++ **popen_kwargs, ++ ) + break +- except EnvironmentError: +- e = sys.exc_info()[1] ++ except OSError as e: + if e.errno == errno.ENOENT: + continue + if verbose: +@@ -407,26 +505,27 @@ def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, + if verbose: + print("unable to find command, tried %s" % (commands,)) + return None, None +- stdout = p.communicate()[0].strip() +- if sys.version_info[0] >= 3: +- stdout = stdout.decode() +- if p.returncode != 0: ++ stdout = process.communicate()[0].strip().decode() ++ if process.returncode != 0: + if verbose: + print("unable to run %s (error)" % dispcmd) + print("stdout was %s" % stdout) +- return None, p.returncode +- return stdout, p.returncode ++ return None, process.returncode ++ return stdout, process.returncode + + +-LONG_VERSION_PY['git'] = ''' ++LONG_VERSION_PY[ ++ "git" ++] = r''' + # This file helps to compute a version number in source trees obtained from + # git-archive tarball (such as those provided by githubs download-from-tag + # feature). Distribution tarballs (built by setup.py sdist) and build + # directories (produced by setup.py build) will contain a much shorter file + # that just contains the computed version number. + +-# This file is released into the public domain. Generated by +-# versioneer-0.18 (https://github.com/warner/python-versioneer) ++# This file is released into the public domain. ++# Generated by versioneer-0.29 ++# https://github.com/python-versioneer/python-versioneer + + """Git implementation of _version.py.""" + +@@ -435,9 +534,11 @@ import os + import re + import subprocess + import sys ++from typing import Any, Callable, Dict, List, Optional, Tuple ++import functools + + +-def get_keywords(): ++def get_keywords() -> Dict[str, str]: + """Get the keywords needed to look up the version information.""" + # these strings will be replaced by git during git-archive. + # setup.py/versioneer.py will grep for the variable names, so they must +@@ -453,8 +554,15 @@ def get_keywords(): + class VersioneerConfig: + """Container for Versioneer configuration parameters.""" + ++ VCS: str ++ style: str ++ tag_prefix: str ++ parentdir_prefix: str ++ versionfile_source: str ++ verbose: bool ++ + +-def get_config(): ++def get_config() -> VersioneerConfig: + """Create, populate and return the VersioneerConfig() object.""" + # these strings are filled in when 'setup.py versioneer' creates + # _version.py +@@ -472,13 +580,13 @@ class NotThisMethod(Exception): + """Exception raised if a method is not valid for the current scenario.""" + + +-LONG_VERSION_PY = {} +-HANDLERS = {} ++LONG_VERSION_PY: Dict[str, str] = {} ++HANDLERS: Dict[str, Dict[str, Callable]] = {} + + +-def register_vcs_handler(vcs, method): # decorator +- """Decorator to mark a method as the handler for a particular VCS.""" +- def decorate(f): ++def register_vcs_handler(vcs: str, method: str) -> Callable: # decorator ++ """Create decorator to mark a method as the handler of a VCS.""" ++ def decorate(f: Callable) -> Callable: + """Store f in HANDLERS[vcs][method].""" + if vcs not in HANDLERS: + HANDLERS[vcs] = {} +@@ -487,22 +595,35 @@ def register_vcs_handler(vcs, method): # decorator + return decorate + + +-def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, +- env=None): ++def run_command( ++ commands: List[str], ++ args: List[str], ++ cwd: Optional[str] = None, ++ verbose: bool = False, ++ hide_stderr: bool = False, ++ env: Optional[Dict[str, str]] = None, ++) -> Tuple[Optional[str], Optional[int]]: + """Call the given command(s).""" + assert isinstance(commands, list) +- p = None +- for c in commands: ++ process = None ++ ++ popen_kwargs: Dict[str, Any] = {} ++ if sys.platform == "win32": ++ # This hides the console window if pythonw.exe is used ++ startupinfo = subprocess.STARTUPINFO() ++ startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW ++ popen_kwargs["startupinfo"] = startupinfo ++ ++ for command in commands: + try: +- dispcmd = str([c] + args) ++ dispcmd = str([command] + args) + # remember shell=False, so use git.cmd on windows, not just git +- p = subprocess.Popen([c] + args, cwd=cwd, env=env, +- stdout=subprocess.PIPE, +- stderr=(subprocess.PIPE if hide_stderr +- else None)) ++ process = subprocess.Popen([command] + args, cwd=cwd, env=env, ++ stdout=subprocess.PIPE, ++ stderr=(subprocess.PIPE if hide_stderr ++ else None), **popen_kwargs) + break +- except EnvironmentError: +- e = sys.exc_info()[1] ++ except OSError as e: + if e.errno == errno.ENOENT: + continue + if verbose: +@@ -513,18 +634,20 @@ def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, + if verbose: + print("unable to find command, tried %%s" %% (commands,)) + return None, None +- stdout = p.communicate()[0].strip() +- if sys.version_info[0] >= 3: +- stdout = stdout.decode() +- if p.returncode != 0: ++ stdout = process.communicate()[0].strip().decode() ++ if process.returncode != 0: + if verbose: + print("unable to run %%s (error)" %% dispcmd) + print("stdout was %%s" %% stdout) +- return None, p.returncode +- return stdout, p.returncode ++ return None, process.returncode ++ return stdout, process.returncode + + +-def versions_from_parentdir(parentdir_prefix, root, verbose): ++def versions_from_parentdir( ++ parentdir_prefix: str, ++ root: str, ++ verbose: bool, ++) -> Dict[str, Any]: + """Try to determine the version from the parent directory name. + + Source tarballs conventionally unpack into a directory that includes both +@@ -533,15 +656,14 @@ def versions_from_parentdir(parentdir_prefix, root, verbose): + """ + rootdirs = [] + +- for i in range(3): ++ for _ in range(3): + dirname = os.path.basename(root) + if dirname.startswith(parentdir_prefix): + return {"version": dirname[len(parentdir_prefix):], + "full-revisionid": None, + "dirty": False, "error": None, "date": None} +- else: +- rootdirs.append(root) +- root = os.path.dirname(root) # up a level ++ rootdirs.append(root) ++ root = os.path.dirname(root) # up a level + + if verbose: + print("Tried directories %%s but none started with prefix %%s" %% +@@ -550,41 +672,48 @@ def versions_from_parentdir(parentdir_prefix, root, verbose): + + + @register_vcs_handler("git", "get_keywords") +-def git_get_keywords(versionfile_abs): ++def git_get_keywords(versionfile_abs: str) -> Dict[str, str]: + """Extract version information from the given file.""" + # the code embedded in _version.py can just fetch the value of these + # keywords. When used from setup.py, we don't want to import _version.py, + # so we do it with a regexp instead. This function is not used from + # _version.py. +- keywords = {} ++ keywords: Dict[str, str] = {} + try: +- f = open(versionfile_abs, "r") +- for line in f.readlines(): +- if line.strip().startswith("git_refnames ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["refnames"] = mo.group(1) +- if line.strip().startswith("git_full ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["full"] = mo.group(1) +- if line.strip().startswith("git_date ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["date"] = mo.group(1) +- f.close() +- except EnvironmentError: ++ with open(versionfile_abs, "r") as fobj: ++ for line in fobj: ++ if line.strip().startswith("git_refnames ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["refnames"] = mo.group(1) ++ if line.strip().startswith("git_full ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["full"] = mo.group(1) ++ if line.strip().startswith("git_date ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["date"] = mo.group(1) ++ except OSError: + pass + return keywords + + + @register_vcs_handler("git", "keywords") +-def git_versions_from_keywords(keywords, tag_prefix, verbose): ++def git_versions_from_keywords( ++ keywords: Dict[str, str], ++ tag_prefix: str, ++ verbose: bool, ++) -> Dict[str, Any]: + """Get version information from git keywords.""" +- if not keywords: +- raise NotThisMethod("no keywords at all, weird") ++ if "refnames" not in keywords: ++ raise NotThisMethod("Short version file found") + date = keywords.get("date") + if date is not None: ++ # Use only the last line. Previous lines may contain GPG signature ++ # information. ++ date = date.splitlines()[-1] ++ + # git-2.2.0 added "%%cI", which expands to an ISO-8601 -compliant + # datestamp. However we prefer "%%ci" (which expands to an "ISO-8601 + # -like" string, which we must then edit to make compliant), because +@@ -597,11 +726,11 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + if verbose: + print("keywords are unexpanded, not using") + raise NotThisMethod("unexpanded keywords, not a git-archive tarball") +- refs = set([r.strip() for r in refnames.strip("()").split(",")]) ++ refs = {r.strip() for r in refnames.strip("()").split(",")} + # starting in git-1.8.3, tags are listed as "tag: foo-1.0" instead of + # just "foo-1.0". If we see a "tag: " prefix, prefer those. + TAG = "tag: " +- tags = set([r[len(TAG):] for r in refs if r.startswith(TAG)]) ++ tags = {r[len(TAG):] for r in refs if r.startswith(TAG)} + if not tags: + # Either we're using git < 1.8.3, or there really are no tags. We use + # a heuristic: assume all version tags have a digit. The old git %%d +@@ -610,7 +739,7 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + # between branches and tags. By ignoring refnames without digits, we + # filter out many common branch names like "release" and + # "stabilization", as well as "HEAD" and "master". +- tags = set([r for r in refs if re.search(r'\d', r)]) ++ tags = {r for r in refs if re.search(r'\d', r)} + if verbose: + print("discarding '%%s', no digits" %% ",".join(refs - tags)) + if verbose: +@@ -619,6 +748,11 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + # sorting will prefer e.g. "2.0" over "2.0rc1" + if ref.startswith(tag_prefix): + r = ref[len(tag_prefix):] ++ # Filter out refs that exactly match prefix or that don't start ++ # with a number once the prefix is stripped (mostly a concern ++ # when prefix is '') ++ if not re.match(r'\d', r): ++ continue + if verbose: + print("picking %%s" %% r) + return {"version": r, +@@ -634,7 +768,12 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + + + @register_vcs_handler("git", "pieces_from_vcs") +-def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): ++def git_pieces_from_vcs( ++ tag_prefix: str, ++ root: str, ++ verbose: bool, ++ runner: Callable = run_command ++) -> Dict[str, Any]: + """Get version from 'git describe' in the root of the source tree. + + This only gets called if the git-archive 'subst' keywords were *not* +@@ -645,8 +784,15 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + if sys.platform == "win32": + GITS = ["git.cmd", "git.exe"] + +- out, rc = run_command(GITS, ["rev-parse", "--git-dir"], cwd=root, +- hide_stderr=True) ++ # GIT_DIR can interfere with correct operation of Versioneer. ++ # It may be intended to be passed to the Versioneer-versioned project, ++ # but that should not change where we get our version from. ++ env = os.environ.copy() ++ env.pop("GIT_DIR", None) ++ runner = functools.partial(runner, env=env) ++ ++ _, rc = runner(GITS, ["rev-parse", "--git-dir"], cwd=root, ++ hide_stderr=not verbose) + if rc != 0: + if verbose: + print("Directory %%s not under git control" %% root) +@@ -654,24 +800,57 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + + # if there is a tag matching tag_prefix, this yields TAG-NUM-gHEX[-dirty] + # if there isn't one, this yields HEX[-dirty] (no NUM) +- describe_out, rc = run_command(GITS, ["describe", "--tags", "--dirty", +- "--always", "--long", +- "--match", "%%s*" %% tag_prefix], +- cwd=root) ++ describe_out, rc = runner(GITS, [ ++ "describe", "--tags", "--dirty", "--always", "--long", ++ "--match", f"{tag_prefix}[[:digit:]]*" ++ ], cwd=root) + # --long was added in git-1.5.5 + if describe_out is None: + raise NotThisMethod("'git describe' failed") + describe_out = describe_out.strip() +- full_out, rc = run_command(GITS, ["rev-parse", "HEAD"], cwd=root) ++ full_out, rc = runner(GITS, ["rev-parse", "HEAD"], cwd=root) + if full_out is None: + raise NotThisMethod("'git rev-parse' failed") + full_out = full_out.strip() + +- pieces = {} ++ pieces: Dict[str, Any] = {} + pieces["long"] = full_out + pieces["short"] = full_out[:7] # maybe improved later + pieces["error"] = None + ++ branch_name, rc = runner(GITS, ["rev-parse", "--abbrev-ref", "HEAD"], ++ cwd=root) ++ # --abbrev-ref was added in git-1.6.3 ++ if rc != 0 or branch_name is None: ++ raise NotThisMethod("'git rev-parse --abbrev-ref' returned error") ++ branch_name = branch_name.strip() ++ ++ if branch_name == "HEAD": ++ # If we aren't exactly on a branch, pick a branch which represents ++ # the current commit. If all else fails, we are on a branchless ++ # commit. ++ branches, rc = runner(GITS, ["branch", "--contains"], cwd=root) ++ # --contains was added in git-1.5.4 ++ if rc != 0 or branches is None: ++ raise NotThisMethod("'git branch --contains' returned error") ++ branches = branches.split("\n") ++ ++ # Remove the first line if we're running detached ++ if "(" in branches[0]: ++ branches.pop(0) ++ ++ # Strip off the leading "* " from the list of branches. ++ branches = [branch[2:] for branch in branches] ++ if "master" in branches: ++ branch_name = "master" ++ elif not branches: ++ branch_name = None ++ else: ++ # Pick the first branch that is returned. Good or bad. ++ branch_name = branches[0] ++ ++ pieces["branch"] = branch_name ++ + # parse describe_out. It will be like TAG-NUM-gHEX[-dirty] or HEX[-dirty] + # TAG might have hyphens. + git_describe = describe_out +@@ -688,7 +867,7 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + # TAG-NUM-gHEX + mo = re.search(r'^(.+)-(\d+)-g([0-9a-f]+)$', git_describe) + if not mo: +- # unparseable. Maybe git-describe is misbehaving? ++ # unparsable. Maybe git-describe is misbehaving? + pieces["error"] = ("unable to parse git-describe output: '%%s'" + %% describe_out) + return pieces +@@ -713,26 +892,27 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + else: + # HEX: no tags + pieces["closest-tag"] = None +- count_out, rc = run_command(GITS, ["rev-list", "HEAD", "--count"], +- cwd=root) +- pieces["distance"] = int(count_out) # total number of commits ++ out, rc = runner(GITS, ["rev-list", "HEAD", "--left-right"], cwd=root) ++ pieces["distance"] = len(out.split()) # total number of commits + + # commit date: see ISO-8601 comment in git_versions_from_keywords() +- date = run_command(GITS, ["show", "-s", "--format=%%ci", "HEAD"], +- cwd=root)[0].strip() ++ date = runner(GITS, ["show", "-s", "--format=%%ci", "HEAD"], cwd=root)[0].strip() ++ # Use only the last line. Previous lines may contain GPG signature ++ # information. ++ date = date.splitlines()[-1] + pieces["date"] = date.strip().replace(" ", "T", 1).replace(" ", "", 1) + + return pieces + + +-def plus_or_dot(pieces): ++def plus_or_dot(pieces: Dict[str, Any]) -> str: + """Return a + if we don't already have one, else return a .""" + if "+" in pieces.get("closest-tag", ""): + return "." + return "+" + + +-def render_pep440(pieces): ++def render_pep440(pieces: Dict[str, Any]) -> str: + """Build up version string, with post-release "local version identifier". + + Our goal: TAG[+DISTANCE.gHEX[.dirty]] . Note that if you +@@ -757,23 +937,71 @@ def render_pep440(pieces): + return rendered + + +-def render_pep440_pre(pieces): +- """TAG[.post.devDISTANCE] -- No -dirty. ++def render_pep440_branch(pieces: Dict[str, Any]) -> str: ++ """TAG[[.dev0]+DISTANCE.gHEX[.dirty]] . ++ ++ The ".dev0" means not master branch. Note that .dev0 sorts backwards ++ (a feature branch will appear "older" than the master branch). + + Exceptions: +- 1: no tags. 0.post.devDISTANCE ++ 1: no tags. 0[.dev0]+untagged.DISTANCE.gHEX[.dirty] + """ + if pieces["closest-tag"]: + rendered = pieces["closest-tag"] ++ if pieces["distance"] or pieces["dirty"]: ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += plus_or_dot(pieces) ++ rendered += "%%d.g%%s" %% (pieces["distance"], pieces["short"]) ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ else: ++ # exception #1 ++ rendered = "0" ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += "+untagged.%%d.g%%s" %% (pieces["distance"], ++ pieces["short"]) ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ return rendered ++ ++ ++def pep440_split_post(ver: str) -> Tuple[str, Optional[int]]: ++ """Split pep440 version string at the post-release segment. ++ ++ Returns the release segments before the post-release and the ++ post-release version number (or -1 if no post-release segment is present). ++ """ ++ vc = str.split(ver, ".post") ++ return vc[0], int(vc[1] or 0) if len(vc) == 2 else None ++ ++ ++def render_pep440_pre(pieces: Dict[str, Any]) -> str: ++ """TAG[.postN.devDISTANCE] -- No -dirty. ++ ++ Exceptions: ++ 1: no tags. 0.post0.devDISTANCE ++ """ ++ if pieces["closest-tag"]: + if pieces["distance"]: +- rendered += ".post.dev%%d" %% pieces["distance"] ++ # update the post release segment ++ tag_version, post_version = pep440_split_post(pieces["closest-tag"]) ++ rendered = tag_version ++ if post_version is not None: ++ rendered += ".post%%d.dev%%d" %% (post_version + 1, pieces["distance"]) ++ else: ++ rendered += ".post0.dev%%d" %% (pieces["distance"]) ++ else: ++ # no commits, use the tag as the version ++ rendered = pieces["closest-tag"] + else: + # exception #1 +- rendered = "0.post.dev%%d" %% pieces["distance"] ++ rendered = "0.post0.dev%%d" %% pieces["distance"] + return rendered + + +-def render_pep440_post(pieces): ++def render_pep440_post(pieces: Dict[str, Any]) -> str: + """TAG[.postDISTANCE[.dev0]+gHEX] . + + The ".dev0" means dirty. Note that .dev0 sorts backwards +@@ -800,12 +1028,41 @@ def render_pep440_post(pieces): + return rendered + + +-def render_pep440_old(pieces): ++def render_pep440_post_branch(pieces: Dict[str, Any]) -> str: ++ """TAG[.postDISTANCE[.dev0]+gHEX[.dirty]] . ++ ++ The ".dev0" means not master branch. ++ ++ Exceptions: ++ 1: no tags. 0.postDISTANCE[.dev0]+gHEX[.dirty] ++ """ ++ if pieces["closest-tag"]: ++ rendered = pieces["closest-tag"] ++ if pieces["distance"] or pieces["dirty"]: ++ rendered += ".post%%d" %% pieces["distance"] ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += plus_or_dot(pieces) ++ rendered += "g%%s" %% pieces["short"] ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ else: ++ # exception #1 ++ rendered = "0.post%%d" %% pieces["distance"] ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += "+g%%s" %% pieces["short"] ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ return rendered ++ ++ ++def render_pep440_old(pieces: Dict[str, Any]) -> str: + """TAG[.postDISTANCE[.dev0]] . + + The ".dev0" means dirty. + +- Eexceptions: ++ Exceptions: + 1: no tags. 0.postDISTANCE[.dev0] + """ + if pieces["closest-tag"]: +@@ -822,7 +1079,7 @@ def render_pep440_old(pieces): + return rendered + + +-def render_git_describe(pieces): ++def render_git_describe(pieces: Dict[str, Any]) -> str: + """TAG[-DISTANCE-gHEX][-dirty]. + + Like 'git describe --tags --dirty --always'. +@@ -842,7 +1099,7 @@ def render_git_describe(pieces): + return rendered + + +-def render_git_describe_long(pieces): ++def render_git_describe_long(pieces: Dict[str, Any]) -> str: + """TAG-DISTANCE-gHEX[-dirty]. + + Like 'git describe --tags --dirty --always -long'. +@@ -862,7 +1119,7 @@ def render_git_describe_long(pieces): + return rendered + + +-def render(pieces, style): ++def render(pieces: Dict[str, Any], style: str) -> Dict[str, Any]: + """Render the given version pieces into the requested style.""" + if pieces["error"]: + return {"version": "unknown", +@@ -876,10 +1133,14 @@ def render(pieces, style): + + if style == "pep440": + rendered = render_pep440(pieces) ++ elif style == "pep440-branch": ++ rendered = render_pep440_branch(pieces) + elif style == "pep440-pre": + rendered = render_pep440_pre(pieces) + elif style == "pep440-post": + rendered = render_pep440_post(pieces) ++ elif style == "pep440-post-branch": ++ rendered = render_pep440_post_branch(pieces) + elif style == "pep440-old": + rendered = render_pep440_old(pieces) + elif style == "git-describe": +@@ -894,7 +1155,7 @@ def render(pieces, style): + "date": pieces.get("date")} + + +-def get_versions(): ++def get_versions() -> Dict[str, Any]: + """Get version information or return default if unable to do so.""" + # I am in _version.py, which lives at ROOT/VERSIONFILE_SOURCE. If we have + # __file__, we can work backwards from there to the root. Some +@@ -915,7 +1176,7 @@ def get_versions(): + # versionfile_source is the relative path from the top of the source + # tree (where the .git directory might live) to this file. Invert + # this to find the root from __file__. +- for i in cfg.versionfile_source.split('/'): ++ for _ in cfg.versionfile_source.split('/'): + root = os.path.dirname(root) + except NameError: + return {"version": "0+unknown", "full-revisionid": None, +@@ -942,41 +1203,48 @@ def get_versions(): + + + @register_vcs_handler("git", "get_keywords") +-def git_get_keywords(versionfile_abs): ++def git_get_keywords(versionfile_abs: str) -> Dict[str, str]: + """Extract version information from the given file.""" + # the code embedded in _version.py can just fetch the value of these + # keywords. When used from setup.py, we don't want to import _version.py, + # so we do it with a regexp instead. This function is not used from + # _version.py. +- keywords = {} ++ keywords: Dict[str, str] = {} + try: +- f = open(versionfile_abs, "r") +- for line in f.readlines(): +- if line.strip().startswith("git_refnames ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["refnames"] = mo.group(1) +- if line.strip().startswith("git_full ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["full"] = mo.group(1) +- if line.strip().startswith("git_date ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["date"] = mo.group(1) +- f.close() +- except EnvironmentError: ++ with open(versionfile_abs, "r") as fobj: ++ for line in fobj: ++ if line.strip().startswith("git_refnames ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["refnames"] = mo.group(1) ++ if line.strip().startswith("git_full ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["full"] = mo.group(1) ++ if line.strip().startswith("git_date ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["date"] = mo.group(1) ++ except OSError: + pass + return keywords + + + @register_vcs_handler("git", "keywords") +-def git_versions_from_keywords(keywords, tag_prefix, verbose): ++def git_versions_from_keywords( ++ keywords: Dict[str, str], ++ tag_prefix: str, ++ verbose: bool, ++) -> Dict[str, Any]: + """Get version information from git keywords.""" +- if not keywords: +- raise NotThisMethod("no keywords at all, weird") ++ if "refnames" not in keywords: ++ raise NotThisMethod("Short version file found") + date = keywords.get("date") + if date is not None: ++ # Use only the last line. Previous lines may contain GPG signature ++ # information. ++ date = date.splitlines()[-1] ++ + # git-2.2.0 added "%cI", which expands to an ISO-8601 -compliant + # datestamp. However we prefer "%ci" (which expands to an "ISO-8601 + # -like" string, which we must then edit to make compliant), because +@@ -989,11 +1257,11 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + if verbose: + print("keywords are unexpanded, not using") + raise NotThisMethod("unexpanded keywords, not a git-archive tarball") +- refs = set([r.strip() for r in refnames.strip("()").split(",")]) ++ refs = {r.strip() for r in refnames.strip("()").split(",")} + # starting in git-1.8.3, tags are listed as "tag: foo-1.0" instead of + # just "foo-1.0". If we see a "tag: " prefix, prefer those. + TAG = "tag: " +- tags = set([r[len(TAG):] for r in refs if r.startswith(TAG)]) ++ tags = {r[len(TAG) :] for r in refs if r.startswith(TAG)} + if not tags: + # Either we're using git < 1.8.3, or there really are no tags. We use + # a heuristic: assume all version tags have a digit. The old git %d +@@ -1002,7 +1270,7 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + # between branches and tags. By ignoring refnames without digits, we + # filter out many common branch names like "release" and + # "stabilization", as well as "HEAD" and "master". +- tags = set([r for r in refs if re.search(r'\d', r)]) ++ tags = {r for r in refs if re.search(r"\d", r)} + if verbose: + print("discarding '%s', no digits" % ",".join(refs - tags)) + if verbose: +@@ -1010,23 +1278,37 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + for ref in sorted(tags): + # sorting will prefer e.g. "2.0" over "2.0rc1" + if ref.startswith(tag_prefix): +- r = ref[len(tag_prefix):] ++ r = ref[len(tag_prefix) :] ++ # Filter out refs that exactly match prefix or that don't start ++ # with a number once the prefix is stripped (mostly a concern ++ # when prefix is '') ++ if not re.match(r"\d", r): ++ continue + if verbose: + print("picking %s" % r) +- return {"version": r, +- "full-revisionid": keywords["full"].strip(), +- "dirty": False, "error": None, +- "date": date} ++ return { ++ "version": r, ++ "full-revisionid": keywords["full"].strip(), ++ "dirty": False, ++ "error": None, ++ "date": date, ++ } + # no suitable tags, so version is "0+unknown", but full hex is still there + if verbose: + print("no suitable tags, using unknown + full revision id") +- return {"version": "0+unknown", +- "full-revisionid": keywords["full"].strip(), +- "dirty": False, "error": "no suitable tags", "date": None} ++ return { ++ "version": "0+unknown", ++ "full-revisionid": keywords["full"].strip(), ++ "dirty": False, ++ "error": "no suitable tags", ++ "date": None, ++ } + + + @register_vcs_handler("git", "pieces_from_vcs") +-def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): ++def git_pieces_from_vcs( ++ tag_prefix: str, root: str, verbose: bool, runner: Callable = run_command ++) -> Dict[str, Any]: + """Get version from 'git describe' in the root of the source tree. + + This only gets called if the git-archive 'subst' keywords were *not* +@@ -1037,8 +1319,14 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + if sys.platform == "win32": + GITS = ["git.cmd", "git.exe"] + +- out, rc = run_command(GITS, ["rev-parse", "--git-dir"], cwd=root, +- hide_stderr=True) ++ # GIT_DIR can interfere with correct operation of Versioneer. ++ # It may be intended to be passed to the Versioneer-versioned project, ++ # but that should not change where we get our version from. ++ env = os.environ.copy() ++ env.pop("GIT_DIR", None) ++ runner = functools.partial(runner, env=env) ++ ++ _, rc = runner(GITS, ["rev-parse", "--git-dir"], cwd=root, hide_stderr=not verbose) + if rc != 0: + if verbose: + print("Directory %s not under git control" % root) +@@ -1046,24 +1334,65 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + + # if there is a tag matching tag_prefix, this yields TAG-NUM-gHEX[-dirty] + # if there isn't one, this yields HEX[-dirty] (no NUM) +- describe_out, rc = run_command(GITS, ["describe", "--tags", "--dirty", +- "--always", "--long", +- "--match", "%s*" % tag_prefix], +- cwd=root) ++ describe_out, rc = runner( ++ GITS, ++ [ ++ "describe", ++ "--tags", ++ "--dirty", ++ "--always", ++ "--long", ++ "--match", ++ f"{tag_prefix}[[:digit:]]*", ++ ], ++ cwd=root, ++ ) + # --long was added in git-1.5.5 + if describe_out is None: + raise NotThisMethod("'git describe' failed") + describe_out = describe_out.strip() +- full_out, rc = run_command(GITS, ["rev-parse", "HEAD"], cwd=root) ++ full_out, rc = runner(GITS, ["rev-parse", "HEAD"], cwd=root) + if full_out is None: + raise NotThisMethod("'git rev-parse' failed") + full_out = full_out.strip() + +- pieces = {} ++ pieces: Dict[str, Any] = {} + pieces["long"] = full_out + pieces["short"] = full_out[:7] # maybe improved later + pieces["error"] = None + ++ branch_name, rc = runner(GITS, ["rev-parse", "--abbrev-ref", "HEAD"], cwd=root) ++ # --abbrev-ref was added in git-1.6.3 ++ if rc != 0 or branch_name is None: ++ raise NotThisMethod("'git rev-parse --abbrev-ref' returned error") ++ branch_name = branch_name.strip() ++ ++ if branch_name == "HEAD": ++ # If we aren't exactly on a branch, pick a branch which represents ++ # the current commit. If all else fails, we are on a branchless ++ # commit. ++ branches, rc = runner(GITS, ["branch", "--contains"], cwd=root) ++ # --contains was added in git-1.5.4 ++ if rc != 0 or branches is None: ++ raise NotThisMethod("'git branch --contains' returned error") ++ branches = branches.split("\n") ++ ++ # Remove the first line if we're running detached ++ if "(" in branches[0]: ++ branches.pop(0) ++ ++ # Strip off the leading "* " from the list of branches. ++ branches = [branch[2:] for branch in branches] ++ if "master" in branches: ++ branch_name = "master" ++ elif not branches: ++ branch_name = None ++ else: ++ # Pick the first branch that is returned. Good or bad. ++ branch_name = branches[0] ++ ++ pieces["branch"] = branch_name ++ + # parse describe_out. It will be like TAG-NUM-gHEX[-dirty] or HEX[-dirty] + # TAG might have hyphens. + git_describe = describe_out +@@ -1072,17 +1401,16 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + dirty = git_describe.endswith("-dirty") + pieces["dirty"] = dirty + if dirty: +- git_describe = git_describe[:git_describe.rindex("-dirty")] ++ git_describe = git_describe[: git_describe.rindex("-dirty")] + + # now we have TAG-NUM-gHEX or HEX + + if "-" in git_describe: + # TAG-NUM-gHEX +- mo = re.search(r'^(.+)-(\d+)-g([0-9a-f]+)$', git_describe) ++ mo = re.search(r"^(.+)-(\d+)-g([0-9a-f]+)$", git_describe) + if not mo: +- # unparseable. Maybe git-describe is misbehaving? +- pieces["error"] = ("unable to parse git-describe output: '%s'" +- % describe_out) ++ # unparsable. Maybe git-describe is misbehaving? ++ pieces["error"] = "unable to parse git-describe output: '%s'" % describe_out + return pieces + + # tag +@@ -1091,10 +1419,12 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + if verbose: + fmt = "tag '%s' doesn't start with prefix '%s'" + print(fmt % (full_tag, tag_prefix)) +- pieces["error"] = ("tag '%s' doesn't start with prefix '%s'" +- % (full_tag, tag_prefix)) ++ pieces["error"] = "tag '%s' doesn't start with prefix '%s'" % ( ++ full_tag, ++ tag_prefix, ++ ) + return pieces +- pieces["closest-tag"] = full_tag[len(tag_prefix):] ++ pieces["closest-tag"] = full_tag[len(tag_prefix) :] + + # distance: number of commits since tag + pieces["distance"] = int(mo.group(2)) +@@ -1105,19 +1435,20 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + else: + # HEX: no tags + pieces["closest-tag"] = None +- count_out, rc = run_command(GITS, ["rev-list", "HEAD", "--count"], +- cwd=root) +- pieces["distance"] = int(count_out) # total number of commits ++ out, rc = runner(GITS, ["rev-list", "HEAD", "--left-right"], cwd=root) ++ pieces["distance"] = len(out.split()) # total number of commits + + # commit date: see ISO-8601 comment in git_versions_from_keywords() +- date = run_command(GITS, ["show", "-s", "--format=%ci", "HEAD"], +- cwd=root)[0].strip() ++ date = runner(GITS, ["show", "-s", "--format=%ci", "HEAD"], cwd=root)[0].strip() ++ # Use only the last line. Previous lines may contain GPG signature ++ # information. ++ date = date.splitlines()[-1] + pieces["date"] = date.strip().replace(" ", "T", 1).replace(" ", "", 1) + + return pieces + + +-def do_vcs_install(manifest_in, versionfile_source, ipy): ++def do_vcs_install(versionfile_source: str, ipy: Optional[str]) -> None: + """Git-specific installation logic for Versioneer. + + For Git, this means creating/changing .gitattributes to mark _version.py +@@ -1126,36 +1457,40 @@ def do_vcs_install(manifest_in, versionfile_source, ipy): + GITS = ["git"] + if sys.platform == "win32": + GITS = ["git.cmd", "git.exe"] +- files = [manifest_in, versionfile_source] ++ files = [versionfile_source] + if ipy: + files.append(ipy) +- try: +- me = __file__ +- if me.endswith(".pyc") or me.endswith(".pyo"): +- me = os.path.splitext(me)[0] + ".py" +- versioneer_file = os.path.relpath(me) +- except NameError: +- versioneer_file = "versioneer.py" +- files.append(versioneer_file) ++ if "VERSIONEER_PEP518" not in globals(): ++ try: ++ my_path = __file__ ++ if my_path.endswith((".pyc", ".pyo")): ++ my_path = os.path.splitext(my_path)[0] + ".py" ++ versioneer_file = os.path.relpath(my_path) ++ except NameError: ++ versioneer_file = "versioneer.py" ++ files.append(versioneer_file) + present = False + try: +- f = open(".gitattributes", "r") +- for line in f.readlines(): +- if line.strip().startswith(versionfile_source): +- if "export-subst" in line.strip().split()[1:]: +- present = True +- f.close() +- except EnvironmentError: ++ with open(".gitattributes", "r") as fobj: ++ for line in fobj: ++ if line.strip().startswith(versionfile_source): ++ if "export-subst" in line.strip().split()[1:]: ++ present = True ++ break ++ except OSError: + pass + if not present: +- f = open(".gitattributes", "a+") +- f.write("%s export-subst\n" % versionfile_source) +- f.close() ++ with open(".gitattributes", "a+") as fobj: ++ fobj.write(f"{versionfile_source} export-subst\n") + files.append(".gitattributes") + run_command(GITS, ["add", "--"] + files) + + +-def versions_from_parentdir(parentdir_prefix, root, verbose): ++def versions_from_parentdir( ++ parentdir_prefix: str, ++ root: str, ++ verbose: bool, ++) -> Dict[str, Any]: + """Try to determine the version from the parent directory name. + + Source tarballs conventionally unpack into a directory that includes both +@@ -1164,24 +1499,29 @@ def versions_from_parentdir(parentdir_prefix, root, verbose): + """ + rootdirs = [] + +- for i in range(3): ++ for _ in range(3): + dirname = os.path.basename(root) + if dirname.startswith(parentdir_prefix): +- return {"version": dirname[len(parentdir_prefix):], +- "full-revisionid": None, +- "dirty": False, "error": None, "date": None} +- else: +- rootdirs.append(root) +- root = os.path.dirname(root) # up a level ++ return { ++ "version": dirname[len(parentdir_prefix) :], ++ "full-revisionid": None, ++ "dirty": False, ++ "error": None, ++ "date": None, ++ } ++ rootdirs.append(root) ++ root = os.path.dirname(root) # up a level + + if verbose: +- print("Tried directories %s but none started with prefix %s" % +- (str(rootdirs), parentdir_prefix)) ++ print( ++ "Tried directories %s but none started with prefix %s" ++ % (str(rootdirs), parentdir_prefix) ++ ) + raise NotThisMethod("rootdir doesn't start with parentdir_prefix") + + + SHORT_VERSION_PY = """ +-# This file was generated by 'versioneer.py' (0.18) from ++# This file was generated by 'versioneer.py' (0.29) from + # revision-control system data, or from the parent directory name of an + # unpacked source archive. Distribution tarballs contain a pre-generated copy + # of this file. +@@ -1198,42 +1538,42 @@ def get_versions(): + """ + + +-def versions_from_file(filename): ++def versions_from_file(filename: str) -> Dict[str, Any]: + """Try to determine the version from _version.py if present.""" + try: + with open(filename) as f: + contents = f.read() +- except EnvironmentError: ++ except OSError: + raise NotThisMethod("unable to read _version.py") +- mo = re.search(r"version_json = '''\n(.*)''' # END VERSION_JSON", +- contents, re.M | re.S) ++ mo = re.search( ++ r"version_json = '''\n(.*)''' # END VERSION_JSON", contents, re.M | re.S ++ ) + if not mo: +- mo = re.search(r"version_json = '''\r\n(.*)''' # END VERSION_JSON", +- contents, re.M | re.S) ++ mo = re.search( ++ r"version_json = '''\r\n(.*)''' # END VERSION_JSON", contents, re.M | re.S ++ ) + if not mo: + raise NotThisMethod("no version_json in _version.py") + return json.loads(mo.group(1)) + + +-def write_to_version_file(filename, versions): ++def write_to_version_file(filename: str, versions: Dict[str, Any]) -> None: + """Write the given version number to the given _version.py file.""" +- os.unlink(filename) +- contents = json.dumps(versions, sort_keys=True, +- indent=1, separators=(",", ": ")) ++ contents = json.dumps(versions, sort_keys=True, indent=1, separators=(",", ": ")) + with open(filename, "w") as f: + f.write(SHORT_VERSION_PY % contents) + + print("set %s to '%s'" % (filename, versions["version"])) + + +-def plus_or_dot(pieces): ++def plus_or_dot(pieces: Dict[str, Any]) -> str: + """Return a + if we don't already have one, else return a .""" + if "+" in pieces.get("closest-tag", ""): + return "." + return "+" + + +-def render_pep440(pieces): ++def render_pep440(pieces: Dict[str, Any]) -> str: + """Build up version string, with post-release "local version identifier". + + Our goal: TAG[+DISTANCE.gHEX[.dirty]] . Note that if you +@@ -1251,30 +1591,76 @@ def render_pep440(pieces): + rendered += ".dirty" + else: + # exception #1 +- rendered = "0+untagged.%d.g%s" % (pieces["distance"], +- pieces["short"]) ++ rendered = "0+untagged.%d.g%s" % (pieces["distance"], pieces["short"]) + if pieces["dirty"]: + rendered += ".dirty" + return rendered + + +-def render_pep440_pre(pieces): +- """TAG[.post.devDISTANCE] -- No -dirty. ++def render_pep440_branch(pieces: Dict[str, Any]) -> str: ++ """TAG[[.dev0]+DISTANCE.gHEX[.dirty]] . ++ ++ The ".dev0" means not master branch. Note that .dev0 sorts backwards ++ (a feature branch will appear "older" than the master branch). + + Exceptions: +- 1: no tags. 0.post.devDISTANCE ++ 1: no tags. 0[.dev0]+untagged.DISTANCE.gHEX[.dirty] + """ + if pieces["closest-tag"]: + rendered = pieces["closest-tag"] ++ if pieces["distance"] or pieces["dirty"]: ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += plus_or_dot(pieces) ++ rendered += "%d.g%s" % (pieces["distance"], pieces["short"]) ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ else: ++ # exception #1 ++ rendered = "0" ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += "+untagged.%d.g%s" % (pieces["distance"], pieces["short"]) ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ return rendered ++ ++ ++def pep440_split_post(ver: str) -> Tuple[str, Optional[int]]: ++ """Split pep440 version string at the post-release segment. ++ ++ Returns the release segments before the post-release and the ++ post-release version number (or -1 if no post-release segment is present). ++ """ ++ vc = str.split(ver, ".post") ++ return vc[0], int(vc[1] or 0) if len(vc) == 2 else None ++ ++ ++def render_pep440_pre(pieces: Dict[str, Any]) -> str: ++ """TAG[.postN.devDISTANCE] -- No -dirty. ++ ++ Exceptions: ++ 1: no tags. 0.post0.devDISTANCE ++ """ ++ if pieces["closest-tag"]: + if pieces["distance"]: +- rendered += ".post.dev%d" % pieces["distance"] ++ # update the post release segment ++ tag_version, post_version = pep440_split_post(pieces["closest-tag"]) ++ rendered = tag_version ++ if post_version is not None: ++ rendered += ".post%d.dev%d" % (post_version + 1, pieces["distance"]) ++ else: ++ rendered += ".post0.dev%d" % (pieces["distance"]) ++ else: ++ # no commits, use the tag as the version ++ rendered = pieces["closest-tag"] + else: + # exception #1 +- rendered = "0.post.dev%d" % pieces["distance"] ++ rendered = "0.post0.dev%d" % pieces["distance"] + return rendered + + +-def render_pep440_post(pieces): ++def render_pep440_post(pieces: Dict[str, Any]) -> str: + """TAG[.postDISTANCE[.dev0]+gHEX] . + + The ".dev0" means dirty. Note that .dev0 sorts backwards +@@ -1301,12 +1687,41 @@ def render_pep440_post(pieces): + return rendered + + +-def render_pep440_old(pieces): ++def render_pep440_post_branch(pieces: Dict[str, Any]) -> str: ++ """TAG[.postDISTANCE[.dev0]+gHEX[.dirty]] . ++ ++ The ".dev0" means not master branch. ++ ++ Exceptions: ++ 1: no tags. 0.postDISTANCE[.dev0]+gHEX[.dirty] ++ """ ++ if pieces["closest-tag"]: ++ rendered = pieces["closest-tag"] ++ if pieces["distance"] or pieces["dirty"]: ++ rendered += ".post%d" % pieces["distance"] ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += plus_or_dot(pieces) ++ rendered += "g%s" % pieces["short"] ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ else: ++ # exception #1 ++ rendered = "0.post%d" % pieces["distance"] ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += "+g%s" % pieces["short"] ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ return rendered ++ ++ ++def render_pep440_old(pieces: Dict[str, Any]) -> str: + """TAG[.postDISTANCE[.dev0]] . + + The ".dev0" means dirty. + +- Eexceptions: ++ Exceptions: + 1: no tags. 0.postDISTANCE[.dev0] + """ + if pieces["closest-tag"]: +@@ -1323,7 +1738,7 @@ def render_pep440_old(pieces): + return rendered + + +-def render_git_describe(pieces): ++def render_git_describe(pieces: Dict[str, Any]) -> str: + """TAG[-DISTANCE-gHEX][-dirty]. + + Like 'git describe --tags --dirty --always'. +@@ -1343,7 +1758,7 @@ def render_git_describe(pieces): + return rendered + + +-def render_git_describe_long(pieces): ++def render_git_describe_long(pieces: Dict[str, Any]) -> str: + """TAG-DISTANCE-gHEX[-dirty]. + + Like 'git describe --tags --dirty --always -long'. +@@ -1363,24 +1778,30 @@ def render_git_describe_long(pieces): + return rendered + + +-def render(pieces, style): ++def render(pieces: Dict[str, Any], style: str) -> Dict[str, Any]: + """Render the given version pieces into the requested style.""" + if pieces["error"]: +- return {"version": "unknown", +- "full-revisionid": pieces.get("long"), +- "dirty": None, +- "error": pieces["error"], +- "date": None} ++ return { ++ "version": "unknown", ++ "full-revisionid": pieces.get("long"), ++ "dirty": None, ++ "error": pieces["error"], ++ "date": None, ++ } + + if not style or style == "default": + style = "pep440" # the default + + if style == "pep440": + rendered = render_pep440(pieces) ++ elif style == "pep440-branch": ++ rendered = render_pep440_branch(pieces) + elif style == "pep440-pre": + rendered = render_pep440_pre(pieces) + elif style == "pep440-post": + rendered = render_pep440_post(pieces) ++ elif style == "pep440-post-branch": ++ rendered = render_pep440_post_branch(pieces) + elif style == "pep440-old": + rendered = render_pep440_old(pieces) + elif style == "git-describe": +@@ -1390,16 +1811,20 @@ def render(pieces, style): + else: + raise ValueError("unknown style '%s'" % style) + +- return {"version": rendered, "full-revisionid": pieces["long"], +- "dirty": pieces["dirty"], "error": None, +- "date": pieces.get("date")} ++ return { ++ "version": rendered, ++ "full-revisionid": pieces["long"], ++ "dirty": pieces["dirty"], ++ "error": None, ++ "date": pieces.get("date"), ++ } + + + class VersioneerBadRootError(Exception): + """The project root directory is unknown or missing key files.""" + + +-def get_versions(verbose=False): ++def get_versions(verbose: bool = False) -> Dict[str, Any]: + """Get the project version from whatever source is available. + + Returns dict with two keys: 'version' and 'full'. +@@ -1414,9 +1839,10 @@ def get_versions(verbose=False): + assert cfg.VCS is not None, "please set [versioneer]VCS= in setup.cfg" + handlers = HANDLERS.get(cfg.VCS) + assert handlers, "unrecognized VCS '%s'" % cfg.VCS +- verbose = verbose or cfg.verbose +- assert cfg.versionfile_source is not None, \ +- "please set versioneer.versionfile_source" ++ verbose = verbose or bool(cfg.verbose) # `bool()` used to avoid `None` ++ assert ( ++ cfg.versionfile_source is not None ++ ), "please set versioneer.versionfile_source" + assert cfg.tag_prefix is not None, "please set versioneer.tag_prefix" + + versionfile_abs = os.path.join(root, cfg.versionfile_source) +@@ -1470,18 +1896,26 @@ def get_versions(verbose=False): + if verbose: + print("unable to compute version") + +- return {"version": "0+unknown", "full-revisionid": None, +- "dirty": None, "error": "unable to compute version", +- "date": None} ++ return { ++ "version": "0+unknown", ++ "full-revisionid": None, ++ "dirty": None, ++ "error": "unable to compute version", ++ "date": None, ++ } + + +-def get_version(): ++def get_version() -> str: + """Get the short version string for this project.""" + return get_versions()["version"] + + +-def get_cmdclass(): +- """Get the custom setuptools/distutils subclasses used by Versioneer.""" ++def get_cmdclass(cmdclass: Optional[Dict[str, Any]] = None): ++ """Get the custom setuptools subclasses used by Versioneer. ++ ++ If the package uses a different cmdclass (e.g. one from numpy), it ++ should be provide as an argument. ++ """ + if "versioneer" in sys.modules: + del sys.modules["versioneer"] + # this fixes the "python setup.py develop" case (also 'install' and +@@ -1495,25 +1929,25 @@ def get_cmdclass(): + # parent is protected against the child's "import versioneer". By + # removing ourselves from sys.modules here, before the child build + # happens, we protect the child from the parent's versioneer too. +- # Also see https://github.com/warner/python-versioneer/issues/52 ++ # Also see https://github.com/python-versioneer/python-versioneer/issues/52 + +- cmds = {} ++ cmds = {} if cmdclass is None else cmdclass.copy() + +- # we add "version" to both distutils and setuptools +- from distutils.core import Command ++ # we add "version" to setuptools ++ from setuptools import Command + + class cmd_version(Command): + description = "report generated version string" +- user_options = [] +- boolean_options = [] ++ user_options: List[Tuple[str, str, str]] = [] ++ boolean_options: List[str] = [] + +- def initialize_options(self): ++ def initialize_options(self) -> None: + pass + +- def finalize_options(self): ++ def finalize_options(self) -> None: + pass + +- def run(self): ++ def run(self) -> None: + vers = get_versions(verbose=True) + print("Version: %s" % vers["version"]) + print(" full-revisionid: %s" % vers.get("full-revisionid")) +@@ -1521,9 +1955,10 @@ def get_cmdclass(): + print(" date: %s" % vers.get("date")) + if vers["error"]: + print(" error: %s" % vers["error"]) ++ + cmds["version"] = cmd_version + +- # we override "build_py" in both distutils and setuptools ++ # we override "build_py" in setuptools + # + # most invocation pathways end up running build_py: + # distutils/build -> build_py +@@ -1538,29 +1973,71 @@ def get_cmdclass(): + # then does setup.py bdist_wheel, or sometimes setup.py install + # setup.py egg_info -> ? + ++ # pip install -e . and setuptool/editable_wheel will invoke build_py ++ # but the build_py command is not expected to copy any files. ++ + # we override different "build_py" commands for both environments +- if "setuptools" in sys.modules: +- from setuptools.command.build_py import build_py as _build_py ++ if "build_py" in cmds: ++ _build_py: Any = cmds["build_py"] + else: +- from distutils.command.build_py import build_py as _build_py ++ from setuptools.command.build_py import build_py as _build_py + + class cmd_build_py(_build_py): +- def run(self): ++ def run(self) -> None: + root = get_root() + cfg = get_config_from_root(root) + versions = get_versions() + _build_py.run(self) ++ if getattr(self, "editable_mode", False): ++ # During editable installs `.py` and data files are ++ # not copied to build_lib ++ return + # now locate _version.py in the new build/ directory and replace + # it with an updated value + if cfg.versionfile_build: +- target_versionfile = os.path.join(self.build_lib, +- cfg.versionfile_build) ++ target_versionfile = os.path.join(self.build_lib, cfg.versionfile_build) + print("UPDATING %s" % target_versionfile) + write_to_version_file(target_versionfile, versions) ++ + cmds["build_py"] = cmd_build_py + ++ if "build_ext" in cmds: ++ _build_ext: Any = cmds["build_ext"] ++ else: ++ from setuptools.command.build_ext import build_ext as _build_ext ++ ++ class cmd_build_ext(_build_ext): ++ def run(self) -> None: ++ root = get_root() ++ cfg = get_config_from_root(root) ++ versions = get_versions() ++ _build_ext.run(self) ++ if self.inplace: ++ # build_ext --inplace will only build extensions in ++ # build/lib<..> dir with no _version.py to write to. ++ # As in place builds will already have a _version.py ++ # in the module dir, we do not need to write one. ++ return ++ # now locate _version.py in the new build/ directory and replace ++ # it with an updated value ++ if not cfg.versionfile_build: ++ return ++ target_versionfile = os.path.join(self.build_lib, cfg.versionfile_build) ++ if not os.path.exists(target_versionfile): ++ print( ++ f"Warning: {target_versionfile} does not exist, skipping " ++ "version update. This can happen if you are running build_ext " ++ "without first running build_py." ++ ) ++ return ++ print("UPDATING %s" % target_versionfile) ++ write_to_version_file(target_versionfile, versions) ++ ++ cmds["build_ext"] = cmd_build_ext ++ + if "cx_Freeze" in sys.modules: # cx_freeze enabled? +- from cx_Freeze.dist import build_exe as _build_exe ++ from cx_Freeze.dist import build_exe as _build_exe # type: ignore ++ + # nczeczulin reports that py2exe won't like the pep440-style string + # as FILEVERSION, but it can be used for PRODUCTVERSION, e.g. + # setup(console=[{ +@@ -1569,7 +2046,7 @@ def get_cmdclass(): + # ... + + class cmd_build_exe(_build_exe): +- def run(self): ++ def run(self) -> None: + root = get_root() + cfg = get_config_from_root(root) + versions = get_versions() +@@ -1581,24 +2058,28 @@ def get_cmdclass(): + os.unlink(target_versionfile) + with open(cfg.versionfile_source, "w") as f: + LONG = LONG_VERSION_PY[cfg.VCS] +- f.write(LONG % +- {"DOLLAR": "$", +- "STYLE": cfg.style, +- "TAG_PREFIX": cfg.tag_prefix, +- "PARENTDIR_PREFIX": cfg.parentdir_prefix, +- "VERSIONFILE_SOURCE": cfg.versionfile_source, +- }) ++ f.write( ++ LONG ++ % { ++ "DOLLAR": "$", ++ "STYLE": cfg.style, ++ "TAG_PREFIX": cfg.tag_prefix, ++ "PARENTDIR_PREFIX": cfg.parentdir_prefix, ++ "VERSIONFILE_SOURCE": cfg.versionfile_source, ++ } ++ ) ++ + cmds["build_exe"] = cmd_build_exe + del cmds["build_py"] + +- if 'py2exe' in sys.modules: # py2exe enabled? ++ if "py2exe" in sys.modules: # py2exe enabled? + try: +- from py2exe.distutils_buildexe import py2exe as _py2exe # py3 ++ from py2exe.setuptools_buildexe import py2exe as _py2exe # type: ignore + except ImportError: +- from py2exe.build_exe import py2exe as _py2exe # py2 ++ from py2exe.distutils_buildexe import py2exe as _py2exe # type: ignore + + class cmd_py2exe(_py2exe): +- def run(self): ++ def run(self) -> None: + root = get_root() + cfg = get_config_from_root(root) + versions = get_versions() +@@ -1610,23 +2091,67 @@ def get_cmdclass(): + os.unlink(target_versionfile) + with open(cfg.versionfile_source, "w") as f: + LONG = LONG_VERSION_PY[cfg.VCS] +- f.write(LONG % +- {"DOLLAR": "$", +- "STYLE": cfg.style, +- "TAG_PREFIX": cfg.tag_prefix, +- "PARENTDIR_PREFIX": cfg.parentdir_prefix, +- "VERSIONFILE_SOURCE": cfg.versionfile_source, +- }) ++ f.write( ++ LONG ++ % { ++ "DOLLAR": "$", ++ "STYLE": cfg.style, ++ "TAG_PREFIX": cfg.tag_prefix, ++ "PARENTDIR_PREFIX": cfg.parentdir_prefix, ++ "VERSIONFILE_SOURCE": cfg.versionfile_source, ++ } ++ ) ++ + cmds["py2exe"] = cmd_py2exe + ++ # sdist farms its file list building out to egg_info ++ if "egg_info" in cmds: ++ _egg_info: Any = cmds["egg_info"] ++ else: ++ from setuptools.command.egg_info import egg_info as _egg_info ++ ++ class cmd_egg_info(_egg_info): ++ def find_sources(self) -> None: ++ # egg_info.find_sources builds the manifest list and writes it ++ # in one shot ++ super().find_sources() ++ ++ # Modify the filelist and normalize it ++ root = get_root() ++ cfg = get_config_from_root(root) ++ self.filelist.append("versioneer.py") ++ if cfg.versionfile_source: ++ # There are rare cases where versionfile_source might not be ++ # included by default, so we must be explicit ++ self.filelist.append(cfg.versionfile_source) ++ self.filelist.sort() ++ self.filelist.remove_duplicates() ++ ++ # The write method is hidden in the manifest_maker instance that ++ # generated the filelist and was thrown away ++ # We will instead replicate their final normalization (to unicode, ++ # and POSIX-style paths) ++ from setuptools import unicode_utils ++ ++ normalized = [ ++ unicode_utils.filesys_decode(f).replace(os.sep, "/") ++ for f in self.filelist.files ++ ] ++ ++ manifest_filename = os.path.join(self.egg_info, "SOURCES.txt") ++ with open(manifest_filename, "w") as fobj: ++ fobj.write("\n".join(normalized)) ++ ++ cmds["egg_info"] = cmd_egg_info ++ + # we override different "sdist" commands for both environments +- if "setuptools" in sys.modules: +- from setuptools.command.sdist import sdist as _sdist ++ if "sdist" in cmds: ++ _sdist: Any = cmds["sdist"] + else: +- from distutils.command.sdist import sdist as _sdist ++ from setuptools.command.sdist import sdist as _sdist + + class cmd_sdist(_sdist): +- def run(self): ++ def run(self) -> None: + versions = get_versions() + self._versioneer_generated_versions = versions + # unless we update this, the command will keep using the old +@@ -1634,7 +2159,7 @@ def get_cmdclass(): + self.distribution.metadata.version = versions["version"] + return _sdist.run(self) + +- def make_release_tree(self, base_dir, files): ++ def make_release_tree(self, base_dir: str, files: List[str]) -> None: + root = get_root() + cfg = get_config_from_root(root) + _sdist.make_release_tree(self, base_dir, files) +@@ -1643,8 +2168,10 @@ def get_cmdclass(): + # updated value + target_versionfile = os.path.join(base_dir, cfg.versionfile_source) + print("UPDATING %s" % target_versionfile) +- write_to_version_file(target_versionfile, +- self._versioneer_generated_versions) ++ write_to_version_file( ++ target_versionfile, self._versioneer_generated_versions ++ ) ++ + cmds["sdist"] = cmd_sdist + + return cmds +@@ -1687,23 +2214,26 @@ SAMPLE_CONFIG = """ + + """ + +-INIT_PY_SNIPPET = """ ++OLD_SNIPPET = """ + from ._version import get_versions + __version__ = get_versions()['version'] + del get_versions + """ + ++INIT_PY_SNIPPET = """ ++from . import {0} ++__version__ = {0}.get_versions()['version'] ++""" ++ + +-def do_setup(): +- """Main VCS-independent setup function for installing Versioneer.""" ++def do_setup() -> int: ++ """Do main VCS-independent setup function for installing Versioneer.""" + root = get_root() + try: + cfg = get_config_from_root(root) +- except (EnvironmentError, configparser.NoSectionError, +- configparser.NoOptionError) as e: +- if isinstance(e, (EnvironmentError, configparser.NoSectionError)): +- print("Adding sample versioneer config to setup.cfg", +- file=sys.stderr) ++ except (OSError, configparser.NoSectionError, configparser.NoOptionError) as e: ++ if isinstance(e, (OSError, configparser.NoSectionError)): ++ print("Adding sample versioneer config to setup.cfg", file=sys.stderr) + with open(os.path.join(root, "setup.cfg"), "a") as f: + f.write(SAMPLE_CONFIG) + print(CONFIG_ERROR, file=sys.stderr) +@@ -1712,71 +2242,49 @@ def do_setup(): + print(" creating %s" % cfg.versionfile_source) + with open(cfg.versionfile_source, "w") as f: + LONG = LONG_VERSION_PY[cfg.VCS] +- f.write(LONG % {"DOLLAR": "$", +- "STYLE": cfg.style, +- "TAG_PREFIX": cfg.tag_prefix, +- "PARENTDIR_PREFIX": cfg.parentdir_prefix, +- "VERSIONFILE_SOURCE": cfg.versionfile_source, +- }) +- +- ipy = os.path.join(os.path.dirname(cfg.versionfile_source), +- "__init__.py") ++ f.write( ++ LONG ++ % { ++ "DOLLAR": "$", ++ "STYLE": cfg.style, ++ "TAG_PREFIX": cfg.tag_prefix, ++ "PARENTDIR_PREFIX": cfg.parentdir_prefix, ++ "VERSIONFILE_SOURCE": cfg.versionfile_source, ++ } ++ ) ++ ++ ipy = os.path.join(os.path.dirname(cfg.versionfile_source), "__init__.py") ++ maybe_ipy: Optional[str] = ipy + if os.path.exists(ipy): + try: + with open(ipy, "r") as f: + old = f.read() +- except EnvironmentError: ++ except OSError: + old = "" +- if INIT_PY_SNIPPET not in old: ++ module = os.path.splitext(os.path.basename(cfg.versionfile_source))[0] ++ snippet = INIT_PY_SNIPPET.format(module) ++ if OLD_SNIPPET in old: ++ print(" replacing boilerplate in %s" % ipy) ++ with open(ipy, "w") as f: ++ f.write(old.replace(OLD_SNIPPET, snippet)) ++ elif snippet not in old: + print(" appending to %s" % ipy) + with open(ipy, "a") as f: +- f.write(INIT_PY_SNIPPET) ++ f.write(snippet) + else: + print(" %s unmodified" % ipy) + else: + print(" %s doesn't exist, ok" % ipy) +- ipy = None +- +- # Make sure both the top-level "versioneer.py" and versionfile_source +- # (PKG/_version.py, used by runtime code) are in MANIFEST.in, so +- # they'll be copied into source distributions. Pip won't be able to +- # install the package without this. +- manifest_in = os.path.join(root, "MANIFEST.in") +- simple_includes = set() +- try: +- with open(manifest_in, "r") as f: +- for line in f: +- if line.startswith("include "): +- for include in line.split()[1:]: +- simple_includes.add(include) +- except EnvironmentError: +- pass +- # That doesn't cover everything MANIFEST.in can do +- # (http://docs.python.org/2/distutils/sourcedist.html#commands), so +- # it might give some false negatives. Appending redundant 'include' +- # lines is safe, though. +- if "versioneer.py" not in simple_includes: +- print(" appending 'versioneer.py' to MANIFEST.in") +- with open(manifest_in, "a") as f: +- f.write("include versioneer.py\n") +- else: +- print(" 'versioneer.py' already in MANIFEST.in") +- if cfg.versionfile_source not in simple_includes: +- print(" appending versionfile_source ('%s') to MANIFEST.in" % +- cfg.versionfile_source) +- with open(manifest_in, "a") as f: +- f.write("include %s\n" % cfg.versionfile_source) +- else: +- print(" versionfile_source already in MANIFEST.in") ++ maybe_ipy = None + + # Make VCS-specific changes. For git, this means creating/changing + # .gitattributes to mark _version.py for export-subst keyword + # substitution. +- do_vcs_install(manifest_in, cfg.versionfile_source, ipy) ++ do_vcs_install(cfg.versionfile_source, maybe_ipy) + return 0 + + +-def scan_setup_py(): ++def scan_setup_py() -> int: + """Validate the contents of setup.py against Versioneer's expectations.""" + found = set() + setters = False +@@ -1813,10 +2321,14 @@ def scan_setup_py(): + return errors + + ++def setup_command() -> NoReturn: ++ """Set up Versioneer and exit with appropriate error code.""" ++ errors = do_setup() ++ errors += scan_setup_py() ++ sys.exit(1 if errors else 0) ++ ++ + if __name__ == "__main__": + cmd = sys.argv[1] + if cmd == "setup": +- errors = do_setup() +- errors += scan_setup_py() +- if errors: +- sys.exit(1) ++ setup_command() +-- +2.41.0 + diff --git a/package/python-magic-wormhole/Config.in b/package/python-magic-wormhole/Config.in index e8429d203bc4..c92af7a95791 100644 --- a/package/python-magic-wormhole/Config.in +++ b/package/python-magic-wormhole/Config.in @@ -1,11 +1,11 @@ config BR2_PACKAGE_PYTHON_MAGIC_WORMHOLE bool "python-magic-wormhole" - depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS # python-autobahn -> python-cryptography + depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS # python-cryptography select BR2_PACKAGE_PYTHON_ATTRS # runtime select BR2_PACKAGE_PYTHON_AUTOBAHN # runtime select BR2_PACKAGE_PYTHON_AUTOMAT # runtime select BR2_PACKAGE_PYTHON_CLICK # runtime - select BR2_PACKAGE_PYTHON_HKDF # runtime + select BR2_PACKAGE_PYTHON_CRYPTOGRAPHY # runtime select BR2_PACKAGE_PYTHON_HUMANIZE # runtime select BR2_PACKAGE_PYTHON_PYNACL # runtime select BR2_PACKAGE_PYTHON_SIX # runtime diff --git a/package/python-magic-wormhole/python-magic-wormhole.hash b/package/python-magic-wormhole/python-magic-wormhole.hash index 5e880d542711..5a3ffab7320d 100644 --- a/package/python-magic-wormhole/python-magic-wormhole.hash +++ b/package/python-magic-wormhole/python-magic-wormhole.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/magic-wormhole/json -md5 ca190d92f56fe32ec8dfd4fc5aab8337 magic-wormhole-0.12.0.tar.gz -sha256 1b0fd8a334da978f3dd96b620fa9b9348cabedf26a87f74baac7a37052928160 magic-wormhole-0.12.0.tar.gz +md5 baf778af8df5416e6d01bb2b95fa5cc5 magic-wormhole-0.13.0.tar.gz +sha256 ac3bd68286270e7f149c06149a8e409e5fa34d7feb0e88844a26d29eed2d1516 magic-wormhole-0.13.0.tar.gz # Locally computed sha256 checksums sha256 4a9cc2415c52cef591b6822eee68fed36d7e6d80284b09638cff61d762d99060 LICENSE diff --git a/package/python-magic-wormhole/python-magic-wormhole.mk b/package/python-magic-wormhole/python-magic-wormhole.mk index 91f0f826d50a..3349bfd4e12e 100644 --- a/package/python-magic-wormhole/python-magic-wormhole.mk +++ b/package/python-magic-wormhole/python-magic-wormhole.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MAGIC_WORMHOLE_VERSION = 0.12.0 +PYTHON_MAGIC_WORMHOLE_VERSION = 0.13.0 PYTHON_MAGIC_WORMHOLE_SOURCE = magic-wormhole-$(PYTHON_MAGIC_WORMHOLE_VERSION).tar.gz -PYTHON_MAGIC_WORMHOLE_SITE = https://files.pythonhosted.org/packages/d4/62/5e4a86f7c4b111e016577f1b304063ebe604f430db15465ac58b13993608 +PYTHON_MAGIC_WORMHOLE_SITE = https://files.pythonhosted.org/packages/cc/e1/75c31ad5db873268ba0750006b3d0e40c30b0ad39e6f58b1e28a28d6de48 PYTHON_MAGIC_WORMHOLE_SETUP_TYPE = setuptools PYTHON_MAGIC_WORMHOLE_LICENSE = MIT PYTHON_MAGIC_WORMHOLE_LICENSE_FILES = LICENSE diff --git a/package/python-mako/Config.in b/package/python-mako/Config.in index 442e290efa44..7bba31943e4c 100644 --- a/package/python-mako/Config.in +++ b/package/python-mako/Config.in @@ -1,8 +1,27 @@ config BR2_PACKAGE_PYTHON_MAKO bool "python-mako" + select BR2_PACKAGE_PYTHON_MARKUPSAFE # runtime help Mako is a template library written in Python. It provides a familiar, non-XML syntax which compiles into Python modules for maximum performance. https://pypi.python.org/pypi/Mako + +if BR2_PACKAGE_PYTHON_MAKO + +config BR2_PACKAGE_PYTHON_MAKO_EXT_PYGMENTPLUGIN + bool "mako extension pygmentplugin" + select BR2_PACKAGE_PYTHON_PYGMENTS # runtime + help + Provide python-pygments support for + mako.ext.pygmentplugin + +config BR2_PACKAGE_PYTHON_MAKO_EXT_BABELPLUGIN + bool "mako extension babelplugin" + select BR2_PACKAGE_PYTHON_BABEL # runtime + help + Provide python-babel support for + mako.ext.babelplugin + +endif diff --git a/package/python-markdown/python-markdown.hash b/package/python-markdown/python-markdown.hash index 66208067cc13..21f0c28baccd 100644 --- a/package/python-markdown/python-markdown.hash +++ b/package/python-markdown/python-markdown.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/markdown/json -md5 597656cf4feadf1998b0511201620202 Markdown-3.4.1.tar.gz -sha256 3b809086bb6efad416156e00a0da66fe47618a5d6918dd688f53f40c8e4cfeff Markdown-3.4.1.tar.gz +md5 1bd2746a8f32643f151991719fe7faf9 Markdown-3.5.1.tar.gz +sha256 b65d7beb248dc22f2e8a31fb706d93798093c308dc1aba295aedeb9d41a813bd Markdown-3.5.1.tar.gz # Locally computed sha256 sha256 6f1193cb634718e65c3a537d6e25ebd614820ec0ef693cfc12248112638d64da LICENSE.md diff --git a/package/python-markdown/python-markdown.mk b/package/python-markdown/python-markdown.mk index 1b9b55620186..b491660f24a5 100644 --- a/package/python-markdown/python-markdown.mk +++ b/package/python-markdown/python-markdown.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MARKDOWN_VERSION = 3.4.1 +PYTHON_MARKDOWN_VERSION = 3.5.1 PYTHON_MARKDOWN_SOURCE = Markdown-$(PYTHON_MARKDOWN_VERSION).tar.gz -PYTHON_MARKDOWN_SITE = https://files.pythonhosted.org/packages/85/7e/133e943e97a943d2f1d8bae0c5060f8ac50e6691754eb9dbe036b047a9bb +PYTHON_MARKDOWN_SITE = https://files.pythonhosted.org/packages/35/14/1ec9742e151f3b06a723a20d9af7201a389ebd3aae8b7d93b521819489dc PYTHON_MARKDOWN_LICENSE = BSD-3-Clause PYTHON_MARKDOWN_LICENSE_FILES = LICENSE.md PYTHON_MARKDOWN_SETUP_TYPE = setuptools diff --git a/package/python-markdown2/python-markdown2.hash b/package/python-markdown2/python-markdown2.hash index f8582ba5b898..0e14f23261e3 100644 --- a/package/python-markdown2/python-markdown2.hash +++ b/package/python-markdown2/python-markdown2.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/markdown2/json -md5 bb3f451bed011a0d8959e3c1d5850c53 markdown2-2.4.6.tar.gz -sha256 f65b4dbe1e16591b14fd40bc659b8b58d285eab70c1da21f390294fcdec42bb0 markdown2-2.4.6.tar.gz +md5 a338c5be41a822914af8211b080659fd markdown2-2.4.10.tar.gz +sha256 cdba126d90dc3aef6f4070ac342f974d63f415678959329cc7909f96cc235d72 markdown2-2.4.10.tar.gz # Locally computed sha256 checksums sha256 f8c7c4d554409cf621b8d653dbfffb719745fd36f5c49b8305258649b403ef9c LICENSE.txt diff --git a/package/python-markdown2/python-markdown2.mk b/package/python-markdown2/python-markdown2.mk index b1c162e12f43..b4719562fca0 100644 --- a/package/python-markdown2/python-markdown2.mk +++ b/package/python-markdown2/python-markdown2.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MARKDOWN2_VERSION = 2.4.6 +PYTHON_MARKDOWN2_VERSION = 2.4.10 PYTHON_MARKDOWN2_SOURCE = markdown2-$(PYTHON_MARKDOWN2_VERSION).tar.gz -PYTHON_MARKDOWN2_SITE = https://files.pythonhosted.org/packages/83/b7/24613765f558afde9f47b61fcd787a9856ac1515b53af38bd11bf2fb3c8c +PYTHON_MARKDOWN2_SITE = https://files.pythonhosted.org/packages/8e/b3/64c459af88ea8c2eeb020d0edf3e36c62176e988c47e412133c37c5da5e7 PYTHON_MARKDOWN2_SETUP_TYPE = setuptools PYTHON_MARKDOWN2_LICENSE = MIT PYTHON_MARKDOWN2_LICENSE_FILES = LICENSE.txt diff --git a/package/python-markupsafe/python-markupsafe.hash b/package/python-markupsafe/python-markupsafe.hash index 2d1d81c62e01..ec357a83ce0c 100644 --- a/package/python-markupsafe/python-markupsafe.hash +++ b/package/python-markupsafe/python-markupsafe.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/markupsafe/json -md5 9809f9fdd98bc835b0c21aa8f79cbf30 MarkupSafe-2.1.1.tar.gz -sha256 7f91197cc9e48f989d12e4e6fbc46495c446636dfc81b9ccf50bb0ec74b91d4b MarkupSafe-2.1.1.tar.gz +md5 ca33f119bd0551ce15837f58bb180214 MarkupSafe-2.1.3.tar.gz +sha256 af598ed32d6ae86f1b747b82783958b1a4ab8f617b06fe68795c7f026abbdcad MarkupSafe-2.1.3.tar.gz # Locally computed sha256 checksums sha256 489a8e1108509ed98a37bb983e11e0f7e1d31f0bd8f99a79c8448e7ff37d07ea LICENSE.rst diff --git a/package/python-markupsafe/python-markupsafe.mk b/package/python-markupsafe/python-markupsafe.mk index 49bfc0b840e1..0dca997f87e5 100644 --- a/package/python-markupsafe/python-markupsafe.mk +++ b/package/python-markupsafe/python-markupsafe.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MARKUPSAFE_VERSION = 2.1.1 +PYTHON_MARKUPSAFE_VERSION = 2.1.3 PYTHON_MARKUPSAFE_SOURCE = MarkupSafe-$(PYTHON_MARKUPSAFE_VERSION).tar.gz -PYTHON_MARKUPSAFE_SITE = https://files.pythonhosted.org/packages/1d/97/2288fe498044284f39ab8950703e88abbac2abbdf65524d576157af70556 +PYTHON_MARKUPSAFE_SITE = https://files.pythonhosted.org/packages/6d/7c/59a3248f411813f8ccba92a55feaac4bf360d29e2ff05ee7d8e1ef2d7dbf PYTHON_MARKUPSAFE_SETUP_TYPE = setuptools PYTHON_MARKUPSAFE_LICENSE = BSD-3-Clause PYTHON_MARKUPSAFE_LICENSE_FILES = LICENSE.rst diff --git a/package/python-marshmallow-sqlalchemy/python-marshmallow-sqlalchemy.hash b/package/python-marshmallow-sqlalchemy/python-marshmallow-sqlalchemy.hash index 6b847de94d16..d3d1b3876f82 100644 --- a/package/python-marshmallow-sqlalchemy/python-marshmallow-sqlalchemy.hash +++ b/package/python-marshmallow-sqlalchemy/python-marshmallow-sqlalchemy.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/marshmallow-sqlalchemy/json -md5 5e012b07ccf4ad67dbd3f38cc68cb1f4 marshmallow-sqlalchemy-0.28.1.tar.gz -sha256 aa376747296780a56355e3067b9c8bf43a2a1c44ff985de82b3a5d9e161ca2b8 marshmallow-sqlalchemy-0.28.1.tar.gz +md5 e1b2858be2f0ce6dead48e67080631c4 marshmallow-sqlalchemy-0.29.0.tar.gz +sha256 3523a774390ef0c1c0f7c708a7519809c5396cf608720f14f55c36f74ff5bbec marshmallow-sqlalchemy-0.29.0.tar.gz # Locally computed sha256 checksums sha256 625df8e2758a271b4bc90525c0b6161814e0f72cb3504b03ab5206b7abf50072 LICENSE diff --git a/package/python-marshmallow-sqlalchemy/python-marshmallow-sqlalchemy.mk b/package/python-marshmallow-sqlalchemy/python-marshmallow-sqlalchemy.mk index 293ea29be60b..8f176feb4da3 100644 --- a/package/python-marshmallow-sqlalchemy/python-marshmallow-sqlalchemy.mk +++ b/package/python-marshmallow-sqlalchemy/python-marshmallow-sqlalchemy.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MARSHMALLOW_SQLALCHEMY_VERSION = 0.28.1 +PYTHON_MARSHMALLOW_SQLALCHEMY_VERSION = 0.29.0 PYTHON_MARSHMALLOW_SQLALCHEMY_SOURCE = marshmallow-sqlalchemy-$(PYTHON_MARSHMALLOW_SQLALCHEMY_VERSION).tar.gz -PYTHON_MARSHMALLOW_SQLALCHEMY_SITE = https://files.pythonhosted.org/packages/eb/96/3895bde2247fa653c36d887ff08e439665668aa7c991a3924ae199be88d6 +PYTHON_MARSHMALLOW_SQLALCHEMY_SITE = https://files.pythonhosted.org/packages/fa/0d/4dd275732213cefb4e49a86c60443cb1e3e0d0bd605625aed3fa7bb22fdd PYTHON_MARSHMALLOW_SQLALCHEMY_SETUP_TYPE = setuptools PYTHON_MARSHMALLOW_SQLALCHEMY_LICENSE = MIT PYTHON_MARSHMALLOW_SQLALCHEMY_LICENSE_FILES = LICENSE diff --git a/package/python-marshmallow/python-marshmallow.hash b/package/python-marshmallow/python-marshmallow.hash index dc277d16e552..cb60216a2637 100644 --- a/package/python-marshmallow/python-marshmallow.hash +++ b/package/python-marshmallow/python-marshmallow.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/marshmallow/json -md5 3cf5c42917509a199c3105466435c425 marshmallow-3.19.0.tar.gz -sha256 90032c0fd650ce94b6ec6dc8dfeb0e3ff50c144586462c389b81a07205bedb78 marshmallow-3.19.0.tar.gz +md5 c6093f980a650b1088bbc5610055a05c marshmallow-3.20.1.tar.gz +sha256 5d2371bbe42000f2b3fb5eaa065224df7d8f8597bc19a1bbfa5bfe7fba8da889 marshmallow-3.20.1.tar.gz # Locally computed sha256 checksums sha256 759dc79c383ad79340c6e41f712e80407fe0d2cb3cbaad1ed98aa9c3e28a602c LICENSE sha256 f982e6fd97ba00973e94605b972ff04894b22c4fa937b868828b32ae8f0a7c2e docs/license.rst diff --git a/package/python-marshmallow/python-marshmallow.mk b/package/python-marshmallow/python-marshmallow.mk index ba6da6b29cf1..afd4068f4460 100644 --- a/package/python-marshmallow/python-marshmallow.mk +++ b/package/python-marshmallow/python-marshmallow.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MARSHMALLOW_VERSION = 3.19.0 +PYTHON_MARSHMALLOW_VERSION = 3.20.1 PYTHON_MARSHMALLOW_SOURCE = marshmallow-$(PYTHON_MARSHMALLOW_VERSION).tar.gz -PYTHON_MARSHMALLOW_SITE = https://files.pythonhosted.org/packages/5e/59/dd465e5ab0ccb879c410f88c75189a19fd437b12cd9a03b31579aef58709 +PYTHON_MARSHMALLOW_SITE = https://files.pythonhosted.org/packages/e4/e0/3e49c0f91f3e8954806c1076f4eae2c95a9d3ed2546f267c683b877d327b PYTHON_MARSHMALLOW_SETUP_TYPE = setuptools PYTHON_MARSHMALLOW_LICENSE = MIT PYTHON_MARSHMALLOW_LICENSE_FILES = LICENSE diff --git a/package/python-matplotlib/Config.in b/package/python-matplotlib/Config.in index b93677766274..cc0d830f4f5d 100644 --- a/package/python-matplotlib/Config.in +++ b/package/python-matplotlib/Config.in @@ -3,6 +3,8 @@ config BR2_PACKAGE_PYTHON_MATPLOTLIB depends on BR2_INSTALL_LIBSTDCPP depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL # python-numpy + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_9 # python-numpy + depends on BR2_HOST_GCC_AT_LEAST_9 # host-python-numpy select BR2_PACKAGE_FREETYPE # runtime select BR2_PACKAGE_LIBPNG # runtime select BR2_PACKAGE_PYTHON_CERTIFI # runtime @@ -11,6 +13,7 @@ config BR2_PACKAGE_PYTHON_MATPLOTLIB select BR2_PACKAGE_PYTHON_DATEUTIL # runtime select BR2_PACKAGE_PYTHON_KIWISOLVER # runtime select BR2_PACKAGE_PYTHON_NUMPY # runtime + select BR2_PACKAGE_PYTHON_PILLOW # runtime select BR2_PACKAGE_PYTHON_PYPARSING # runtime select BR2_PACKAGE_PYTHON3_ZLIB # runtime select BR2_PACKAGE_QHULL @@ -35,6 +38,7 @@ config BR2_PACKAGE_PYTHON_MATPLOTLIB_QT endif -comment "python-matplotlib needs a glibc or musl toolchain w/ C++" +comment "python-matplotlib needs a glibc or musl toolchain w/ C++, gcc >= 9, host gcc >= 9" depends on !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) || \ - !BR2_INSTALL_LIBSTDCPP + !BR2_INSTALL_LIBSTDCPP || !BR2_HOST_GCC_AT_LEAST_9 || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_9 diff --git a/package/python-maturin/python-maturin.hash b/package/python-maturin/python-maturin.hash index b104b1fbbeab..fcc6a257137c 100644 --- a/package/python-maturin/python-maturin.hash +++ b/package/python-maturin/python-maturin.hash @@ -1,5 +1,5 @@ # Locally calculated after vendoring -sha256 59157a06c0a482aec750d64746f2b23e556ce3ec62d9cdce74fcb7b4658b722b maturin-0.14.9.tar.gz +sha256 7e2fdc083ae253c0f68f6313a2ad2de423219f09e7fa65ef55189d42128e4cff maturin-1.3.1.tar.gz # Locally computed sha256 checksums sha256 a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2 license-apache sha256 ea7882c559733766ad08343bde1d1ec80a4967c03a738fb8e0058ef6289f7b7c license-mit diff --git a/package/python-maturin/python-maturin.mk b/package/python-maturin/python-maturin.mk index 3484e09d2270..170dee76492b 100644 --- a/package/python-maturin/python-maturin.mk +++ b/package/python-maturin/python-maturin.mk @@ -4,21 +4,12 @@ # ################################################################################ -PYTHON_MATURIN_VERSION = 0.14.9 +PYTHON_MATURIN_VERSION = 1.3.1 PYTHON_MATURIN_SOURCE = maturin-$(PYTHON_MATURIN_VERSION).tar.gz -PYTHON_MATURIN_SITE = https://files.pythonhosted.org/packages/90/f9/f4242c0e8bc5def9a7135c12574449dbb411ecc595cf72202ca97a79c2ad -PYTHON_MATURIN_SETUP_TYPE = setuptools +PYTHON_MATURIN_SITE = https://files.pythonhosted.org/packages/d6/a3/42ff26b2b3011ada67c73db32a9ccf9fa18d459cbef8ed6eefc3b283ee60 +PYTHON_MATURIN_SETUP_TYPE = setuptools-rust PYTHON_MATURIN_LICENSE = Apache-2.0 or MIT PYTHON_MATURIN_LICENSE_FILES = license-apache license-mit -HOST_PYTHON_MATURIN_DEPENDENCIES = \ - host-python-setuptools-rust \ - host-rustc -HOST_PYTHON_MATURIN_ENV = \ - $(HOST_PKG_CARGO_ENV) \ - PYO3_CROSS_LIB_DIR="$(HOST_DIR)/lib/python$(PYTHON3_VERSION_MAJOR)" -# We need to vendor the Cargo crates at download time -PYTHON_MATURIN_DOWNLOAD_POST_PROCESS = cargo -PYTHON_MATURIN_DOWNLOAD_DEPENDENCIES = host-rustc -HOST_PYTHON_MATURIN_DL_ENV = $(HOST_PKG_CARGO_ENV) +HOST_PYTHON_MATURIN_DEPENDENCIES = host-python-tomli $(eval $(host-python-package)) diff --git a/package/python-mbstrdecoder/python-mbstrdecoder.hash b/package/python-mbstrdecoder/python-mbstrdecoder.hash index dd2f412bee47..2943ef293f05 100644 --- a/package/python-mbstrdecoder/python-mbstrdecoder.hash +++ b/package/python-mbstrdecoder/python-mbstrdecoder.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/mbstrdecoder/json -md5 62efa113a3cd2d40942359d6699338f7 mbstrdecoder-1.1.1.tar.gz -sha256 0a99413b92bbaddda89d376f496d710dc7131417e98414a756ebcd41374e068d mbstrdecoder-1.1.1.tar.gz +md5 33522a4bd9217dae46ebd0761e1a1e7c mbstrdecoder-1.1.3.tar.gz +sha256 dcfd2c759322eb44fe193a9e0b1b86c5b87f3ec5ea8e1bb43b3e9ae423f1e8fe mbstrdecoder-1.1.3.tar.gz # Locally computed sha256 checksums sha256 7588265082eed5e9f4afd5090c57e610b740ec547b16aaaab739ba07c5eefb15 LICENSE diff --git a/package/python-mbstrdecoder/python-mbstrdecoder.mk b/package/python-mbstrdecoder/python-mbstrdecoder.mk index f875e4d71d72..566420a60e5a 100644 --- a/package/python-mbstrdecoder/python-mbstrdecoder.mk +++ b/package/python-mbstrdecoder/python-mbstrdecoder.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MBSTRDECODER_VERSION = 1.1.1 +PYTHON_MBSTRDECODER_VERSION = 1.1.3 PYTHON_MBSTRDECODER_SOURCE = mbstrdecoder-$(PYTHON_MBSTRDECODER_VERSION).tar.gz -PYTHON_MBSTRDECODER_SITE = https://files.pythonhosted.org/packages/ba/ac/ba46bb6eb6165541ce25ff230469efe1c04043cf173f856dcc91876c38de +PYTHON_MBSTRDECODER_SITE = https://files.pythonhosted.org/packages/70/8f/dd5d4efbe3f90d2d38c948f0ca5c698e2d6cedc58ead2f5b90272cbcb4fa PYTHON_MBSTRDECODER_SETUP_TYPE = setuptools PYTHON_MBSTRDECODER_LICENSE = MIT PYTHON_MBSTRDECODER_LICENSE_FILES = LICENSE diff --git a/package/python-midiutil/Config.in b/package/python-midiutil/Config.in new file mode 100644 index 000000000000..c496e60421e3 --- /dev/null +++ b/package/python-midiutil/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_MIDIUTIL + bool "python-midiutil" + help + A pure python library for creating multi-track MIDI files. + + https://github.com/MarkCWirt/MIDIUtil diff --git a/package/python-midiutil/python-midiutil.hash b/package/python-midiutil/python-midiutil.hash new file mode 100644 index 000000000000..88340a23b88a --- /dev/null +++ b/package/python-midiutil/python-midiutil.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/midiutil/json +md5 948c16c74e7355268158f227b710edce MIDIUtil-1.2.1.tar.gz +sha256 79fa983bd1efc60785f68a8fe78fa8f45b8d7ec5898bf7cb7f3f7f3336d6a90a MIDIUtil-1.2.1.tar.gz +# Locally computed sha256 checksums +sha256 8d5bdaebe8445a4c2dc812c205eb5455ba123aa1af8503cc88712115ab7c97ef License.txt diff --git a/package/python-midiutil/python-midiutil.mk b/package/python-midiutil/python-midiutil.mk new file mode 100644 index 000000000000..cb7e8f6ccb99 --- /dev/null +++ b/package/python-midiutil/python-midiutil.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-midiutil +# +################################################################################ + +PYTHON_MIDIUTIL_VERSION = 1.2.1 +PYTHON_MIDIUTIL_SOURCE = MIDIUtil-$(PYTHON_MIDIUTIL_VERSION).tar.gz +PYTHON_MIDIUTIL_SITE = https://files.pythonhosted.org/packages/f5/44/fde6772d8bfaea64fcf5eb948124d0a5fdf5f848b14ac22a23ced53e562d +PYTHON_MIDIUTIL_SETUP_TYPE = setuptools +PYTHON_MIDIUTIL_LICENSE = MIT +PYTHON_MIDIUTIL_LICENSE_FILES = License.txt + +$(eval $(python-package)) diff --git a/package/python-minimalmodbus/python-minimalmodbus.hash b/package/python-minimalmodbus/python-minimalmodbus.hash index b29e83773bc6..635090fae782 100644 --- a/package/python-minimalmodbus/python-minimalmodbus.hash +++ b/package/python-minimalmodbus/python-minimalmodbus.hash @@ -1,4 +1,4 @@ # sha256 from https://pypi.org/project/minimalmodbus -sha256 cf873a2530be3f4b86467c3e4d47b5f69fd345d47451baca4adbf59e2ac36d00 minimalmodbus-2.0.1.tar.gz +sha256 c3f5a56e107d537e4bb420f7e735841ab2939c8ca6fb528f5fe4124571315b64 minimalmodbus-2.1.1.tar.gz # Hash for license file sha256 abe787d472ae2069e935c84eb13fd770518dfb08b92d5f190f3cd7ff6d1f6f32 LICENSE diff --git a/package/python-minimalmodbus/python-minimalmodbus.mk b/package/python-minimalmodbus/python-minimalmodbus.mk index b463cf9ffe01..5a6e7733beb6 100644 --- a/package/python-minimalmodbus/python-minimalmodbus.mk +++ b/package/python-minimalmodbus/python-minimalmodbus.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MINIMALMODBUS_VERSION = 2.0.1 +PYTHON_MINIMALMODBUS_VERSION = 2.1.1 PYTHON_MINIMALMODBUS_SOURCE = minimalmodbus-$(PYTHON_MINIMALMODBUS_VERSION).tar.gz -PYTHON_MINIMALMODBUS_SITE = https://files.pythonhosted.org/packages/78/99/8cd22b4465e697bae2b02fd06aaccd4c5cdfbb18945d728db99f23d71df9 +PYTHON_MINIMALMODBUS_SITE = https://files.pythonhosted.org/packages/37/fc/8a58f7bcdece751f16a4a9aac780acd1288aa8ac6adbffdd764c88fb71c6 PYTHON_MINIMALMODBUS_SETUP_TYPE = setuptools PYTHON_MINIMALMODBUS_LICENSE = Apache-2.0 PYTHON_MINIMALMODBUS_LICENSE_FILES = LICENSE diff --git a/package/python-mistune/python-mistune.hash b/package/python-mistune/python-mistune.hash index 161f2ed6ff37..7dee76cfa202 100644 --- a/package/python-mistune/python-mistune.hash +++ b/package/python-mistune/python-mistune.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/mistune/json -md5 a4437edb22cf6519a7c61730fecb1a3f mistune-2.0.4.tar.gz -sha256 9ee0a66053e2267aba772c71e06891fa8f1af6d4b01d5e84e267b4570d4d9808 mistune-2.0.4.tar.gz +md5 8c02b3476d0343e0a4c75a2321729f01 mistune-3.0.2.tar.gz +sha256 fc7f93ded930c92394ef2cb6f04a8aabab4117a91449e72dcc8dfa646a508be8 mistune-3.0.2.tar.gz # Locally computed sha256 checksums sha256 539013fd8e19f744f8bf0e27a532bbff54cd689ecef7a800f56ae5dc824be870 LICENSE diff --git a/package/python-mistune/python-mistune.mk b/package/python-mistune/python-mistune.mk index 1e4bb71903eb..ac900c82ba02 100644 --- a/package/python-mistune/python-mistune.mk +++ b/package/python-mistune/python-mistune.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MISTUNE_VERSION = 2.0.4 +PYTHON_MISTUNE_VERSION = 3.0.2 PYTHON_MISTUNE_SOURCE = mistune-$(PYTHON_MISTUNE_VERSION).tar.gz -PYTHON_MISTUNE_SITE = https://files.pythonhosted.org/packages/cd/9b/0f98334812f548a5ee4399b76e33752a74fc7bb976f5efb34d962f03d585 +PYTHON_MISTUNE_SITE = https://files.pythonhosted.org/packages/ef/c8/f0173fe3bf85fd891aee2e7bcd8207dfe26c2c683d727c5a6cc3aec7b628 PYTHON_MISTUNE_LICENSE = BSD-3-Clause PYTHON_MISTUNE_LICENSE_FILES = LICENSE PYTHON_MISTUNE_SETUP_TYPE = setuptools diff --git a/package/python-modbus-tk/python-modbus-tk.hash b/package/python-modbus-tk/python-modbus-tk.hash index c486e4971502..c7f4ac2dd416 100644 --- a/package/python-modbus-tk/python-modbus-tk.hash +++ b/package/python-modbus-tk/python-modbus-tk.hash @@ -1,5 +1,6 @@ -# sha256 from https://pypi.org/pypi/modbus-tk/json -sha256 893514bbd8c92118d20a19979e0239e7cb2a63f8f1795a0271e57def09d11770 modbus_tk-1.1.2.tar.gz +# md5, sha256 from https://pypi.org/pypi/modbus-tk/json +md5 2e66c361d3e4591a19be1259ef50fdf7 modbus_tk-1.1.3.tar.gz +sha256 690fa7bb86ea978992465d2d61c8b5acc639ce0e8b833a0aa96d4dd172c5644a modbus_tk-1.1.3.tar.gz # Locally computed sha256 checksums sha256 3b6a7f9c478ac1982e86cdadb45eb4788241b95839500eb26839d5053b74a24a license.txt sha256 aa7ca42152a13db6a27b31944f99851efc3b9ee813912ff21d7d6ceadca62e6f copying.txt diff --git a/package/python-modbus-tk/python-modbus-tk.mk b/package/python-modbus-tk/python-modbus-tk.mk index 30056bb20737..d8552e57a628 100644 --- a/package/python-modbus-tk/python-modbus-tk.mk +++ b/package/python-modbus-tk/python-modbus-tk.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MODBUS_TK_VERSION = 1.1.2 +PYTHON_MODBUS_TK_VERSION = 1.1.3 PYTHON_MODBUS_TK_SOURCE = modbus_tk-$(PYTHON_MODBUS_TK_VERSION).tar.gz -PYTHON_MODBUS_TK_SITE = https://files.pythonhosted.org/packages/ce/e9/30d86eb912bf868b8c97698b5747f10cf72dc26c674fd030249bc3275484 +PYTHON_MODBUS_TK_SITE = https://files.pythonhosted.org/packages/8d/9f/5963e30dba160dbc646b76c59ca8136709c7fe9002bbaaa3cf1e1bb0404b PYTHON_MODBUS_TK_SETUP_TYPE = setuptools PYTHON_MODBUS_TK_LICENSE = LGPL-2.1+ PYTHON_MODBUS_TK_LICENSE_FILES = license.txt copying.txt diff --git a/package/python-more-itertools/python-more-itertools.hash b/package/python-more-itertools/python-more-itertools.hash index c12d3f5623c4..6f659ab468b2 100644 --- a/package/python-more-itertools/python-more-itertools.hash +++ b/package/python-more-itertools/python-more-itertools.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/more-itertools/json -md5 58f6fe36c3c94bbc569130df546dcfc9 more-itertools-9.0.0.tar.gz -sha256 5a6257e40878ef0520b1803990e3e22303a41b5714006c32a3fd8304b26ea1ab more-itertools-9.0.0.tar.gz +md5 3651461253e7d206073affb491b5c6e0 more-itertools-10.1.0.tar.gz +sha256 626c369fa0eb37bac0291bce8259b332fd59ac792fa5497b59837309cd5b114a more-itertools-10.1.0.tar.gz # Locally computed sha256 checksums sha256 09f1c8c9e941af3e584d59641ea9b87d83c0cb0fd007eb5ef391a7e2643c1a46 LICENSE diff --git a/package/python-more-itertools/python-more-itertools.mk b/package/python-more-itertools/python-more-itertools.mk index 734d87e057f3..71c33bfdf1cf 100644 --- a/package/python-more-itertools/python-more-itertools.mk +++ b/package/python-more-itertools/python-more-itertools.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MORE_ITERTOOLS_VERSION = 9.0.0 +PYTHON_MORE_ITERTOOLS_VERSION = 10.1.0 PYTHON_MORE_ITERTOOLS_SOURCE = more-itertools-$(PYTHON_MORE_ITERTOOLS_VERSION).tar.gz -PYTHON_MORE_ITERTOOLS_SITE = https://files.pythonhosted.org/packages/13/b3/397aa9668da8b1f0c307bc474608653d46122ae0563d1d32f60e24fa0cbd +PYTHON_MORE_ITERTOOLS_SITE = https://files.pythonhosted.org/packages/2d/73/3557e45746fcaded71125c0a1c0f87616e8258c78391f0c365bf97bbfc99 PYTHON_MORE_ITERTOOLS_SETUP_TYPE = flit PYTHON_MORE_ITERTOOLS_LICENSE = MIT PYTHON_MORE_ITERTOOLS_LICENSE_FILES = LICENSE diff --git a/package/python-mpd2/python-mpd2.hash b/package/python-mpd2/python-mpd2.hash index 88dcb2837751..cfe5a7c0c000 100644 --- a/package/python-mpd2/python-mpd2.hash +++ b/package/python-mpd2/python-mpd2.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/python-mpd2/json -md5 594dff3e53c8eb6f583ba642bc2c1a27 python-mpd2-3.0.5.tar.gz -sha256 6f1bffd93b9a32fc018a9bbf3487505b52e0d757ec34066905c60a912d492384 python-mpd2-3.0.5.tar.gz +md5 f083c107b28525bb4c2580140861d86e python-mpd2-3.1.0.tar.gz +sha256 f33c2cdb0d6baa74a36724f38c1c4a099a7ce2c8ec4a2bb7192150a5855df476 python-mpd2-3.1.0.tar.gz # Locally computed sha256 checksums sha256 da7eabb7bafdf7d3ae5e9f223aa5bdc1eece45ac569dc21b3b037520b4464768 LICENSE.txt diff --git a/package/python-mpd2/python-mpd2.mk b/package/python-mpd2/python-mpd2.mk index bfe382b59e09..124ff57db02e 100644 --- a/package/python-mpd2/python-mpd2.mk +++ b/package/python-mpd2/python-mpd2.mk @@ -4,8 +4,8 @@ # ################################################################################ -PYTHON_MPD2_VERSION = 3.0.5 -PYTHON_MPD2_SITE = https://files.pythonhosted.org/packages/ed/c2/263621bdbbc37fa1a55fa1a7f66fd601bf08b3f87481e318a3509fb6c4bf +PYTHON_MPD2_VERSION = 3.1.0 +PYTHON_MPD2_SITE = https://files.pythonhosted.org/packages/59/32/e57725251ce3117d2ed2a7b76d9722ea9bea26f54b2cc8981d03350e4103 PYTHON_MPD2_SETUP_TYPE = setuptools PYTHON_MPD2_LICENSE = LGPL-3.0+ PYTHON_MPD2_LICENSE_FILES = LICENSE.txt diff --git a/package/python-msgfy/python-msgfy.hash b/package/python-msgfy/python-msgfy.hash index 9f5bfe480443..2517afbb489a 100644 --- a/package/python-msgfy/python-msgfy.hash +++ b/package/python-msgfy/python-msgfy.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/msgfy/json -md5 1727a08a0cf7fb704045168c71993280 msgfy-0.2.0.tar.gz -sha256 37c907cccb19afe73ce44111a21b410b685be92c9c44496bc4381fd93c5ad7b6 msgfy-0.2.0.tar.gz +md5 ef3c61804003f4356119f7d00c5932f9 msgfy-0.2.1.tar.gz +sha256 161024732591444cc05ca3982a010005932005ec861467dead49349447a91671 msgfy-0.2.1.tar.gz # Locally computed sha256 checksums sha256 fcfe96f8fb1bf3478a51c828e7f7afee01500ce1c2d4345d052edb858be05227 LICENSE diff --git a/package/python-msgfy/python-msgfy.mk b/package/python-msgfy/python-msgfy.mk index 4100a912b2c3..8565c2210e9b 100644 --- a/package/python-msgfy/python-msgfy.mk +++ b/package/python-msgfy/python-msgfy.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MSGFY_VERSION = 0.2.0 +PYTHON_MSGFY_VERSION = 0.2.1 PYTHON_MSGFY_SOURCE = msgfy-$(PYTHON_MSGFY_VERSION).tar.gz -PYTHON_MSGFY_SITE = https://files.pythonhosted.org/packages/c6/2a/663ef86625f34ee4165da1eb824442cfb1f676e892946d7fe39a8c775682 +PYTHON_MSGFY_SITE = https://files.pythonhosted.org/packages/51/0e/b78151a63e8c5cab745e90ed7b4a741dba5439a8538636bf6a5da72bad23 PYTHON_MSGFY_SETUP_TYPE = setuptools PYTHON_MSGFY_LICENSE = MIT PYTHON_MSGFY_LICENSE_FILES = LICENSE diff --git a/package/python-msgpack/python-msgpack.hash b/package/python-msgpack/python-msgpack.hash index 4d0f510883de..50462db8db91 100644 --- a/package/python-msgpack/python-msgpack.hash +++ b/package/python-msgpack/python-msgpack.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/msgpack/json -md5 1822cdb939e7531f7ad0f7f09b434f22 msgpack-1.0.4.tar.gz -sha256 f5d869c18f030202eb412f08b28d2afeea553d6613aee89e200d7aca7ef01f5f msgpack-1.0.4.tar.gz +md5 a5a4172b2e89812ec28267dd8942b77d msgpack-1.0.7.tar.gz +sha256 572efc93db7a4d27e404501975ca6d2d9775705c2d922390d878fcf768d92c87 msgpack-1.0.7.tar.gz # Locally computed sha256 checksums sha256 492dedba85da5872f78e6091bcd1fea474d660d35acb4dee964b8aab3f007427 COPYING diff --git a/package/python-msgpack/python-msgpack.mk b/package/python-msgpack/python-msgpack.mk index d9304e4def68..3ee7c54ce118 100644 --- a/package/python-msgpack/python-msgpack.mk +++ b/package/python-msgpack/python-msgpack.mk @@ -4,11 +4,18 @@ # ################################################################################ -PYTHON_MSGPACK_VERSION = 1.0.4 +PYTHON_MSGPACK_VERSION = 1.0.7 PYTHON_MSGPACK_SOURCE = msgpack-$(PYTHON_MSGPACK_VERSION).tar.gz -PYTHON_MSGPACK_SITE = https://files.pythonhosted.org/packages/22/44/0829b19ac243211d1d2bd759999aa92196c546518b0be91de9cacc98122a +PYTHON_MSGPACK_SITE = https://files.pythonhosted.org/packages/c2/d5/5662032db1571110b5b51647aed4b56dfbd01bfae789fa566a2be1f385d1 PYTHON_MSGPACK_LICENSE = Apache-2.0 PYTHON_MSGPACK_LICENSE_FILES = COPYING PYTHON_MSGPACK_SETUP_TYPE = setuptools +# When set in the environment, whatever the value, MSGPACK_PUREPYTHON drives +# using the pure python implementation rather than rely on the C++ native code. +# So we can't force it to use C++; we can only force it to use pure python. +ifeq ($(BR2_INSTALL_LIBSTDCPP),) +PYTHON_MSGPACK_ENV = MSGPACK_PUREPYTHON=1 +endif + $(eval $(python-package)) diff --git a/package/python-munch/python-munch.hash b/package/python-munch/python-munch.hash index 7e3228283308..a895bc918557 100644 --- a/package/python-munch/python-munch.hash +++ b/package/python-munch/python-munch.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/munch/json -md5 ed84c3718416c8d4d03d0a6ef46e8e0c munch-2.5.0.tar.gz -sha256 2d735f6f24d4dba3417fa448cae40c6e896ec1fdab6cdb5e6510999758a4dbd2 munch-2.5.0.tar.gz +md5 4e70cf760e3b81dcaa6050803c1dbd72 munch-4.0.0.tar.gz +sha256 542cb151461263216a4e37c3fd9afc425feeaf38aaa3025cd2a981fadb422235 munch-4.0.0.tar.gz # Locally computed sha256 checksums sha256 57ca95c92059c8380625192462979bd32994aae3fcdf902ff6eb1e467eeb0469 LICENSE.txt diff --git a/package/python-munch/python-munch.mk b/package/python-munch/python-munch.mk index 85f6803f0763..c2941aa0b50f 100644 --- a/package/python-munch/python-munch.mk +++ b/package/python-munch/python-munch.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MUNCH_VERSION = 2.5.0 +PYTHON_MUNCH_VERSION = 4.0.0 PYTHON_MUNCH_SOURCE = munch-$(PYTHON_MUNCH_VERSION).tar.gz -PYTHON_MUNCH_SITE = https://files.pythonhosted.org/packages/43/a1/ec48010724eedfe2add68eb7592a0d238590e14e08b95a4ffb3c7b2f0808 +PYTHON_MUNCH_SITE = https://files.pythonhosted.org/packages/e7/2b/45098135b5f9f13221820d90f9e0516e11a2a0f55012c13b081d202b782a PYTHON_MUNCH_SETUP_TYPE = setuptools PYTHON_MUNCH_LICENSE = MIT PYTHON_MUNCH_LICENSE_FILES = LICENSE.txt diff --git a/package/python-mutagen/python-mutagen.hash b/package/python-mutagen/python-mutagen.hash index 2e1a58893695..b2d846e7b13b 100644 --- a/package/python-mutagen/python-mutagen.hash +++ b/package/python-mutagen/python-mutagen.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/mutagen/json -md5 648c9f38b8ef46ffb0d5135524650b87 mutagen-1.46.0.tar.gz -sha256 6e5f8ba84836b99fe60be5fb27f84be4ad919bbb6b49caa6ae81e70584b55e58 mutagen-1.46.0.tar.gz +md5 aa2d0d73e71c5daa1a730f7b94272357 mutagen-1.47.0.tar.gz +sha256 719fadef0a978c31b4cf3c956261b3c58b6948b32023078a2117b1de09f0fc99 mutagen-1.47.0.tar.gz # Locally computed sha256 checksums sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/python-mutagen/python-mutagen.mk b/package/python-mutagen/python-mutagen.mk index 07ac9542c6a3..d42ed27e492d 100644 --- a/package/python-mutagen/python-mutagen.mk +++ b/package/python-mutagen/python-mutagen.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MUTAGEN_VERSION = 1.46.0 +PYTHON_MUTAGEN_VERSION = 1.47.0 PYTHON_MUTAGEN_SOURCE = mutagen-$(PYTHON_MUTAGEN_VERSION).tar.gz -PYTHON_MUTAGEN_SITE = https://files.pythonhosted.org/packages/b1/54/d1760a363d0fe345528e37782f6c18123b0e99e8ea755022fd51f1ecd0f9 +PYTHON_MUTAGEN_SITE = https://files.pythonhosted.org/packages/81/e6/64bc71b74eef4b68e61eb921dcf72dabd9e4ec4af1e11891bbd312ccbb77 PYTHON_MUTAGEN_LICENSE = GPL-2.0 PYTHON_MUTAGEN_LICENSE_FILES = COPYING PYTHON_MUTAGEN_SETUP_TYPE = setuptools diff --git a/package/python-mwscrape/python-mwscrape.mk b/package/python-mwscrape/python-mwscrape.mk index 3ffe9d688052..8b6c718c563c 100644 --- a/package/python-mwscrape/python-mwscrape.mk +++ b/package/python-mwscrape/python-mwscrape.mk @@ -8,6 +8,6 @@ PYTHON_MWSCRAPE_VERSION = 568ccbe6e12dd6391277df02adf724ba0e5f9197 PYTHON_MWSCRAPE_SITE = $(call github,itkach,mwscrape,$(PYTHON_MWSCRAPE_VERSION)) PYTHON_MWSCRAPE_LICENSE = MPL-2.0 PYTHON_MWSCRAPE_LICENSE_FILES = LICENSE.txt -PYTHON_MWSCRAPE_SETUP_TYPE = distutils +PYTHON_MWSCRAPE_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-mwscrape2slob/python-mwscrape2slob.mk b/package/python-mwscrape2slob/python-mwscrape2slob.mk index cd8ae35234eb..a99005ba7c78 100644 --- a/package/python-mwscrape2slob/python-mwscrape2slob.mk +++ b/package/python-mwscrape2slob/python-mwscrape2slob.mk @@ -7,6 +7,6 @@ PYTHON_MWSCRAPE2SLOB_VERSION = e01d3e92f0a372ebd0f57390e437a28f9d3c0438 PYTHON_MWSCRAPE2SLOB_SITE = $(call github,itkach,mwscrape2slob,$(PYTHON_MWSCRAPE2SLOB_VERSION)) PYTHON_MWSCRAPE2SLOB_LICENSE = GPL-3.0, Apache-2.0 (MathJax), GPL (MediaWiki monobook style sheet) -PYTHON_MWSCRAPE2SLOB_SETUP_TYPE = distutils +PYTHON_MWSCRAPE2SLOB_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-mypy-extensions/python-mypy-extensions.hash b/package/python-mypy-extensions/python-mypy-extensions.hash index ffe850d7bdcb..5e3763bd632f 100644 --- a/package/python-mypy-extensions/python-mypy-extensions.hash +++ b/package/python-mypy-extensions/python-mypy-extensions.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/mypy_extensions/json -md5 4163ff73d0db8631c0a78bb55b551c84 mypy_extensions-0.4.3.tar.gz -sha256 2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8 mypy_extensions-0.4.3.tar.gz +md5 5b77a3cafc7e9749a0157533c0915b5d mypy_extensions-1.0.0.tar.gz +sha256 75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782 mypy_extensions-1.0.0.tar.gz # Locally computed sha256 checksums sha256 a50450da1d53cd777b80ced77c58ff96abe0ccd879706bd142c3ec20e245f0b4 LICENSE diff --git a/package/python-mypy-extensions/python-mypy-extensions.mk b/package/python-mypy-extensions/python-mypy-extensions.mk index 26dc329a373f..494a03ac2ca7 100644 --- a/package/python-mypy-extensions/python-mypy-extensions.mk +++ b/package/python-mypy-extensions/python-mypy-extensions.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_MYPY_EXTENSIONS_VERSION = 0.4.3 +PYTHON_MYPY_EXTENSIONS_VERSION = 1.0.0 PYTHON_MYPY_EXTENSIONS_SOURCE = mypy_extensions-$(PYTHON_MYPY_EXTENSIONS_VERSION).tar.gz -PYTHON_MYPY_EXTENSIONS_SITE = https://files.pythonhosted.org/packages/63/60/0582ce2eaced55f65a4406fc97beba256de4b7a95a0034c6576458c6519f +PYTHON_MYPY_EXTENSIONS_SITE = https://files.pythonhosted.org/packages/98/a4/1ab47638b92648243faf97a5aeb6ea83059cc3624972ab6b8d2316078d3f PYTHON_MYPY_EXTENSIONS_SETUP_TYPE = setuptools PYTHON_MYPY_EXTENSIONS_LICENSE = MIT PYTHON_MYPY_EXTENSIONS_LICENSE_FILES = LICENSE diff --git a/package/python-netaddr/python-netaddr.hash b/package/python-netaddr/python-netaddr.hash index d55390aad38d..04dc9797f6d3 100644 --- a/package/python-netaddr/python-netaddr.hash +++ b/package/python-netaddr/python-netaddr.hash @@ -1,5 +1,5 @@ -# md5 from https://pypi.python.org/pypi/netaddr/json -md5 34cad578473b66ad77bc3b2a7613ed4a netaddr-0.8.0.tar.gz -# Locally computed -sha256 d6cc57c7a07b1d9d2e917aa8b36ae8ce61c35ba3fcd1b83ca31c5a0ee2b5a243 netaddr-0.8.0.tar.gz +# md5, sha256 from https://pypi.org/pypi/netaddr/json +md5 0c89e96501370d2538ecadca372e55a9 netaddr-0.9.0.tar.gz +sha256 7b46fa9b1a2d71fd5de9e4a3784ef339700a53a08c8040f08baf5f1194da0128 netaddr-0.9.0.tar.gz +# Locally computed sha256 checksums sha256 0e53de62547787462f41eefb5cee31a14f7ea767ba0362c6f9304f1742486d47 LICENSE diff --git a/package/python-netaddr/python-netaddr.mk b/package/python-netaddr/python-netaddr.mk index e3ffe4e85b3d..1f78f0421089 100644 --- a/package/python-netaddr/python-netaddr.mk +++ b/package/python-netaddr/python-netaddr.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_NETADDR_VERSION = 0.8.0 +PYTHON_NETADDR_VERSION = 0.9.0 PYTHON_NETADDR_SOURCE = netaddr-$(PYTHON_NETADDR_VERSION).tar.gz -PYTHON_NETADDR_SITE = https://pypi.python.org/packages/c3/3b/fe5bda7a3e927d9008c897cf1a0858a9ba9924a6b4750ec1824c9e617587 +PYTHON_NETADDR_SITE = https://files.pythonhosted.org/packages/48/4c/2491bfdb868c3f40d985037fa64a3903c125f45d7d3025640e05715db7a3 PYTHON_NETADDR_LICENSE = BSD-3-Clause PYTHON_NETADDR_LICENSE_FILES = LICENSE PYTHON_NETADDR_SETUP_TYPE = setuptools diff --git a/package/python-networkx/python-networkx.hash b/package/python-networkx/python-networkx.hash index 96ef9777da79..b9fe50fd9c5f 100644 --- a/package/python-networkx/python-networkx.hash +++ b/package/python-networkx/python-networkx.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/networkx/json -md5 1bfbb5cd184b486feae8345f541a5e50 networkx-3.0.tar.gz -sha256 9a9992345353618ae98339c2b63d8201c381c2944f38a2ab49cb45a4c667e412 networkx-3.0.tar.gz +md5 e81583dcb3d929b60660721912f3faed networkx-3.2.1.tar.gz +sha256 9f1bb5cf3409bf324e0a722c20bdb4c20ee39bf1c30ce8ae499c8502b0b5e0c6 networkx-3.2.1.tar.gz # Locally computed sha256 checksums sha256 50b5a27cb43f7a20cede7aa7b9ab2033552e0412c9a1fde51d38885c1417e95f LICENSE.txt diff --git a/package/python-networkx/python-networkx.mk b/package/python-networkx/python-networkx.mk index d369df1a0411..e463dca40a90 100644 --- a/package/python-networkx/python-networkx.mk +++ b/package/python-networkx/python-networkx.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_NETWORKX_VERSION = 3.0 +PYTHON_NETWORKX_VERSION = 3.2.1 PYTHON_NETWORKX_SOURCE = networkx-$(PYTHON_NETWORKX_VERSION).tar.gz -PYTHON_NETWORKX_SITE = https://files.pythonhosted.org/packages/99/f9/d45c9ecf50a6b67a200e0bbd324201b5cd777dfc0e6c8f6d1620ce5a7ada +PYTHON_NETWORKX_SITE = https://files.pythonhosted.org/packages/c4/80/a84676339aaae2f1cfdf9f418701dd634aef9cc76f708ef55c36ff39c3ca PYTHON_NETWORKX_LICENSE = BSD-3-Clause PYTHON_NETWORKX_LICENSE_FILES = LICENSE.txt PYTHON_NETWORKX_CPE_ID_VENDOR = python diff --git a/package/python-numpy/Config.in b/package/python-numpy/Config.in index 132c3f7a82e4..c27baec3b340 100644 --- a/package/python-numpy/Config.in +++ b/package/python-numpy/Config.in @@ -19,6 +19,7 @@ config BR2_PACKAGE_PYTHON_NUMPY depends on BR2_INSTALL_LIBSTDCPP # python-numpy needs fenv.h which is not provided by uclibc depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_9 help NumPy is the fundamental package for scientific computing with Python. @@ -28,7 +29,8 @@ config BR2_PACKAGE_PYTHON_NUMPY http://www.numpy.org/ -comment "python-numpy needs a glibc or musl toolchain w/ C++" +comment "python-numpy needs a glibc or musl toolchain w/ C++, gcc >= 9" depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS depends on !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_9 || \ !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) diff --git a/package/python-numpy/python-numpy.hash b/package/python-numpy/python-numpy.hash index 9ac9280c7825..6629cebbced0 100644 --- a/package/python-numpy/python-numpy.hash +++ b/package/python-numpy/python-numpy.hash @@ -1,7 +1,7 @@ -# Copied from https://github.com/numpy/numpy/releases/tag/v1.23.5 -sha256 1b1766d6f397c18153d40015ddfc79ddb715cabadc04d2d228d4e5a8bc4ded1a numpy-1.23.5.tar.gz +# Copied from https://github.com/numpy/numpy/releases/tag/v1.25.0 +sha256 f1accae9a28dc3cda46a91de86acf69de0d1b5f4edd44a9b0c3ceb8036dfff19 numpy-1.25.0.tar.gz # License files, locally calculated -sha256 0f88787955e7131224f53a8c3f3e859dc502408e3a539a4dcf61fb7888b5b984 LICENSE.txt +sha256 1034d3bd61783f3b5e7ec3e7ca818f4da4135132323a0ef99f4c0edb3c7f6bd2 LICENSE.txt sha256 c27d0a8026bdb8876562b720ab24d1688e3827a89f6083cd6e7e8caa9584aba3 numpy/core/src/multiarray/dragon4.c sha256 fbc539f47d0cf83bc61378080fb873d5c14630126cacbfe754035c3926daa5ec numpy/core/include/numpy/libdivide/LICENSE.txt sha256 a14cc25e10d40a3aa705b7de2fb764a6535d8ee9b2db4e1724900585457dfd55 numpy/linalg/lapack_lite/LICENSE.txt diff --git a/package/python-numpy/python-numpy.mk b/package/python-numpy/python-numpy.mk index 812bfdae4ae2..b52e0da17dc7 100644 --- a/package/python-numpy/python-numpy.mk +++ b/package/python-numpy/python-numpy.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_NUMPY_VERSION = 1.23.5 +PYTHON_NUMPY_VERSION = 1.25.0 PYTHON_NUMPY_SOURCE = numpy-$(PYTHON_NUMPY_VERSION).tar.gz PYTHON_NUMPY_SITE = https://github.com/numpy/numpy/releases/download/v$(PYTHON_NUMPY_VERSION) PYTHON_NUMPY_LICENSE = BSD-3-Clause, MIT, Zlib @@ -15,30 +15,27 @@ PYTHON_NUMPY_LICENSE_FILES = \ numpy/linalg/lapack_lite/LICENSE.txt \ tools/npy_tempita/license.txt -PYTHON_NUMPY_SETUP_TYPE = setuptools -PYTHON_NUMPY_DEPENDENCIES = host-python-cython +PYTHON_NUMPY_DEPENDENCIES = host-python-cython python3 HOST_PYTHON_NUMPY_DEPENDENCIES = host-python-cython +PYTHON_NUMPY_CONF_ENV += \ + _PYTHON_SYSCONFIGDATA_NAME=$(PKG_PYTHON_SYSCONFIGDATA_NAME) \ + PYTHONPATH=$(PYTHON3_PATH) + ifeq ($(BR2_PACKAGE_LAPACK),y) PYTHON_NUMPY_DEPENDENCIES += lapack +PYTHON_NUMPY_CONF_OPTS += -Dlapack=lapack else -PYTHON_NUMPY_ENV += BLAS=None LAPACK=None +PYTHON_NUMPY_CONF_OPTS += -Dlapack="" endif -ifeq ($(BR2_TOOLCHAIN_HAS_FORTRAN),y) -PYTHON_NUMPY_BUILD_OPTS = --fcompiler=gnu95 -PYTHON_NUMPY_ENV += F90=$(TARGET_FC) +ifeq ($(BR2_PACKAGE_OPENBLAS),y) +PYTHON_NUMPY_DEPENDENCIES += openblas +PYTHON_NUMPY_CONF_OPTS += -Dblas=openblas else -PYTHON_NUMPY_BUILD_OPTS = --fcompiler=None +PYTHON_NUMPY_CONF_OPTS += -Dblas="" endif -define PYTHON_NUMPY_CONFIGURE_CMDS - -rm -f $(@D)/site.cfg - echo "[DEFAULT]" >> $(@D)/site.cfg - echo "library_dirs = $(STAGING_DIR)/usr/lib" >> $(@D)/site.cfg - echo "include_dirs = $(STAGING_DIR)/usr/include" >> $(@D)/site.cfg -endef - # Fixup the npymath.ini prefix path with actual target staging area where # numpy core was built. Without this, target builds using numpy distutils # extensions like python-scipy, python-numba cannot find -lnpymath since @@ -55,5 +52,5 @@ PYTHON_NUMPY_POST_INSTALL_STAGING_HOOKS += PYTHON_NUMPY_FIXUP_NPY_PKG_CONFIG_FIL # in the staging area. PYTHON_NUMPY_INSTALL_STAGING = YES -$(eval $(python-package)) -$(eval $(host-python-package)) +$(eval $(meson-package)) +$(eval $(host-meson-package)) diff --git a/package/python-orjson/python-orjson.hash b/package/python-orjson/python-orjson.hash index f1298c05cedc..773fb1456885 100644 --- a/package/python-orjson/python-orjson.hash +++ b/package/python-orjson/python-orjson.hash @@ -1,5 +1,5 @@ # Locally calculated after vendoring -sha256 b932fc1e43598fb91022b1dc651afeaef650793a2a590ca4fbeef57a3808abf5 orjson-3.8.4.tar.gz +sha256 048938fd9153f37eaf7a08b748de94ff87b2488dd3bd9f96c3ae784527a961b3 orjson-3.9.2.tar.gz # Locally computed sha256 checksums sha256 a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2 LICENSE-APACHE sha256 23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3 LICENSE-MIT diff --git a/package/python-orjson/python-orjson.mk b/package/python-orjson/python-orjson.mk index 8eeadecb3d09..cf05b26262cd 100644 --- a/package/python-orjson/python-orjson.mk +++ b/package/python-orjson/python-orjson.mk @@ -4,19 +4,12 @@ # ################################################################################ -PYTHON_ORJSON_VERSION = 3.8.4 +PYTHON_ORJSON_VERSION = 3.9.2 PYTHON_ORJSON_SOURCE = orjson-$(PYTHON_ORJSON_VERSION).tar.gz -PYTHON_ORJSON_SITE = https://files.pythonhosted.org/packages/8f/2d/ae31eddf7e097eec5e25c7da954ef6e944f4dbf79153676f94cea3dc5116 -PYTHON_ORJSON_SETUP_TYPE = pep517 +PYTHON_ORJSON_SITE = https://files.pythonhosted.org/packages/30/a4/96bcb52da0de9ccfcd99a60719b995c9b9c3aaa3a70701f0790ce856c10d +PYTHON_ORJSON_SETUP_TYPE = maturin PYTHON_ORJSON_LICENSE = Apache-2.0 or MIT PYTHON_ORJSON_LICENSE_FILES = LICENSE-APACHE LICENSE-MIT -PYTHON_ORJSON_DEPENDENCIES = host-python-cffi host-python-maturin -PYTHON_ORJSON_ENV = \ - $(PKG_CARGO_ENV) \ - PYO3_CROSS_LIB_DIR="$(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)" -# We need to vendor the Cargo crates at download time -PYTHON_ORJSON_DOWNLOAD_POST_PROCESS = cargo -PYTHON_ORJSON_DOWNLOAD_DEPENDENCIES = host-rustc -PYTHON_ORJSON_DL_ENV = $(PKG_CARGO_ENV) +PYTHON_ORJSON_DEPENDENCIES = host-python-cffi $(eval $(python-package)) diff --git a/package/python-packaging/python-packaging.hash b/package/python-packaging/python-packaging.hash index e10c11904b8a..0e339ea57363 100644 --- a/package/python-packaging/python-packaging.hash +++ b/package/python-packaging/python-packaging.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/packaging/json -md5 806414ea4c6f17b029a7911b622062e8 packaging-22.0.tar.gz -sha256 2198ec20bd4c017b8f9717e00f0c8714076fc2fd93816750ab48e2c41de2cfd3 packaging-22.0.tar.gz +md5 f7d5c39c6f92cc2dfa1293ba8f6c097c packaging-23.1.tar.gz +sha256 a392980d2b6cffa644431898be54b0045151319d1e7ec34f0cfed48767dd334f packaging-23.1.tar.gz # Locally computed sha256 checksums sha256 cad1ef5bd340d73e074ba614d26f7deaca5c7940c3d8c34852e65c4909686c48 LICENSE sha256 0d542e0c8804e39aa7f37eb00da5a762149dc682d7829451287e11b938e94594 LICENSE.APACHE diff --git a/package/python-packaging/python-packaging.mk b/package/python-packaging/python-packaging.mk index c9190ccfee2b..aac4d76ee2c0 100644 --- a/package/python-packaging/python-packaging.mk +++ b/package/python-packaging/python-packaging.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PACKAGING_VERSION = 22.0 +PYTHON_PACKAGING_VERSION = 23.1 PYTHON_PACKAGING_SOURCE = packaging-$(PYTHON_PACKAGING_VERSION).tar.gz -PYTHON_PACKAGING_SITE = https://files.pythonhosted.org/packages/6b/f7/c240d7654ddd2d2f3f328d8468d4f1f876865f6b9038b146bec0a6737c65 +PYTHON_PACKAGING_SITE = https://files.pythonhosted.org/packages/b9/6c/7c6658d258d7971c5eb0d9b69fa9265879ec9a9158031206d47800ae2213 PYTHON_PACKAGING_SETUP_TYPE = flit PYTHON_PACKAGING_LICENSE = Apache-2.0 or BSD-2-Clause PYTHON_PACKAGING_LICENSE_FILES = LICENSE LICENSE.APACHE LICENSE.BSD diff --git a/package/python-pathtools/0001-replace-imp.patch b/package/python-pathtools/0001-replace-imp.patch new file mode 100644 index 000000000000..a5bc240cea17 --- /dev/null +++ b/package/python-pathtools/0001-replace-imp.patch @@ -0,0 +1,55 @@ +From e2372bbecdf46a100b09126f2951431c1929637b Mon Sep 17 00:00:00 2001 +From: Adam Duskett +Date: Tue, 24 Oct 2023 08:59:21 +0200 +Subject: [PATCH] Replace imp + +The imp module has been removed in python 3.12.0. + +This change has also been tested with Python 3.9.2 on Debian 11. + +From: https://docs.python.org/3.12/whatsnew/3.12.html#removed, follow the +instructions to add the load_source method back into setup.py. + +Upstream: https://github.com/gorakhargosh/pathtools/pull/14 + +Signed-off-by: Adam Duskett +--- + setup.py | 19 ++++++++++++++++--- + 1 file changed, 16 insertions(+), 3 deletions(-) + +diff --git a/setup.py b/setup.py +index 4718885..1be0315 100644 +--- a/setup.py ++++ b/setup.py +@@ -22,12 +22,25 @@ + # THE SOFTWARE. + + import os +-import imp ++import importlib.util ++import importlib.machinery + from setuptools import setup + + PKG_DIR = 'pathtools' +-version = imp.load_source('version', +- os.path.join(PKG_DIR, 'version.py')) ++ ++# From: https://docs.python.org/3.12/whatsnew/3.12.html#removed ++def load_source(modname, filename): ++ loader = importlib.machinery.SourceFileLoader(modname, filename) ++ spec = importlib.util.spec_from_file_location(modname, filename, loader=loader) ++ module = importlib.util.module_from_spec(spec) ++ # The module is always executed and not cached in sys.modules. ++ # Uncomment the following line to cache the module. ++ # sys.modules[module.__name__] = module ++ loader.exec_module(module) ++ return module ++ ++version = load_source('version', ++ os.path.join(PKG_DIR, 'version.py')) + + def read_file(filename): + """ +-- +2.41.0 + diff --git a/package/python-pep517/python-pep517.hash b/package/python-pep517/python-pep517.hash deleted file mode 100644 index 6535e516567e..000000000000 --- a/package/python-pep517/python-pep517.hash +++ /dev/null @@ -1,5 +0,0 @@ -# md5, sha256 from https://pypi.org/pypi/pep517/json -md5 7fd08b11215256601a8a4940c1ba3d34 pep517-0.13.0.tar.gz -sha256 ae69927c5c172be1add9203726d4b84cf3ebad1edcd5f71fcdc746e66e829f59 pep517-0.13.0.tar.gz -# Locally computed sha256 checksums -sha256 1b22b049b5267d6dfc23a67bf4a84d8ec04b9fdfb1a51d360e42b4342c8b4154 LICENSE diff --git a/package/python-pep517/python-pep517.mk b/package/python-pep517/python-pep517.mk deleted file mode 100644 index c43b09faaa8a..000000000000 --- a/package/python-pep517/python-pep517.mk +++ /dev/null @@ -1,14 +0,0 @@ -################################################################################ -# -# python-pep517 -# -################################################################################ - -PYTHON_PEP517_VERSION = 0.13.0 -PYTHON_PEP517_SOURCE = pep517-$(PYTHON_PEP517_VERSION).tar.gz -PYTHON_PEP517_SITE = https://files.pythonhosted.org/packages/4d/19/e11fcc88288f68ae48e3aa9cf5a6fd092a88e629cb723465666c44d487a0 -PYTHON_PEP517_LICENSE = MIT -PYTHON_PEP517_LICENSE_FILES = LICENSE -PYTHON_PEP517_SETUP_TYPE = flit-bootstrap - -$(eval $(host-python-package)) diff --git a/package/python-pexpect/python-pexpect.mk b/package/python-pexpect/python-pexpect.mk index 3efda2682580..d230b11338ac 100644 --- a/package/python-pexpect/python-pexpect.mk +++ b/package/python-pexpect/python-pexpect.mk @@ -9,6 +9,6 @@ PYTHON_PEXPECT_SOURCE = pexpect-$(PYTHON_PEXPECT_VERSION).tar.gz PYTHON_PEXPECT_SITE = https://files.pythonhosted.org/packages/e5/9b/ff402e0e930e70467a7178abb7c128709a30dfb22d8777c043e501bc1b10 PYTHON_PEXPECT_LICENSE = ISC PYTHON_PEXPECT_LICENSE_FILES = LICENSE -PYTHON_PEXPECT_SETUP_TYPE = distutils +PYTHON_PEXPECT_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-pillow/python-pillow.hash b/package/python-pillow/python-pillow.hash index d514bdfe561f..c2c5125678db 100644 --- a/package/python-pillow/python-pillow.hash +++ b/package/python-pillow/python-pillow.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/pillow/json -md5 ee6e9a6c729ed9e9a78ccd3f6e9d7143 Pillow-9.4.0.tar.gz -sha256 a1c2d7780448eb93fbcc3789bf3916aa5720d942e37945f4056680317f1cd23e Pillow-9.4.0.tar.gz +md5 93a0585ab0ee9717a7576129bdabdf93 Pillow-10.0.1.tar.gz +sha256 d72967b06be9300fed5cfbc8b5bafceec48bf7cdc7dab66b1d2549035287191d Pillow-10.0.1.tar.gz # Locally computed sha256 checksums -sha256 4e1755595052d843e2f350c930759f945ecf707bf812883948d181016b12dd0f LICENSE +sha256 0fdb68ffb39062553be40be4e6eaea9700b4f5e870a720ae86b8925d67613ddd LICENSE diff --git a/package/python-pillow/python-pillow.mk b/package/python-pillow/python-pillow.mk index c02968610ff3..d9f6fba86103 100644 --- a/package/python-pillow/python-pillow.mk +++ b/package/python-pillow/python-pillow.mk @@ -4,8 +4,8 @@ # ################################################################################ -PYTHON_PILLOW_VERSION = 9.4.0 -PYTHON_PILLOW_SITE = https://files.pythonhosted.org/packages/bc/07/830784e061fb94d67649f3e438ff63cfb902dec6d48ac75aeaaac7c7c30e +PYTHON_PILLOW_VERSION = 10.0.1 +PYTHON_PILLOW_SITE = https://files.pythonhosted.org/packages/64/9e/7e638579cce7dc346632f020914141a164a872be813481f058883ee8d421 PYTHON_PILLOW_SOURCE = Pillow-$(PYTHON_PILLOW_VERSION).tar.gz PYTHON_PILLOW_LICENSE = HPND PYTHON_PILLOW_LICENSE_FILES = LICENSE diff --git a/package/python-pip/python-pip.mk b/package/python-pip/python-pip.mk index 8cf3aaa3ecec..040767930e79 100644 --- a/package/python-pip/python-pip.mk +++ b/package/python-pip/python-pip.mk @@ -12,5 +12,9 @@ PYTHON_PIP_LICENSE = MIT PYTHON_PIP_LICENSE_FILES = LICENSE.txt PYTHON_PIP_CPE_ID_VENDOR = pypa PYTHON_PIP_CPE_ID_PRODUCT = pip +# Disputed CVE: things work as designed, and only affects the +# --extra-index-url option. This CVE will never be fixed. +PYTHON_PIP_IGNORE_CVES += CVE-2018-20225 $(eval $(python-package)) +$(eval $(host-python-package)) diff --git a/package/python-pluggy/python-pluggy.hash b/package/python-pluggy/python-pluggy.hash index 39f172a82b62..74790a51a047 100644 --- a/package/python-pluggy/python-pluggy.hash +++ b/package/python-pluggy/python-pluggy.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/pluggy/json -md5 daa6fddfb6cd364f3c82e52098911e4b pluggy-1.0.0.tar.gz -sha256 4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159 pluggy-1.0.0.tar.gz +md5 f31aad77be2f5af8ed3864159b7fd743 pluggy-1.3.0.tar.gz +sha256 cf61ae8f126ac6f7c451172cf30e3e43d3ca77615509771b3a984a0730651e12 pluggy-1.3.0.tar.gz # Locally computed sha256 checksums sha256 d6b65e6c213a5d0b577911d34d6e5949b9f59d76c238c5071a2f3fc16cfb2606 LICENSE diff --git a/package/python-pluggy/python-pluggy.mk b/package/python-pluggy/python-pluggy.mk index 6dc6f970eabc..2b7ac04f02e0 100644 --- a/package/python-pluggy/python-pluggy.mk +++ b/package/python-pluggy/python-pluggy.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PLUGGY_VERSION = 1.0.0 +PYTHON_PLUGGY_VERSION = 1.3.0 PYTHON_PLUGGY_SOURCE = pluggy-$(PYTHON_PLUGGY_VERSION).tar.gz -PYTHON_PLUGGY_SITE = https://files.pythonhosted.org/packages/a1/16/db2d7de3474b6e37cbb9c008965ee63835bba517e22cdb8c35b5116b5ce1 +PYTHON_PLUGGY_SITE = https://files.pythonhosted.org/packages/36/51/04defc761583568cae5fd533abda3d40164cbdcf22dee5b7126ffef68a40 PYTHON_PLUGGY_SETUP_TYPE = setuptools PYTHON_PLUGGY_LICENSE = MIT PYTHON_PLUGGY_LICENSE_FILES = LICENSE diff --git a/package/python-ptyprocess/python-ptyprocess.mk b/package/python-ptyprocess/python-ptyprocess.mk index d077fbb7799b..52660195624c 100644 --- a/package/python-ptyprocess/python-ptyprocess.mk +++ b/package/python-ptyprocess/python-ptyprocess.mk @@ -9,6 +9,6 @@ PYTHON_PTYPROCESS_SITE = https://files.pythonhosted.org/packages/20/e5/16ff212c1 PYTHON_PTYPROCESS_SOURCE = ptyprocess-$(PYTHON_PTYPROCESS_VERSION).tar.gz PYTHON_PTYPROCESS_LICENSE = ISC PYTHON_PTYPROCESS_LICENSE_FILES = LICENSE -PYTHON_PTYPROCESS_SETUP_TYPE = distutils +PYTHON_PTYPROCESS_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-pure-eval/Config.in b/package/python-pure-eval/Config.in new file mode 100644 index 000000000000..f6ccd6056dc1 --- /dev/null +++ b/package/python-pure-eval/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_PURE_EVAL + bool "python-pure-eval" + help + Safely evaluate AST nodes without side effects. + + http://github.com/alexmojaki/pure_eval diff --git a/package/python-pure-eval/python-pure-eval.hash b/package/python-pure-eval/python-pure-eval.hash new file mode 100644 index 000000000000..5bf5dcb749cf --- /dev/null +++ b/package/python-pure-eval/python-pure-eval.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/pure_eval/json +md5 212fd27ca2c58d9effddec69748d738a pure_eval-0.2.2.tar.gz +sha256 2b45320af6dfaa1750f543d714b6d1c520a1688dec6fd24d339063ce0aaa9ac3 pure_eval-0.2.2.tar.gz +# Locally computed sha256 checksums +sha256 a476a2cb0ef4c41450340a577a28b91ac4c7f669136b2ee148047fabd5fc4181 LICENSE.txt diff --git a/package/python-pure-eval/python-pure-eval.mk b/package/python-pure-eval/python-pure-eval.mk new file mode 100644 index 000000000000..f139ea270fcb --- /dev/null +++ b/package/python-pure-eval/python-pure-eval.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# python-pure-eval +# +################################################################################ + +PYTHON_PURE_EVAL_VERSION = 0.2.2 +PYTHON_PURE_EVAL_SOURCE = pure_eval-$(PYTHON_PURE_EVAL_VERSION).tar.gz +PYTHON_PURE_EVAL_SITE = https://files.pythonhosted.org/packages/97/5a/0bc937c25d3ce4e0a74335222aee05455d6afa2888032185f8ab50cdf6fd +PYTHON_PURE_EVAL_SETUP_TYPE = setuptools +PYTHON_PURE_EVAL_LICENSE = MIT +PYTHON_PURE_EVAL_LICENSE_FILES = LICENSE.txt + +PYTHON_PURE_EVAL_DEPENDENCIES = host-python-setuptools-scm + +$(eval $(python-package)) diff --git a/package/python-pyaes/python-pyaes.mk b/package/python-pyaes/python-pyaes.mk index a738d3c76a05..77ec100058e7 100644 --- a/package/python-pyaes/python-pyaes.mk +++ b/package/python-pyaes/python-pyaes.mk @@ -7,7 +7,7 @@ PYTHON_PYAES_VERSION = 1.6.1 PYTHON_PYAES_SOURCE = pyaes-$(PYTHON_PYAES_VERSION).tar.gz PYTHON_PYAES_SITE = https://files.pythonhosted.org/packages/44/66/2c17bae31c906613795711fc78045c285048168919ace2220daa372c7d72 -PYTHON_PYAES_SETUP_TYPE = distutils +PYTHON_PYAES_SETUP_TYPE = setuptools PYTHON_PYAES_LICENSE = MIT PYTHON_PYAES_LICENSE_FILES = LICENSE.txt diff --git a/package/python-pyalsa/python-pyalsa.mk b/package/python-pyalsa/python-pyalsa.mk index cc5e2ec9a05b..1661fe47b49f 100644 --- a/package/python-pyalsa/python-pyalsa.mk +++ b/package/python-pyalsa/python-pyalsa.mk @@ -7,7 +7,7 @@ PYTHON_PYALSA_VERSION = 1.2.7 PYTHON_PYALSA_SOURCE = pyalsa-$(PYTHON_PYALSA_VERSION).tar.bz2 PYTHON_PYALSA_SITE = https://www.alsa-project.org/files/pub/pyalsa -PYTHON_PYALSA_SETUP_TYPE = distutils +PYTHON_PYALSA_SETUP_TYPE = setuptools PYTHON_PYALSA_LICENSE = LGPL-2.1+ PYTHON_PYALSA_DEPENDENCIES = alsa-lib diff --git a/package/python-pybind/python-pybind.hash b/package/python-pybind/python-pybind.hash index 971eceaa0753..9d2f43ce0ded 100644 --- a/package/python-pybind/python-pybind.hash +++ b/package/python-pybind/python-pybind.hash @@ -1,4 +1,4 @@ # Locally calculated -sha256 5d8c4c5dda428d3a944ba3d2a5212cb988c2fae4670d58075a5a49075a6ca315 python-pybind-2.10.3.tar.gz +sha256 d475978da0cdc2d43b73f30910786759d593a9d8ee05b1b6846d1eb16c6d2e0c python-pybind-2.11.1.tar.gz # License files, locally calculated sha256 83965b843b98f670d3a85bd041ed4b372c8ec50d7b4a5995a83ac697ba675dcb LICENSE diff --git a/package/python-pybind/python-pybind.mk b/package/python-pybind/python-pybind.mk index 1fd106b98184..5a5d1203218b 100644 --- a/package/python-pybind/python-pybind.mk +++ b/package/python-pybind/python-pybind.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_PYBIND_VERSION = 2.10.3 +PYTHON_PYBIND_VERSION = 2.11.1 PYTHON_PYBIND_SITE = $(call github,pybind,pybind11,v$(PYTHON_PYBIND_VERSION)) PYTHON_PYBIND_LICENSE = BSD-3-Clause PYTHON_PYBIND_LICENSE_FILES = LICENSE diff --git a/package/python-pycrate/Config.in b/package/python-pycrate/Config.in index 193a973f7ea6..bbd68739387a 100644 --- a/package/python-pycrate/Config.in +++ b/package/python-pycrate/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_PYTHON_PYCRATE bool "python-pycrate" help - A software suite to handle various data formats. + A software suite to handle various data and protocol + formats. https://github.com/P1sec/pycrate/ diff --git a/package/python-pycrate/python-pycrate.hash b/package/python-pycrate/python-pycrate.hash index e37fd6743ac3..fd41274369ab 100644 --- a/package/python-pycrate/python-pycrate.hash +++ b/package/python-pycrate/python-pycrate.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/pycrate/json -md5 075622d5d573274cd4dbfe268ca52f7f pycrate-0.5.5.tar.gz -sha256 59f09331890a389a6b98412f19f4fb021c5a75a35ab07bf5ba0d1e299a0967af pycrate-0.5.5.tar.gz -# Locally computed +md5 d51fd27d99481990ff85a1e418b1c938 pycrate-0.6.0.tar.gz +sha256 b49738c02a3f93ba9f76c0dac82b689a5341882814b36c714e9600e9f560daf7 pycrate-0.6.0.tar.gz +# Locally computed sha256 checksums sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 license.txt diff --git a/package/python-pycrate/python-pycrate.mk b/package/python-pycrate/python-pycrate.mk index 677943355610..2f947ab807de 100644 --- a/package/python-pycrate/python-pycrate.mk +++ b/package/python-pycrate/python-pycrate.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYCRATE_VERSION = 0.5.5 +PYTHON_PYCRATE_VERSION = 0.6.0 PYTHON_PYCRATE_SOURCE = pycrate-$(PYTHON_PYCRATE_VERSION).tar.gz -PYTHON_PYCRATE_SITE = https://files.pythonhosted.org/packages/25/8f/b3d7e0b541aa04b2f0f7aa694a6946b572bfa2e2627cf1f12b5416d633df +PYTHON_PYCRATE_SITE = https://files.pythonhosted.org/packages/fb/7f/5f354100270a5d41350e9806dc9950a33e00a30eb3a7ab5fc9db86326856 PYTHON_PYCRATE_SETUP_TYPE = setuptools PYTHON_PYCRATE_EXTRA_DOWNLOADS = https://raw.githubusercontent.com/P1sec/pycrate/$(PYTHON_PYCRATE_VERSION)/license.txt PYTHON_PYCRATE_LICENSE = LGPL-2.1+ diff --git a/package/python-pycryptodomex/python-pycryptodomex.hash b/package/python-pycryptodomex/python-pycryptodomex.hash index eb011dddb8d8..954f4a89386a 100644 --- a/package/python-pycryptodomex/python-pycryptodomex.hash +++ b/package/python-pycryptodomex/python-pycryptodomex.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/pycryptodomex/json -md5 9d27f03c036c89afd3d66970bb49cd06 pycryptodomex-3.16.0.tar.gz -sha256 e9ba9d8ed638733c9e95664470b71d624a6def149e2db6cc52c1aca5a6a2df1d pycryptodomex-3.16.0.tar.gz +md5 3b8d868cef13ea41cb3bfeab66a7707c pycryptodomex-3.18.0.tar.gz +sha256 3e3ecb5fe979e7c1bb0027e518340acf7ee60415d79295e5251d13c68dde576e pycryptodomex-3.18.0.tar.gz # Locally computed sha256 checksums sha256 4e04660d77c1c64e89d79537919fb8240fa21484a7e3db29f358b2c7f84ea073 LICENSE.rst sha256 8e563c767164faa0831a333b57d23d4311cf566eb1b15d93250f4606be4eb549 Doc/LEGAL/COPYRIGHT.pycrypto diff --git a/package/python-pycryptodomex/python-pycryptodomex.mk b/package/python-pycryptodomex/python-pycryptodomex.mk index b566bdd066dc..d6eb2a9513a8 100644 --- a/package/python-pycryptodomex/python-pycryptodomex.mk +++ b/package/python-pycryptodomex/python-pycryptodomex.mk @@ -4,14 +4,17 @@ # ################################################################################ -PYTHON_PYCRYPTODOMEX_VERSION = 3.16.0 +PYTHON_PYCRYPTODOMEX_VERSION = 3.18.0 PYTHON_PYCRYPTODOMEX_SOURCE = pycryptodomex-$(PYTHON_PYCRYPTODOMEX_VERSION).tar.gz -PYTHON_PYCRYPTODOMEX_SITE = https://files.pythonhosted.org/packages/5d/22/575c7dd7c86843e07a791cfa2143e7292d6b380f5a7cce966a49b9d6c9f4 +PYTHON_PYCRYPTODOMEX_SITE = https://files.pythonhosted.org/packages/40/92/efd675dba957315d705f792b28d900bddc36f39252f6713961b4221ee9af PYTHON_PYCRYPTODOMEX_SETUP_TYPE = setuptools PYTHON_PYCRYPTODOMEX_LICENSE = \ BSD-2-Clause, \ Public Domain (pycrypto original code) PYTHON_PYCRYPTODOMEX_LICENSE_FILES = LICENSE.rst Doc/LEGAL/COPYRIGHT.pycrypto +PYTHON_PYCRYPTODOMEX_ENV = CFLAGS="$(TARGET_CFLAGS) -std=c99" +HOST_PYTHON_PYCRYPTODOMEX_ENV = CFLAGS="$(HOST_CFLAGS) -std=c99" + $(eval $(python-package)) $(eval $(host-python-package)) diff --git a/package/python-pycups/python-pycups.mk b/package/python-pycups/python-pycups.mk index 41da3641a008..bf61400afe98 100644 --- a/package/python-pycups/python-pycups.mk +++ b/package/python-pycups/python-pycups.mk @@ -7,7 +7,7 @@ PYTHON_PYCUPS_VERSION = 2.0.1 PYTHON_PYCUPS_SOURCE = pycups-$(PYTHON_PYCUPS_VERSION).tar.gz PYTHON_PYCUPS_SITE = https://files.pythonhosted.org/packages/0c/bb/82546806a86dc16f5eeb76f62ffdc42cce3d43aacd4e25a8b5300eec0263 -PYTHON_PYCUPS_SETUP_TYPE = distutils +PYTHON_PYCUPS_SETUP_TYPE = setuptools PYTHON_PYCUPS_LICENSE = GPL-2.0+ PYTHON_PYCUPS_LICENSE_FILES = COPYING PYTHON_PYCUPS_DEPENDENCIES = cups diff --git a/package/python-pydal/python-pydal.hash b/package/python-pydal/python-pydal.hash index c55a17a54574..8ed25084d122 100644 --- a/package/python-pydal/python-pydal.hash +++ b/package/python-pydal/python-pydal.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/pydal/json -md5 eeaf44cdcdb6bd2040713c710a4a04be pydal-20221110.1.tar.gz -sha256 7c3e891c70f8d8918e36276f210a1959bb7badf3b276f47191986ffcf5b6a390 pydal-20221110.1.tar.gz +md5 47f0425745bcd1bb413aa9208cd06b3c pydal-20230521.1.tar.gz +sha256 10478a61e627c5b8cb7691f7f7ebf7210845485316493d37d740c297fb6d1845 pydal-20230521.1.tar.gz # Locally computed sha256 checksums sha256 1f711e93f1e0c2eec576e2e60597dc2ed6f0a661e4749c6b8a39f0d4a72be468 LICENSE.txt diff --git a/package/python-pydal/python-pydal.mk b/package/python-pydal/python-pydal.mk index f55c7fc2c520..1cc7e90b11e2 100644 --- a/package/python-pydal/python-pydal.mk +++ b/package/python-pydal/python-pydal.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYDAL_VERSION = 20221110.1 +PYTHON_PYDAL_VERSION = 20230521.1 PYTHON_PYDAL_SOURCE = pydal-$(PYTHON_PYDAL_VERSION).tar.gz -PYTHON_PYDAL_SITE = https://files.pythonhosted.org/packages/73/83/b904c464b6ab060e12b3f406f1fab7deb97bcd9d2021d8c87325e6225c2d +PYTHON_PYDAL_SITE = https://files.pythonhosted.org/packages/68/b4/15dc227f965cc0525ca7f432368706cc4087ad6d587a5a05b251d133023e PYTHON_PYDAL_LICENSE = BSD-3-Clause PYTHON_PYDAL_LICENSE_FILES = LICENSE.txt PYTHON_PYDAL_SETUP_TYPE = setuptools diff --git a/package/python-pydantic/python-pydantic.hash b/package/python-pydantic/python-pydantic.hash index e73a3099a865..88b17f4575d8 100644 --- a/package/python-pydantic/python-pydantic.hash +++ b/package/python-pydantic/python-pydantic.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/pydantic/json -md5 2e036b5f993b93dd83f6a7009252ae78 pydantic-1.10.4.tar.gz -sha256 b9a3859f24eb4e097502a3be1fb4b2abb79b6103dd9e2e0edb70613a4459a648 pydantic-1.10.4.tar.gz +md5 f0e286c32f40ec45aba9603742739cd6 pydantic-1.10.8.tar.gz +sha256 1410275520dfa70effadf4c21811d755e7ef9bb1f1d077a21958153a92c8d9ca pydantic-1.10.8.tar.gz # Locally computed sha256 checksums sha256 9e3946690ac88b6b73e8f001a0586af13568be8852fd514e4393f39761764387 LICENSE diff --git a/package/python-pydantic/python-pydantic.mk b/package/python-pydantic/python-pydantic.mk index a1a4dc9b16fc..b800426d222d 100644 --- a/package/python-pydantic/python-pydantic.mk +++ b/package/python-pydantic/python-pydantic.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYDANTIC_VERSION = 1.10.4 +PYTHON_PYDANTIC_VERSION = 1.10.8 PYTHON_PYDANTIC_SOURCE = pydantic-$(PYTHON_PYDANTIC_VERSION).tar.gz -PYTHON_PYDANTIC_SITE = https://files.pythonhosted.org/packages/53/17/34e54e352f6a3d304044e52d5ddd5cd621a62ec8fb7af08cc73af65dd3e1 +PYTHON_PYDANTIC_SITE = https://files.pythonhosted.org/packages/23/65/2aa13873e9e0084ecaec00fbe6c6096b65e1ab99ba66bdbf7e4e7c4cc915 PYTHON_PYDANTIC_SETUP_TYPE = setuptools PYTHON_PYDANTIC_LICENSE = MIT PYTHON_PYDANTIC_LICENSE_FILES = LICENSE diff --git a/package/python-pydyf/python-pydyf.hash b/package/python-pydyf/python-pydyf.hash index 1b37e90e7315..4e52429dfedd 100644 --- a/package/python-pydyf/python-pydyf.hash +++ b/package/python-pydyf/python-pydyf.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/pydyf/json -md5 6b2a02162a3f4be9464d7b4043953d33 pydyf-0.5.0.tar.gz -sha256 51e751ae1504037c1fc1f4815119137b011802cd5f6c3539db066c455b14a7e1 pydyf-0.5.0.tar.gz +md5 52a772655c1398e7b60d22e930e13094 pydyf-0.7.0.tar.gz +sha256 a5a88cb06e5beb64a1ef2147ee879b0e5139f5fdb827fda2fcf14a018c7b11e6 pydyf-0.7.0.tar.gz # Locally computed sha256 checksums sha256 75461e438973e1ba0f93a7de9e3fe5b2f49e1ab49251d392878a9cdae8ce7e47 LICENSE diff --git a/package/python-pydyf/python-pydyf.mk b/package/python-pydyf/python-pydyf.mk index 6327a3efe253..d941a00a9f47 100644 --- a/package/python-pydyf/python-pydyf.mk +++ b/package/python-pydyf/python-pydyf.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYDYF_VERSION = 0.5.0 +PYTHON_PYDYF_VERSION = 0.7.0 PYTHON_PYDYF_SOURCE = pydyf-$(PYTHON_PYDYF_VERSION).tar.gz -PYTHON_PYDYF_SITE = https://files.pythonhosted.org/packages/f4/4c/6d31b36a46714d8206b8ca84b8dc9aaf42093415b1f50471538552abe501 +PYTHON_PYDYF_SITE = https://files.pythonhosted.org/packages/28/ec/b6b327f2a249a83022501b2f57844ca05b2b26e0cadf28648ea5c0f72aa6 PYTHON_PYDYF_SETUP_TYPE = flit PYTHON_PYDYF_LICENSE = BSD-3-Clause PYTHON_PYDYF_LICENSE_FILES = LICENSE diff --git a/package/python-pygame/python-pygame.mk b/package/python-pygame/python-pygame.mk index 600dd9e74367..84fd6df4e2dd 100644 --- a/package/python-pygame/python-pygame.mk +++ b/package/python-pygame/python-pygame.mk @@ -10,7 +10,7 @@ PYTHON_PYGAME_VERSION = d61ea8eabd56 PYTHON_PYGAME_SOURCE = pygame-$(PYTHON_PYGAME_VERSION).tar.gz PYTHON_PYGAME_SITE = https://bitbucket.org/pygame/pygame PYTHON_PYGAME_SITE_METHOD = hg -PYTHON_PYGAME_SETUP_TYPE = distutils +PYTHON_PYGAME_SETUP_TYPE = setuptools PYTHON_PYGAME_LICENSE = LGPL-2.1+ PYTHON_PYGAME_LICENSE_FILES = LGPL diff --git a/package/python-pygments/python-pygments.hash b/package/python-pygments/python-pygments.hash index f7396cb3d6b4..9714fd2ea0ab 100644 --- a/package/python-pygments/python-pygments.hash +++ b/package/python-pygments/python-pygments.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/pygments/json -md5 447be4afb076c8325a7dc659aff5b931 Pygments-2.14.0.tar.gz -sha256 b3ed06a9e8ac9a9aae5a6f5dbe78a8a58655d17b43b93c078f094ddc476ae297 Pygments-2.14.0.tar.gz +md5 e40631bb812bbd15954027c23b23013a Pygments-2.15.1.tar.gz +sha256 8ace4d3c1dd481894b2005f560ead0f9f19ee64fe983366be1a21e171d12775c Pygments-2.15.1.tar.gz # Locally computed sha256 checksums sha256 a9d66f1d526df02e29dce73436d34e56e8632f46c275bbdffc70569e882f9f17 LICENSE diff --git a/package/python-pygments/python-pygments.mk b/package/python-pygments/python-pygments.mk index 9c4f0be6c890..f151f0061bb7 100644 --- a/package/python-pygments/python-pygments.mk +++ b/package/python-pygments/python-pygments.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYGMENTS_VERSION = 2.14.0 +PYTHON_PYGMENTS_VERSION = 2.15.1 PYTHON_PYGMENTS_SOURCE = Pygments-$(PYTHON_PYGMENTS_VERSION).tar.gz -PYTHON_PYGMENTS_SITE = https://files.pythonhosted.org/packages/da/6a/c427c06913204e24de28de5300d3f0e809933f376e0b7df95194b2bb3f71 +PYTHON_PYGMENTS_SITE = https://files.pythonhosted.org/packages/89/6b/2114e54b290824197006e41be3f9bbe1a26e9c39d1f5fa20a6d62945a0b3 PYTHON_PYGMENTS_LICENSE = BSD-2-Clause PYTHON_PYGMENTS_LICENSE_FILES = LICENSE PYTHON_PYGMENTS_CPE_ID_VENDOR = pygments diff --git a/package/python-pyicu/Config.in b/package/python-pyicu/Config.in index 93eac533877c..cbd75c0119c2 100644 --- a/package/python-pyicu/Config.in +++ b/package/python-pyicu/Config.in @@ -8,7 +8,7 @@ config BR2_PACKAGE_PYTHON_PYICU help Python extension wrapping the ICU C++ API. - https://github.com/ovalhub/pyicu + https://gitlab.pyicu.org/main/pyicu comment "python-pyicu needs a toolchain w/ C++, gcc >= 4.9, host gcc >= 4.9" depends on !BR2_BINFMT_FLAT diff --git a/package/python-pyicu/python-pyicu.hash b/package/python-pyicu/python-pyicu.hash index 009b2643365f..395d2fe47bc7 100644 --- a/package/python-pyicu/python-pyicu.hash +++ b/package/python-pyicu/python-pyicu.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/pyicu/json -md5 4090ebb98702338cac3dbed2d72c2fd7 PyICU-2.10.2.tar.gz -sha256 0c3309eea7fab6857507ace62403515b60fe096cbfb4f90d14f55ff75c5441c1 PyICU-2.10.2.tar.gz +md5 f13ffa91014efde6962c4c1ed6ee7a3c PyICU-2.11.tar.gz +sha256 3ab531264cfe9132b3d2ac5d708da9a4649d25f6e6813730ac88cf040a08a844 PyICU-2.11.tar.gz # Locally computed sha256 checksums sha256 00da5bf22f2386c4f6f07c734490e9b818c4dcf70e6ca49f594e9cec636b9c40 LICENSE diff --git a/package/python-pyicu/python-pyicu.mk b/package/python-pyicu/python-pyicu.mk index 512b2f857f0a..213c099d07f2 100644 --- a/package/python-pyicu/python-pyicu.mk +++ b/package/python-pyicu/python-pyicu.mk @@ -4,12 +4,18 @@ # ################################################################################ -PYTHON_PYICU_VERSION = 2.10.2 +PYTHON_PYICU_VERSION = 2.11 PYTHON_PYICU_SOURCE = PyICU-$(PYTHON_PYICU_VERSION).tar.gz -PYTHON_PYICU_SITE = https://files.pythonhosted.org/packages/64/00/a531e119a97e54601f616f5061879ec2d4bb058d225014f9acf94b2970c3 +PYTHON_PYICU_SITE = https://files.pythonhosted.org/packages/03/1b/800fce0236be0b8a99b3ccbb797786dd178028960b3fd65544e2d8bad5ac PYTHON_PYICU_LICENSE = MIT PYTHON_PYICU_LICENSE_FILES = LICENSE PYTHON_PYICU_DEPENDENCIES = icu PYTHON_PYICU_SETUP_TYPE = setuptools +PYTHON_PYICU_ENV += \ + ICU_VERSION="`$(PKG_CONFIG_HOST_BINARY) icu-i18n --modversion`" \ + PYICU_CFLAGS="`$(PKG_CONFIG_HOST_BINARY) icu-i18n --variable=CXXFLAGS`" \ + PYICU_LFLAGS="`$(PKG_CONFIG_HOST_BINARY) icu-i18n --libs-only-L` \ + `$(PKG_CONFIG_HOST_BINARY) icu-i18n --libs-only-l`" + $(eval $(python-package)) diff --git a/package/python-pyjwt/python-pyjwt.hash b/package/python-pyjwt/python-pyjwt.hash index cc64be6ccac5..249f0e478e40 100644 --- a/package/python-pyjwt/python-pyjwt.hash +++ b/package/python-pyjwt/python-pyjwt.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/PyJWT/json -md5 aeed6d3a581ae383b2288a2079fa562d PyJWT-2.6.0.tar.gz -sha256 69285c7e31fc44f68a1feb309e948e0df53259d579295e6cfe2b1792329f05fd PyJWT-2.6.0.tar.gz +md5 228adbf1f9d2bcd42bbfb6d3b43dc48a PyJWT-2.7.0.tar.gz +sha256 bd6ca4a3c4285c1a2d4349e5a035fdf8fb94e04ccd0fcbe6ba289dae9cc3e074 PyJWT-2.7.0.tar.gz # Locally computed sha256 checksums sha256 797a7a20231d4c433e9f1911db1731d06b5828b98f499819a034f7c0f56f5ce5 LICENSE diff --git a/package/python-pyjwt/python-pyjwt.mk b/package/python-pyjwt/python-pyjwt.mk index fe4eeff38a28..982bc758df70 100644 --- a/package/python-pyjwt/python-pyjwt.mk +++ b/package/python-pyjwt/python-pyjwt.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYJWT_VERSION = 2.6.0 +PYTHON_PYJWT_VERSION = 2.7.0 PYTHON_PYJWT_SOURCE = PyJWT-$(PYTHON_PYJWT_VERSION).tar.gz -PYTHON_PYJWT_SITE = https://files.pythonhosted.org/packages/75/65/db64904a7f23e12dbf0565b53de01db04d848a497c6c9b87e102f74c9304 +PYTHON_PYJWT_SITE = https://files.pythonhosted.org/packages/e0/f0/9804c72e9a314360c135f42c434eb42eaabb5e7ebad760cbd8fc7023be38 PYTHON_PYJWT_SETUP_TYPE = setuptools PYTHON_PYJWT_LICENSE = MIT PYTHON_PYJWT_LICENSE_FILES = LICENSE diff --git a/package/python-pylibfdt/python-pylibfdt.hash b/package/python-pylibfdt/python-pylibfdt.hash index 056fd3a62ec9..82527e727edf 100644 --- a/package/python-pylibfdt/python-pylibfdt.hash +++ b/package/python-pylibfdt/python-pylibfdt.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.python.org/pypi/pylibfdt/json -md5 5765c20ac6cde517d5b7218503ab707b pylibfdt-1.6.1.tar.gz -sha256 90c667c5adf44c6ab2f13bdc566598897784c7b781bed91064e7373bd270b778 pylibfdt-1.6.1.tar.gz +md5 353ee3063d0b10e94d165e032897d34e pylibfdt-1.7.0.post1.tar.gz +sha256 2d048f9f8ce9a0527d497f423dea1f1135f9811c05b009cc5d5753771c1f9ba1 pylibfdt-1.7.0.post1.tar.gz # Locally computed sha256 6313108c23efffa36948f8b2cff1560a5935373b527b0e1a837cc77e6ed1bacd BSD-2-Clause sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 GPL diff --git a/package/python-pylibfdt/python-pylibfdt.mk b/package/python-pylibfdt/python-pylibfdt.mk index dc68de83b3ed..9591439b014e 100644 --- a/package/python-pylibfdt/python-pylibfdt.mk +++ b/package/python-pylibfdt/python-pylibfdt.mk @@ -4,12 +4,14 @@ # ################################################################################ -PYTHON_PYLIBFDT_VERSION = 1.6.1 +PYTHON_PYLIBFDT_VERSION = 1.7.0.post1 PYTHON_PYLIBFDT_SOURCE = pylibfdt-$(PYTHON_PYLIBFDT_VERSION).tar.gz -PYTHON_PYLIBFDT_SITE = https://files.pythonhosted.org/packages/15/3c/40b1d6a1df9dbc9d9ba5700a47ad95ca1e984f18daf25ede0da5f67d0cf7 -PYTHON_PYLIBFDT_SETUP_TYPE = setuptools +PYTHON_PYLIBFDT_SITE = https://files.pythonhosted.org/packages/96/5c/77ef0f0459e0b13f39ecc22e21ad4ac9fbe741e8a7cd70702ac8165f80e2 +PYTHON_PYLIBFDT_SETUP_TYPE = pep517 PYTHON_PYLIBFDT_LICENSE = BSD-2-Clause or GPL-2.0+ PYTHON_PYLIBFDT_LICENSE_FILES = BSD-2-Clause GPL PYTHON_PYLIBFDT_DEPENDENCIES = host-python-setuptools-scm host-swig +HOST_PYTHON_PYLIBFDT_DEPENDENCIES = host-python-setuptools-scm host-swig $(eval $(python-package)) +$(eval $(host-python-package)) diff --git a/package/python-pymupdf/Config.in b/package/python-pymupdf/Config.in index b3f9565238fb..ecaa5496b513 100644 --- a/package/python-pymupdf/Config.in +++ b/package/python-pymupdf/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_PYTHON_PYMUPDF depends on BR2_TOOLCHAIN_HAS_SYNC_4 # mupdf -> harfbuzz depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # mupdf -> harfbuzz depends on BR2_PACKAGE_XORG7 + select BR2_PACKAGE_HOST_SWIG select BR2_PACKAGE_FREETYPE select BR2_PACKAGE_MUPDF select BR2_PACKAGE_ZLIB diff --git a/package/python-pymupdf/python-pymupdf.hash b/package/python-pymupdf/python-pymupdf.hash index bda356d9051f..9fd8150088c9 100644 --- a/package/python-pymupdf/python-pymupdf.hash +++ b/package/python-pymupdf/python-pymupdf.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/pymupdf/json -md5 be10963679ac6d52b7aed2311ca7e3c5 PyMuPDF-1.21.1.tar.gz -sha256 f815741a435c62a0036bbcbf5fa6c533567bd69c5338d413714fc57b22db93e0 PyMuPDF-1.21.1.tar.gz +md5 468fe56375a1fca99e83fe0aa0b9f8bd PyMuPDF-1.22.0.tar.gz +sha256 6e1694e5c0cd8b92d503a506ee8e4ba1bed768528de586889d3ec90e9dc4a7d3 PyMuPDF-1.22.0.tar.gz # Locally computed sha256 checksums sha256 57c8ff33c9c0cfc3ef00e650a1cc910d7ee479a8bc509f6c9209a7c2a11399d6 COPYING diff --git a/package/python-pymupdf/python-pymupdf.mk b/package/python-pymupdf/python-pymupdf.mk index 70448e8d906d..639ce0e00ee8 100644 --- a/package/python-pymupdf/python-pymupdf.mk +++ b/package/python-pymupdf/python-pymupdf.mk @@ -5,14 +5,14 @@ ################################################################################ # python-pymupdf's version must match mupdf's version -PYTHON_PYMUPDF_VERSION = 1.21.1 +PYTHON_PYMUPDF_VERSION = 1.22.0 PYTHON_PYMUPDF_SOURCE = PyMuPDF-$(PYTHON_PYMUPDF_VERSION).tar.gz -PYTHON_PYMUPDF_SITE = https://files.pythonhosted.org/packages/30/44/9fce79689e5df7deebe2d17cb2b9b2a6b888439c241e71296e732aefa649 +PYTHON_PYMUPDF_SITE = https://files.pythonhosted.org/packages/28/ba/d6bb6fd678e8396d7b944870286fb25fd6f499b8cb599b5436c8f725adbf PYTHON_PYMUPDF_SETUP_TYPE = setuptools PYTHON_PYMUPDF_LICENSE = AGPL-3.0+ PYTHON_PYMUPDF_LICENSE_FILES = COPYING # No license file included in pip, but it's present on github -PYTHON_PYMUPDF_DEPENDENCIES = freetype mupdf zlib +PYTHON_PYMUPDF_DEPENDENCIES = freetype host-swig mupdf zlib PYTHON_PYMUPDF_ENV = CFLAGS="-I$(STAGING_DIR)/usr/include/mupdf -I$(STAGING_DIR)/usr/include/freetype2" diff --git a/package/python-pypa-build/python-pypa-build.hash b/package/python-pypa-build/python-pypa-build.hash index 4c02ee1dce21..6941f2c01206 100644 --- a/package/python-pypa-build/python-pypa-build.hash +++ b/package/python-pypa-build/python-pypa-build.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/build/json -md5 f2dc1823b0eff7037e19be18e354b2f1 build-0.9.0.tar.gz -sha256 1a07724e891cbd898923145eb7752ee7653674c511378eb9c7691aab1612bc3c build-0.9.0.tar.gz +md5 45f216f02135c6acb486ba325e8f8da3 build-1.0.3.tar.gz +sha256 538aab1b64f9828977f84bc63ae570b060a8ed1be419e7870b8b4fc5e6ea553b build-1.0.3.tar.gz # Locally computed sha256 checksums sha256 aaf9a29ca5907971ccf07de025375db34539a8d5eeebce20b46099805722106f LICENSE diff --git a/package/python-pypa-build/python-pypa-build.mk b/package/python-pypa-build/python-pypa-build.mk index adc124b07477..266720a5553b 100644 --- a/package/python-pypa-build/python-pypa-build.mk +++ b/package/python-pypa-build/python-pypa-build.mk @@ -4,14 +4,14 @@ # ################################################################################ -PYTHON_PYPA_BUILD_VERSION = 0.9.0 +PYTHON_PYPA_BUILD_VERSION = 1.0.3 PYTHON_PYPA_BUILD_SOURCE = build-$(PYTHON_PYPA_BUILD_VERSION).tar.gz -PYTHON_PYPA_BUILD_SITE = https://files.pythonhosted.org/packages/0f/61/aaf43fbb36cc4308be8ac8088f52db9622b0dbf1f0880c1016ae6aa03f46 +PYTHON_PYPA_BUILD_SITE = https://files.pythonhosted.org/packages/98/e3/83a89a9d338317f05a68c86a2bbc9af61235bc55a0c6a749d37598fb2af1 PYTHON_PYPA_BUILD_LICENSE = MIT PYTHON_PYPA_BUILD_LICENSE_FILES = LICENSE -PYTHON_PYPA_BUILD_SETUP_TYPE = setuptools +PYTHON_PYPA_BUILD_SETUP_TYPE = flit-bootstrap HOST_PYTHON_PYPA_BUILD_DEPENDENCIES = \ host-python-packaging \ - host-python-pep517 + host-python-pyproject-hooks $(eval $(host-python-package)) diff --git a/package/python-pyparsing/python-pyparsing.hash b/package/python-pyparsing/python-pyparsing.hash index 90242bb2e209..0a41a4033adf 100644 --- a/package/python-pyparsing/python-pyparsing.hash +++ b/package/python-pyparsing/python-pyparsing.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/pyparsing/json -md5 fadc2f3bf5872bf6310576a86c3566e0 pyparsing-3.0.9.tar.gz -sha256 2b020ecf7d21b687f219b71ecad3631f644a47f01403fa1d1036b0c6416d70fb pyparsing-3.0.9.tar.gz +md5 93b2b40f3d1ffa5c3dd795aad8f5829e pyparsing-3.1.0.tar.gz +sha256 edb662d6fe322d6e990b1594b5feaeadf806803359e3d4d42f11e295e588f0ea pyparsing-3.1.0.tar.gz # Locally computed sha256 checksums sha256 10d5120a16805804ffda8b688c220bfb4e8f39741b57320604d455a309e01972 LICENSE diff --git a/package/python-pyparsing/python-pyparsing.mk b/package/python-pyparsing/python-pyparsing.mk index 55516c3ce893..a7d6ea30d2ca 100644 --- a/package/python-pyparsing/python-pyparsing.mk +++ b/package/python-pyparsing/python-pyparsing.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYPARSING_VERSION = 3.0.9 +PYTHON_PYPARSING_VERSION = 3.1.0 PYTHON_PYPARSING_SOURCE = pyparsing-$(PYTHON_PYPARSING_VERSION).tar.gz -PYTHON_PYPARSING_SITE = https://files.pythonhosted.org/packages/71/22/207523d16464c40a0310d2d4d8926daffa00ac1f5b1576170a32db749636 +PYTHON_PYPARSING_SITE = https://files.pythonhosted.org/packages/4f/13/28e88033cab976721512e7741000fb0635fa078045e530a91abb25aea0c0 PYTHON_PYPARSING_LICENSE = MIT PYTHON_PYPARSING_LICENSE_FILES = LICENSE PYTHON_PYPARSING_SETUP_TYPE = flit diff --git a/package/python-pyphen/python-pyphen.hash b/package/python-pyphen/python-pyphen.hash index 39af62e0851d..47b9009ea187 100644 --- a/package/python-pyphen/python-pyphen.hash +++ b/package/python-pyphen/python-pyphen.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/Pyphen/json -md5 a5039d1a4d8d4bad784cb864927f83f8 pyphen-0.13.2.tar.gz -sha256 847f57a043a58408f24670ae0184ff6edfb5fd5731743208228c028ddc514438 pyphen-0.13.2.tar.gz +md5 19e799bbf459ac675698c37c5fae34a8 pyphen-0.14.0.tar.gz +sha256 596c8b3be1c1a70411ba5f6517d9ccfe3083c758ae2b94a45f2707346d8e66fa pyphen-0.14.0.tar.gz # Locally computed sha256 checksums sha256 9f0bffde4fbbbbc61c46f6577b6f472919dba9fdffabe74e8a7e44ac5dbef7a2 LICENSE sha256 2233a3eecf299bc271f1a9f57f0b3198343ad4ab16571d70320133002c51496b COPYING.GPL diff --git a/package/python-pyphen/python-pyphen.mk b/package/python-pyphen/python-pyphen.mk index 9ca064c293cd..9baa2e7b9819 100644 --- a/package/python-pyphen/python-pyphen.mk +++ b/package/python-pyphen/python-pyphen.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYPHEN_VERSION = 0.13.2 +PYTHON_PYPHEN_VERSION = 0.14.0 PYTHON_PYPHEN_SOURCE = pyphen-$(PYTHON_PYPHEN_VERSION).tar.gz -PYTHON_PYPHEN_SITE = https://files.pythonhosted.org/packages/46/12/aeb28a1e1a3f3cede967cea98ef3a1da844418ab8296a4bb9513f232736c +PYTHON_PYPHEN_SITE = https://files.pythonhosted.org/packages/4b/52/46b119f94b3f68e4193ada36941606d8e26852b67bb6e099b0e310540b41 PYTHON_PYPHEN_SETUP_TYPE = flit PYTHON_PYPHEN_LICENSE = LGPL-2.1+, MPL-1.1, GPL-2.0+ PYTHON_PYPHEN_LICENSE_FILES = LICENSE COPYING.GPL COPYING.LGPL COPYING.MPL diff --git a/package/python-pyproject-hooks/python-pyproject-hooks.hash b/package/python-pyproject-hooks/python-pyproject-hooks.hash new file mode 100644 index 000000000000..9fdcd3359684 --- /dev/null +++ b/package/python-pyproject-hooks/python-pyproject-hooks.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/pyproject_hooks/json +md5 69b0b6de189bc04c3f9e304281765741 pyproject_hooks-1.0.0.tar.gz +sha256 f271b298b97f5955d53fb12b72c1fb1948c22c1a6b70b315c54cedaca0264ef5 pyproject_hooks-1.0.0.tar.gz +# Locally computed sha256 checksums +sha256 1b22b049b5267d6dfc23a67bf4a84d8ec04b9fdfb1a51d360e42b4342c8b4154 LICENSE diff --git a/package/python-pyproject-hooks/python-pyproject-hooks.mk b/package/python-pyproject-hooks/python-pyproject-hooks.mk new file mode 100644 index 000000000000..a42dbb0ab103 --- /dev/null +++ b/package/python-pyproject-hooks/python-pyproject-hooks.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pyproject-hooks +# +################################################################################ + +PYTHON_PYPROJECT_HOOKS_VERSION = 1.0.0 +PYTHON_PYPROJECT_HOOKS_SOURCE = pyproject_hooks-$(PYTHON_PYPROJECT_HOOKS_VERSION).tar.gz +PYTHON_PYPROJECT_HOOKS_SITE = https://files.pythonhosted.org/packages/25/c1/374304b8407d3818f7025457b7366c8e07768377ce12edfe2aa58aa0f64c +PYTHON_PYPROJECT_HOOKS_SETUP_TYPE = flit-bootstrap +PYTHON_PYPROJECT_HOOKS_LICENSE = MIT +PYTHON_PYPROJECT_HOOKS_LICENSE_FILES = LICENSE + +$(eval $(host-python-package)) diff --git a/package/python-pyratemp/python-pyratemp.mk b/package/python-pyratemp/python-pyratemp.mk index 055fb3049c13..6429729a7bc0 100644 --- a/package/python-pyratemp/python-pyratemp.mk +++ b/package/python-pyratemp/python-pyratemp.mk @@ -9,6 +9,6 @@ PYTHON_PYRATEMP_SOURCE = pyratemp-$(PYTHON_PYRATEMP_VERSION).tgz PYTHON_PYRATEMP_SITE = https://pypi.python.org/packages/source/p/pyratemp PYTHON_PYRATEMP_LICENSE = MIT PYTHON_PYRATEMP_LICENSE_FILES = LICENSE -PYTHON_PYRATEMP_SETUP_TYPE = distutils +PYTHON_PYRATEMP_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-pysensors/Config.in b/package/python-pysensors/Config.in new file mode 100644 index 000000000000..f8e056506b52 --- /dev/null +++ b/package/python-pysensors/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PYTHON_PYSENSORS + bool "python-pysensors" + select BR2_PACKAGE_LM_SENSORS + help + Python bindings for libsensors.so from the lm-sensors project + via ctypes. Supports API version 4, i.e. libsensors version + 3.x. + + https://pypi.org/project/PySensors diff --git a/package/python-pysensors/python-pysensors.hash b/package/python-pysensors/python-pysensors.hash new file mode 100644 index 000000000000..b98c08602d2f --- /dev/null +++ b/package/python-pysensors/python-pysensors.hash @@ -0,0 +1,3 @@ +# md5, sha256 from https://pypi.org/pypi/PySensors/json +md5 af5ca440297b45bd440d32a7c8341c0f PySensors-0.0.4.tar.gz +sha256 beb0def410d29ee46fe196a7811124772abf84cbe3a0d8b01d80b81fba31dae5 PySensors-0.0.4.tar.gz diff --git a/package/python-pysensors/python-pysensors.mk b/package/python-pysensors/python-pysensors.mk new file mode 100644 index 000000000000..b38c47f0c807 --- /dev/null +++ b/package/python-pysensors/python-pysensors.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-pysensors +# +################################################################################ + +PYTHON_PYSENSORS_VERSION = 0.0.4 +PYTHON_PYSENSORS_SOURCE = PySensors-$(PYTHON_PYSENSORS_VERSION).tar.gz +PYTHON_PYSENSORS_SITE = https://files.pythonhosted.org/packages/76/31/d3383a192f31ce1d79f27ec3d047cca23dd82a1bf0939e774386aba37cf5 +PYTHON_PYSENSORS_SETUP_TYPE = setuptools +PYTHON_PYSENSORS_LICENSE = LGPL-2.1 + +$(eval $(python-package)) diff --git a/package/python-pysmb/Config.in b/package/python-pysmb/Config.in index 61d7c2a03e4d..bb935dddf170 100644 --- a/package/python-pysmb/Config.in +++ b/package/python-pysmb/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_PYTHON_PYSMB bool "python-pysmb" depends on BR2_INSTALL_LIBSTDCPP select BR2_PACKAGE_PYTHON_PYASN1 + select BR2_PACKAGE_PYTHON_TQDM help pysmb is an experimental SMB/CIFS library written in Python. It implements the client-side SMB/CIFS protocol (SMB1 and diff --git a/package/python-pytablereader/Config.in b/package/python-pytablereader/Config.in index 889cb798207c..00be18510ff6 100644 --- a/package/python-pytablereader/Config.in +++ b/package/python-pytablereader/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_PYTHON_PYTABLEREADER bool "python-pytablereader" + depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS # python-jsonschema -> python-rpds-py select BR2_PACKAGE_PYTHON_BEAUTIFULSOUP4 # runtime select BR2_PACKAGE_PYTHON_DATAPROPERTY # runtime select BR2_PACKAGE_PYTHON_JSONSCHEMA # runtime diff --git a/package/python-pytest-asyncio/python-pytest-asyncio.hash b/package/python-pytest-asyncio/python-pytest-asyncio.hash index 051670aa5128..f6cc1d2413b9 100644 --- a/package/python-pytest-asyncio/python-pytest-asyncio.hash +++ b/package/python-pytest-asyncio/python-pytest-asyncio.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/pytest-asyncio/json -md5 dce438c7b0081d7f580b5a79d7105570 pytest-asyncio-0.20.3.tar.gz -sha256 83cbf01169ce3e8eb71c6c278ccb0574d1a7a3bb8eaaf5e50e0ad342afb33b36 pytest-asyncio-0.20.3.tar.gz +md5 1d10f607444a375c1425a2a90960006e pytest-asyncio-0.21.1.tar.gz +sha256 40a7eae6dded22c7b604986855ea48400ab15b069ae38116e8c01238e9eeb64d pytest-asyncio-0.21.1.tar.gz # Locally computed sha256 checksums sha256 a8ad31b1c3f40dca5a84119351b8fa8ddc868edd77fad8a8ebf6d8f2d16fa4ae LICENSE diff --git a/package/python-pytest-asyncio/python-pytest-asyncio.mk b/package/python-pytest-asyncio/python-pytest-asyncio.mk index c94c9ea8765c..5c5efd819c29 100644 --- a/package/python-pytest-asyncio/python-pytest-asyncio.mk +++ b/package/python-pytest-asyncio/python-pytest-asyncio.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYTEST_ASYNCIO_VERSION = 0.20.3 +PYTHON_PYTEST_ASYNCIO_VERSION = 0.21.1 PYTHON_PYTEST_ASYNCIO_SOURCE = pytest-asyncio-$(PYTHON_PYTEST_ASYNCIO_VERSION).tar.gz -PYTHON_PYTEST_ASYNCIO_SITE = https://files.pythonhosted.org/packages/6e/06/38b0ca5d53582bb49697626975b5540435ea064762d852b5c66646c729e9 +PYTHON_PYTEST_ASYNCIO_SITE = https://files.pythonhosted.org/packages/5a/85/d39ef5f69d5597a206f213ce387bcdfa47922423875829f7a98a87d33281 PYTHON_PYTEST_ASYNCIO_SETUP_TYPE = setuptools PYTHON_PYTEST_ASYNCIO_LICENSE = Apache-2.0 PYTHON_PYTEST_ASYNCIO_LICENSE_FILES = LICENSE diff --git a/package/python-pytest/Config.in b/package/python-pytest/Config.in index 9bbc9ea2d2c5..c8f9a6eb5b8f 100644 --- a/package/python-pytest/Config.in +++ b/package/python-pytest/Config.in @@ -6,6 +6,7 @@ config BR2_PACKAGE_PYTHON_PYTEST select BR2_PACKAGE_PYTHON_PLUGGY # runtime select BR2_PACKAGE_PYTHON_PY # runtime select BR2_PACKAGE_PYTHON3_PYEXPAT # runtime + select BR2_PACKAGE_PYTHON3_ZLIB # runtime help pytest is a framework that makes building simple and scalable tests easy. Tests are expressive and readable—no boilerplate diff --git a/package/python-pytest/python-pytest.hash b/package/python-pytest/python-pytest.hash index 2ae1e61ed404..7f79b94d8d57 100644 --- a/package/python-pytest/python-pytest.hash +++ b/package/python-pytest/python-pytest.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/pytest/json -md5 49decbade40109f9c6970df60c22a230 pytest-7.2.0.tar.gz -sha256 c4014eb40e10f11f355ad4e3c2fb2c6c6d1919c73f3b5a433de4708202cade59 pytest-7.2.0.tar.gz +md5 8620558e8971b11207b2d6b083906cf9 pytest-7.4.2.tar.gz +sha256 a766259cfab564a2ad52cb1aae1b881a75c3eb7e34ca3779697c23ed47c47069 pytest-7.4.2.tar.gz # Locally computer sha256 sha256 ca836a5f9ecca3b2f350230faa20a48fb8b145653b5568d784862df864706b9b LICENSE diff --git a/package/python-pytest/python-pytest.mk b/package/python-pytest/python-pytest.mk index 1794582dd3e6..326d951a32d8 100644 --- a/package/python-pytest/python-pytest.mk +++ b/package/python-pytest/python-pytest.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYTEST_VERSION = 7.2.0 +PYTHON_PYTEST_VERSION = 7.4.2 PYTHON_PYTEST_SOURCE = pytest-$(PYTHON_PYTEST_VERSION).tar.gz -PYTHON_PYTEST_SITE = https://files.pythonhosted.org/packages/0b/21/055f39bf8861580b43f845f9e8270c7786fe629b2f8562ff09007132e2e7 +PYTHON_PYTEST_SITE = https://files.pythonhosted.org/packages/e5/d0/18209bb95db8ee693a9a04fe056ab0663c6d6b1baf67dd50819dd9cd4bd7 PYTHON_PYTEST_SETUP_TYPE = setuptools PYTHON_PYTEST_LICENSE = MIT PYTHON_PYTEST_LICENSE_FILES = LICENSE diff --git a/package/python-pythran/python-pythran.hash b/package/python-pythran/python-pythran.hash index 08348a5ccf7f..2dfc445b2ff3 100644 --- a/package/python-pythran/python-pythran.hash +++ b/package/python-pythran/python-pythran.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/pythran/json -md5 d2961ece35b4b9f44a84ef31df1b21ff pythran-0.12.0.tar.gz -sha256 eff3dd0d3eebe57372f0d14f82985525e9bcdfb5b1d1010e1932cf9207060f9f pythran-0.12.0.tar.gz +md5 3090288af50566af75cb058d1878aaad pythran-0.13.1.tar.gz +sha256 8aad08162f010e5425a7b254dd68d83311b430bb29f9252dce2eff3ba39497dd pythran-0.13.1.tar.gz # Locally computed sha256 checksums sha256 0be9f14c66a9a3cb66d5263a6495437862ce0c9cdf60d4a6c36d1e51b1244c6e LICENSE sha256 e1c0ed0a99e4462016d79d835f1f479b78c4d4a07fe66598e97f449503ffd178 docs/LICENSE.rst diff --git a/package/python-pythran/python-pythran.mk b/package/python-pythran/python-pythran.mk index 0d946be28ac9..25735ad95a19 100644 --- a/package/python-pythran/python-pythran.mk +++ b/package/python-pythran/python-pythran.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYTHRAN_VERSION = 0.12.0 +PYTHON_PYTHRAN_VERSION = 0.13.1 PYTHON_PYTHRAN_SOURCE = pythran-$(PYTHON_PYTHRAN_VERSION).tar.gz -PYTHON_PYTHRAN_SITE = https://files.pythonhosted.org/packages/99/e0/ed0e81de05cfa4ecbcbceec6603d175387d8bc7a6332cbfd155d09958ccf +PYTHON_PYTHRAN_SITE = https://files.pythonhosted.org/packages/8d/d8/b27e8dc3f3a03dcd317d40d9df0ae07ebbd85444585973ceba07716934d0 PYTHON_PYTHRAN_SETUP_TYPE = setuptools PYTHON_PYTHRAN_LICENSE = BSD-3-Clause PYTHON_PYTHRAN_LICENSE_FILES = LICENSE docs/LICENSE.rst diff --git a/package/python-pytz/python-pytz.hash b/package/python-pytz/python-pytz.hash index 6d6e1b606c1f..861f9d6f35a0 100644 --- a/package/python-pytz/python-pytz.hash +++ b/package/python-pytz/python-pytz.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/pytz/json -md5 3b9356e4dcd441df922cc01e8eb15983 pytz-2022.7.tar.gz -sha256 7ccfae7b4b2c067464a6733c6261673fdb8fd1be905460396b97a073e9fa683a pytz-2022.7.tar.gz +md5 fe54c8f8a1544b4e78b523b264ab071b pytz-2023.3.tar.gz +sha256 1d8ce29db189191fb55338ee6d0387d82ab59f3d00eac103412d64e0ebd0c588 pytz-2023.3.tar.gz # Locally computed sha256 checksums sha256 be8b1a37ebe26c592a90f6c0eb33103a7f383ce2f4d7498c0af9a526990a07b8 LICENSE.txt diff --git a/package/python-pytz/python-pytz.mk b/package/python-pytz/python-pytz.mk index 057a3ef17378..4754efe41a62 100644 --- a/package/python-pytz/python-pytz.mk +++ b/package/python-pytz/python-pytz.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYTZ_VERSION = 2022.7 +PYTHON_PYTZ_VERSION = 2023.3 PYTHON_PYTZ_SOURCE = pytz-$(PYTHON_PYTZ_VERSION).tar.gz -PYTHON_PYTZ_SITE = https://files.pythonhosted.org/packages/6d/37/54f2d7c147e42dc85ffbc6910862bb4f141fb3fc14d9a88efaa1a76c7df2 +PYTHON_PYTZ_SITE = https://files.pythonhosted.org/packages/5e/32/12032aa8c673ee16707a9b6cdda2b09c0089131f35af55d443b6a9c69c1d PYTHON_PYTZ_SETUP_TYPE = setuptools PYTHON_PYTZ_LICENSE = MIT PYTHON_PYTZ_LICENSE_FILES = LICENSE.txt diff --git a/package/python-pyxb/Config.in b/package/python-pyxb/Config.in deleted file mode 100644 index 6555ed80b607..000000000000 --- a/package/python-pyxb/Config.in +++ /dev/null @@ -1,8 +0,0 @@ -config BR2_PACKAGE_PYTHON_PYXB - bool "python-pyxb" - help - PyXB is a pure Python package that generates Python code for - classes that correspond to data structures defined by - XMLSchema. - - http://pyxb.sourceforge.net/ diff --git a/package/python-pyxb/python-pyxb.hash b/package/python-pyxb/python-pyxb.hash deleted file mode 100644 index f24cd42e5a88..000000000000 --- a/package/python-pyxb/python-pyxb.hash +++ /dev/null @@ -1,4 +0,0 @@ -# md5 from https://pypi.python.org/pypi/PyXB/json, sha256 locally computed -md5 4303573fc7094ce4664c5b71cd4bdb48 PyXB-1.2.6.tar.gz -sha256 2a00f38dd1d87b88f92d79bc5a09718d730419b88e814545f472bbd5a3bf27b4 PyXB-1.2.6.tar.gz -sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE diff --git a/package/python-pyxb/python-pyxb.mk b/package/python-pyxb/python-pyxb.mk deleted file mode 100644 index 6af10b51e737..000000000000 --- a/package/python-pyxb/python-pyxb.mk +++ /dev/null @@ -1,14 +0,0 @@ -################################################################################ -# -# python-pyxb -# -################################################################################ - -PYTHON_PYXB_VERSION = 1.2.6 -PYTHON_PYXB_SOURCE = PyXB-$(PYTHON_PYXB_VERSION).tar.gz -PYTHON_PYXB_SITE = https://pypi.python.org/packages/e3/09/4fdb190ea2b7cb43d6d3e745276ee69f4d6181be70fcbfda7df3c5f72f0e -PYTHON_PYXB_LICENSE = Apache-2.0 -PYTHON_PYXB_LICENSE_FILES = LICENSE -PYTHON_PYXB_SETUP_TYPE = distutils - -$(eval $(python-package)) diff --git a/package/python-pyyaml/python-pyyaml.hash b/package/python-pyyaml/python-pyyaml.hash index f8b533256531..e1f9412c300d 100644 --- a/package/python-pyyaml/python-pyyaml.hash +++ b/package/python-pyyaml/python-pyyaml.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/PyYAML/json -md5 1d19c798f25e58e3e582f0f8c977dbb8 PyYAML-6.0.tar.gz -sha256 68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2 PyYAML-6.0.tar.gz +md5 c9246277af2d9a13b7018af267a0831a PyYAML-6.0.1.tar.gz +sha256 bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43 PyYAML-6.0.1.tar.gz # Locally computed sha256 checksums sha256 8d3928f9dc4490fd635707cb88eb26bd764102a7282954307d3e5167a577e8a4 LICENSE diff --git a/package/python-pyyaml/python-pyyaml.mk b/package/python-pyyaml/python-pyyaml.mk index 067af8ea7d80..846c57df4ffb 100644 --- a/package/python-pyyaml/python-pyyaml.mk +++ b/package/python-pyyaml/python-pyyaml.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYYAML_VERSION = 6.0 +PYTHON_PYYAML_VERSION = 6.0.1 PYTHON_PYYAML_SOURCE = PyYAML-$(PYTHON_PYYAML_VERSION).tar.gz -PYTHON_PYYAML_SITE = https://files.pythonhosted.org/packages/36/2b/61d51a2c4f25ef062ae3f74576b01638bebad5e045f747ff12643df63844 +PYTHON_PYYAML_SITE = https://files.pythonhosted.org/packages/cd/e5/af35f7ea75cf72f2cd079c95ee16797de7cd71f29ea7c68ae5ce7be1eda0 PYTHON_PYYAML_SETUP_TYPE = setuptools PYTHON_PYYAML_LICENSE = MIT PYTHON_PYYAML_LICENSE_FILES = LICENSE diff --git a/package/python-redis/python-redis.hash b/package/python-redis/python-redis.hash index 209ff35b78ab..e27f87bd50d9 100644 --- a/package/python-redis/python-redis.hash +++ b/package/python-redis/python-redis.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/redis/json -md5 4ab691af57ac346c2e630ce2787a424f redis-4.4.0.tar.gz -sha256 7b8c87d19c45d3f1271b124858d2a5c13160c4e74d4835e28273400fa34d5228 redis-4.4.0.tar.gz +md5 ad365234df634680d15294ddc87c42de redis-4.5.5.tar.gz +sha256 dc87a0bdef6c8bfe1ef1e1c40be7034390c2ae02d92dcd0c7ca1729443899880 redis-4.5.5.tar.gz # Locally computed sha256 checksums sha256 7801a39e3a1aec58a7ea7c9f4dc1238cf0922c36a1fc8eff0bb7d684ff6dd354 LICENSE diff --git a/package/python-redis/python-redis.mk b/package/python-redis/python-redis.mk index bbbd6f1df236..186702dc83e3 100644 --- a/package/python-redis/python-redis.mk +++ b/package/python-redis/python-redis.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_REDIS_VERSION = 4.4.0 +PYTHON_REDIS_VERSION = 4.5.5 PYTHON_REDIS_SOURCE = redis-$(PYTHON_REDIS_VERSION).tar.gz -PYTHON_REDIS_SITE = https://files.pythonhosted.org/packages/7a/05/671367bb466b3301bc4543fdad6ac107214ca327c8d97165b30246d87e88 +PYTHON_REDIS_SITE = https://files.pythonhosted.org/packages/53/30/128c5599bc3fa61488866be0228326b3e486be34480126f70e572043adf8 PYTHON_REDIS_SETUP_TYPE = setuptools PYTHON_REDIS_LICENSE = MIT PYTHON_REDIS_LICENSE_FILES = LICENSE diff --git a/package/python-referencing/Config.in b/package/python-referencing/Config.in new file mode 100644 index 000000000000..273c42543eb6 --- /dev/null +++ b/package/python-referencing/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PYTHON_REFERENCING + bool "python-referencing" + depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS # python-rpds-py + select BR2_PACKAGE_PYTHON_ATTRS # runtime + select BR2_PACKAGE_PYTHON_RPDS_PY # runtime + help + JSON Referencing + Python. + + https://github.com/python-jsonschema/referencing diff --git a/package/python-referencing/python-referencing.hash b/package/python-referencing/python-referencing.hash new file mode 100644 index 000000000000..d4f3dce5a427 --- /dev/null +++ b/package/python-referencing/python-referencing.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/referencing/json +md5 617d973b9ce86b6f74b2216c6f3af5c9 referencing-0.30.2.tar.gz +sha256 794ad8003c65938edcdbc027f1933215e0d0ccc0291e3ce20a4d87432b59efc0 referencing-0.30.2.tar.gz +# Locally computed sha256 checksums +sha256 42dcd63495f87b4eb7c7757afa379bb55a53f94afd7a5f657d9adf57236e515c COPYING diff --git a/package/python-referencing/python-referencing.mk b/package/python-referencing/python-referencing.mk new file mode 100644 index 000000000000..4d11c99deb3b --- /dev/null +++ b/package/python-referencing/python-referencing.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# python-referencing +# +################################################################################ + +PYTHON_REFERENCING_VERSION = 0.30.2 +PYTHON_REFERENCING_SOURCE = referencing-$(PYTHON_REFERENCING_VERSION).tar.gz +PYTHON_REFERENCING_SITE = https://files.pythonhosted.org/packages/e1/43/d3f6cf3e1ec9003520c5fb31dc363ee488c517f09402abd2a1c90df63bbb +PYTHON_REFERENCING_SETUP_TYPE = pep517 +PYTHON_REFERENCING_LICENSE = MIT +PYTHON_REFERENCING_LICENSE_FILES = COPYING +PYTHON_REFERENCING_DEPENDENCIES = \ + host-python-hatchling \ + host-python-hatch-vcs + +$(eval $(python-package)) diff --git a/package/python-requests/python-requests.hash b/package/python-requests/python-requests.hash index 1383e680d52f..c4aeabb25da7 100644 --- a/package/python-requests/python-requests.hash +++ b/package/python-requests/python-requests.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/requests/json -md5 796ea875cdae283529c03b9203d9c454 requests-2.28.1.tar.gz -sha256 7c5599b102feddaa661c826c56ab4fee28bfd17f5abca1ebbe3e7f19d7c97983 requests-2.28.1.tar.gz +md5 941e175c276cd7d39d098092c56679a4 requests-2.31.0.tar.gz +sha256 942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1 requests-2.31.0.tar.gz # Locally computed sha256 checksums sha256 09e8a9bcec8067104652c168685ab0931e7868f9c8284b66f5ae6edae5f1130b LICENSE diff --git a/package/python-requests/python-requests.mk b/package/python-requests/python-requests.mk index 7a21cca52c35..2c74db37113f 100644 --- a/package/python-requests/python-requests.mk +++ b/package/python-requests/python-requests.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_REQUESTS_VERSION = 2.28.1 +PYTHON_REQUESTS_VERSION = 2.31.0 PYTHON_REQUESTS_SOURCE = requests-$(PYTHON_REQUESTS_VERSION).tar.gz -PYTHON_REQUESTS_SITE = https://files.pythonhosted.org/packages/a5/61/a867851fd5ab77277495a8709ddda0861b28163c4613b011bc00228cc724 +PYTHON_REQUESTS_SITE = https://files.pythonhosted.org/packages/9d/be/10918a2eac4ae9f02f6cfe6414b7a155ccd8f7f9d4380d62fd5b955065c3 PYTHON_REQUESTS_SETUP_TYPE = setuptools PYTHON_REQUESTS_LICENSE = Apache-2.0 PYTHON_REQUESTS_LICENSE_FILES = LICENSE diff --git a/package/python-rpds-py/Config.in b/package/python-rpds-py/Config.in new file mode 100644 index 000000000000..172c5fd0b6d5 --- /dev/null +++ b/package/python-rpds-py/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_RPDS_PY + bool "python-rpds-py" + depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS + help + Python bindings to the Rust rpds crate for persistent + data structures. + + https://github.com/crate-py/rpds diff --git a/package/python-rpds-py/python-rpds-py.hash b/package/python-rpds-py/python-rpds-py.hash new file mode 100644 index 000000000000..b04aa210d32e --- /dev/null +++ b/package/python-rpds-py/python-rpds-py.hash @@ -0,0 +1,4 @@ +# Locally calculated after vendoring +sha256 87361601241744fff6235e35050addfe34d00508172d2bd4f178193a28727287 rpds_py-0.12.0.tar.gz +# Locally computed sha256 checksums +sha256 314e4e91be3baa93c0fb4bccc9e4e97cd643eb839b065af921782c2175fe9909 LICENSE diff --git a/package/python-rpds-py/python-rpds-py.mk b/package/python-rpds-py/python-rpds-py.mk new file mode 100644 index 000000000000..6f71d0204704 --- /dev/null +++ b/package/python-rpds-py/python-rpds-py.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-rpds-py +# +################################################################################ + +PYTHON_RPDS_PY_VERSION = 0.12.0 +PYTHON_RPDS_PY_SOURCE = rpds_py-$(PYTHON_RPDS_PY_VERSION).tar.gz +PYTHON_RPDS_PY_SITE = https://files.pythonhosted.org/packages/75/be/e3f366aa4cd1e3a814f136773e506fc5423eff903ef0372a251df34e6e45 +PYTHON_RPDS_PY_SETUP_TYPE = maturin +PYTHON_RPDS_PY_LICENSE = MIT +PYTHON_RPDS_PY_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-rpi-ws281x/python-rpi-ws281x.hash b/package/python-rpi-ws281x/python-rpi-ws281x.hash index ffdd826b6f99..42bc20552324 100644 --- a/package/python-rpi-ws281x/python-rpi-ws281x.hash +++ b/package/python-rpi-ws281x/python-rpi-ws281x.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/rpi-ws281x/json -md5 016e1f03f9168ef03d4baf074aa60f03 rpi_ws281x-4.3.4.tar.gz -sha256 072eff1787e579d1710381b27c467709e3aab28ac579c7a47d7cc87398496f28 rpi_ws281x-4.3.4.tar.gz +md5 9c87b5bedba0a48bb97e9953378dfb78 rpi_ws281x-5.0.0.tar.gz +sha256 00ce6db771436b778d0930245cf8ea2aae11008cc5fd67d57789c5422af3ee55 rpi_ws281x-5.0.0.tar.gz # Locally computed sha256 checksums sha256 7bbf6337c1eee7169579e6acd398f31ea274dfa3a1689ab7e654ca3585d5a8a9 LICENSE sha256 7bbf6337c1eee7169579e6acd398f31ea274dfa3a1689ab7e654ca3585d5a8a9 lib/LICENSE diff --git a/package/python-rpi-ws281x/python-rpi-ws281x.mk b/package/python-rpi-ws281x/python-rpi-ws281x.mk index 73befeb56e98..610467b160cf 100644 --- a/package/python-rpi-ws281x/python-rpi-ws281x.mk +++ b/package/python-rpi-ws281x/python-rpi-ws281x.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_RPI_WS281X_VERSION = 4.3.4 +PYTHON_RPI_WS281X_VERSION = 5.0.0 PYTHON_RPI_WS281X_SOURCE = rpi_ws281x-$(PYTHON_RPI_WS281X_VERSION).tar.gz -PYTHON_RPI_WS281X_SITE = https://files.pythonhosted.org/packages/e2/d4/75fcc4f3412b9b16e39e6cd6156f2e171fe7b2e79057be17d1acf38fded4 +PYTHON_RPI_WS281X_SITE = https://files.pythonhosted.org/packages/c0/1e/642208a685c5e96d38323f42c75d9b24f95e2d1b8390dd104e04a712f29e PYTHON_RPI_WS281X_SETUP_TYPE = setuptools PYTHON_RPI_WS281X_LICENSE = BSD-2-Clause PYTHON_RPI_WS281X_LICENSE_FILES = LICENSE lib/LICENSE diff --git a/package/python-rtoml/python-rtoml.mk b/package/python-rtoml/python-rtoml.mk index 9afe8c03150b..819dcf3288ae 100644 --- a/package/python-rtoml/python-rtoml.mk +++ b/package/python-rtoml/python-rtoml.mk @@ -7,16 +7,8 @@ PYTHON_RTOML_VERSION = 0.8.0 PYTHON_RTOML_SOURCE = rtoml-$(PYTHON_RTOML_VERSION).tar.gz PYTHON_RTOML_SITE = https://files.pythonhosted.org/packages/33/a6/b42d8e0e28bec9fd7fdbafb2d76db3f8578f151a669eba564d422756d909 -PYTHON_RTOML_SETUP_TYPE = setuptools +PYTHON_RTOML_SETUP_TYPE = setuptools-rust PYTHON_RTOML_LICENSE = MIT PYTHON_RTOML_LICENSE_FILES = LICENSE -PYTHON_RTOML_DEPENDENCIES = host-python-setuptools-rust host-rustc -PYTHON_RTOML_ENV = \ - $(PKG_CARGO_ENV) \ - PYO3_CROSS_LIB_DIR="$(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)" -# We need to vendor the Cargo crates at download time -PYTHON_RTOML_DOWNLOAD_POST_PROCESS = cargo -PYTHON_RTOML_DOWNLOAD_DEPENDENCIES = host-rustc -PYTHON_RTOML_DL_ENV = $(PKG_CARGO_ENV) $(eval $(python-package)) diff --git a/package/python-scipy/Config.in b/package/python-scipy/Config.in index 229b5997ad2b..aa7eefd44d56 100644 --- a/package/python-scipy/Config.in +++ b/package/python-scipy/Config.in @@ -2,10 +2,14 @@ config BR2_PACKAGE_PYTHON_SCIPY bool "python-scipy" depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS # python-numpy depends on BR2_PACKAGE_LAPACK_ARCH_SUPPORTS # lapack + depends on BR2_PACKAGE_OPENBLAS_ARCH_SUPPORTS # openblas depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL # python-numpy + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_9 # python-numpy + depends on BR2_HOST_GCC_AT_LEAST_9 # host-python-numpy depends on BR2_TOOLCHAIN_HAS_FORTRAN # lapack depends on BR2_INSTALL_LIBSTDCPP select BR2_PACKAGE_LAPACK + select BR2_PACKAGE_OPENBLAS select BR2_PACKAGE_PYTHON3_ZLIB # runtime scipy::io select BR2_PACKAGE_PYTHON_NUMPY # runtime select BR2_PACKAGE_PYTHON_PYBIND @@ -17,9 +21,11 @@ config BR2_PACKAGE_PYTHON_SCIPY https://www.scipy.org/scipylib/ -comment "python-scipy needs toolchain w/ fortran and c++ and glibc or musl" +comment "python-scipy needs glibc or musl toolchain w/ fortran, c++, gcc >= 9, host gcc >= 9" depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS depends on BR2_PACKAGE_LAPACK_ARCH_SUPPORTS + depends on BR2_PACKAGE_OPENBLAS_ARCH_SUPPORTS depends on !BR2_TOOLCHAIN_HAS_FORTRAN || \ - !BR2_INSTALL_LIBSTDCPP || \ + !BR2_INSTALL_LIBSTDCPP || !BR2_HOST_GCC_AT_LEAST_9 || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_9 || \ (!BR2_TOOLCHAIN_USES_GLIBC && !BR2_TOOLCHAIN_USES_MUSL) diff --git a/package/python-scipy/python-scipy.hash b/package/python-scipy/python-scipy.hash index 0274679c431e..963477113935 100644 --- a/package/python-scipy/python-scipy.hash +++ b/package/python-scipy/python-scipy.hash @@ -1,7 +1,6 @@ # Locally generated -sha256 0140dd24d14ce194fdb3df496c2190f0896ca84ac98bf5d69c3b3fb7bde1a1e9 scipy-1.8.1.tar.xz -sha256 96599f8ec69a2cc609265eed13fc75090aacb28742260e55ce623788a33da19c LICENSE.txt -sha256 37e64a498894ac7c3b070023e3689e954a8ecf8a23b90968d09a455f1b4f7b35 scipy/linalg/src/lapack_deprecations/LICENSE +sha256 f9b0248cb9d08eead44cde47cbf6339f1e9aa0dfde28f5fb27950743e317bd5d scipy-1.11.0.tar.gz +sha256 5517022426a56179540ee6eace15fd723ef8fdb83b2900fed2152dd2e2f972a2 LICENSE.txt sha256 606209a000716c5f66e33e180ce08434b96ed17db4975ab9723c6b5fbcc89609 scipy/ndimage/LICENSE.txt sha256 3df9207af2fdb861af0ae3b22026f163b9bcfab4e525dc4943afe2ffa3f77624 scipy/optimize/tnc/LICENSE sha256 f0cedf52503b2d42b83411a0a16e6fefac346dfad8fddc66f50050150123470c scipy/sparse/linalg/_dsolve/SuperLU/License.txt diff --git a/package/python-scipy/python-scipy.mk b/package/python-scipy/python-scipy.mk index a8c23c6c888c..3010cfbd54d3 100644 --- a/package/python-scipy/python-scipy.mk +++ b/package/python-scipy/python-scipy.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_SCIPY_VERSION = 1.8.1 -PYTHON_SCIPY_SOURCE = scipy-$(PYTHON_SCIPY_VERSION).tar.xz -PYTHON_SCIPY_SITE = https://github.com/scipy/scipy/releases/download/v$(PYTHON_SCIPY_VERSION) +PYTHON_SCIPY_VERSION = 1.11.0 +PYTHON_SCIPY_SOURCE = scipy-$(PYTHON_SCIPY_VERSION).tar.gz +PYTHON_SCIPY_SITE = https://files.pythonhosted.org/packages/fa/d0/724c8204f87b6f807e3e67de32b8b4922d579154a448ce94e89129064bf1 PYTHON_SCIPY_LICENSE = \ BSD-3-Clause, \ BSD-2-Clause, \ @@ -16,7 +16,6 @@ PYTHON_SCIPY_LICENSE = \ Qhull PYTHON_SCIPY_LICENSE_FILES = \ LICENSE.txt \ - scipy/linalg/src/lapack_deprecations/LICENSE \ scipy/ndimage/LICENSE.txt \ scipy/optimize/tnc/LICENSE \ scipy/sparse/linalg/_dsolve/SuperLU/License.txt \ @@ -25,34 +24,24 @@ PYTHON_SCIPY_LICENSE_FILES = \ PYTHON_SCIPY_CPE_ID_VENDOR = scipy PYTHON_SCIPY_CPE_ID_PRODUCT = scipy PYTHON_SCIPY_DEPENDENCIES += \ + host-python-cython \ host-python-numpy \ host-python-pythran \ zlib \ lapack \ + openblas \ + python3 \ python-numpy \ python-pybind PYTHON_SCIPY_INSTALL_STAGING = YES -PYTHON_SCIPY_SETUP_TYPE = setuptools -PYTHON_SCIPY_BUILD_OPTS = config_fc --fcompiler=gnu95 +PYTHON_SCIPY_CONF_ENV += \ + _PYTHON_SYSCONFIGDATA_NAME=$(PKG_PYTHON_SYSCONFIGDATA_NAME) \ + PYTHONPATH=$(PYTHON3_PATH) -PYTHON_SCIPY_LDFLAGS = $(TARGET_LDFLAGS) -shared \ - -L$(PYTHON3_PATH)/site-packages/numpy/core/lib -# -lnpyrandom localization -PYTHON_SCIPY_LDFLAGS += \ - -L$(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages/numpy/random/lib +PYTHON_SCIPY_CONF_OPTS = -Dblas=openblas -Dlapack=lapack -PYTHON_SCIPY_ENV = \ - F90=$(TARGET_FC) \ - LDFLAGS="$(PYTHON_SCIPY_LDFLAGS)" +PYTHON_SCIPY_MESON_EXTRA_PROPERTIES = \ + numpy-include-dir='$(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages/numpy/core/include' -# Provide system configuration options to numpy distutils extensions, telling -# to find all include files and libraries in staging directory. -define PYTHON_SCIPY_CONFIGURE_CMDS - -rm -f $(@D)/site.cfg - echo "[DEFAULT]" >> $(@D)/site.cfg - echo "library_dirs = $(STAGING_DIR)/usr/lib" >> $(@D)/site.cfg - echo "include_dirs = $(STAGING_DIR)/usr/include" >> $(@D)/site.cfg -endef - -$(eval $(python-package)) +$(eval $(meson-package)) diff --git a/package/python-sdnotify/python-sdnotify.mk b/package/python-sdnotify/python-sdnotify.mk index 1b0f2276dcd3..4e250eee95e5 100644 --- a/package/python-sdnotify/python-sdnotify.mk +++ b/package/python-sdnotify/python-sdnotify.mk @@ -7,7 +7,7 @@ PYTHON_SDNOTIFY_VERSION = 0.3.2 PYTHON_SDNOTIFY_SOURCE = sdnotify-$(PYTHON_SDNOTIFY_VERSION).tar.gz PYTHON_SDNOTIFY_SITE = https://files.pythonhosted.org/packages/ce/d8/9fdc36b2a912bf78106de4b3f0de3891ff8f369e7a6f80be842b8b0b6bd5 -PYTHON_SDNOTIFY_SETUP_TYPE = distutils +PYTHON_SDNOTIFY_SETUP_TYPE = setuptools PYTHON_SDNOTIFY_LICENSE = MIT PYTHON_SDNOTIFY_LICENSE_FILES = LICENSE.txt diff --git a/package/python-segno/Config.in b/package/python-segno/Config.in new file mode 100644 index 000000000000..3957cd79bfff --- /dev/null +++ b/package/python-segno/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_SEGNO + bool "python-segno" + select BR2_PACKAGE_PYTHON_SETUPTOOLS # runtime + help + QR Code and Micro QR Code generator for Python 2 and Python 3 + + https://github.com/heuer/segno/ diff --git a/package/python-segno/python-segno.hash b/package/python-segno/python-segno.hash new file mode 100644 index 000000000000..286bdf3615df --- /dev/null +++ b/package/python-segno/python-segno.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/segno/json +md5 6d7c852f951501cd3af85ef061d6bee4 segno-1.5.2.tar.gz +sha256 983424b296e62189d70fc73460cd946cf56dcbe82b9bda18c066fc1b24371cdc segno-1.5.2.tar.gz +# Locally computed sha256 checksums +sha256 98b0a86ca0cbf68c95051741bc983425a43fdece775fe0e2712e66be459cc9d1 LICENSE diff --git a/package/python-segno/python-segno.mk b/package/python-segno/python-segno.mk new file mode 100644 index 000000000000..c832f38f4b0d --- /dev/null +++ b/package/python-segno/python-segno.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-segno +# +################################################################################ + +PYTHON_SEGNO_VERSION = 1.5.2 +PYTHON_SEGNO_SOURCE = segno-$(PYTHON_SEGNO_VERSION).tar.gz +PYTHON_SEGNO_SITE = https://files.pythonhosted.org/packages/90/2a/2fedf1023f9273d8326362df7936748ebadef92ba53ab7970d9b8df1a6c2 +PYTHON_SEGNO_SETUP_TYPE = setuptools +PYTHON_SEGNO_LICENSE = BSD-3-Clause +PYTHON_SEGNO_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-selenium/python-selenium.hash b/package/python-selenium/python-selenium.hash index d462abc62b75..03a9683a219d 100644 --- a/package/python-selenium/python-selenium.hash +++ b/package/python-selenium/python-selenium.hash @@ -1,3 +1,3 @@ # md5, sha256 from https://pypi.org/pypi/selenium/json -md5 e9054eb95920bb2a1d594090f0773f61 selenium-4.8.0.tar.gz -sha256 fee36724d6cf0b18c73781bb8ec7be4a35ab1e2564e64e64e64da75e50e052af selenium-4.8.0.tar.gz +md5 02404033a10b2b29aa098f50503c0a1a selenium-4.9.1.tar.gz +sha256 3444f4376321530c36ce8355b6b357d8cf4a7d588ce5cf772183465930bbed0e selenium-4.9.1.tar.gz diff --git a/package/python-selenium/python-selenium.mk b/package/python-selenium/python-selenium.mk index 6dbea6fb7e6c..d59a16a57d20 100644 --- a/package/python-selenium/python-selenium.mk +++ b/package/python-selenium/python-selenium.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_SELENIUM_VERSION = 4.8.0 +PYTHON_SELENIUM_VERSION = 4.9.1 PYTHON_SELENIUM_SOURCE = selenium-$(PYTHON_SELENIUM_VERSION).tar.gz -PYTHON_SELENIUM_SITE = https://files.pythonhosted.org/packages/2e/3d/492cf1a6823c48369328572c6bc63b7a957ba25c0009ee6bdb507cd9a6a4 +PYTHON_SELENIUM_SITE = https://files.pythonhosted.org/packages/fd/e2/0e5bee6762a7bf7852b47a79c5b12f9e526e6962958dbb9719fa490ba24c PYTHON_SELENIUM_SETUP_TYPE = setuptools PYTHON_SELENIUM_LICENSE = Apache-2.0 diff --git a/package/python-setuptools-rust/python-setuptools-rust.hash b/package/python-setuptools-rust/python-setuptools-rust.hash index ff1b9a127f94..a83288e43ac8 100644 --- a/package/python-setuptools-rust/python-setuptools-rust.hash +++ b/package/python-setuptools-rust/python-setuptools-rust.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/setuptools-rust/json -md5 fd3412ca77ffd6e06e2e83d0e9636084 setuptools-rust-1.5.2.tar.gz -sha256 d8daccb14dc0eae1b6b6eb3ecef79675bd37b4065369f79c35393dd5c55652c7 setuptools-rust-1.5.2.tar.gz +md5 c5ca990845902dbaa1885f9ad9399988 setuptools-rust-1.8.1.tar.gz +sha256 94b1dd5d5308b3138d5b933c3a2b55e6d6927d1a22632e509fcea9ddd0f7e486 setuptools-rust-1.8.1.tar.gz # Locally computed sha256 checksums sha256 b20668c1590582b3882854050ccfbdb7aee1f71a1ffe9eacc4c5aeb08a14161b LICENSE diff --git a/package/python-setuptools-rust/python-setuptools-rust.mk b/package/python-setuptools-rust/python-setuptools-rust.mk index 7f19ece1a3a5..f07263becfb6 100644 --- a/package/python-setuptools-rust/python-setuptools-rust.mk +++ b/package/python-setuptools-rust/python-setuptools-rust.mk @@ -4,12 +4,12 @@ # ################################################################################ -PYTHON_SETUPTOOLS_RUST_VERSION = 1.5.2 +PYTHON_SETUPTOOLS_RUST_VERSION = 1.8.1 PYTHON_SETUPTOOLS_RUST_SOURCE = setuptools-rust-$(PYTHON_SETUPTOOLS_RUST_VERSION).tar.gz -PYTHON_SETUPTOOLS_RUST_SITE = https://files.pythonhosted.org/packages/99/db/e4ecb483ffa194d632ed44bda32cb740e564789fed7e56c2be8e2a0e2aa6 +PYTHON_SETUPTOOLS_RUST_SITE = https://files.pythonhosted.org/packages/f2/40/f1e9fedb88462248e94ea4383cda0065111582a4d5a32ca84acf60ab1107 PYTHON_SETUPTOOLS_RUST_SETUP_TYPE = setuptools PYTHON_SETUPTOOLS_RUST_LICENSE = MIT PYTHON_SETUPTOOLS_RUST_LICENSE_FILES = LICENSE -HOST_PYTHON_SETUPTOOLS_RUST_DEPENDENCIES = host-rustc host-python-setuptools-scm host-python-toml host-python-semantic-version host-python-typing-extensions +HOST_PYTHON_SETUPTOOLS_RUST_DEPENDENCIES = host-rustc host-python-semantic-version $(eval $(host-python-package)) diff --git a/package/python-setuptools/0001-add-executable.patch b/package/python-setuptools/0001-add-executable.patch index b688745ce468..d93298e1187e 100644 --- a/package/python-setuptools/0001-add-executable.patch +++ b/package/python-setuptools/0001-add-executable.patch @@ -1,4 +1,4 @@ -From 9b3d307f8f6a1af88f3f810f5a6cf0835830e1e8 Mon Sep 17 00:00:00 2001 +From 975379e84ae3229fac94cd0499fd4ba7baa574ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Krause?= Date: Mon, 7 Dec 2015 01:14:33 +0100 Subject: [PATCH] add executable @@ -15,13 +15,14 @@ force the shebang line in installed python scripts. Signed-off-by: Gustavo Zacarias Signed-off-by: Thomas Petazzoni Signed-off-by: Jörg Krause +Signed-off-by: James Hilliard --- setuptools/command/install.py | 2 ++ setuptools/command/install_scripts.py | 9 +++++++++ 2 files changed, 11 insertions(+) diff --git a/setuptools/command/install.py b/setuptools/command/install.py -index 72b9a3e..6781d2b 100644 +index 606cce9d8..f158e1b51 100644 --- a/setuptools/command/install.py +++ b/setuptools/command/install.py @@ -16,6 +16,7 @@ class install(orig.install): @@ -30,9 +31,9 @@ index 72b9a3e..6781d2b 100644 user_options = orig.install.user_options + [ + ('executable=', 'e', "specify final destination interpreter path"), ('old-and-unmanageable', None, "Try not to use this!"), - ('single-version-externally-managed', None, - "used by system package builders to create 'flat' eggs"), -@@ -38,6 +39,7 @@ class install(orig.install): + ( + 'single-version-externally-managed', +@@ -48,6 +49,7 @@ class install(orig.install): ) orig.install.initialize_options(self) @@ -41,10 +42,10 @@ index 72b9a3e..6781d2b 100644 self.single_version_externally_managed = None diff --git a/setuptools/command/install_scripts.py b/setuptools/command/install_scripts.py -index 9cd8eb0..7786150 100644 +index 72b2e45cb..146a0bb58 100644 --- a/setuptools/command/install_scripts.py +++ b/setuptools/command/install_scripts.py -@@ -13,6 +13,13 @@ class install_scripts(orig.install_scripts): +@@ -12,6 +12,13 @@ class install_scripts(orig.install_scripts): def initialize_options(self): orig.install_scripts.initialize_options(self) self.no_ep = False @@ -57,16 +58,16 @@ index 9cd8eb0..7786150 100644 + ) def run(self): - import setuptools.command.easy_install as ei -@@ -33,6 +40,8 @@ class install_scripts(orig.install_scripts): + self.run_command("egg_info") +@@ -38,6 +45,8 @@ class install_scripts(orig.install_scripts): ) bs_cmd = self.get_finalized_command('build_scripts') exec_param = getattr(bs_cmd, 'executable', None) + if self.executable is not None: + exec_param = self.executable - try: - bw_cmd = self.get_finalized_command("bdist_wininst") - is_wininst = getattr(bw_cmd, '_is_running', False) + writer = ei.ScriptWriter + if exec_param == sys.executable: + # In case the path to the Python executable contains a space, wrap -- -2.30.2 +2.34.1 diff --git a/package/python-setuptools/Config.in b/package/python-setuptools/Config.in index 28228534f819..d47f7587505f 100644 --- a/package/python-setuptools/Config.in +++ b/package/python-setuptools/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_PYTHON_SETUPTOOLS bool "python-setuptools" - select BR2_PACKAGE_PYTHON3_ZLIB # runtime select BR2_PACKAGE_PYTHON3_PYEXPAT # runtime + select BR2_PACKAGE_PYTHON3_ZLIB # runtime help Download, build, install, upgrade, and uninstall Python packages. diff --git a/package/python-setuptools/python-setuptools.hash b/package/python-setuptools/python-setuptools.hash index 76ad1ba1ce3a..6e1df42e3f39 100644 --- a/package/python-setuptools/python-setuptools.hash +++ b/package/python-setuptools/python-setuptools.hash @@ -1,4 +1,4 @@ # From https://pypi.org/pypi/setuptools/json -md5 1fd8bd04b0bed95ad6c81f03b1c080bc setuptools-65.6.3.tar.gz -sha256 a7620757bf984b58deaf32fc8a4577a9bbc0850cf92c20e1ce41c38c19e5fb75 setuptools-65.6.3.tar.gz -sha256 db3f0246b1f9278f15845b99fec478b8b506eb76487993722f8c6e254285faf8 LICENSE +md5 d967ca2ba7f46db887daee2d5c9bd6a2 setuptools-68.2.2.tar.gz +sha256 4ac1475276d2f1c48684874089fefcd83bd7162ddaafb81fac866ba0db282a87 setuptools-68.2.2.tar.gz +sha256 86da0f01aeae46348a3c3d465195dc1ceccde79f79e87769a64b8da04b2a4741 LICENSE diff --git a/package/python-setuptools/python-setuptools.mk b/package/python-setuptools/python-setuptools.mk index 226ef2b479f4..f26f427cccc8 100644 --- a/package/python-setuptools/python-setuptools.mk +++ b/package/python-setuptools/python-setuptools.mk @@ -4,14 +4,16 @@ # ################################################################################ -PYTHON_SETUPTOOLS_VERSION = 65.6.3 +PYTHON_SETUPTOOLS_VERSION = 68.2.2 PYTHON_SETUPTOOLS_SOURCE = setuptools-$(PYTHON_SETUPTOOLS_VERSION).tar.gz -PYTHON_SETUPTOOLS_SITE = https://files.pythonhosted.org/packages/b6/21/cb9a8d0b2c8597c83fce8e9c02884bce3d4951e41e807fc35791c6b23d9a +PYTHON_SETUPTOOLS_SITE = https://files.pythonhosted.org/packages/ef/cc/93f7213b2ab5ed383f98ce8020e632ef256b406b8569606c3f160ed8e1c9 PYTHON_SETUPTOOLS_LICENSE = MIT PYTHON_SETUPTOOLS_LICENSE_FILES = LICENSE PYTHON_SETUPTOOLS_CPE_ID_VENDOR = python PYTHON_SETUPTOOLS_CPE_ID_PRODUCT = setuptools -PYTHON_SETUPTOOLS_SETUP_TYPE = setuptools +PYTHON_SETUPTOOLS_SETUP_TYPE = pep517 +PYTHON_SETUPTOOLS_DEPENDENCIES = host-python-wheel +HOST_PYTHON_SETUPTOOLS_DEPENDENCIES = host-python-wheel $(eval $(python-package)) $(eval $(host-python-package)) diff --git a/package/python-slob/python-slob.mk b/package/python-slob/python-slob.mk index 2db393221624..4a0d1a7e1ca4 100644 --- a/package/python-slob/python-slob.mk +++ b/package/python-slob/python-slob.mk @@ -8,6 +8,6 @@ PYTHON_SLOB_VERSION = 31ad0e769360a5b10a4893f686587bb8e48c3895 PYTHON_SLOB_SITE = $(call github,itkach,slob,$(PYTHON_SLOB_VERSION)) PYTHON_SLOB_LICENSE = GPL-3.0 PYTHON_SLOB_LICENSE_FILES = LICENSE -PYTHON_SLOB_SETUP_TYPE = distutils +PYTHON_SLOB_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-spake2/0001-Update-versioneer-to-0.29.patch b/package/python-spake2/0001-Update-versioneer-to-0.29.patch new file mode 100644 index 000000000000..3b5db5342c40 --- /dev/null +++ b/package/python-spake2/0001-Update-versioneer-to-0.29.patch @@ -0,0 +1,2194 @@ +From 5b5436f11d01e66505bb4c148304c2eb49346529 Mon Sep 17 00:00:00 2001 +From: Adam Duskett +Date: Tue, 24 Oct 2023 09:56:57 +0200 +Subject: [PATCH] Update versioneer to 0.29 + +Fixes builds against Python 3.12.0 + +Upstream: https://github.com/warner/python-spake2/pull/15 + +Signed-off-by: Adam Duskett +--- + versioneer.py | 1350 ++++++++++++++++++++++++++++++++++--------------- + 1 file changed, 931 insertions(+), 419 deletions(-) + +diff --git a/versioneer.py b/versioneer.py +index 64fea1c..de97d90 100644 +--- a/versioneer.py ++++ b/versioneer.py +@@ -1,5 +1,4 @@ +- +-# Version: 0.18 ++# Version: 0.29 + + """The Versioneer - like a rocketeer, but for versions. + +@@ -7,18 +6,14 @@ The Versioneer + ============== + + * like a rocketeer, but for versions! +-* https://github.com/warner/python-versioneer ++* https://github.com/python-versioneer/python-versioneer + * Brian Warner +-* License: Public Domain +-* Compatible With: python2.6, 2.7, 3.2, 3.3, 3.4, 3.5, 3.6, and pypy +-* [![Latest Version] +-(https://pypip.in/version/versioneer/badge.svg?style=flat) +-](https://pypi.python.org/pypi/versioneer/) +-* [![Build Status] +-(https://travis-ci.org/warner/python-versioneer.png?branch=master) +-](https://travis-ci.org/warner/python-versioneer) +- +-This is a tool for managing a recorded version number in distutils-based ++* License: Public Domain (Unlicense) ++* Compatible with: Python 3.7, 3.8, 3.9, 3.10, 3.11 and pypy3 ++* [![Latest Version][pypi-image]][pypi-url] ++* [![Build Status][travis-image]][travis-url] ++ ++This is a tool for managing a recorded version number in setuptools-based + python projects. The goal is to remove the tedious and error-prone "update + the embedded version string" step from your release process. Making a new + release should be as easy as recording a new tag in your version-control +@@ -27,9 +22,38 @@ system, and maybe making new tarballs. + + ## Quick Install + +-* `pip install versioneer` to somewhere to your $PATH +-* add a `[versioneer]` section to your setup.cfg (see below) +-* run `versioneer install` in your source tree, commit the results ++Versioneer provides two installation modes. The "classic" vendored mode installs ++a copy of versioneer into your repository. The experimental build-time dependency mode ++is intended to allow you to skip this step and simplify the process of upgrading. ++ ++### Vendored mode ++ ++* `pip install versioneer` to somewhere in your $PATH ++ * A [conda-forge recipe](https://github.com/conda-forge/versioneer-feedstock) is ++ available, so you can also use `conda install -c conda-forge versioneer` ++* add a `[tool.versioneer]` section to your `pyproject.toml` or a ++ `[versioneer]` section to your `setup.cfg` (see [Install](INSTALL.md)) ++ * Note that you will need to add `tomli; python_version < "3.11"` to your ++ build-time dependencies if you use `pyproject.toml` ++* run `versioneer install --vendor` in your source tree, commit the results ++* verify version information with `python setup.py version` ++ ++### Build-time dependency mode ++ ++* `pip install versioneer` to somewhere in your $PATH ++ * A [conda-forge recipe](https://github.com/conda-forge/versioneer-feedstock) is ++ available, so you can also use `conda install -c conda-forge versioneer` ++* add a `[tool.versioneer]` section to your `pyproject.toml` or a ++ `[versioneer]` section to your `setup.cfg` (see [Install](INSTALL.md)) ++* add `versioneer` (with `[toml]` extra, if configuring in `pyproject.toml`) ++ to the `requires` key of the `build-system` table in `pyproject.toml`: ++ ```toml ++ [build-system] ++ requires = ["setuptools", "versioneer[toml]"] ++ build-backend = "setuptools.build_meta" ++ ``` ++* run `versioneer install --no-vendor` in your source tree, commit the results ++* verify version information with `python setup.py version` + + ## Version Identifiers + +@@ -61,7 +85,7 @@ version 1.3). Many VCS systems can report a description that captures this, + for example `git describe --tags --dirty --always` reports things like + "0.7-1-g574ab98-dirty" to indicate that the checkout is one revision past the + 0.7 tag, has a unique revision id of "574ab98", and is "dirty" (it has +-uncommitted changes. ++uncommitted changes). + + The version identifier is used for multiple purposes: + +@@ -166,7 +190,7 @@ which may help identify what went wrong). + + Some situations are known to cause problems for Versioneer. This details the + most significant ones. More can be found on Github +-[issues page](https://github.com/warner/python-versioneer/issues). ++[issues page](https://github.com/python-versioneer/python-versioneer/issues). + + ### Subprojects + +@@ -180,7 +204,7 @@ two common reasons why `setup.py` might not be in the root: + `setup.cfg`, and `tox.ini`. Projects like these produce multiple PyPI + distributions (and upload multiple independently-installable tarballs). + * Source trees whose main purpose is to contain a C library, but which also +- provide bindings to Python (and perhaps other langauges) in subdirectories. ++ provide bindings to Python (and perhaps other languages) in subdirectories. + + Versioneer will look for `.git` in parent directories, and most operations + should get the right version string. However `pip` and `setuptools` have bugs +@@ -194,9 +218,9 @@ work too. + Pip-8.1.1 is known to have this problem, but hopefully it will get fixed in + some later version. + +-[Bug #38](https://github.com/warner/python-versioneer/issues/38) is tracking ++[Bug #38](https://github.com/python-versioneer/python-versioneer/issues/38) is tracking + this issue. The discussion in +-[PR #61](https://github.com/warner/python-versioneer/pull/61) describes the ++[PR #61](https://github.com/python-versioneer/python-versioneer/pull/61) describes the + issue from the Versioneer side in more detail. + [pip PR#3176](https://github.com/pypa/pip/pull/3176) and + [pip PR#3615](https://github.com/pypa/pip/pull/3615) contain work to improve +@@ -224,31 +248,20 @@ regenerated while a different version is checked out. Many setup.py commands + cause egg_info to be rebuilt (including `sdist`, `wheel`, and installing into + a different virtualenv), so this can be surprising. + +-[Bug #83](https://github.com/warner/python-versioneer/issues/83) describes ++[Bug #83](https://github.com/python-versioneer/python-versioneer/issues/83) describes + this one, but upgrading to a newer version of setuptools should probably + resolve it. + +-### Unicode version strings +- +-While Versioneer works (and is continually tested) with both Python 2 and +-Python 3, it is not entirely consistent with bytes-vs-unicode distinctions. +-Newer releases probably generate unicode version strings on py2. It's not +-clear that this is wrong, but it may be surprising for applications when then +-write these strings to a network connection or include them in bytes-oriented +-APIs like cryptographic checksums. +- +-[Bug #71](https://github.com/warner/python-versioneer/issues/71) investigates +-this question. +- + + ## Updating Versioneer + + To upgrade your project to a new release of Versioneer, do the following: + + * install the new Versioneer (`pip install -U versioneer` or equivalent) +-* edit `setup.cfg`, if necessary, to include any new configuration settings +- indicated by the release notes. See [UPGRADING](./UPGRADING.md) for details. +-* re-run `versioneer install` in your source tree, to replace ++* edit `setup.cfg` and `pyproject.toml`, if necessary, ++ to include any new configuration settings indicated by the release notes. ++ See [UPGRADING](./UPGRADING.md) for details. ++* re-run `versioneer install --[no-]vendor` in your source tree, to replace + `SRC/_version.py` + * commit any changed files + +@@ -265,35 +278,70 @@ installation by editing setup.py . Alternatively, it might go the other + direction and include code from all supported VCS systems, reducing the + number of intermediate scripts. + ++## Similar projects ++ ++* [setuptools_scm](https://github.com/pypa/setuptools_scm/) - a non-vendored build-time ++ dependency ++* [minver](https://github.com/jbweston/miniver) - a lightweight reimplementation of ++ versioneer ++* [versioningit](https://github.com/jwodder/versioningit) - a PEP 518-based setuptools ++ plugin + + ## License + + To make Versioneer easier to embed, all its code is dedicated to the public + domain. The `_version.py` that it creates is also in the public domain. +-Specifically, both are released under the Creative Commons "Public Domain +-Dedication" license (CC0-1.0), as described in +-https://creativecommons.org/publicdomain/zero/1.0/ . ++Specifically, both are released under the "Unlicense", as described in ++https://unlicense.org/. ++ ++[pypi-image]: https://img.shields.io/pypi/v/versioneer.svg ++[pypi-url]: https://pypi.python.org/pypi/versioneer/ ++[travis-image]: ++https://img.shields.io/travis/com/python-versioneer/python-versioneer.svg ++[travis-url]: https://travis-ci.com/github/python-versioneer/python-versioneer + + """ ++# pylint:disable=invalid-name,import-outside-toplevel,missing-function-docstring ++# pylint:disable=missing-class-docstring,too-many-branches,too-many-statements ++# pylint:disable=raise-missing-from,too-many-lines,too-many-locals,import-error ++# pylint:disable=too-few-public-methods,redefined-outer-name,consider-using-with ++# pylint:disable=attribute-defined-outside-init,too-many-arguments + +-from __future__ import print_function +-try: +- import configparser +-except ImportError: +- import ConfigParser as configparser ++import configparser + import errno + import json + import os + import re + import subprocess + import sys ++from pathlib import Path ++from typing import Any, Callable, cast, Dict, List, Optional, Tuple, Union ++from typing import NoReturn ++import functools ++ ++have_tomllib = True ++if sys.version_info >= (3, 11): ++ import tomllib ++else: ++ try: ++ import tomli as tomllib ++ except ImportError: ++ have_tomllib = False + + + class VersioneerConfig: + """Container for Versioneer configuration parameters.""" + ++ VCS: str ++ style: str ++ tag_prefix: str ++ versionfile_source: str ++ versionfile_build: Optional[str] ++ parentdir_prefix: Optional[str] ++ verbose: Optional[bool] ++ + +-def get_root(): ++def get_root() -> str: + """Get the project root directory. + + We require that all commands are run from the project root, i.e. the +@@ -301,18 +349,30 @@ def get_root(): + """ + root = os.path.realpath(os.path.abspath(os.getcwd())) + setup_py = os.path.join(root, "setup.py") ++ pyproject_toml = os.path.join(root, "pyproject.toml") + versioneer_py = os.path.join(root, "versioneer.py") +- if not (os.path.exists(setup_py) or os.path.exists(versioneer_py)): ++ if not ( ++ os.path.exists(setup_py) ++ or os.path.exists(pyproject_toml) ++ or os.path.exists(versioneer_py) ++ ): + # allow 'python path/to/setup.py COMMAND' + root = os.path.dirname(os.path.realpath(os.path.abspath(sys.argv[0]))) + setup_py = os.path.join(root, "setup.py") ++ pyproject_toml = os.path.join(root, "pyproject.toml") + versioneer_py = os.path.join(root, "versioneer.py") +- if not (os.path.exists(setup_py) or os.path.exists(versioneer_py)): +- err = ("Versioneer was unable to run the project root directory. " +- "Versioneer requires setup.py to be executed from " +- "its immediate directory (like 'python setup.py COMMAND'), " +- "or in a way that lets it use sys.argv[0] to find the root " +- "(like 'python path/to/setup.py COMMAND').") ++ if not ( ++ os.path.exists(setup_py) ++ or os.path.exists(pyproject_toml) ++ or os.path.exists(versioneer_py) ++ ): ++ err = ( ++ "Versioneer was unable to run the project root directory. " ++ "Versioneer requires setup.py to be executed from " ++ "its immediate directory (like 'python setup.py COMMAND'), " ++ "or in a way that lets it use sys.argv[0] to find the root " ++ "(like 'python path/to/setup.py COMMAND')." ++ ) + raise VersioneerBadRootError(err) + try: + # Certain runtime workflows (setup.py install/develop in a setuptools +@@ -321,43 +381,64 @@ def get_root(): + # module-import table will cache the first one. So we can't use + # os.path.dirname(__file__), as that will find whichever + # versioneer.py was first imported, even in later projects. +- me = os.path.realpath(os.path.abspath(__file__)) +- me_dir = os.path.normcase(os.path.splitext(me)[0]) ++ my_path = os.path.realpath(os.path.abspath(__file__)) ++ me_dir = os.path.normcase(os.path.splitext(my_path)[0]) + vsr_dir = os.path.normcase(os.path.splitext(versioneer_py)[0]) +- if me_dir != vsr_dir: +- print("Warning: build in %s is using versioneer.py from %s" +- % (os.path.dirname(me), versioneer_py)) ++ if me_dir != vsr_dir and "VERSIONEER_PEP518" not in globals(): ++ print( ++ "Warning: build in %s is using versioneer.py from %s" ++ % (os.path.dirname(my_path), versioneer_py) ++ ) + except NameError: + pass + return root + + +-def get_config_from_root(root): ++def get_config_from_root(root: str) -> VersioneerConfig: + """Read the project setup.cfg file to determine Versioneer config.""" +- # This might raise EnvironmentError (if setup.cfg is missing), or ++ # This might raise OSError (if setup.cfg is missing), or + # configparser.NoSectionError (if it lacks a [versioneer] section), or + # configparser.NoOptionError (if it lacks "VCS="). See the docstring at + # the top of versioneer.py for instructions on writing your setup.cfg . +- setup_cfg = os.path.join(root, "setup.cfg") +- parser = configparser.SafeConfigParser() +- with open(setup_cfg, "r") as f: +- parser.readfp(f) +- VCS = parser.get("versioneer", "VCS") # mandatory +- +- def get(parser, name): +- if parser.has_option("versioneer", name): +- return parser.get("versioneer", name) +- return None ++ root_pth = Path(root) ++ pyproject_toml = root_pth / "pyproject.toml" ++ setup_cfg = root_pth / "setup.cfg" ++ section: Union[Dict[str, Any], configparser.SectionProxy, None] = None ++ if pyproject_toml.exists() and have_tomllib: ++ try: ++ with open(pyproject_toml, "rb") as fobj: ++ pp = tomllib.load(fobj) ++ section = pp["tool"]["versioneer"] ++ except (tomllib.TOMLDecodeError, KeyError) as e: ++ print(f"Failed to load config from {pyproject_toml}: {e}") ++ print("Try to load it from setup.cfg") ++ if not section: ++ parser = configparser.ConfigParser() ++ with open(setup_cfg) as cfg_file: ++ parser.read_file(cfg_file) ++ parser.get("versioneer", "VCS") # raise error if missing ++ ++ section = parser["versioneer"] ++ ++ # `cast`` really shouldn't be used, but its simplest for the ++ # common VersioneerConfig users at the moment. We verify against ++ # `None` values elsewhere where it matters ++ + cfg = VersioneerConfig() +- cfg.VCS = VCS +- cfg.style = get(parser, "style") or "" +- cfg.versionfile_source = get(parser, "versionfile_source") +- cfg.versionfile_build = get(parser, "versionfile_build") +- cfg.tag_prefix = get(parser, "tag_prefix") +- if cfg.tag_prefix in ("''", '""'): ++ cfg.VCS = section["VCS"] ++ cfg.style = section.get("style", "") ++ cfg.versionfile_source = cast(str, section.get("versionfile_source")) ++ cfg.versionfile_build = section.get("versionfile_build") ++ cfg.tag_prefix = cast(str, section.get("tag_prefix")) ++ if cfg.tag_prefix in ("''", '""', None): + cfg.tag_prefix = "" +- cfg.parentdir_prefix = get(parser, "parentdir_prefix") +- cfg.verbose = get(parser, "verbose") ++ cfg.parentdir_prefix = section.get("parentdir_prefix") ++ if isinstance(section, configparser.SectionProxy): ++ # Make sure configparser translates to bool ++ cfg.verbose = section.getboolean("verbose") ++ else: ++ cfg.verbose = section.get("verbose") ++ + return cfg + + +@@ -366,37 +447,54 @@ class NotThisMethod(Exception): + + + # these dictionaries contain VCS-specific tools +-LONG_VERSION_PY = {} +-HANDLERS = {} ++LONG_VERSION_PY: Dict[str, str] = {} ++HANDLERS: Dict[str, Dict[str, Callable]] = {} + + +-def register_vcs_handler(vcs, method): # decorator +- """Decorator to mark a method as the handler for a particular VCS.""" +- def decorate(f): ++def register_vcs_handler(vcs: str, method: str) -> Callable: # decorator ++ """Create decorator to mark a method as the handler of a VCS.""" ++ ++ def decorate(f: Callable) -> Callable: + """Store f in HANDLERS[vcs][method].""" +- if vcs not in HANDLERS: +- HANDLERS[vcs] = {} +- HANDLERS[vcs][method] = f ++ HANDLERS.setdefault(vcs, {})[method] = f + return f ++ + return decorate + + +-def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, +- env=None): ++def run_command( ++ commands: List[str], ++ args: List[str], ++ cwd: Optional[str] = None, ++ verbose: bool = False, ++ hide_stderr: bool = False, ++ env: Optional[Dict[str, str]] = None, ++) -> Tuple[Optional[str], Optional[int]]: + """Call the given command(s).""" + assert isinstance(commands, list) +- p = None +- for c in commands: ++ process = None ++ ++ popen_kwargs: Dict[str, Any] = {} ++ if sys.platform == "win32": ++ # This hides the console window if pythonw.exe is used ++ startupinfo = subprocess.STARTUPINFO() ++ startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW ++ popen_kwargs["startupinfo"] = startupinfo ++ ++ for command in commands: + try: +- dispcmd = str([c] + args) ++ dispcmd = str([command] + args) + # remember shell=False, so use git.cmd on windows, not just git +- p = subprocess.Popen([c] + args, cwd=cwd, env=env, +- stdout=subprocess.PIPE, +- stderr=(subprocess.PIPE if hide_stderr +- else None)) ++ process = subprocess.Popen( ++ [command] + args, ++ cwd=cwd, ++ env=env, ++ stdout=subprocess.PIPE, ++ stderr=(subprocess.PIPE if hide_stderr else None), ++ **popen_kwargs, ++ ) + break +- except EnvironmentError: +- e = sys.exc_info()[1] ++ except OSError as e: + if e.errno == errno.ENOENT: + continue + if verbose: +@@ -407,26 +505,27 @@ def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, + if verbose: + print("unable to find command, tried %s" % (commands,)) + return None, None +- stdout = p.communicate()[0].strip() +- if sys.version_info[0] >= 3: +- stdout = stdout.decode() +- if p.returncode != 0: ++ stdout = process.communicate()[0].strip().decode() ++ if process.returncode != 0: + if verbose: + print("unable to run %s (error)" % dispcmd) + print("stdout was %s" % stdout) +- return None, p.returncode +- return stdout, p.returncode ++ return None, process.returncode ++ return stdout, process.returncode + + +-LONG_VERSION_PY['git'] = ''' ++LONG_VERSION_PY[ ++ "git" ++] = r''' + # This file helps to compute a version number in source trees obtained from + # git-archive tarball (such as those provided by githubs download-from-tag + # feature). Distribution tarballs (built by setup.py sdist) and build + # directories (produced by setup.py build) will contain a much shorter file + # that just contains the computed version number. + +-# This file is released into the public domain. Generated by +-# versioneer-0.18 (https://github.com/warner/python-versioneer) ++# This file is released into the public domain. ++# Generated by versioneer-0.29 ++# https://github.com/python-versioneer/python-versioneer + + """Git implementation of _version.py.""" + +@@ -435,9 +534,11 @@ import os + import re + import subprocess + import sys ++from typing import Any, Callable, Dict, List, Optional, Tuple ++import functools + + +-def get_keywords(): ++def get_keywords() -> Dict[str, str]: + """Get the keywords needed to look up the version information.""" + # these strings will be replaced by git during git-archive. + # setup.py/versioneer.py will grep for the variable names, so they must +@@ -453,8 +554,15 @@ def get_keywords(): + class VersioneerConfig: + """Container for Versioneer configuration parameters.""" + ++ VCS: str ++ style: str ++ tag_prefix: str ++ parentdir_prefix: str ++ versionfile_source: str ++ verbose: bool ++ + +-def get_config(): ++def get_config() -> VersioneerConfig: + """Create, populate and return the VersioneerConfig() object.""" + # these strings are filled in when 'setup.py versioneer' creates + # _version.py +@@ -472,13 +580,13 @@ class NotThisMethod(Exception): + """Exception raised if a method is not valid for the current scenario.""" + + +-LONG_VERSION_PY = {} +-HANDLERS = {} ++LONG_VERSION_PY: Dict[str, str] = {} ++HANDLERS: Dict[str, Dict[str, Callable]] = {} + + +-def register_vcs_handler(vcs, method): # decorator +- """Decorator to mark a method as the handler for a particular VCS.""" +- def decorate(f): ++def register_vcs_handler(vcs: str, method: str) -> Callable: # decorator ++ """Create decorator to mark a method as the handler of a VCS.""" ++ def decorate(f: Callable) -> Callable: + """Store f in HANDLERS[vcs][method].""" + if vcs not in HANDLERS: + HANDLERS[vcs] = {} +@@ -487,22 +595,35 @@ def register_vcs_handler(vcs, method): # decorator + return decorate + + +-def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, +- env=None): ++def run_command( ++ commands: List[str], ++ args: List[str], ++ cwd: Optional[str] = None, ++ verbose: bool = False, ++ hide_stderr: bool = False, ++ env: Optional[Dict[str, str]] = None, ++) -> Tuple[Optional[str], Optional[int]]: + """Call the given command(s).""" + assert isinstance(commands, list) +- p = None +- for c in commands: ++ process = None ++ ++ popen_kwargs: Dict[str, Any] = {} ++ if sys.platform == "win32": ++ # This hides the console window if pythonw.exe is used ++ startupinfo = subprocess.STARTUPINFO() ++ startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW ++ popen_kwargs["startupinfo"] = startupinfo ++ ++ for command in commands: + try: +- dispcmd = str([c] + args) ++ dispcmd = str([command] + args) + # remember shell=False, so use git.cmd on windows, not just git +- p = subprocess.Popen([c] + args, cwd=cwd, env=env, +- stdout=subprocess.PIPE, +- stderr=(subprocess.PIPE if hide_stderr +- else None)) ++ process = subprocess.Popen([command] + args, cwd=cwd, env=env, ++ stdout=subprocess.PIPE, ++ stderr=(subprocess.PIPE if hide_stderr ++ else None), **popen_kwargs) + break +- except EnvironmentError: +- e = sys.exc_info()[1] ++ except OSError as e: + if e.errno == errno.ENOENT: + continue + if verbose: +@@ -513,18 +634,20 @@ def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, + if verbose: + print("unable to find command, tried %%s" %% (commands,)) + return None, None +- stdout = p.communicate()[0].strip() +- if sys.version_info[0] >= 3: +- stdout = stdout.decode() +- if p.returncode != 0: ++ stdout = process.communicate()[0].strip().decode() ++ if process.returncode != 0: + if verbose: + print("unable to run %%s (error)" %% dispcmd) + print("stdout was %%s" %% stdout) +- return None, p.returncode +- return stdout, p.returncode ++ return None, process.returncode ++ return stdout, process.returncode + + +-def versions_from_parentdir(parentdir_prefix, root, verbose): ++def versions_from_parentdir( ++ parentdir_prefix: str, ++ root: str, ++ verbose: bool, ++) -> Dict[str, Any]: + """Try to determine the version from the parent directory name. + + Source tarballs conventionally unpack into a directory that includes both +@@ -533,15 +656,14 @@ def versions_from_parentdir(parentdir_prefix, root, verbose): + """ + rootdirs = [] + +- for i in range(3): ++ for _ in range(3): + dirname = os.path.basename(root) + if dirname.startswith(parentdir_prefix): + return {"version": dirname[len(parentdir_prefix):], + "full-revisionid": None, + "dirty": False, "error": None, "date": None} +- else: +- rootdirs.append(root) +- root = os.path.dirname(root) # up a level ++ rootdirs.append(root) ++ root = os.path.dirname(root) # up a level + + if verbose: + print("Tried directories %%s but none started with prefix %%s" %% +@@ -550,41 +672,48 @@ def versions_from_parentdir(parentdir_prefix, root, verbose): + + + @register_vcs_handler("git", "get_keywords") +-def git_get_keywords(versionfile_abs): ++def git_get_keywords(versionfile_abs: str) -> Dict[str, str]: + """Extract version information from the given file.""" + # the code embedded in _version.py can just fetch the value of these + # keywords. When used from setup.py, we don't want to import _version.py, + # so we do it with a regexp instead. This function is not used from + # _version.py. +- keywords = {} ++ keywords: Dict[str, str] = {} + try: +- f = open(versionfile_abs, "r") +- for line in f.readlines(): +- if line.strip().startswith("git_refnames ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["refnames"] = mo.group(1) +- if line.strip().startswith("git_full ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["full"] = mo.group(1) +- if line.strip().startswith("git_date ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["date"] = mo.group(1) +- f.close() +- except EnvironmentError: ++ with open(versionfile_abs, "r") as fobj: ++ for line in fobj: ++ if line.strip().startswith("git_refnames ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["refnames"] = mo.group(1) ++ if line.strip().startswith("git_full ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["full"] = mo.group(1) ++ if line.strip().startswith("git_date ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["date"] = mo.group(1) ++ except OSError: + pass + return keywords + + + @register_vcs_handler("git", "keywords") +-def git_versions_from_keywords(keywords, tag_prefix, verbose): ++def git_versions_from_keywords( ++ keywords: Dict[str, str], ++ tag_prefix: str, ++ verbose: bool, ++) -> Dict[str, Any]: + """Get version information from git keywords.""" +- if not keywords: +- raise NotThisMethod("no keywords at all, weird") ++ if "refnames" not in keywords: ++ raise NotThisMethod("Short version file found") + date = keywords.get("date") + if date is not None: ++ # Use only the last line. Previous lines may contain GPG signature ++ # information. ++ date = date.splitlines()[-1] ++ + # git-2.2.0 added "%%cI", which expands to an ISO-8601 -compliant + # datestamp. However we prefer "%%ci" (which expands to an "ISO-8601 + # -like" string, which we must then edit to make compliant), because +@@ -597,11 +726,11 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + if verbose: + print("keywords are unexpanded, not using") + raise NotThisMethod("unexpanded keywords, not a git-archive tarball") +- refs = set([r.strip() for r in refnames.strip("()").split(",")]) ++ refs = {r.strip() for r in refnames.strip("()").split(",")} + # starting in git-1.8.3, tags are listed as "tag: foo-1.0" instead of + # just "foo-1.0". If we see a "tag: " prefix, prefer those. + TAG = "tag: " +- tags = set([r[len(TAG):] for r in refs if r.startswith(TAG)]) ++ tags = {r[len(TAG):] for r in refs if r.startswith(TAG)} + if not tags: + # Either we're using git < 1.8.3, or there really are no tags. We use + # a heuristic: assume all version tags have a digit. The old git %%d +@@ -610,7 +739,7 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + # between branches and tags. By ignoring refnames without digits, we + # filter out many common branch names like "release" and + # "stabilization", as well as "HEAD" and "master". +- tags = set([r for r in refs if re.search(r'\d', r)]) ++ tags = {r for r in refs if re.search(r'\d', r)} + if verbose: + print("discarding '%%s', no digits" %% ",".join(refs - tags)) + if verbose: +@@ -619,6 +748,11 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + # sorting will prefer e.g. "2.0" over "2.0rc1" + if ref.startswith(tag_prefix): + r = ref[len(tag_prefix):] ++ # Filter out refs that exactly match prefix or that don't start ++ # with a number once the prefix is stripped (mostly a concern ++ # when prefix is '') ++ if not re.match(r'\d', r): ++ continue + if verbose: + print("picking %%s" %% r) + return {"version": r, +@@ -634,7 +768,12 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + + + @register_vcs_handler("git", "pieces_from_vcs") +-def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): ++def git_pieces_from_vcs( ++ tag_prefix: str, ++ root: str, ++ verbose: bool, ++ runner: Callable = run_command ++) -> Dict[str, Any]: + """Get version from 'git describe' in the root of the source tree. + + This only gets called if the git-archive 'subst' keywords were *not* +@@ -645,8 +784,15 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + if sys.platform == "win32": + GITS = ["git.cmd", "git.exe"] + +- out, rc = run_command(GITS, ["rev-parse", "--git-dir"], cwd=root, +- hide_stderr=True) ++ # GIT_DIR can interfere with correct operation of Versioneer. ++ # It may be intended to be passed to the Versioneer-versioned project, ++ # but that should not change where we get our version from. ++ env = os.environ.copy() ++ env.pop("GIT_DIR", None) ++ runner = functools.partial(runner, env=env) ++ ++ _, rc = runner(GITS, ["rev-parse", "--git-dir"], cwd=root, ++ hide_stderr=not verbose) + if rc != 0: + if verbose: + print("Directory %%s not under git control" %% root) +@@ -654,24 +800,57 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + + # if there is a tag matching tag_prefix, this yields TAG-NUM-gHEX[-dirty] + # if there isn't one, this yields HEX[-dirty] (no NUM) +- describe_out, rc = run_command(GITS, ["describe", "--tags", "--dirty", +- "--always", "--long", +- "--match", "%%s*" %% tag_prefix], +- cwd=root) ++ describe_out, rc = runner(GITS, [ ++ "describe", "--tags", "--dirty", "--always", "--long", ++ "--match", f"{tag_prefix}[[:digit:]]*" ++ ], cwd=root) + # --long was added in git-1.5.5 + if describe_out is None: + raise NotThisMethod("'git describe' failed") + describe_out = describe_out.strip() +- full_out, rc = run_command(GITS, ["rev-parse", "HEAD"], cwd=root) ++ full_out, rc = runner(GITS, ["rev-parse", "HEAD"], cwd=root) + if full_out is None: + raise NotThisMethod("'git rev-parse' failed") + full_out = full_out.strip() + +- pieces = {} ++ pieces: Dict[str, Any] = {} + pieces["long"] = full_out + pieces["short"] = full_out[:7] # maybe improved later + pieces["error"] = None + ++ branch_name, rc = runner(GITS, ["rev-parse", "--abbrev-ref", "HEAD"], ++ cwd=root) ++ # --abbrev-ref was added in git-1.6.3 ++ if rc != 0 or branch_name is None: ++ raise NotThisMethod("'git rev-parse --abbrev-ref' returned error") ++ branch_name = branch_name.strip() ++ ++ if branch_name == "HEAD": ++ # If we aren't exactly on a branch, pick a branch which represents ++ # the current commit. If all else fails, we are on a branchless ++ # commit. ++ branches, rc = runner(GITS, ["branch", "--contains"], cwd=root) ++ # --contains was added in git-1.5.4 ++ if rc != 0 or branches is None: ++ raise NotThisMethod("'git branch --contains' returned error") ++ branches = branches.split("\n") ++ ++ # Remove the first line if we're running detached ++ if "(" in branches[0]: ++ branches.pop(0) ++ ++ # Strip off the leading "* " from the list of branches. ++ branches = [branch[2:] for branch in branches] ++ if "master" in branches: ++ branch_name = "master" ++ elif not branches: ++ branch_name = None ++ else: ++ # Pick the first branch that is returned. Good or bad. ++ branch_name = branches[0] ++ ++ pieces["branch"] = branch_name ++ + # parse describe_out. It will be like TAG-NUM-gHEX[-dirty] or HEX[-dirty] + # TAG might have hyphens. + git_describe = describe_out +@@ -688,7 +867,7 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + # TAG-NUM-gHEX + mo = re.search(r'^(.+)-(\d+)-g([0-9a-f]+)$', git_describe) + if not mo: +- # unparseable. Maybe git-describe is misbehaving? ++ # unparsable. Maybe git-describe is misbehaving? + pieces["error"] = ("unable to parse git-describe output: '%%s'" + %% describe_out) + return pieces +@@ -713,26 +892,27 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + else: + # HEX: no tags + pieces["closest-tag"] = None +- count_out, rc = run_command(GITS, ["rev-list", "HEAD", "--count"], +- cwd=root) +- pieces["distance"] = int(count_out) # total number of commits ++ out, rc = runner(GITS, ["rev-list", "HEAD", "--left-right"], cwd=root) ++ pieces["distance"] = len(out.split()) # total number of commits + + # commit date: see ISO-8601 comment in git_versions_from_keywords() +- date = run_command(GITS, ["show", "-s", "--format=%%ci", "HEAD"], +- cwd=root)[0].strip() ++ date = runner(GITS, ["show", "-s", "--format=%%ci", "HEAD"], cwd=root)[0].strip() ++ # Use only the last line. Previous lines may contain GPG signature ++ # information. ++ date = date.splitlines()[-1] + pieces["date"] = date.strip().replace(" ", "T", 1).replace(" ", "", 1) + + return pieces + + +-def plus_or_dot(pieces): ++def plus_or_dot(pieces: Dict[str, Any]) -> str: + """Return a + if we don't already have one, else return a .""" + if "+" in pieces.get("closest-tag", ""): + return "." + return "+" + + +-def render_pep440(pieces): ++def render_pep440(pieces: Dict[str, Any]) -> str: + """Build up version string, with post-release "local version identifier". + + Our goal: TAG[+DISTANCE.gHEX[.dirty]] . Note that if you +@@ -757,23 +937,71 @@ def render_pep440(pieces): + return rendered + + +-def render_pep440_pre(pieces): +- """TAG[.post.devDISTANCE] -- No -dirty. ++def render_pep440_branch(pieces: Dict[str, Any]) -> str: ++ """TAG[[.dev0]+DISTANCE.gHEX[.dirty]] . ++ ++ The ".dev0" means not master branch. Note that .dev0 sorts backwards ++ (a feature branch will appear "older" than the master branch). + + Exceptions: +- 1: no tags. 0.post.devDISTANCE ++ 1: no tags. 0[.dev0]+untagged.DISTANCE.gHEX[.dirty] + """ + if pieces["closest-tag"]: + rendered = pieces["closest-tag"] ++ if pieces["distance"] or pieces["dirty"]: ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += plus_or_dot(pieces) ++ rendered += "%%d.g%%s" %% (pieces["distance"], pieces["short"]) ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ else: ++ # exception #1 ++ rendered = "0" ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += "+untagged.%%d.g%%s" %% (pieces["distance"], ++ pieces["short"]) ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ return rendered ++ ++ ++def pep440_split_post(ver: str) -> Tuple[str, Optional[int]]: ++ """Split pep440 version string at the post-release segment. ++ ++ Returns the release segments before the post-release and the ++ post-release version number (or -1 if no post-release segment is present). ++ """ ++ vc = str.split(ver, ".post") ++ return vc[0], int(vc[1] or 0) if len(vc) == 2 else None ++ ++ ++def render_pep440_pre(pieces: Dict[str, Any]) -> str: ++ """TAG[.postN.devDISTANCE] -- No -dirty. ++ ++ Exceptions: ++ 1: no tags. 0.post0.devDISTANCE ++ """ ++ if pieces["closest-tag"]: + if pieces["distance"]: +- rendered += ".post.dev%%d" %% pieces["distance"] ++ # update the post release segment ++ tag_version, post_version = pep440_split_post(pieces["closest-tag"]) ++ rendered = tag_version ++ if post_version is not None: ++ rendered += ".post%%d.dev%%d" %% (post_version + 1, pieces["distance"]) ++ else: ++ rendered += ".post0.dev%%d" %% (pieces["distance"]) ++ else: ++ # no commits, use the tag as the version ++ rendered = pieces["closest-tag"] + else: + # exception #1 +- rendered = "0.post.dev%%d" %% pieces["distance"] ++ rendered = "0.post0.dev%%d" %% pieces["distance"] + return rendered + + +-def render_pep440_post(pieces): ++def render_pep440_post(pieces: Dict[str, Any]) -> str: + """TAG[.postDISTANCE[.dev0]+gHEX] . + + The ".dev0" means dirty. Note that .dev0 sorts backwards +@@ -800,12 +1028,41 @@ def render_pep440_post(pieces): + return rendered + + +-def render_pep440_old(pieces): ++def render_pep440_post_branch(pieces: Dict[str, Any]) -> str: ++ """TAG[.postDISTANCE[.dev0]+gHEX[.dirty]] . ++ ++ The ".dev0" means not master branch. ++ ++ Exceptions: ++ 1: no tags. 0.postDISTANCE[.dev0]+gHEX[.dirty] ++ """ ++ if pieces["closest-tag"]: ++ rendered = pieces["closest-tag"] ++ if pieces["distance"] or pieces["dirty"]: ++ rendered += ".post%%d" %% pieces["distance"] ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += plus_or_dot(pieces) ++ rendered += "g%%s" %% pieces["short"] ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ else: ++ # exception #1 ++ rendered = "0.post%%d" %% pieces["distance"] ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += "+g%%s" %% pieces["short"] ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ return rendered ++ ++ ++def render_pep440_old(pieces: Dict[str, Any]) -> str: + """TAG[.postDISTANCE[.dev0]] . + + The ".dev0" means dirty. + +- Eexceptions: ++ Exceptions: + 1: no tags. 0.postDISTANCE[.dev0] + """ + if pieces["closest-tag"]: +@@ -822,7 +1079,7 @@ def render_pep440_old(pieces): + return rendered + + +-def render_git_describe(pieces): ++def render_git_describe(pieces: Dict[str, Any]) -> str: + """TAG[-DISTANCE-gHEX][-dirty]. + + Like 'git describe --tags --dirty --always'. +@@ -842,7 +1099,7 @@ def render_git_describe(pieces): + return rendered + + +-def render_git_describe_long(pieces): ++def render_git_describe_long(pieces: Dict[str, Any]) -> str: + """TAG-DISTANCE-gHEX[-dirty]. + + Like 'git describe --tags --dirty --always -long'. +@@ -862,7 +1119,7 @@ def render_git_describe_long(pieces): + return rendered + + +-def render(pieces, style): ++def render(pieces: Dict[str, Any], style: str) -> Dict[str, Any]: + """Render the given version pieces into the requested style.""" + if pieces["error"]: + return {"version": "unknown", +@@ -876,10 +1133,14 @@ def render(pieces, style): + + if style == "pep440": + rendered = render_pep440(pieces) ++ elif style == "pep440-branch": ++ rendered = render_pep440_branch(pieces) + elif style == "pep440-pre": + rendered = render_pep440_pre(pieces) + elif style == "pep440-post": + rendered = render_pep440_post(pieces) ++ elif style == "pep440-post-branch": ++ rendered = render_pep440_post_branch(pieces) + elif style == "pep440-old": + rendered = render_pep440_old(pieces) + elif style == "git-describe": +@@ -894,7 +1155,7 @@ def render(pieces, style): + "date": pieces.get("date")} + + +-def get_versions(): ++def get_versions() -> Dict[str, Any]: + """Get version information or return default if unable to do so.""" + # I am in _version.py, which lives at ROOT/VERSIONFILE_SOURCE. If we have + # __file__, we can work backwards from there to the root. Some +@@ -915,7 +1176,7 @@ def get_versions(): + # versionfile_source is the relative path from the top of the source + # tree (where the .git directory might live) to this file. Invert + # this to find the root from __file__. +- for i in cfg.versionfile_source.split('/'): ++ for _ in cfg.versionfile_source.split('/'): + root = os.path.dirname(root) + except NameError: + return {"version": "0+unknown", "full-revisionid": None, +@@ -942,41 +1203,48 @@ def get_versions(): + + + @register_vcs_handler("git", "get_keywords") +-def git_get_keywords(versionfile_abs): ++def git_get_keywords(versionfile_abs: str) -> Dict[str, str]: + """Extract version information from the given file.""" + # the code embedded in _version.py can just fetch the value of these + # keywords. When used from setup.py, we don't want to import _version.py, + # so we do it with a regexp instead. This function is not used from + # _version.py. +- keywords = {} ++ keywords: Dict[str, str] = {} + try: +- f = open(versionfile_abs, "r") +- for line in f.readlines(): +- if line.strip().startswith("git_refnames ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["refnames"] = mo.group(1) +- if line.strip().startswith("git_full ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["full"] = mo.group(1) +- if line.strip().startswith("git_date ="): +- mo = re.search(r'=\s*"(.*)"', line) +- if mo: +- keywords["date"] = mo.group(1) +- f.close() +- except EnvironmentError: ++ with open(versionfile_abs, "r") as fobj: ++ for line in fobj: ++ if line.strip().startswith("git_refnames ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["refnames"] = mo.group(1) ++ if line.strip().startswith("git_full ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["full"] = mo.group(1) ++ if line.strip().startswith("git_date ="): ++ mo = re.search(r'=\s*"(.*)"', line) ++ if mo: ++ keywords["date"] = mo.group(1) ++ except OSError: + pass + return keywords + + + @register_vcs_handler("git", "keywords") +-def git_versions_from_keywords(keywords, tag_prefix, verbose): ++def git_versions_from_keywords( ++ keywords: Dict[str, str], ++ tag_prefix: str, ++ verbose: bool, ++) -> Dict[str, Any]: + """Get version information from git keywords.""" +- if not keywords: +- raise NotThisMethod("no keywords at all, weird") ++ if "refnames" not in keywords: ++ raise NotThisMethod("Short version file found") + date = keywords.get("date") + if date is not None: ++ # Use only the last line. Previous lines may contain GPG signature ++ # information. ++ date = date.splitlines()[-1] ++ + # git-2.2.0 added "%cI", which expands to an ISO-8601 -compliant + # datestamp. However we prefer "%ci" (which expands to an "ISO-8601 + # -like" string, which we must then edit to make compliant), because +@@ -989,11 +1257,11 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + if verbose: + print("keywords are unexpanded, not using") + raise NotThisMethod("unexpanded keywords, not a git-archive tarball") +- refs = set([r.strip() for r in refnames.strip("()").split(",")]) ++ refs = {r.strip() for r in refnames.strip("()").split(",")} + # starting in git-1.8.3, tags are listed as "tag: foo-1.0" instead of + # just "foo-1.0". If we see a "tag: " prefix, prefer those. + TAG = "tag: " +- tags = set([r[len(TAG):] for r in refs if r.startswith(TAG)]) ++ tags = {r[len(TAG) :] for r in refs if r.startswith(TAG)} + if not tags: + # Either we're using git < 1.8.3, or there really are no tags. We use + # a heuristic: assume all version tags have a digit. The old git %d +@@ -1002,7 +1270,7 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + # between branches and tags. By ignoring refnames without digits, we + # filter out many common branch names like "release" and + # "stabilization", as well as "HEAD" and "master". +- tags = set([r for r in refs if re.search(r'\d', r)]) ++ tags = {r for r in refs if re.search(r"\d", r)} + if verbose: + print("discarding '%s', no digits" % ",".join(refs - tags)) + if verbose: +@@ -1010,23 +1278,37 @@ def git_versions_from_keywords(keywords, tag_prefix, verbose): + for ref in sorted(tags): + # sorting will prefer e.g. "2.0" over "2.0rc1" + if ref.startswith(tag_prefix): +- r = ref[len(tag_prefix):] ++ r = ref[len(tag_prefix) :] ++ # Filter out refs that exactly match prefix or that don't start ++ # with a number once the prefix is stripped (mostly a concern ++ # when prefix is '') ++ if not re.match(r"\d", r): ++ continue + if verbose: + print("picking %s" % r) +- return {"version": r, +- "full-revisionid": keywords["full"].strip(), +- "dirty": False, "error": None, +- "date": date} ++ return { ++ "version": r, ++ "full-revisionid": keywords["full"].strip(), ++ "dirty": False, ++ "error": None, ++ "date": date, ++ } + # no suitable tags, so version is "0+unknown", but full hex is still there + if verbose: + print("no suitable tags, using unknown + full revision id") +- return {"version": "0+unknown", +- "full-revisionid": keywords["full"].strip(), +- "dirty": False, "error": "no suitable tags", "date": None} ++ return { ++ "version": "0+unknown", ++ "full-revisionid": keywords["full"].strip(), ++ "dirty": False, ++ "error": "no suitable tags", ++ "date": None, ++ } + + + @register_vcs_handler("git", "pieces_from_vcs") +-def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): ++def git_pieces_from_vcs( ++ tag_prefix: str, root: str, verbose: bool, runner: Callable = run_command ++) -> Dict[str, Any]: + """Get version from 'git describe' in the root of the source tree. + + This only gets called if the git-archive 'subst' keywords were *not* +@@ -1037,8 +1319,14 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + if sys.platform == "win32": + GITS = ["git.cmd", "git.exe"] + +- out, rc = run_command(GITS, ["rev-parse", "--git-dir"], cwd=root, +- hide_stderr=True) ++ # GIT_DIR can interfere with correct operation of Versioneer. ++ # It may be intended to be passed to the Versioneer-versioned project, ++ # but that should not change where we get our version from. ++ env = os.environ.copy() ++ env.pop("GIT_DIR", None) ++ runner = functools.partial(runner, env=env) ++ ++ _, rc = runner(GITS, ["rev-parse", "--git-dir"], cwd=root, hide_stderr=not verbose) + if rc != 0: + if verbose: + print("Directory %s not under git control" % root) +@@ -1046,24 +1334,65 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + + # if there is a tag matching tag_prefix, this yields TAG-NUM-gHEX[-dirty] + # if there isn't one, this yields HEX[-dirty] (no NUM) +- describe_out, rc = run_command(GITS, ["describe", "--tags", "--dirty", +- "--always", "--long", +- "--match", "%s*" % tag_prefix], +- cwd=root) ++ describe_out, rc = runner( ++ GITS, ++ [ ++ "describe", ++ "--tags", ++ "--dirty", ++ "--always", ++ "--long", ++ "--match", ++ f"{tag_prefix}[[:digit:]]*", ++ ], ++ cwd=root, ++ ) + # --long was added in git-1.5.5 + if describe_out is None: + raise NotThisMethod("'git describe' failed") + describe_out = describe_out.strip() +- full_out, rc = run_command(GITS, ["rev-parse", "HEAD"], cwd=root) ++ full_out, rc = runner(GITS, ["rev-parse", "HEAD"], cwd=root) + if full_out is None: + raise NotThisMethod("'git rev-parse' failed") + full_out = full_out.strip() + +- pieces = {} ++ pieces: Dict[str, Any] = {} + pieces["long"] = full_out + pieces["short"] = full_out[:7] # maybe improved later + pieces["error"] = None + ++ branch_name, rc = runner(GITS, ["rev-parse", "--abbrev-ref", "HEAD"], cwd=root) ++ # --abbrev-ref was added in git-1.6.3 ++ if rc != 0 or branch_name is None: ++ raise NotThisMethod("'git rev-parse --abbrev-ref' returned error") ++ branch_name = branch_name.strip() ++ ++ if branch_name == "HEAD": ++ # If we aren't exactly on a branch, pick a branch which represents ++ # the current commit. If all else fails, we are on a branchless ++ # commit. ++ branches, rc = runner(GITS, ["branch", "--contains"], cwd=root) ++ # --contains was added in git-1.5.4 ++ if rc != 0 or branches is None: ++ raise NotThisMethod("'git branch --contains' returned error") ++ branches = branches.split("\n") ++ ++ # Remove the first line if we're running detached ++ if "(" in branches[0]: ++ branches.pop(0) ++ ++ # Strip off the leading "* " from the list of branches. ++ branches = [branch[2:] for branch in branches] ++ if "master" in branches: ++ branch_name = "master" ++ elif not branches: ++ branch_name = None ++ else: ++ # Pick the first branch that is returned. Good or bad. ++ branch_name = branches[0] ++ ++ pieces["branch"] = branch_name ++ + # parse describe_out. It will be like TAG-NUM-gHEX[-dirty] or HEX[-dirty] + # TAG might have hyphens. + git_describe = describe_out +@@ -1072,17 +1401,16 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + dirty = git_describe.endswith("-dirty") + pieces["dirty"] = dirty + if dirty: +- git_describe = git_describe[:git_describe.rindex("-dirty")] ++ git_describe = git_describe[: git_describe.rindex("-dirty")] + + # now we have TAG-NUM-gHEX or HEX + + if "-" in git_describe: + # TAG-NUM-gHEX +- mo = re.search(r'^(.+)-(\d+)-g([0-9a-f]+)$', git_describe) ++ mo = re.search(r"^(.+)-(\d+)-g([0-9a-f]+)$", git_describe) + if not mo: +- # unparseable. Maybe git-describe is misbehaving? +- pieces["error"] = ("unable to parse git-describe output: '%s'" +- % describe_out) ++ # unparsable. Maybe git-describe is misbehaving? ++ pieces["error"] = "unable to parse git-describe output: '%s'" % describe_out + return pieces + + # tag +@@ -1091,10 +1419,12 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + if verbose: + fmt = "tag '%s' doesn't start with prefix '%s'" + print(fmt % (full_tag, tag_prefix)) +- pieces["error"] = ("tag '%s' doesn't start with prefix '%s'" +- % (full_tag, tag_prefix)) ++ pieces["error"] = "tag '%s' doesn't start with prefix '%s'" % ( ++ full_tag, ++ tag_prefix, ++ ) + return pieces +- pieces["closest-tag"] = full_tag[len(tag_prefix):] ++ pieces["closest-tag"] = full_tag[len(tag_prefix) :] + + # distance: number of commits since tag + pieces["distance"] = int(mo.group(2)) +@@ -1105,19 +1435,20 @@ def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): + else: + # HEX: no tags + pieces["closest-tag"] = None +- count_out, rc = run_command(GITS, ["rev-list", "HEAD", "--count"], +- cwd=root) +- pieces["distance"] = int(count_out) # total number of commits ++ out, rc = runner(GITS, ["rev-list", "HEAD", "--left-right"], cwd=root) ++ pieces["distance"] = len(out.split()) # total number of commits + + # commit date: see ISO-8601 comment in git_versions_from_keywords() +- date = run_command(GITS, ["show", "-s", "--format=%ci", "HEAD"], +- cwd=root)[0].strip() ++ date = runner(GITS, ["show", "-s", "--format=%ci", "HEAD"], cwd=root)[0].strip() ++ # Use only the last line. Previous lines may contain GPG signature ++ # information. ++ date = date.splitlines()[-1] + pieces["date"] = date.strip().replace(" ", "T", 1).replace(" ", "", 1) + + return pieces + + +-def do_vcs_install(manifest_in, versionfile_source, ipy): ++def do_vcs_install(versionfile_source: str, ipy: Optional[str]) -> None: + """Git-specific installation logic for Versioneer. + + For Git, this means creating/changing .gitattributes to mark _version.py +@@ -1126,36 +1457,40 @@ def do_vcs_install(manifest_in, versionfile_source, ipy): + GITS = ["git"] + if sys.platform == "win32": + GITS = ["git.cmd", "git.exe"] +- files = [manifest_in, versionfile_source] ++ files = [versionfile_source] + if ipy: + files.append(ipy) +- try: +- me = __file__ +- if me.endswith(".pyc") or me.endswith(".pyo"): +- me = os.path.splitext(me)[0] + ".py" +- versioneer_file = os.path.relpath(me) +- except NameError: +- versioneer_file = "versioneer.py" +- files.append(versioneer_file) ++ if "VERSIONEER_PEP518" not in globals(): ++ try: ++ my_path = __file__ ++ if my_path.endswith((".pyc", ".pyo")): ++ my_path = os.path.splitext(my_path)[0] + ".py" ++ versioneer_file = os.path.relpath(my_path) ++ except NameError: ++ versioneer_file = "versioneer.py" ++ files.append(versioneer_file) + present = False + try: +- f = open(".gitattributes", "r") +- for line in f.readlines(): +- if line.strip().startswith(versionfile_source): +- if "export-subst" in line.strip().split()[1:]: +- present = True +- f.close() +- except EnvironmentError: ++ with open(".gitattributes", "r") as fobj: ++ for line in fobj: ++ if line.strip().startswith(versionfile_source): ++ if "export-subst" in line.strip().split()[1:]: ++ present = True ++ break ++ except OSError: + pass + if not present: +- f = open(".gitattributes", "a+") +- f.write("%s export-subst\n" % versionfile_source) +- f.close() ++ with open(".gitattributes", "a+") as fobj: ++ fobj.write(f"{versionfile_source} export-subst\n") + files.append(".gitattributes") + run_command(GITS, ["add", "--"] + files) + + +-def versions_from_parentdir(parentdir_prefix, root, verbose): ++def versions_from_parentdir( ++ parentdir_prefix: str, ++ root: str, ++ verbose: bool, ++) -> Dict[str, Any]: + """Try to determine the version from the parent directory name. + + Source tarballs conventionally unpack into a directory that includes both +@@ -1164,24 +1499,29 @@ def versions_from_parentdir(parentdir_prefix, root, verbose): + """ + rootdirs = [] + +- for i in range(3): ++ for _ in range(3): + dirname = os.path.basename(root) + if dirname.startswith(parentdir_prefix): +- return {"version": dirname[len(parentdir_prefix):], +- "full-revisionid": None, +- "dirty": False, "error": None, "date": None} +- else: +- rootdirs.append(root) +- root = os.path.dirname(root) # up a level ++ return { ++ "version": dirname[len(parentdir_prefix) :], ++ "full-revisionid": None, ++ "dirty": False, ++ "error": None, ++ "date": None, ++ } ++ rootdirs.append(root) ++ root = os.path.dirname(root) # up a level + + if verbose: +- print("Tried directories %s but none started with prefix %s" % +- (str(rootdirs), parentdir_prefix)) ++ print( ++ "Tried directories %s but none started with prefix %s" ++ % (str(rootdirs), parentdir_prefix) ++ ) + raise NotThisMethod("rootdir doesn't start with parentdir_prefix") + + + SHORT_VERSION_PY = """ +-# This file was generated by 'versioneer.py' (0.18) from ++# This file was generated by 'versioneer.py' (0.29) from + # revision-control system data, or from the parent directory name of an + # unpacked source archive. Distribution tarballs contain a pre-generated copy + # of this file. +@@ -1198,42 +1538,42 @@ def get_versions(): + """ + + +-def versions_from_file(filename): ++def versions_from_file(filename: str) -> Dict[str, Any]: + """Try to determine the version from _version.py if present.""" + try: + with open(filename) as f: + contents = f.read() +- except EnvironmentError: ++ except OSError: + raise NotThisMethod("unable to read _version.py") +- mo = re.search(r"version_json = '''\n(.*)''' # END VERSION_JSON", +- contents, re.M | re.S) ++ mo = re.search( ++ r"version_json = '''\n(.*)''' # END VERSION_JSON", contents, re.M | re.S ++ ) + if not mo: +- mo = re.search(r"version_json = '''\r\n(.*)''' # END VERSION_JSON", +- contents, re.M | re.S) ++ mo = re.search( ++ r"version_json = '''\r\n(.*)''' # END VERSION_JSON", contents, re.M | re.S ++ ) + if not mo: + raise NotThisMethod("no version_json in _version.py") + return json.loads(mo.group(1)) + + +-def write_to_version_file(filename, versions): ++def write_to_version_file(filename: str, versions: Dict[str, Any]) -> None: + """Write the given version number to the given _version.py file.""" +- os.unlink(filename) +- contents = json.dumps(versions, sort_keys=True, +- indent=1, separators=(",", ": ")) ++ contents = json.dumps(versions, sort_keys=True, indent=1, separators=(",", ": ")) + with open(filename, "w") as f: + f.write(SHORT_VERSION_PY % contents) + + print("set %s to '%s'" % (filename, versions["version"])) + + +-def plus_or_dot(pieces): ++def plus_or_dot(pieces: Dict[str, Any]) -> str: + """Return a + if we don't already have one, else return a .""" + if "+" in pieces.get("closest-tag", ""): + return "." + return "+" + + +-def render_pep440(pieces): ++def render_pep440(pieces: Dict[str, Any]) -> str: + """Build up version string, with post-release "local version identifier". + + Our goal: TAG[+DISTANCE.gHEX[.dirty]] . Note that if you +@@ -1251,30 +1591,76 @@ def render_pep440(pieces): + rendered += ".dirty" + else: + # exception #1 +- rendered = "0+untagged.%d.g%s" % (pieces["distance"], +- pieces["short"]) ++ rendered = "0+untagged.%d.g%s" % (pieces["distance"], pieces["short"]) + if pieces["dirty"]: + rendered += ".dirty" + return rendered + + +-def render_pep440_pre(pieces): +- """TAG[.post.devDISTANCE] -- No -dirty. ++def render_pep440_branch(pieces: Dict[str, Any]) -> str: ++ """TAG[[.dev0]+DISTANCE.gHEX[.dirty]] . ++ ++ The ".dev0" means not master branch. Note that .dev0 sorts backwards ++ (a feature branch will appear "older" than the master branch). + + Exceptions: +- 1: no tags. 0.post.devDISTANCE ++ 1: no tags. 0[.dev0]+untagged.DISTANCE.gHEX[.dirty] + """ + if pieces["closest-tag"]: + rendered = pieces["closest-tag"] ++ if pieces["distance"] or pieces["dirty"]: ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += plus_or_dot(pieces) ++ rendered += "%d.g%s" % (pieces["distance"], pieces["short"]) ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ else: ++ # exception #1 ++ rendered = "0" ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += "+untagged.%d.g%s" % (pieces["distance"], pieces["short"]) ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ return rendered ++ ++ ++def pep440_split_post(ver: str) -> Tuple[str, Optional[int]]: ++ """Split pep440 version string at the post-release segment. ++ ++ Returns the release segments before the post-release and the ++ post-release version number (or -1 if no post-release segment is present). ++ """ ++ vc = str.split(ver, ".post") ++ return vc[0], int(vc[1] or 0) if len(vc) == 2 else None ++ ++ ++def render_pep440_pre(pieces: Dict[str, Any]) -> str: ++ """TAG[.postN.devDISTANCE] -- No -dirty. ++ ++ Exceptions: ++ 1: no tags. 0.post0.devDISTANCE ++ """ ++ if pieces["closest-tag"]: + if pieces["distance"]: +- rendered += ".post.dev%d" % pieces["distance"] ++ # update the post release segment ++ tag_version, post_version = pep440_split_post(pieces["closest-tag"]) ++ rendered = tag_version ++ if post_version is not None: ++ rendered += ".post%d.dev%d" % (post_version + 1, pieces["distance"]) ++ else: ++ rendered += ".post0.dev%d" % (pieces["distance"]) ++ else: ++ # no commits, use the tag as the version ++ rendered = pieces["closest-tag"] + else: + # exception #1 +- rendered = "0.post.dev%d" % pieces["distance"] ++ rendered = "0.post0.dev%d" % pieces["distance"] + return rendered + + +-def render_pep440_post(pieces): ++def render_pep440_post(pieces: Dict[str, Any]) -> str: + """TAG[.postDISTANCE[.dev0]+gHEX] . + + The ".dev0" means dirty. Note that .dev0 sorts backwards +@@ -1301,12 +1687,41 @@ def render_pep440_post(pieces): + return rendered + + +-def render_pep440_old(pieces): ++def render_pep440_post_branch(pieces: Dict[str, Any]) -> str: ++ """TAG[.postDISTANCE[.dev0]+gHEX[.dirty]] . ++ ++ The ".dev0" means not master branch. ++ ++ Exceptions: ++ 1: no tags. 0.postDISTANCE[.dev0]+gHEX[.dirty] ++ """ ++ if pieces["closest-tag"]: ++ rendered = pieces["closest-tag"] ++ if pieces["distance"] or pieces["dirty"]: ++ rendered += ".post%d" % pieces["distance"] ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += plus_or_dot(pieces) ++ rendered += "g%s" % pieces["short"] ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ else: ++ # exception #1 ++ rendered = "0.post%d" % pieces["distance"] ++ if pieces["branch"] != "master": ++ rendered += ".dev0" ++ rendered += "+g%s" % pieces["short"] ++ if pieces["dirty"]: ++ rendered += ".dirty" ++ return rendered ++ ++ ++def render_pep440_old(pieces: Dict[str, Any]) -> str: + """TAG[.postDISTANCE[.dev0]] . + + The ".dev0" means dirty. + +- Eexceptions: ++ Exceptions: + 1: no tags. 0.postDISTANCE[.dev0] + """ + if pieces["closest-tag"]: +@@ -1323,7 +1738,7 @@ def render_pep440_old(pieces): + return rendered + + +-def render_git_describe(pieces): ++def render_git_describe(pieces: Dict[str, Any]) -> str: + """TAG[-DISTANCE-gHEX][-dirty]. + + Like 'git describe --tags --dirty --always'. +@@ -1343,7 +1758,7 @@ def render_git_describe(pieces): + return rendered + + +-def render_git_describe_long(pieces): ++def render_git_describe_long(pieces: Dict[str, Any]) -> str: + """TAG-DISTANCE-gHEX[-dirty]. + + Like 'git describe --tags --dirty --always -long'. +@@ -1363,24 +1778,30 @@ def render_git_describe_long(pieces): + return rendered + + +-def render(pieces, style): ++def render(pieces: Dict[str, Any], style: str) -> Dict[str, Any]: + """Render the given version pieces into the requested style.""" + if pieces["error"]: +- return {"version": "unknown", +- "full-revisionid": pieces.get("long"), +- "dirty": None, +- "error": pieces["error"], +- "date": None} ++ return { ++ "version": "unknown", ++ "full-revisionid": pieces.get("long"), ++ "dirty": None, ++ "error": pieces["error"], ++ "date": None, ++ } + + if not style or style == "default": + style = "pep440" # the default + + if style == "pep440": + rendered = render_pep440(pieces) ++ elif style == "pep440-branch": ++ rendered = render_pep440_branch(pieces) + elif style == "pep440-pre": + rendered = render_pep440_pre(pieces) + elif style == "pep440-post": + rendered = render_pep440_post(pieces) ++ elif style == "pep440-post-branch": ++ rendered = render_pep440_post_branch(pieces) + elif style == "pep440-old": + rendered = render_pep440_old(pieces) + elif style == "git-describe": +@@ -1390,16 +1811,20 @@ def render(pieces, style): + else: + raise ValueError("unknown style '%s'" % style) + +- return {"version": rendered, "full-revisionid": pieces["long"], +- "dirty": pieces["dirty"], "error": None, +- "date": pieces.get("date")} ++ return { ++ "version": rendered, ++ "full-revisionid": pieces["long"], ++ "dirty": pieces["dirty"], ++ "error": None, ++ "date": pieces.get("date"), ++ } + + + class VersioneerBadRootError(Exception): + """The project root directory is unknown or missing key files.""" + + +-def get_versions(verbose=False): ++def get_versions(verbose: bool = False) -> Dict[str, Any]: + """Get the project version from whatever source is available. + + Returns dict with two keys: 'version' and 'full'. +@@ -1414,9 +1839,10 @@ def get_versions(verbose=False): + assert cfg.VCS is not None, "please set [versioneer]VCS= in setup.cfg" + handlers = HANDLERS.get(cfg.VCS) + assert handlers, "unrecognized VCS '%s'" % cfg.VCS +- verbose = verbose or cfg.verbose +- assert cfg.versionfile_source is not None, \ +- "please set versioneer.versionfile_source" ++ verbose = verbose or bool(cfg.verbose) # `bool()` used to avoid `None` ++ assert ( ++ cfg.versionfile_source is not None ++ ), "please set versioneer.versionfile_source" + assert cfg.tag_prefix is not None, "please set versioneer.tag_prefix" + + versionfile_abs = os.path.join(root, cfg.versionfile_source) +@@ -1470,18 +1896,26 @@ def get_versions(verbose=False): + if verbose: + print("unable to compute version") + +- return {"version": "0+unknown", "full-revisionid": None, +- "dirty": None, "error": "unable to compute version", +- "date": None} ++ return { ++ "version": "0+unknown", ++ "full-revisionid": None, ++ "dirty": None, ++ "error": "unable to compute version", ++ "date": None, ++ } + + +-def get_version(): ++def get_version() -> str: + """Get the short version string for this project.""" + return get_versions()["version"] + + +-def get_cmdclass(): +- """Get the custom setuptools/distutils subclasses used by Versioneer.""" ++def get_cmdclass(cmdclass: Optional[Dict[str, Any]] = None): ++ """Get the custom setuptools subclasses used by Versioneer. ++ ++ If the package uses a different cmdclass (e.g. one from numpy), it ++ should be provide as an argument. ++ """ + if "versioneer" in sys.modules: + del sys.modules["versioneer"] + # this fixes the "python setup.py develop" case (also 'install' and +@@ -1495,25 +1929,25 @@ def get_cmdclass(): + # parent is protected against the child's "import versioneer". By + # removing ourselves from sys.modules here, before the child build + # happens, we protect the child from the parent's versioneer too. +- # Also see https://github.com/warner/python-versioneer/issues/52 ++ # Also see https://github.com/python-versioneer/python-versioneer/issues/52 + +- cmds = {} ++ cmds = {} if cmdclass is None else cmdclass.copy() + +- # we add "version" to both distutils and setuptools +- from distutils.core import Command ++ # we add "version" to setuptools ++ from setuptools import Command + + class cmd_version(Command): + description = "report generated version string" +- user_options = [] +- boolean_options = [] ++ user_options: List[Tuple[str, str, str]] = [] ++ boolean_options: List[str] = [] + +- def initialize_options(self): ++ def initialize_options(self) -> None: + pass + +- def finalize_options(self): ++ def finalize_options(self) -> None: + pass + +- def run(self): ++ def run(self) -> None: + vers = get_versions(verbose=True) + print("Version: %s" % vers["version"]) + print(" full-revisionid: %s" % vers.get("full-revisionid")) +@@ -1521,9 +1955,10 @@ def get_cmdclass(): + print(" date: %s" % vers.get("date")) + if vers["error"]: + print(" error: %s" % vers["error"]) ++ + cmds["version"] = cmd_version + +- # we override "build_py" in both distutils and setuptools ++ # we override "build_py" in setuptools + # + # most invocation pathways end up running build_py: + # distutils/build -> build_py +@@ -1538,29 +1973,71 @@ def get_cmdclass(): + # then does setup.py bdist_wheel, or sometimes setup.py install + # setup.py egg_info -> ? + ++ # pip install -e . and setuptool/editable_wheel will invoke build_py ++ # but the build_py command is not expected to copy any files. ++ + # we override different "build_py" commands for both environments +- if "setuptools" in sys.modules: +- from setuptools.command.build_py import build_py as _build_py ++ if "build_py" in cmds: ++ _build_py: Any = cmds["build_py"] + else: +- from distutils.command.build_py import build_py as _build_py ++ from setuptools.command.build_py import build_py as _build_py + + class cmd_build_py(_build_py): +- def run(self): ++ def run(self) -> None: + root = get_root() + cfg = get_config_from_root(root) + versions = get_versions() + _build_py.run(self) ++ if getattr(self, "editable_mode", False): ++ # During editable installs `.py` and data files are ++ # not copied to build_lib ++ return + # now locate _version.py in the new build/ directory and replace + # it with an updated value + if cfg.versionfile_build: +- target_versionfile = os.path.join(self.build_lib, +- cfg.versionfile_build) ++ target_versionfile = os.path.join(self.build_lib, cfg.versionfile_build) + print("UPDATING %s" % target_versionfile) + write_to_version_file(target_versionfile, versions) ++ + cmds["build_py"] = cmd_build_py + ++ if "build_ext" in cmds: ++ _build_ext: Any = cmds["build_ext"] ++ else: ++ from setuptools.command.build_ext import build_ext as _build_ext ++ ++ class cmd_build_ext(_build_ext): ++ def run(self) -> None: ++ root = get_root() ++ cfg = get_config_from_root(root) ++ versions = get_versions() ++ _build_ext.run(self) ++ if self.inplace: ++ # build_ext --inplace will only build extensions in ++ # build/lib<..> dir with no _version.py to write to. ++ # As in place builds will already have a _version.py ++ # in the module dir, we do not need to write one. ++ return ++ # now locate _version.py in the new build/ directory and replace ++ # it with an updated value ++ if not cfg.versionfile_build: ++ return ++ target_versionfile = os.path.join(self.build_lib, cfg.versionfile_build) ++ if not os.path.exists(target_versionfile): ++ print( ++ f"Warning: {target_versionfile} does not exist, skipping " ++ "version update. This can happen if you are running build_ext " ++ "without first running build_py." ++ ) ++ return ++ print("UPDATING %s" % target_versionfile) ++ write_to_version_file(target_versionfile, versions) ++ ++ cmds["build_ext"] = cmd_build_ext ++ + if "cx_Freeze" in sys.modules: # cx_freeze enabled? +- from cx_Freeze.dist import build_exe as _build_exe ++ from cx_Freeze.dist import build_exe as _build_exe # type: ignore ++ + # nczeczulin reports that py2exe won't like the pep440-style string + # as FILEVERSION, but it can be used for PRODUCTVERSION, e.g. + # setup(console=[{ +@@ -1569,7 +2046,7 @@ def get_cmdclass(): + # ... + + class cmd_build_exe(_build_exe): +- def run(self): ++ def run(self) -> None: + root = get_root() + cfg = get_config_from_root(root) + versions = get_versions() +@@ -1581,24 +2058,28 @@ def get_cmdclass(): + os.unlink(target_versionfile) + with open(cfg.versionfile_source, "w") as f: + LONG = LONG_VERSION_PY[cfg.VCS] +- f.write(LONG % +- {"DOLLAR": "$", +- "STYLE": cfg.style, +- "TAG_PREFIX": cfg.tag_prefix, +- "PARENTDIR_PREFIX": cfg.parentdir_prefix, +- "VERSIONFILE_SOURCE": cfg.versionfile_source, +- }) ++ f.write( ++ LONG ++ % { ++ "DOLLAR": "$", ++ "STYLE": cfg.style, ++ "TAG_PREFIX": cfg.tag_prefix, ++ "PARENTDIR_PREFIX": cfg.parentdir_prefix, ++ "VERSIONFILE_SOURCE": cfg.versionfile_source, ++ } ++ ) ++ + cmds["build_exe"] = cmd_build_exe + del cmds["build_py"] + +- if 'py2exe' in sys.modules: # py2exe enabled? ++ if "py2exe" in sys.modules: # py2exe enabled? + try: +- from py2exe.distutils_buildexe import py2exe as _py2exe # py3 ++ from py2exe.setuptools_buildexe import py2exe as _py2exe # type: ignore + except ImportError: +- from py2exe.build_exe import py2exe as _py2exe # py2 ++ from py2exe.distutils_buildexe import py2exe as _py2exe # type: ignore + + class cmd_py2exe(_py2exe): +- def run(self): ++ def run(self) -> None: + root = get_root() + cfg = get_config_from_root(root) + versions = get_versions() +@@ -1610,23 +2091,67 @@ def get_cmdclass(): + os.unlink(target_versionfile) + with open(cfg.versionfile_source, "w") as f: + LONG = LONG_VERSION_PY[cfg.VCS] +- f.write(LONG % +- {"DOLLAR": "$", +- "STYLE": cfg.style, +- "TAG_PREFIX": cfg.tag_prefix, +- "PARENTDIR_PREFIX": cfg.parentdir_prefix, +- "VERSIONFILE_SOURCE": cfg.versionfile_source, +- }) ++ f.write( ++ LONG ++ % { ++ "DOLLAR": "$", ++ "STYLE": cfg.style, ++ "TAG_PREFIX": cfg.tag_prefix, ++ "PARENTDIR_PREFIX": cfg.parentdir_prefix, ++ "VERSIONFILE_SOURCE": cfg.versionfile_source, ++ } ++ ) ++ + cmds["py2exe"] = cmd_py2exe + ++ # sdist farms its file list building out to egg_info ++ if "egg_info" in cmds: ++ _egg_info: Any = cmds["egg_info"] ++ else: ++ from setuptools.command.egg_info import egg_info as _egg_info ++ ++ class cmd_egg_info(_egg_info): ++ def find_sources(self) -> None: ++ # egg_info.find_sources builds the manifest list and writes it ++ # in one shot ++ super().find_sources() ++ ++ # Modify the filelist and normalize it ++ root = get_root() ++ cfg = get_config_from_root(root) ++ self.filelist.append("versioneer.py") ++ if cfg.versionfile_source: ++ # There are rare cases where versionfile_source might not be ++ # included by default, so we must be explicit ++ self.filelist.append(cfg.versionfile_source) ++ self.filelist.sort() ++ self.filelist.remove_duplicates() ++ ++ # The write method is hidden in the manifest_maker instance that ++ # generated the filelist and was thrown away ++ # We will instead replicate their final normalization (to unicode, ++ # and POSIX-style paths) ++ from setuptools import unicode_utils ++ ++ normalized = [ ++ unicode_utils.filesys_decode(f).replace(os.sep, "/") ++ for f in self.filelist.files ++ ] ++ ++ manifest_filename = os.path.join(self.egg_info, "SOURCES.txt") ++ with open(manifest_filename, "w") as fobj: ++ fobj.write("\n".join(normalized)) ++ ++ cmds["egg_info"] = cmd_egg_info ++ + # we override different "sdist" commands for both environments +- if "setuptools" in sys.modules: +- from setuptools.command.sdist import sdist as _sdist ++ if "sdist" in cmds: ++ _sdist: Any = cmds["sdist"] + else: +- from distutils.command.sdist import sdist as _sdist ++ from setuptools.command.sdist import sdist as _sdist + + class cmd_sdist(_sdist): +- def run(self): ++ def run(self) -> None: + versions = get_versions() + self._versioneer_generated_versions = versions + # unless we update this, the command will keep using the old +@@ -1634,7 +2159,7 @@ def get_cmdclass(): + self.distribution.metadata.version = versions["version"] + return _sdist.run(self) + +- def make_release_tree(self, base_dir, files): ++ def make_release_tree(self, base_dir: str, files: List[str]) -> None: + root = get_root() + cfg = get_config_from_root(root) + _sdist.make_release_tree(self, base_dir, files) +@@ -1643,8 +2168,10 @@ def get_cmdclass(): + # updated value + target_versionfile = os.path.join(base_dir, cfg.versionfile_source) + print("UPDATING %s" % target_versionfile) +- write_to_version_file(target_versionfile, +- self._versioneer_generated_versions) ++ write_to_version_file( ++ target_versionfile, self._versioneer_generated_versions ++ ) ++ + cmds["sdist"] = cmd_sdist + + return cmds +@@ -1687,23 +2214,26 @@ SAMPLE_CONFIG = """ + + """ + +-INIT_PY_SNIPPET = """ ++OLD_SNIPPET = """ + from ._version import get_versions + __version__ = get_versions()['version'] + del get_versions + """ + ++INIT_PY_SNIPPET = """ ++from . import {0} ++__version__ = {0}.get_versions()['version'] ++""" ++ + +-def do_setup(): +- """Main VCS-independent setup function for installing Versioneer.""" ++def do_setup() -> int: ++ """Do main VCS-independent setup function for installing Versioneer.""" + root = get_root() + try: + cfg = get_config_from_root(root) +- except (EnvironmentError, configparser.NoSectionError, +- configparser.NoOptionError) as e: +- if isinstance(e, (EnvironmentError, configparser.NoSectionError)): +- print("Adding sample versioneer config to setup.cfg", +- file=sys.stderr) ++ except (OSError, configparser.NoSectionError, configparser.NoOptionError) as e: ++ if isinstance(e, (OSError, configparser.NoSectionError)): ++ print("Adding sample versioneer config to setup.cfg", file=sys.stderr) + with open(os.path.join(root, "setup.cfg"), "a") as f: + f.write(SAMPLE_CONFIG) + print(CONFIG_ERROR, file=sys.stderr) +@@ -1712,71 +2242,49 @@ def do_setup(): + print(" creating %s" % cfg.versionfile_source) + with open(cfg.versionfile_source, "w") as f: + LONG = LONG_VERSION_PY[cfg.VCS] +- f.write(LONG % {"DOLLAR": "$", +- "STYLE": cfg.style, +- "TAG_PREFIX": cfg.tag_prefix, +- "PARENTDIR_PREFIX": cfg.parentdir_prefix, +- "VERSIONFILE_SOURCE": cfg.versionfile_source, +- }) +- +- ipy = os.path.join(os.path.dirname(cfg.versionfile_source), +- "__init__.py") ++ f.write( ++ LONG ++ % { ++ "DOLLAR": "$", ++ "STYLE": cfg.style, ++ "TAG_PREFIX": cfg.tag_prefix, ++ "PARENTDIR_PREFIX": cfg.parentdir_prefix, ++ "VERSIONFILE_SOURCE": cfg.versionfile_source, ++ } ++ ) ++ ++ ipy = os.path.join(os.path.dirname(cfg.versionfile_source), "__init__.py") ++ maybe_ipy: Optional[str] = ipy + if os.path.exists(ipy): + try: + with open(ipy, "r") as f: + old = f.read() +- except EnvironmentError: ++ except OSError: + old = "" +- if INIT_PY_SNIPPET not in old: ++ module = os.path.splitext(os.path.basename(cfg.versionfile_source))[0] ++ snippet = INIT_PY_SNIPPET.format(module) ++ if OLD_SNIPPET in old: ++ print(" replacing boilerplate in %s" % ipy) ++ with open(ipy, "w") as f: ++ f.write(old.replace(OLD_SNIPPET, snippet)) ++ elif snippet not in old: + print(" appending to %s" % ipy) + with open(ipy, "a") as f: +- f.write(INIT_PY_SNIPPET) ++ f.write(snippet) + else: + print(" %s unmodified" % ipy) + else: + print(" %s doesn't exist, ok" % ipy) +- ipy = None +- +- # Make sure both the top-level "versioneer.py" and versionfile_source +- # (PKG/_version.py, used by runtime code) are in MANIFEST.in, so +- # they'll be copied into source distributions. Pip won't be able to +- # install the package without this. +- manifest_in = os.path.join(root, "MANIFEST.in") +- simple_includes = set() +- try: +- with open(manifest_in, "r") as f: +- for line in f: +- if line.startswith("include "): +- for include in line.split()[1:]: +- simple_includes.add(include) +- except EnvironmentError: +- pass +- # That doesn't cover everything MANIFEST.in can do +- # (http://docs.python.org/2/distutils/sourcedist.html#commands), so +- # it might give some false negatives. Appending redundant 'include' +- # lines is safe, though. +- if "versioneer.py" not in simple_includes: +- print(" appending 'versioneer.py' to MANIFEST.in") +- with open(manifest_in, "a") as f: +- f.write("include versioneer.py\n") +- else: +- print(" 'versioneer.py' already in MANIFEST.in") +- if cfg.versionfile_source not in simple_includes: +- print(" appending versionfile_source ('%s') to MANIFEST.in" % +- cfg.versionfile_source) +- with open(manifest_in, "a") as f: +- f.write("include %s\n" % cfg.versionfile_source) +- else: +- print(" versionfile_source already in MANIFEST.in") ++ maybe_ipy = None + + # Make VCS-specific changes. For git, this means creating/changing + # .gitattributes to mark _version.py for export-subst keyword + # substitution. +- do_vcs_install(manifest_in, cfg.versionfile_source, ipy) ++ do_vcs_install(cfg.versionfile_source, maybe_ipy) + return 0 + + +-def scan_setup_py(): ++def scan_setup_py() -> int: + """Validate the contents of setup.py against Versioneer's expectations.""" + found = set() + setters = False +@@ -1813,10 +2321,14 @@ def scan_setup_py(): + return errors + + ++def setup_command() -> NoReturn: ++ """Set up Versioneer and exit with appropriate error code.""" ++ errors = do_setup() ++ errors += scan_setup_py() ++ sys.exit(1 if errors else 0) ++ ++ + if __name__ == "__main__": + cmd = sys.argv[1] + if cmd == "setup": +- errors = do_setup() +- errors += scan_setup_py() +- if errors: +- sys.exit(1) ++ setup_command() +-- +2.41.0 + diff --git a/package/python-stack-data/Config.in b/package/python-stack-data/Config.in new file mode 100644 index 000000000000..508eb9cf132a --- /dev/null +++ b/package/python-stack-data/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_PYTHON_STACK_DATA + bool "python-stack-data" + select BR2_PACKAGE_PYTHON_ASTTOKENS # runtime + select BR2_PACKAGE_PYTHON_EXECUTING # runtime + select BR2_PACKAGE_PYTHON_PURE_EVAL # runtime + help + Extract data from python stack frames and tracebacks + for informative displays. + + http://github.com/alexmojaki/stack_data diff --git a/package/python-stack-data/python-stack-data.hash b/package/python-stack-data/python-stack-data.hash new file mode 100644 index 000000000000..6decd3ca8eb9 --- /dev/null +++ b/package/python-stack-data/python-stack-data.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/stack_data/json +md5 bf86c3c81a0158e1e7f3979da5a0033b stack_data-0.6.2.tar.gz +sha256 32d2dd0376772d01b6cb9fc996f3c8b57a357089dec328ed4b6553d037eaf815 stack_data-0.6.2.tar.gz +# Locally computed sha256 checksums +sha256 a476a2cb0ef4c41450340a577a28b91ac4c7f669136b2ee148047fabd5fc4181 LICENSE.txt diff --git a/package/python-stack-data/python-stack-data.mk b/package/python-stack-data/python-stack-data.mk new file mode 100644 index 000000000000..1a85938311ec --- /dev/null +++ b/package/python-stack-data/python-stack-data.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# python-stack-data +# +################################################################################ + +PYTHON_STACK_DATA_VERSION = 0.6.2 +PYTHON_STACK_DATA_SOURCE = stack_data-$(PYTHON_STACK_DATA_VERSION).tar.gz +PYTHON_STACK_DATA_SITE = https://files.pythonhosted.org/packages/db/18/aa7f2b111aeba2cd83503254d9133a912d7f61f459a0c8561858f0d72a56 +PYTHON_STACK_DATA_SETUP_TYPE = pep517 +PYTHON_STACK_DATA_LICENSE = MIT +PYTHON_STACK_DATA_LICENSE_FILES = LICENSE.txt +PYTHON_STACK_DATA_DEPENDENCIES = host-python-setuptools-scm + +$(eval $(python-package)) diff --git a/package/python-systemd/python-systemd.hash b/package/python-systemd/python-systemd.hash index 789b48590dee..6cc66392186a 100644 --- a/package/python-systemd/python-systemd.hash +++ b/package/python-systemd/python-systemd.hash @@ -1,5 +1,5 @@ # md5 from https://pypi.python.org/pypi/systemd-python/ -md5 5071ea5bcb976186e92a3f5e75df221d systemd-python-234.tar.gz +md5 93f3ca09f35719ca6a4edd1d62d38dd4 systemd-python-235.tar.gz # Locally computed -sha256 fd0e44bf70eadae45aadc292cb0a7eb5b0b6372cd1b391228047d33895db83e7 systemd-python-234.tar.gz +sha256 4e57f39797fd5d9e2d22b8806a252d7c0106c936039d1e71c8c6b8008e695c0a systemd-python-235.tar.gz sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 LICENSE.txt diff --git a/package/python-systemd/python-systemd.mk b/package/python-systemd/python-systemd.mk index 3ccfd57ce581..fdc5d7e2784d 100644 --- a/package/python-systemd/python-systemd.mk +++ b/package/python-systemd/python-systemd.mk @@ -4,10 +4,10 @@ # ################################################################################ -PYTHON_SYSTEMD_VERSION = 234 # Should be kept in sync with $(SYSTEMD_VERSION) +PYTHON_SYSTEMD_VERSION = 235 PYTHON_SYSTEMD_SOURCE = systemd-python-$(PYTHON_SYSTEMD_VERSION).tar.gz -PYTHON_SYSTEMD_SITE = https://pypi.python.org/packages/e8/a8/00ba0f605837a8f69523e6c3a4fb14675a6430c163f836540129c50b3aef -PYTHON_SYSTEMD_SETUP_TYPE = distutils +PYTHON_SYSTEMD_SITE = https://files.pythonhosted.org/packages/10/9e/ab4458e00367223bda2dd7ccf0849a72235ee3e29b36dce732685d9b7ad9 +PYTHON_SYSTEMD_SETUP_TYPE = setuptools PYTHON_SYSTEMD_LICENSE = LGPL-2.1 PYTHON_SYSTEMD_LICENSE_FILES = LICENSE.txt PYTHON_SYSTEMD_DEPENDENCIES = systemd # To be able to link against libsystemd diff --git a/package/python-tftpy/Config.in b/package/python-tftpy/Config.in new file mode 100644 index 000000000000..ef21ac58de7d --- /dev/null +++ b/package/python-tftpy/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_TFTPY + bool "python-tftpy" + help + tftpy is a pure Python implementation of the + Trivial FTP protocol. + + https://github.com/msoulier/tftpy diff --git a/package/python-tftpy/python-tftpy.hash b/package/python-tftpy/python-tftpy.hash new file mode 100644 index 000000000000..1fae4fdeef3a --- /dev/null +++ b/package/python-tftpy/python-tftpy.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 2bfbf6377f6e3b6ba647f0ac614e9cbc225d1cc35b52991860ba6ea1ec58ef9d python-tftpy-0.8.2.tar.gz +sha256 4616f0c71e62ce2e0f6cdd3aef6d3c285f8730c9304b88a9f3ce3f14c2e6f756 LICENSE diff --git a/package/python-tftpy/python-tftpy.mk b/package/python-tftpy/python-tftpy.mk new file mode 100644 index 000000000000..fd3c60149601 --- /dev/null +++ b/package/python-tftpy/python-tftpy.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-tftpy +# +################################################################################ + +PYTHON_TFTPY_VERSION = 0.8.2 +PYTHON_TFTPY_SITE = $(call github,msoulier,tftpy,$(PYTHON_TFTPY_VERSION)) +PYTHON_TFTPY_LICENSE = MIT +PYTHON_TFTPY_LICENSE_FILES = LICENSE +PYTHON_TFTPY_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-tornado/0001-web-Fix-an-open-redirect-in-StaticFileHandler.patch b/package/python-tornado/0001-web-Fix-an-open-redirect-in-StaticFileHandler.patch new file mode 100644 index 000000000000..357c6f2f129c --- /dev/null +++ b/package/python-tornado/0001-web-Fix-an-open-redirect-in-StaticFileHandler.patch @@ -0,0 +1,42 @@ +From ac79778c91bd9a4a92111f7e06d4b12674571113 Mon Sep 17 00:00:00 2001 +From: Ben Darnell +Date: Sat, 13 May 2023 20:58:52 -0400 +Subject: [PATCH] web: Fix an open redirect in StaticFileHandler + +Under some configurations the default_filename redirect could be exploited +to redirect to an attacker-controlled site. This change refuses to redirect +to URLs that could be misinterpreted. + +A test case for the specific vulnerable configuration will follow after the +patch has been available. + +Upstream: https://github.com/tornadoweb/tornado/commit/32ad07c54e607839273b4e1819c347f5c8976b2f +[Thomas: backported to fix CVE-2023-28370] +Signed-off-by: Thomas Petazzoni +--- + tornado/web.py | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/tornado/web.py b/tornado/web.py +index cd6a81b4..05b571eb 100644 +--- a/tornado/web.py ++++ b/tornado/web.py +@@ -2806,6 +2806,15 @@ class StaticFileHandler(RequestHandler): + # but there is some prefix to the path that was already + # trimmed by the routing + if not self.request.path.endswith("/"): ++ if self.request.path.startswith("//"): ++ # A redirect with two initial slashes is a "protocol-relative" URL. ++ # This means the next path segment is treated as a hostname instead ++ # of a part of the path, making this effectively an open redirect. ++ # Reject paths starting with two slashes to prevent this. ++ # This is only reachable under certain configurations. ++ raise HTTPError( ++ 403, "cannot redirect path with two initial slashes" ++ ) + self.redirect(self.request.path + "/", permanent=True) + return None + absolute_path = os.path.join(absolute_path, self.default_filename) +-- +2.41.0 + diff --git a/package/python-tornado/python-tornado.mk b/package/python-tornado/python-tornado.mk index 2af86ecb18a0..f4a4c97d2a20 100644 --- a/package/python-tornado/python-tornado.mk +++ b/package/python-tornado/python-tornado.mk @@ -12,5 +12,7 @@ PYTHON_TORNADO_LICENSE_FILES = LICENSE PYTHON_TORNADO_CPE_ID_VENDOR = tornadoweb PYTHON_TORNADO_CPE_ID_PRODUCT = tornado PYTHON_TORNADO_SETUP_TYPE = setuptools +# 0001-web-Fix-an-open-redirect-in-StaticFileHandler.patch +PYTHON_TORNADO_IGNORE_CVES += CVE-2023-28370 $(eval $(python-package)) diff --git a/package/python-trove-classifiers/python-trove-classifiers.hash b/package/python-trove-classifiers/python-trove-classifiers.hash new file mode 100644 index 000000000000..26b813eded41 --- /dev/null +++ b/package/python-trove-classifiers/python-trove-classifiers.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/trove-classifiers/json +md5 2afa6925489403b8025a1b66d990e760 trove-classifiers-2023.10.18.tar.gz +sha256 2cdfcc7f31f7ffdd57666a9957296089ac72daad4d11ab5005060e5cd7e29939 trove-classifiers-2023.10.18.tar.gz +# Locally computed sha256 checksums +sha256 c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 LICENSE diff --git a/package/python-trove-classifiers/python-trove-classifiers.mk b/package/python-trove-classifiers/python-trove-classifiers.mk new file mode 100644 index 000000000000..d0d79d297c2b --- /dev/null +++ b/package/python-trove-classifiers/python-trove-classifiers.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# python-trove-classifiers +# +################################################################################ + +PYTHON_TROVE_CLASSIFIERS_VERSION = 2023.10.18 +PYTHON_TROVE_CLASSIFIERS_SOURCE = trove-classifiers-$(PYTHON_TROVE_CLASSIFIERS_VERSION).tar.gz +PYTHON_TROVE_CLASSIFIERS_SITE = https://files.pythonhosted.org/packages/5b/fa/49b6a09e4f389d4d9406d2947a685de1462ffb676ea6e61c50905e27b0f4 +PYTHON_TROVE_CLASSIFIERS_SETUP_TYPE = setuptools +PYTHON_TROVE_CLASSIFIERS_LICENSE = Apache-2.0 +PYTHON_TROVE_CLASSIFIERS_LICENSE_FILES = LICENSE +HOST_PYTHON_TROVE_CLASSIFIERS_DEPENDENCIES = host-python-calver + +$(eval $(host-python-package)) diff --git a/package/python-txaio/python-txaio.hash b/package/python-txaio/python-txaio.hash index f06c14b21f96..d561cec6356a 100644 --- a/package/python-txaio/python-txaio.hash +++ b/package/python-txaio/python-txaio.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/txaio/json -md5 9b692af4c4fce73cadd36374c138936b txaio-22.2.1.tar.gz -sha256 2e4582b70f04b2345908254684a984206c0d9b50e3074a24a4c55aba21d24d01 txaio-22.2.1.tar.gz +md5 297409f2dff8e71bad24467374aa8775 txaio-23.1.1.tar.gz +sha256 f9a9216e976e5e3246dfd112ad7ad55ca915606b60b84a757ac769bd404ff704 txaio-23.1.1.tar.gz # Locally computed sha256 checksums -sha256 0387eefce570453daaa60633f28676003731eeca28b2d0a0071c628e3a0004ef LICENSE +sha256 ab1dd7a42dbdae302346c5a4571f2149691cc1ec06836232bf4923527e3fe41c LICENSE diff --git a/package/python-txaio/python-txaio.mk b/package/python-txaio/python-txaio.mk index 1a8a88896302..585b3a5f5751 100644 --- a/package/python-txaio/python-txaio.mk +++ b/package/python-txaio/python-txaio.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_TXAIO_VERSION = 22.2.1 +PYTHON_TXAIO_VERSION = 23.1.1 PYTHON_TXAIO_SOURCE = txaio-$(PYTHON_TXAIO_VERSION).tar.gz -PYTHON_TXAIO_SITE = https://files.pythonhosted.org/packages/6d/4b/28313388dfb2bdedb71b35b900459c56ba08ccb7ad2885487df037808c06 +PYTHON_TXAIO_SITE = https://files.pythonhosted.org/packages/51/91/bc9fd5aa84703f874dea27313b11fde505d343f3ef3ad702bddbe20bfd6e PYTHON_TXAIO_LICENSE = MIT PYTHON_TXAIO_LICENSE_FILES = LICENSE PYTHON_TXAIO_SETUP_TYPE = setuptools diff --git a/package/python-types-python-dateutil/Config.in b/package/python-types-python-dateutil/Config.in new file mode 100644 index 000000000000..e2a8bb634124 --- /dev/null +++ b/package/python-types-python-dateutil/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_TYPES_PYTHON_DATEUTIL + bool "python-types-python-dateutil" + help + Typing stubs for python-dateutil. + + https://github.com/python/typeshed diff --git a/package/python-types-python-dateutil/python-types-python-dateutil.hash b/package/python-types-python-dateutil/python-types-python-dateutil.hash new file mode 100644 index 000000000000..ef5e9380cf7b --- /dev/null +++ b/package/python-types-python-dateutil/python-types-python-dateutil.hash @@ -0,0 +1,3 @@ +# md5, sha256 from https://pypi.org/pypi/types-python-dateutil/json +md5 58072922ac0c740121e311e970f003bf types-python-dateutil-2.8.19.14.tar.gz +sha256 1f4f10ac98bb8b16ade9dbee3518d9ace017821d94b057a425b069f834737f4b types-python-dateutil-2.8.19.14.tar.gz diff --git a/package/python-types-python-dateutil/python-types-python-dateutil.mk b/package/python-types-python-dateutil/python-types-python-dateutil.mk new file mode 100644 index 000000000000..b2303941209d --- /dev/null +++ b/package/python-types-python-dateutil/python-types-python-dateutil.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-types-python-dateutil +# +################################################################################ + +PYTHON_TYPES_PYTHON_DATEUTIL_VERSION = 2.8.19.14 +PYTHON_TYPES_PYTHON_DATEUTIL_SOURCE = types-python-dateutil-$(PYTHON_TYPES_PYTHON_DATEUTIL_VERSION).tar.gz +PYTHON_TYPES_PYTHON_DATEUTIL_SITE = https://files.pythonhosted.org/packages/1b/2d/f189e5c03c22700c4ce5aece4b51bb73fa8adcfd7848629de0fb78af5f6f +PYTHON_TYPES_PYTHON_DATEUTIL_SETUP_TYPE = setuptools +PYTHON_TYPES_PYTHON_DATEUTIL_LICENSE = Apache-2.0 + +$(eval $(python-package)) diff --git a/package/python-typing-extensions/python-typing-extensions.hash b/package/python-typing-extensions/python-typing-extensions.hash index 249bb63a42b2..fedb9e0446c6 100644 --- a/package/python-typing-extensions/python-typing-extensions.hash +++ b/package/python-typing-extensions/python-typing-extensions.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/typing_extensions/json -md5 5cfcb56ea6fc4972c3600c0030f4d136 typing_extensions-4.4.0.tar.gz -sha256 1511434bb92bf8dd198c12b1cc812e800d4181cfcb867674e0f8279cc93087aa typing_extensions-4.4.0.tar.gz +md5 06e7fff4b1d51f8dc6f49b16e71de54e typing_extensions-4.7.1.tar.gz +sha256 b75ddc264f0ba5615db7ba217daeb99701ad295353c45f9e95963337ceeeffb2 typing_extensions-4.7.1.tar.gz # Locally computed sha256 checksums -sha256 c7afb65e755707b9fb90487389a176d3ed3d0031d5131afde45c23715ff5e891 LICENSE +sha256 3b2f81fe21d181c499c59a256c8e1968455d6689d269aa85373bfb6af41da3bf LICENSE diff --git a/package/python-typing-extensions/python-typing-extensions.mk b/package/python-typing-extensions/python-typing-extensions.mk index fd7d0bd93af3..9d41b0a6a595 100644 --- a/package/python-typing-extensions/python-typing-extensions.mk +++ b/package/python-typing-extensions/python-typing-extensions.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_TYPING_EXTENSIONS_VERSION = 4.4.0 +PYTHON_TYPING_EXTENSIONS_VERSION = 4.7.1 PYTHON_TYPING_EXTENSIONS_SOURCE = typing_extensions-$(PYTHON_TYPING_EXTENSIONS_VERSION).tar.gz -PYTHON_TYPING_EXTENSIONS_SITE = https://files.pythonhosted.org/packages/e3/a7/8f4e456ef0adac43f452efc2d0e4b242ab831297f1bac60ac815d37eb9cf +PYTHON_TYPING_EXTENSIONS_SITE = https://files.pythonhosted.org/packages/3c/8b/0111dd7d6c1478bf83baa1cab85c686426c7a6274119aceb2bd9d35395ad PYTHON_TYPING_EXTENSIONS_SETUP_TYPE = flit PYTHON_TYPING_EXTENSIONS_LICENSE = Python-2.0 PYTHON_TYPING_EXTENSIONS_LICENSE_FILES = LICENSE diff --git a/package/python-urllib3/python-urllib3.hash b/package/python-urllib3/python-urllib3.hash index 963967332e35..209cfe277eaa 100644 --- a/package/python-urllib3/python-urllib3.hash +++ b/package/python-urllib3/python-urllib3.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/urllib3/json -md5 38f7d1589aa9720101316d07fcbd05c8 urllib3-1.26.13.tar.gz -sha256 c083dd0dce68dbfbe1129d5271cb90f9447dea7d52097c6e0126120c521ddea8 urllib3-1.26.13.tar.gz +md5 5a264ef3ae827e5842bbc80536a343dd urllib3-2.0.7.tar.gz +sha256 c97dfde1f7bd43a71c8d2a58e369e9b2bf692d1334ea9f9cae55add7d0dd0f84 urllib3-2.0.7.tar.gz # Locally computed sha256 checksums -sha256 c37bf186e27cf9dbe9619e55edfe3cea7b30091ceb3da63c7dacbe0e6d77907b LICENSE.txt +sha256 130e3a64d5fdd5d096a752694634a7d9df284469de86e5732100268041e3d686 LICENSE.txt diff --git a/package/python-urllib3/python-urllib3.mk b/package/python-urllib3/python-urllib3.mk index 5868927440b8..ba041082db36 100644 --- a/package/python-urllib3/python-urllib3.mk +++ b/package/python-urllib3/python-urllib3.mk @@ -4,14 +4,16 @@ # ################################################################################ -PYTHON_URLLIB3_VERSION = 1.26.13 +PYTHON_URLLIB3_VERSION = 2.0.7 PYTHON_URLLIB3_SOURCE = urllib3-$(PYTHON_URLLIB3_VERSION).tar.gz -PYTHON_URLLIB3_SITE = https://files.pythonhosted.org/packages/c2/51/32da03cf19d17d46cce5c731967bf58de9bd71db3a379932f53b094deda4 +PYTHON_URLLIB3_SITE = https://files.pythonhosted.org/packages/af/47/b215df9f71b4fdba1025fc05a77db2ad243fa0926755a52c5e71659f4e3c PYTHON_URLLIB3_LICENSE = MIT PYTHON_URLLIB3_LICENSE_FILES = LICENSE.txt PYTHON_URLLIB3_CPE_ID_VENDOR = python PYTHON_URLLIB3_CPE_ID_PRODUCT = urllib3 -PYTHON_URLLIB3_SETUP_TYPE = setuptools +PYTHON_URLLIB3_SETUP_TYPE = pep517 +PYTHON_URLLIB3_DEPENDENCIES = host-python-hatchling +HOST_PYTHON_URLLIB3_DEPENDENCIES = host-python-hatchling $(eval $(python-package)) $(eval $(host-python-package)) diff --git a/package/python-uvloop/Config.in b/package/python-uvloop/Config.in index b3fb275091aa..c9a05111cb3d 100644 --- a/package/python-uvloop/Config.in +++ b/package/python-uvloop/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_PYTHON_UVLOOP depends on BR2_USE_MMU # libuv depends on !BR2_STATIC_LIBS # libuv depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libuv select BR2_PACKAGE_LIBUV select BR2_PACKAGE_PYTHON3_SSL help @@ -11,7 +12,8 @@ config BR2_PACKAGE_PYTHON_UVLOOP http://github.com/MagicStack/uvloop -comment "python-uvloop needs a toolchain w/ NPTL, dynamic library" - depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS +comment "python-uvloop needs a toolchain w/ NPTL, dynamic library, gcc >= 4.9" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_USE_MMU diff --git a/package/python-uvloop/python-uvloop.hash b/package/python-uvloop/python-uvloop.hash index 69834d524315..481dbd0569fa 100644 --- a/package/python-uvloop/python-uvloop.hash +++ b/package/python-uvloop/python-uvloop.hash @@ -1,6 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/uvloop/json -md5 bc5e841a1c3f6e8935eeaf9d82b5ee29 uvloop-0.17.0.tar.gz -sha256 0ddf6baf9cf11a1a22c71487f39f15b2cf78eb5bde7e5b45fbb99e8a9d91b9e1 uvloop-0.17.0.tar.gz +md5 0107f6e04c23bdcd93a0a712a0e52ffb uvloop-0.19.0.tar.gz +sha256 0246f4fd1bf2bf702e06b0d45ee91677ee5c31242f39aab4ea6fe0c51aedd0fd uvloop-0.19.0.tar.gz # Locally computed sha256 checksums sha256 377025287798f9dcd819e1f826fa5fc5e2f382528691ab0528c5cf8c8c282c27 LICENSE-APACHE sha256 6dd4c399f26de043d77a2ad7e31db4cb5bf08ea8368b0a42d6e158635cc8ab62 LICENSE-MIT diff --git a/package/python-uvloop/python-uvloop.mk b/package/python-uvloop/python-uvloop.mk index 147062cf7b10..285884a2bb24 100644 --- a/package/python-uvloop/python-uvloop.mk +++ b/package/python-uvloop/python-uvloop.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_UVLOOP_VERSION = 0.17.0 +PYTHON_UVLOOP_VERSION = 0.19.0 PYTHON_UVLOOP_SOURCE = uvloop-$(PYTHON_UVLOOP_VERSION).tar.gz -PYTHON_UVLOOP_SITE = https://files.pythonhosted.org/packages/ba/86/6dda1760481abf244cbd3908b79a4520d757040ca9ec37a79fc0fd01e2a0 +PYTHON_UVLOOP_SITE = https://files.pythonhosted.org/packages/9c/16/728cc5dde368e6eddb299c5aec4d10eaf25335a5af04e8c0abd68e2e9d32 PYTHON_UVLOOP_SETUP_TYPE = setuptools PYTHON_UVLOOP_LICENSE = Apache-2.0, MIT PYTHON_UVLOOP_LICENSE_FILES = LICENSE-APACHE LICENSE-MIT diff --git a/package/python-versioneer/python-versioneer.hash b/package/python-versioneer/python-versioneer.hash new file mode 100644 index 000000000000..44cbeb159368 --- /dev/null +++ b/package/python-versioneer/python-versioneer.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/versioneer/json +md5 1703d6ced3656553066fa71e42c5eee6 versioneer-0.29.tar.gz +sha256 5ab283b9857211d61b53318b7c792cf68e798e765ee17c27ade9f6c924235731 versioneer-0.29.tar.gz +# Locally computed sha256 checksums +sha256 b5065838cbac452dfc855ba6e6e031481ad2c68406f70d21ead9321374653e6c LICENSE diff --git a/package/python-versioneer/python-versioneer.mk b/package/python-versioneer/python-versioneer.mk new file mode 100644 index 000000000000..5dbf0dd1c2a8 --- /dev/null +++ b/package/python-versioneer/python-versioneer.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-versioneer +# +################################################################################ + +PYTHON_VERSIONEER_VERSION = 0.29 +PYTHON_VERSIONEER_SOURCE = versioneer-$(PYTHON_VERSIONEER_VERSION).tar.gz +PYTHON_VERSIONEER_SITE = https://files.pythonhosted.org/packages/32/d7/854e45d2b03e1a8ee2aa6429dd396d002ce71e5d88b77551b2fb249cb382 +PYTHON_VERSIONEER_SETUP_TYPE = setuptools +PYTHON_VERSIONEER_LICENSE = Unlicense +PYTHON_VERSIONEER_LICENSE_FILES = LICENSE + +$(eval $(host-python-package)) diff --git a/package/python-weasyprint/python-weasyprint.hash b/package/python-weasyprint/python-weasyprint.hash index d6026cf034a3..c22677cad0a7 100644 --- a/package/python-weasyprint/python-weasyprint.hash +++ b/package/python-weasyprint/python-weasyprint.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/weasyprint/json -md5 497030cecafffca06bae2b161846b461 weasyprint-57.2.tar.gz -sha256 b8e9ef2dcbcfbc82e99215acfd68f947b2b5f1999b5b156db75fabe380ba7e9a weasyprint-57.2.tar.gz +md5 2cb135e7c5318bb1652205035f083922 weasyprint-59.0.tar.gz +sha256 223a76636b3744eaa4ab8a2885f50cf46cf8ebb1acb99b5276d02feccf507492 weasyprint-59.0.tar.gz # Locally computed sha256 checksums sha256 bfd14eccfa6100575460e685556b183399d4bd335904e3c9521b0116d21c54da LICENSE diff --git a/package/python-weasyprint/python-weasyprint.mk b/package/python-weasyprint/python-weasyprint.mk index 27b07226d9fb..a1e3d23b7514 100644 --- a/package/python-weasyprint/python-weasyprint.mk +++ b/package/python-weasyprint/python-weasyprint.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_WEASYPRINT_VERSION = 57.2 +PYTHON_WEASYPRINT_VERSION = 59.0 PYTHON_WEASYPRINT_SOURCE = weasyprint-$(PYTHON_WEASYPRINT_VERSION).tar.gz -PYTHON_WEASYPRINT_SITE = https://files.pythonhosted.org/packages/b1/88/335dd6cb71a9d58584c975bf1db0ab9a3a9f15f9bffef1cbfac0fb1ee72e +PYTHON_WEASYPRINT_SITE = https://files.pythonhosted.org/packages/1d/69/11343bbb46d4f2a311677058e19cc2f7bc55a769b64c547a64ea1e2b6045 PYTHON_WEASYPRINT_SETUP_TYPE = flit PYTHON_WEASYPRINT_LICENSE = BSD-3-Clause PYTHON_WEASYPRINT_LICENSE_FILES = LICENSE diff --git a/package/python-web2py/python-web2py.hash b/package/python-web2py/python-web2py.hash index a8534977688e..1b4d8f563208 100644 --- a/package/python-web2py/python-web2py.hash +++ b/package/python-web2py/python-web2py.hash @@ -1,3 +1,3 @@ # sha256 locally computed -sha256 356f88b671e2bcdd9c89df526ee063ee9d6f4f57b60182ec2684adddcc426e99 python-web2py-2.23.0.tar.gz +sha256 d5d79f6260ec9f53f90447ad59313a8fac0571fce0018aa5f6fcf95d28c04382 python-web2py-2.26.1.tar.gz sha256 2aae96826184a492bc799add49aed7b29036e7aba2d2294fb65053bd30fe55fe LICENSE diff --git a/package/python-web2py/python-web2py.mk b/package/python-web2py/python-web2py.mk index 4425b09d1233..fe7774fc2bd1 100644 --- a/package/python-web2py/python-web2py.mk +++ b/package/python-web2py/python-web2py.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_WEB2PY_VERSION = 2.23.0 +PYTHON_WEB2PY_VERSION = 2.26.1 PYTHON_WEB2PY_SITE = $(call github,web2py,web2py,v$(PYTHON_WEB2PY_VERSION)) PYTHON_WEB2PY_LICENSE = LGPL-3.0 PYTHON_WEB2PY_LICENSE_FILES = LICENSE diff --git a/package/python-werkzeug/python-werkzeug.hash b/package/python-werkzeug/python-werkzeug.hash index 0b60a4006690..07b6f2f40d9a 100644 --- a/package/python-werkzeug/python-werkzeug.hash +++ b/package/python-werkzeug/python-werkzeug.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/werkzeug/json -md5 28c3ec6a4b1ce8f06c85612c1dfa351a Werkzeug-2.2.3.tar.gz -sha256 2e1ccc9417d4da358b9de6f174e3ac094391ea1d4fbef2d667865d819dfd0afe Werkzeug-2.2.3.tar.gz +md5 de26f240d6f95689a8d15170c2d958b6 Werkzeug-2.3.6.tar.gz +sha256 98c774df2f91b05550078891dee5f0eb0cb797a522c757a2452b9cee5b202330 Werkzeug-2.2.3.tar.gz # Locally computed sha256 checksums sha256 3b49dcee4105eb37bac10faf1be260408fe85d252b8e9df2e0979fc1e094437b LICENSE.rst diff --git a/package/python-werkzeug/python-werkzeug.mk b/package/python-werkzeug/python-werkzeug.mk index 0dd27d145fea..3b7c6634375a 100644 --- a/package/python-werkzeug/python-werkzeug.mk +++ b/package/python-werkzeug/python-werkzeug.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_WERKZEUG_VERSION = 2.2.3 +PYTHON_WERKZEUG_VERSION = 2.3.6 PYTHON_WERKZEUG_SOURCE = Werkzeug-$(PYTHON_WERKZEUG_VERSION).tar.gz -PYTHON_WERKZEUG_SITE = https://files.pythonhosted.org/packages/02/3c/baaebf3235c87d61d6593467056d5a8fba7c75ac838b8d100a5e64eba7a0 +PYTHON_WERKZEUG_SITE = https://files.pythonhosted.org/packages/d1/7e/c35cea5749237d40effc50ed1a1c7518d9f2e768fcf30b4e9ea119e74975 PYTHON_WERKZEUG_SETUP_TYPE = setuptools PYTHON_WERKZEUG_LICENSE = BSD-3-Clause PYTHON_WERKZEUG_LICENSE_FILES = LICENSE.rst diff --git a/package/python-wheel/python-wheel.hash b/package/python-wheel/python-wheel.hash new file mode 100644 index 000000000000..377a85c8fd5f --- /dev/null +++ b/package/python-wheel/python-wheel.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/wheel/json +md5 ec5004c46d1905da98bb5bc1a10ddd21 wheel-0.40.0.tar.gz +sha256 cd1196f3faee2b31968d626e1731c94f99cbdb67cf5a46e4f5656cbee7738873 wheel-0.40.0.tar.gz +# Locally computed sha256 checksums +sha256 30c23618679108f3e8ea1d2a658c7ca417bdfc891c98ef1a89fa4ff0c9828654 LICENSE.txt diff --git a/package/python-wheel/python-wheel.mk b/package/python-wheel/python-wheel.mk new file mode 100644 index 000000000000..159598fd1e23 --- /dev/null +++ b/package/python-wheel/python-wheel.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-wheel +# +################################################################################ + +PYTHON_WHEEL_VERSION = 0.40.0 +PYTHON_WHEEL_SOURCE = wheel-$(PYTHON_WHEEL_VERSION).tar.gz +PYTHON_WHEEL_SITE = https://files.pythonhosted.org/packages/fc/ef/0335f7217dd1e8096a9e8383e1d472aa14717878ffe07c4772e68b6e8735 +PYTHON_WHEEL_SETUP_TYPE = flit +PYTHON_WHEEL_LICENSE = MIT +PYTHON_WHEEL_LICENSE_FILES = LICENSE.txt + +$(eval $(host-python-package)) diff --git a/package/python-wsaccel/python-wsaccel.hash b/package/python-wsaccel/python-wsaccel.hash index b388c3cc7cbb..9991f8f4544f 100644 --- a/package/python-wsaccel/python-wsaccel.hash +++ b/package/python-wsaccel/python-wsaccel.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/wsaccel/json -md5 73bdc70035813ded14f9a4b81e82622a wsaccel-0.6.4.tar.gz -sha256 cbf66a88bcaf6c6ad16d50ea29215891526b6e993c4bc7ed44b044ee6fe3ad3d wsaccel-0.6.4.tar.gz +md5 b05eecfac9cb19326bfc3b538de495ac wsaccel-0.6.6.tar.gz +sha256 18efec0a7182587ba97102b4cd8df7b4f665f45d7ca36f19783f5f081ea114ea wsaccel-0.6.6.tar.gz # Locally computed sha256 checksums sha256 b6982974cb838b985b54b663d1780d280735086249c2e28015f25dd455df25da LICENSE diff --git a/package/python-wsaccel/python-wsaccel.mk b/package/python-wsaccel/python-wsaccel.mk index ce41d431ffb5..1f63aa5c403d 100644 --- a/package/python-wsaccel/python-wsaccel.mk +++ b/package/python-wsaccel/python-wsaccel.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_WSACCEL_VERSION = 0.6.4 +PYTHON_WSACCEL_VERSION = 0.6.6 PYTHON_WSACCEL_SOURCE = wsaccel-$(PYTHON_WSACCEL_VERSION).tar.gz -PYTHON_WSACCEL_SITE = https://files.pythonhosted.org/packages/77/0b/a44df15382a76b6768184630d483b8363d65b9f70d1aacf76153d496bbb9 +PYTHON_WSACCEL_SITE = https://files.pythonhosted.org/packages/94/28/41c0e711b538f6031a247ab4ec5352267f12ed416e3a638b8d55fc33f609 PYTHON_WSACCEL_LICENSE = Apache-2.0 PYTHON_WSACCEL_LICENSE_FILES = LICENSE PYTHON_WSACCEL_SETUP_TYPE = setuptools diff --git a/package/python-xmodem/python-xmodem.hash b/package/python-xmodem/python-xmodem.hash index 33ddfeb59584..65a9b6afdaa7 100644 --- a/package/python-xmodem/python-xmodem.hash +++ b/package/python-xmodem/python-xmodem.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/xmodem/json -md5 f876cb35caf276b61990377710a3b4c4 xmodem-0.4.6.tar.gz -sha256 089737298f5738eabc43f2519efdc80b402693768f16383f7013b9e6f8f279d7 xmodem-0.4.6.tar.gz -# locally calculated -sha256 5ddb38acab95bb77e1e92e22830e358082d879d2dd59ba05577c47791edaa78e PKG-INFO +md5 0a21c269cb4d3995d13a2615c24fed0a xmodem-0.4.7.tar.gz +sha256 2f1068aa8676f0d1d112498b5786c4f8ea4f89d8f25d07d3a0f293cd21db1c35 xmodem-0.4.7.tar.gz +# Locally computed sha256 checksums +sha256 e317b0ce19724327a41e09def456579b80a7b82f9bceb2ba6933eba406f78d88 LICENSE diff --git a/package/python-xmodem/python-xmodem.mk b/package/python-xmodem/python-xmodem.mk index 739c6154d7bd..d7040f724517 100644 --- a/package/python-xmodem/python-xmodem.mk +++ b/package/python-xmodem/python-xmodem.mk @@ -4,11 +4,11 @@ # ################################################################################ -PYTHON_XMODEM_VERSION = 0.4.6 +PYTHON_XMODEM_VERSION = 0.4.7 PYTHON_XMODEM_SOURCE = xmodem-$(PYTHON_XMODEM_VERSION).tar.gz -PYTHON_XMODEM_SITE = https://files.pythonhosted.org/packages/29/5d/a20d7957f207fc4c4c143881ca7b9617ab7700c153012372ef0a934c7710 +PYTHON_XMODEM_SITE = https://files.pythonhosted.org/packages/3d/17/fd6668a09afdc46c22990172b6f65e07dfb5bcf38960d063a7a887ca926d PYTHON_XMODEM_SETUP_TYPE = setuptools PYTHON_XMODEM_LICENSE = MIT -PYTHON_XMODEM_LICENSE_FILES = PKG-INFO +PYTHON_XMODEM_LICENSE_FILES = LICENSE $(eval $(python-package)) diff --git a/package/python-yarl/python-yarl.hash b/package/python-yarl/python-yarl.hash index 9725e0058bda..624297aeba1e 100644 --- a/package/python-yarl/python-yarl.hash +++ b/package/python-yarl/python-yarl.hash @@ -1,5 +1,5 @@ # md5, sha256 from https://pypi.org/pypi/yarl/json -md5 57c82725b9f4895eecee45faf5e61a54 yarl-1.8.2.tar.gz -sha256 49d43402c6e3013ad0978602bf6bf5328535c48d192304b91b97a3c6790b1562 yarl-1.8.2.tar.gz +md5 4e46a0c7078d34d9734a7c5d182dee92 yarl-1.9.2.tar.gz +sha256 04ab9d4b9f587c06d801c2abfe9317b77cdf996c65a90d5e84ecc45010823571 yarl-1.9.2.tar.gz # Locally computed sha256 checksums -sha256 56d6ac6c8105c0a51304c21db060e361af9a8ea0af9a75c239c28b5d13693838 LICENSE +sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE diff --git a/package/python-yarl/python-yarl.mk b/package/python-yarl/python-yarl.mk index 77e0c91383be..e4424ff5773c 100644 --- a/package/python-yarl/python-yarl.mk +++ b/package/python-yarl/python-yarl.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_YARL_VERSION = 1.8.2 +PYTHON_YARL_VERSION = 1.9.2 PYTHON_YARL_SOURCE = yarl-$(PYTHON_YARL_VERSION).tar.gz -PYTHON_YARL_SITE = https://files.pythonhosted.org/packages/c4/1e/1b204050c601d5cd82b45d5c8f439cb6f744a2ce0c0a6f83be0ddf0dc7b2 +PYTHON_YARL_SITE = https://files.pythonhosted.org/packages/5f/3f/04b3c5e57844fb9c034b09c5cb6d2b43de5d64a093c30529fd233e16cf09 PYTHON_YARL_LICENSE = Apache-2.0 PYTHON_YARL_LICENSE_FILES = LICENSE PYTHON_YARL_SETUP_TYPE = setuptools diff --git a/package/python-zlmdb/Config.in b/package/python-zlmdb/Config.in index 8eba2d794608..007ca7272350 100644 --- a/package/python-zlmdb/Config.in +++ b/package/python-zlmdb/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_PYTHON_ZLMDB depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS # python-numpy depends on BR2_INSTALL_LIBSTDCPP # python-numpy depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL # python-numpy + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_9 # python-numpy select BR2_PACKAGE_PYTHON_CBOR2 # runtime select BR2_PACKAGE_PYTHON_CFFI # runtime select BR2_PACKAGE_PYTHON_CLICK # runtime @@ -18,7 +19,8 @@ config BR2_PACKAGE_PYTHON_ZLMDB https://github.com/crossbario/zlmdb -comment "python-zlmdb needs a glibc or musl toolchain w/ C++" +comment "python-zlmdb needs a glibc or musl toolchain w/ C++, gcc >= 9" depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS depends on !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_9 || \ !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) diff --git a/package/python3/0012-Add-an-option-to-disable-lib2to3.patch b/package/python3/0012-Add-an-option-to-disable-lib2to3.patch index 0085d5a63f36..228b86a90baf 100644 --- a/package/python3/0012-Add-an-option-to-disable-lib2to3.patch +++ b/package/python3/0012-Add-an-option-to-disable-lib2to3.patch @@ -12,6 +12,8 @@ Signed-off-by: Samuel Martin Signed-off-by: Andrey Smirnov [ Adam Duskett: ported to Python 3.10.0 ] Signed-off-by: Adam Duskett +[ Bernd Kuhls: ported to Python 3.11.4] +Signed-off-by: Bernd Kuhls --- Makefile.pre.in | 17 ++++++++++++----- configure.ac | 6 ++++++ @@ -48,9 +50,9 @@ index 403380e181..f5d0573067 100644 - lib2to3/tests/data \ - lib2to3/tests/data/fixers \ - lib2to3/tests/data/fixers/myfixes \ - test test/audiodata \ - test/capath test/cjkencodings \ - test/data test/decimaltestdata \ + test \ + test/audiodata \ + test/capath \ @@ -2013,6 +2010,14 @@ ifeq (@PYDOC@,yes) LIBSUBDIRS += pydoc_data endif diff --git a/package/python3/0014-Add-an-option-to-disable-the-tk-module.patch b/package/python3/0014-Add-an-option-to-disable-the-tk-module.patch index 04f7e34435a7..b89e1d27bce8 100644 --- a/package/python3/0014-Add-an-option-to-disable-the-tk-module.patch +++ b/package/python3/0014-Add-an-option-to-disable-the-tk-module.patch @@ -9,6 +9,8 @@ Signed-off-by: Samuel Martin Signed-off-by: Andrey Smirnov [ Adam Duskett: ported to Python 3.10.0 ] Signed-off-by: Adam Duskett +[ Bernd Kuhls: ported to Python 3.11.4] +Signed-off-by: Bernd Kuhls --- Makefile.pre.in | 10 +++++++--- configure.ac | 9 +++++++++ @@ -26,14 +28,15 @@ index 9f4cdf14cf..4f83911200 100644 tomllib \ turtledemo \ unittest \ -@@ -2001,8 +2000,6 @@ TESTSUBDIRS= ctypes/test \ - test/tracedmodules \ - test/xmltestdata test/xmltestdata/c14n-20 \ +@@ -2038,9 +2038,6 @@ + test/xmltestdata \ + test/xmltestdata/c14n-20 \ test/ziptestdata \ -- tkinter/test tkinter/test/test_tkinter \ +- tkinter/test \ +- tkinter/test/test_tkinter \ - tkinter/test/test_ttk \ - unittest/test unittest/test/testmock - + unittest/test \ + unittest/test/testmock ifeq (@PYDOC@,yes) @@ -2021,6 +2018,13 @@ ifeq (@SQLITE3@,yes) LIBSUBDIRS += sqlite3 diff --git a/package/python3/Config.in b/package/python3/Config.in index 761c38c850a3..38f0580aa4e2 100644 --- a/package/python3/Config.in +++ b/package/python3/Config.in @@ -48,6 +48,7 @@ config BR2_PACKAGE_PYTHON3_2TO3 config BR2_PACKAGE_PYTHON3_BERKELEYDB bool "berkeleydb" select BR2_PACKAGE_BERKELEYDB + select BR2_PACKAGE_BERKELEYDB_DBM help berkeleydb module for Python3 diff --git a/package/python3/python3.hash b/package/python3/python3.hash index f235347efb5d..39a16c1f7113 100644 --- a/package/python3/python3.hash +++ b/package/python3/python3.hash @@ -1,3 +1,5 @@ +# From https://www.python.org/downloads/release/python-3116/ +md5 d0c5a1a31efe879723e51addf56dd206 Python-3.11.6.tar.xz # Locally computed -sha256 29e4b8f5f1658542a8c13e2dd277358c9c48f2b2f7318652ef1675e402b9d2af Python-3.11.2.tar.xz +sha256 0fab78fa7f133f4f38210c6260d90d7c0d5c7198446419ce057ec7ac2e6f5f38 Python-3.11.6.tar.xz sha256 3b2f81fe21d181c499c59a256c8e1968455d6689d269aa85373bfb6af41da3bf LICENSE diff --git a/package/python3/python3.mk b/package/python3/python3.mk index 56fe95cd071d..b9c5054a2174 100644 --- a/package/python3/python3.mk +++ b/package/python3/python3.mk @@ -5,7 +5,7 @@ ################################################################################ PYTHON3_VERSION_MAJOR = 3.11 -PYTHON3_VERSION = $(PYTHON3_VERSION_MAJOR).2 +PYTHON3_VERSION = $(PYTHON3_VERSION_MAJOR).6 PYTHON3_SOURCE = Python-$(PYTHON3_VERSION).tar.xz PYTHON3_SITE = https://python.org/ftp/python/$(PYTHON3_VERSION) PYTHON3_LICENSE = Python-2.0, others @@ -13,9 +13,6 @@ PYTHON3_LICENSE_FILES = LICENSE PYTHON3_CPE_ID_VENDOR = python PYTHON3_CPE_ID_PRODUCT = python -# 0033-3.11-gh-98433-Fix-quadratic-time-idna-decoding.-GH-9.patch -PYTHON3_IGNORE_CVES += CVE-2022-45061 - # This host Python is installed in $(HOST_DIR), as it is needed when # cross-compiling third-party Python modules. diff --git a/package/qemu/0001-tests-fp-disable-fp-bench-build-by-default.patch b/package/qemu/0001-tests-fp-disable-fp-bench-build-by-default.patch index 60518bcfa321..fb7a9a69897b 100644 --- a/package/qemu/0001-tests-fp-disable-fp-bench-build-by-default.patch +++ b/package/qemu/0001-tests-fp-disable-fp-bench-build-by-default.patch @@ -15,7 +15,7 @@ diff --git a/tests/fp/meson.build b/tests/fp/meson.build index 8bd0979f67..2fe019d2c6 100644 --- a/tests/fp/meson.build +++ b/tests/fp/meson.build -@@ -636,6 +636,7 @@ fpbench = executable( +@@ -640,6 +640,7 @@ fpbench = executable( dependencies: [qemuutil], include_directories: [sfinc, include_directories(tfdir)], c_args: fpcflags, diff --git a/package/qemu/0003-target-sh4-Mask-restore-of-env-flags-from-tb-flags.patch b/package/qemu/0003-target-sh4-Mask-restore-of-env-flags-from-tb-flags.patch deleted file mode 100644 index 8dc2dd8823d6..000000000000 --- a/package/qemu/0003-target-sh4-Mask-restore-of-env-flags-from-tb-flags.patch +++ /dev/null @@ -1,36 +0,0 @@ -From bc2331635ce18ff068d2bb1e493bc546e1f786e1 Mon Sep 17 00:00:00 2001 -From: Guenter Roeck -Date: Mon, 12 Dec 2022 09:03:17 -0600 -Subject: [PATCH] target/sh4: Mask restore of env->flags from tb->flags - -The values in env->flags are a subset of tb->flags. -Restore only the bits that belong. - -Cc: qemu-stable@nongnu.org -Fixes: ab419fd8a035 ("target/sh4: Fix TB_FLAG_UNALIGN") -Signed-off-by: Guenter Roeck -Message-ID: <20221212011345.GA2235238@roeck-us.net> -[rth: Reduce to only the the superh_cpu_synchronize_from_tb change] -Signed-off-by: Richard Henderson -[yann.morin.1998@free.fr: backport from upstream] -Signed-off-by: Yann E. MORIN ---- - target/sh4/cpu.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/target/sh4/cpu.c b/target/sh4/cpu.c -index 951eb6b9c8..f0934b20fa 100644 ---- a/target/sh4/cpu.c -+++ b/target/sh4/cpu.c -@@ -47,7 +47,7 @@ static void superh_cpu_synchronize_from_tb(CPUState *cs, - SuperHCPU *cpu = SUPERH_CPU(cs); - - cpu->env.pc = tb_pc(tb); -- cpu->env.flags = tb->flags; -+ cpu->env.flags = tb->flags & TB_FLAG_ENVFLAGS_MASK; - } - - static void superh_restore_state_to_opc(CPUState *cs, --- -2.25.1 - diff --git a/package/qemu/0004-tracing-install-trace-events-file-only-if-necessary.patch b/package/qemu/0004-tracing-install-trace-events-file-only-if-necessary.patch new file mode 100644 index 000000000000..36bdaa4978ad --- /dev/null +++ b/package/qemu/0004-tracing-install-trace-events-file-only-if-necessary.patch @@ -0,0 +1,30 @@ +From 5c43da1e4983cc3c209b325a5228b6149e0a0ccf Mon Sep 17 00:00:00 2001 +From: Carlos Santos +Date: Fri, 24 Mar 2023 21:40:22 -0300 +Subject: [PATCH] tracing: install trace events file only if necessary + +It is not useful when configuring with --enable-trace-backends=nop. + +Upstream: https://patchwork.kernel.org/project/qemu-devel/patch/20230408010410.281263-1-casantos@redhat.com/ +Signed-off-by: Carlos Santos +Signed-off-by: Carlos Santos +--- + trace/meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/trace/meson.build b/trace/meson.build +index 8e80be895c..30b1d942eb 100644 +--- a/trace/meson.build ++++ b/trace/meson.build +@@ -64,7 +64,7 @@ trace_events_all = custom_target('trace-events-all', + input: trace_events_files, + command: [ 'cat', '@INPUT@' ], + capture: true, +- install: true, ++ install: get_option('trace_backends') != [ 'nop' ], + install_dir: qemu_datadir) + + if 'ust' in get_option('trace_backends') +-- +2.31.1 + diff --git a/package/qemu/Config.in b/package/qemu/Config.in index 154b98a54158..8d53ced300f7 100644 --- a/package/qemu/Config.in +++ b/package/qemu/Config.in @@ -26,7 +26,6 @@ menuconfig BR2_PACKAGE_QEMU depends on BR2_USE_MMU # fork() select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_ZLIB - select BR2_PACKAGE_QEMU_TOOLS if !BR2_PACKAGE_QEMU_SYSTEM && !BR2_PACKAGE_QEMU_LINUX_USER help QEMU is a generic and open source machine emulator and virtualizer. @@ -43,7 +42,7 @@ menuconfig BR2_PACKAGE_QEMU Linux. When using KVM, QEMU can virtualize x86, server and embedded PowerPC, and S390 guests. - http://qemu.org/ + https://www.qemu.org/ if BR2_PACKAGE_QEMU @@ -53,11 +52,23 @@ config BR2_PACKAGE_QEMU_SYSTEM bool "Enable systems emulation" depends on !BR2_STATIC_LIBS # dtc select BR2_PACKAGE_PIXMAN + select BR2_PACKAGE_QEMU_FDT if !BR2_PACKAGE_QEMU_CHOOSE_TARGETS help Say 'y' to build system emulators/virtualisers. if BR2_PACKAGE_QEMU_SYSTEM +config BR2_PACKAGE_QEMU_BLOBS + bool "Install binary blobs" + default y + help + Say 'y' here (the default) to install binary blobs (such as + BIOS or firmwares for the different machines simulated by + QEMU). Say 'n' to not install those blobs. + + Note: Some machines may be unbootable without those blobs. + If unsure, say 'y'. + config BR2_PACKAGE_QEMU_SLIRP bool "Enable user mode networking (SLIRP)" select BR2_PACKAGE_SLIRP @@ -95,6 +106,15 @@ config BR2_PACKAGE_QEMU_FDT Say 'y' here to have QEMU capable of constructing Device Trees, and passing them to the VMs. +config BR2_PACKAGE_QEMU_TRACING + bool "Enable tracing" + help + Say 'y' to enable the "log" tracing infrastructure in QEMU, + used for debugging, profiling, and observing execution. For + detailed documentation, see + + https://www.qemu.org/docs/master/devel/tracing.html + endif # BR2_PACKAGE_QEMU_SYSTEM comment "systems emulation needs a toolchain w/ dynamic library" @@ -347,4 +367,11 @@ config BR2_PACKAGE_QEMU_TOOLS Say 'y' here to include tools packaged with QEMU (e.g. qemu-img). +config BR2_PACKAGE_QEMU_GUEST_AGENT + bool "Enable guest agent" + help + Say 'y' here to include an agent to run on guests, which + communicates with the host over a virtio-serial channel + named "org.qemu.guest_agent.0". + endif # BR2_PACKAGE_QEMU diff --git a/package/qemu/qemu.hash b/package/qemu/qemu.hash index e671e1d184de..61e51a923f12 100644 --- a/package/qemu/qemu.hash +++ b/package/qemu/qemu.hash @@ -1,4 +1,4 @@ # Locally computed, tarball verified with GPG signature -sha256 5b49ce2687744dad494ae90a898c52204a3406e84d072482a1e1be854eeb2157 qemu-7.2.0.tar.xz +sha256 37ce2ef5e500fb752f681117c68b45118303ea49a7e26bd54080ced54fab7def qemu-8.1.1.tar.xz sha256 6f04ae8364d0079a192b14635f4b1da294ce18724c034c39a6a41d1b09df6100 COPYING sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk index cc8dc42a243e..ef406dc8e9b5 100644 --- a/package/qemu/qemu.mk +++ b/package/qemu/qemu.mk @@ -6,9 +6,10 @@ # When updating the version, check whether the list of supported targets # needs to be updated. -QEMU_VERSION = 7.2.0 +QEMU_VERSION = 8.1.1 QEMU_SOURCE = qemu-$(QEMU_VERSION).tar.xz -QEMU_SITE = http://download.qemu.org +QEMU_SITE = https://download.qemu.org +QEMU_SELINUX_MODULES = qemu virt QEMU_LICENSE = GPL-2.0, LGPL-2.1, MIT, BSD-3-Clause, BSD-2-Clause, Others/BSD-1c QEMU_LICENSE_FILES = COPYING COPYING.LIB # NOTE: there is no top-level license file for non-(L)GPL licenses; @@ -16,6 +17,12 @@ QEMU_LICENSE_FILES = COPYING COPYING.LIB # individual source files. QEMU_CPE_ID_VENDOR = qemu +# Need to ignore the following CVEs because the CPE database does +# not have an entry for the 8.1.1 version yet. +QEMU_IGNORE_CVES += CVE-2023-4135 +QEMU_IGNORE_CVES += CVE-2023-3354 +QEMU_IGNORE_CVES += CVE-2023-3180 + #------------------------------------------------------------- # The build system is now partly based on Meson. @@ -26,6 +33,7 @@ QEMU_DEPENDENCIES = \ host-meson \ host-pkgconf \ host-python3 \ + host-python-distlib \ libglib2 \ zlib @@ -159,12 +167,24 @@ else QEMU_OPTS += --disable-fdt endif +ifeq ($(BR2_PACKAGE_QEMU_TRACING),y) +QEMU_OPTS += --enable-trace-backends=log +else +QEMU_OPTS += --enable-trace-backends=nop +endif + ifeq ($(BR2_PACKAGE_QEMU_TOOLS),y) QEMU_OPTS += --enable-tools else QEMU_OPTS += --disable-tools endif +ifeq ($(BR2_PACKAGE_QEMU_GUEST_AGENT),y) +QEMU_OPTS += --enable-guest-agent +else +QEMU_OPTS += --disable-guest-agent +endif + ifeq ($(BR2_PACKAGE_LIBFUSE3),y) QEMU_OPTS += --enable-fuse --enable-fuse-lseek QEMU_DEPENDENCIES += libfuse3 @@ -228,6 +248,13 @@ else QEMU_OPTS += --disable-numa endif +ifeq ($(BR2_PACKAGE_PIPEWIRE),y) +QEMU_OPTS += --enable-pipewire +QEMU_DEPENDENCIES += pipewire +else +QEMU_OPTS += --disable-pipewire +endif + ifeq ($(BR2_PACKAGE_SPICE),y) QEMU_OPTS += --enable-spice QEMU_DEPENDENCIES += spice @@ -246,6 +273,12 @@ ifeq ($(BR2_STATIC_LIBS),y) QEMU_OPTS += --static endif +ifeq ($(BR2_PACKAGE_QEMU_BLOBS),y) +QEMU_OPTS += --enable-install-blobs +else +QEMU_OPTS += --disable-install-blobs +endif + # Override CPP, as it expects to be able to call it like it'd # call the compiler. define QEMU_CONFIGURE_CMDS @@ -260,7 +293,7 @@ define QEMU_CONFIGURE_CMDS --prefix=/usr \ --cross-prefix=$(TARGET_CROSS) \ --audio-drv-list= \ - --meson=$(HOST_DIR)/bin/meson \ + --python=$(HOST_DIR)/bin/python3 \ --ninja=$(HOST_DIR)/bin/ninja \ --disable-alsa \ --disable-bpf \ @@ -296,13 +329,13 @@ define QEMU_CONFIGURE_CMDS --disable-vhost-crypto \ --disable-vhost-user-blk-server \ --disable-virtfs \ - --disable-virtiofsd \ --disable-whpx \ --disable-xen \ --enable-attr \ --enable-kvm \ --enable-vhost-net \ - --with-git-submodules=ignore \ + --disable-download \ + --disable-hexagon-idef-parser \ $(QEMU_OPTS) endef @@ -327,6 +360,7 @@ HOST_QEMU_DEPENDENCIES = \ host-pixman \ host-pkgconf \ host-python3 \ + host-python-distlib \ host-slirp \ host-zlib @@ -446,7 +480,7 @@ define HOST_QEMU_CONFIGURE_CMDS --host-cc="$(HOSTCC)" \ --extra-cflags="$(HOST_QEMU_CFLAGS)" \ --extra-ldflags="$(HOST_LDFLAGS)" \ - --meson=$(HOST_DIR)/bin/meson \ + --python=$(HOST_DIR)/bin/python3 \ --ninja=$(HOST_DIR)/bin/ninja \ --disable-alsa \ --disable-bpf \ @@ -464,16 +498,17 @@ define HOST_QEMU_CONFIGURE_CMDS --disable-netmap \ --disable-oss \ --disable-pa \ + --disable-pipewire \ --disable-sdl \ --disable-selinux \ --disable-vde \ --disable-vhost-user-blk-server \ - --disable-virtiofsd \ --disable-vnc-jpeg \ --disable-png \ --disable-vnc-sasl \ --enable-slirp \ --enable-tools \ + --disable-guest-agent \ $(HOST_QEMU_OPTS) endef diff --git a/package/qoriq-fm-ucode/Config.in b/package/qoriq-fm-ucode/Config.in new file mode 100644 index 000000000000..b9855f452609 --- /dev/null +++ b/package/qoriq-fm-ucode/Config.in @@ -0,0 +1,22 @@ +config BR2_PACKAGE_QORIQ_FM_UCODE + bool "qoriq-fm-ucode" + help + These are the microcode families of the Frame Manager + hardware block in QorIQ products. Specific platforms require + specific binaries, and those also have to further match + specific software versions (Frame Manager Driver -- FMD). + + https://github.com/nxp-qoriq/qoriq-fm-ucode + +if BR2_PACKAGE_QORIQ_FM_UCODE + +config BR2_PACKAGE_QORIQ_FM_UCODE_PLATFORM + string "platform" + default "ls1046" + help + This option specifies which platform's microcode to use. + + This string should match a file in qoriq-fm-ucode of the form + "fsl_fman_ucode_${PLATFORM}*.bin". + +endif diff --git a/package/qoriq-fm-ucode/qoriq-fm-ucode.hash b/package/qoriq-fm-ucode/qoriq-fm-ucode.hash new file mode 100644 index 000000000000..5c664356c034 --- /dev/null +++ b/package/qoriq-fm-ucode/qoriq-fm-ucode.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 2e431dd726c4aa1db558931d80b318149abdf71fec6e39de9d5aa33399df1fb1 qoriq-fm-ucode-LSDK-21.08.tar.gz +sha256 7a223031d76339df0e4e5a94d193a270fb9963d42b577aa42fe130a4657f3e17 NXP-Binary-EULA.txt diff --git a/package/qoriq-fm-ucode/qoriq-fm-ucode.mk b/package/qoriq-fm-ucode/qoriq-fm-ucode.mk new file mode 100644 index 000000000000..5dfdf1e8f8f7 --- /dev/null +++ b/package/qoriq-fm-ucode/qoriq-fm-ucode.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# qoriq-fm-ucode +# +################################################################################ + +QORIQ_FM_UCODE_VERSION = LSDK-21.08 +QORIQ_FM_UCODE_SITE = $(call github,nxp-qoriq,qoriq-fm-ucode,$(QORIQ_FM_UCODE_VERSION)) +QORIQ_FM_UCODE_LICENSE = NXP Binary EULA +QORIQ_FM_UCODE_LICENSE_FILES = NXP-Binary-EULA.txt +QORIQ_FM_UCODE_INSTALL_IMAGES = YES +QORIQ_FM_UCODE_INSTALL_TARGET = NO + +QORIQ_FM_UCODE_PLATFORM = $(call qstrip,$(BR2_PACKAGE_QORIQ_FM_UCODE_PLATFORM)) + +define QORIQ_FM_UCODE_INSTALL_IMAGES_CMDS + cp $(@D)/fsl_fman_ucode_$(QORIQ_FM_UCODE_PLATFORM)*.bin \ + $(BINARIES_DIR) +endef + +$(eval $(generic-package)) diff --git a/package/qt5/qt5.mk b/package/qt5/qt5.mk index 0706c3548dc2..b55accacf1d8 100644 --- a/package/qt5/qt5.mk +++ b/package/qt5/qt5.mk @@ -5,7 +5,7 @@ ################################################################################ QT5_VERSION_MAJOR = 5.15 -QT5_VERSION = $(QT5_VERSION_MAJOR).8 +QT5_VERSION = $(QT5_VERSION_MAJOR).10 QT5_SITE = https://invent.kde.org/qt/qt include $(sort $(wildcard package/qt5/*/*.mk)) diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in index b876f1948ed2..0c7ed41c46a4 100644 --- a/package/qt5/qt5base/Config.in +++ b/package/qt5/qt5base/Config.in @@ -180,6 +180,16 @@ config BR2_PACKAGE_QT5BASE_OPENGL_LIB endif +config BR2_PACKAGE_QT5BASE_VULKAN + bool "Vulkan support" + depends on BR2_INSTALL_LIBSTDCPP # vulkan-loader + depends on !BR2_STATIC_LIBS # vulkan-loader + depends on BR2_TOOLCHAIN_HAS_THREADS # vulkan-loader + select BR2_PACKAGE_VULKAN_HEADERS + select BR2_PACKAGE_VULKAN_LOADER + help + This option enables Vulkan support. + config BR2_PACKAGE_QT5BASE_LINUXFB bool "linuxfb support" diff --git a/package/qt5/qt5base/qt5base.hash b/package/qt5/qt5base/qt5base.hash index 27d2b99c34c4..4efc8fa172de 100644 --- a/package/qt5/qt5base/qt5base.hash +++ b/package/qt5/qt5base/qt5base.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 ecff8cf42af98c2294f7c99eb8c41564892f470382adaf8f4048c85252849808 qtbase-2ffb7ad8a1079a0444b9c72affe3d19b089b60de.tar.bz2 +sha256 5622a9053154af9a353b8e8be217104c6af068b5b5aba8b07ef4fea2dc79fded qtbase-e44097b63d17ba3178a637df7fac51ddc51cb48b.tar.bz2 # Hashes for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL2 diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk index efa0e16e9a2e..cc29f5523f96 100644 --- a/package/qt5/qt5base/qt5base.mk +++ b/package/qt5/qt5base/qt5base.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5BASE_VERSION = 2ffb7ad8a1079a0444b9c72affe3d19b089b60de +QT5BASE_VERSION = e44097b63d17ba3178a637df7fac51ddc51cb48b QT5BASE_SITE = $(QT5_SITE)/qtbase/-/archive/$(QT5BASE_VERSION) QT5BASE_SOURCE = qtbase-$(QT5BASE_VERSION).tar.bz2 @@ -206,6 +206,13 @@ else QT5BASE_CONFIGURE_OPTS += -no-opengl endif +ifeq ($(BR2_PACKAGE_QT5BASE_VULKAN),y) +QT5BASE_CONFIGURE_OPTS += -feature-vulkan +QT5BASE_DEPENDENCIES += vulkan-headers vulkan-loader +else +QT5BASE_CONFIGURE_OPTS += -no-feature-vulkan +endif + QT5BASE_DEFAULT_QPA = $(call qstrip,$(BR2_PACKAGE_QT5BASE_DEFAULT_QPA)) QT5BASE_CONFIGURE_OPTS += $(if $(QT5BASE_DEFAULT_QPA),-qpa $(QT5BASE_DEFAULT_QPA)) diff --git a/package/qt5/qt5charts/qt5charts.hash b/package/qt5/qt5charts/qt5charts.hash index ba22e29996c5..0688f6461559 100644 --- a/package/qt5/qt5charts/qt5charts.hash +++ b/package/qt5/qt5charts/qt5charts.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 32119f7ac88c250b24835b91a71510bf673f1cede6e572fd1059debf8325d7ff qtcharts-16c2a8821135bf89369c4e3c5a1bdff8b05ffdb5.tar.bz2 +sha256 9d2ad94a054bd7df08e5d11bc77b6422ccecbf99ea8dd6f06908bafc72ea869d qtcharts-841083c263f16f8acb81e4915bf24bbed0461c9a.tar.bz2 # Hashes for license files: sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE.GPL3 diff --git a/package/qt5/qt5charts/qt5charts.mk b/package/qt5/qt5charts/qt5charts.mk index 0028c9f8cb68..fa69263be432 100644 --- a/package/qt5/qt5charts/qt5charts.mk +++ b/package/qt5/qt5charts/qt5charts.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5CHARTS_VERSION = 16c2a8821135bf89369c4e3c5a1bdff8b05ffdb5 +QT5CHARTS_VERSION = 841083c263f16f8acb81e4915bf24bbed0461c9a QT5CHARTS_SITE = $(QT5_SITE)/qtcharts/-/archive/$(QT5CHARTS_VERSION) QT5CHARTS_SOURCE = qtcharts-$(QT5CHARTS_VERSION).tar.bz2 QT5CHARTS_INSTALL_STAGING = YES diff --git a/package/qt5/qt5coap/qt5coap.mk b/package/qt5/qt5coap/qt5coap.mk index a50f19d7f221..5feb1e5bc26a 100644 --- a/package/qt5/qt5coap/qt5coap.mk +++ b/package/qt5/qt5coap/qt5coap.mk @@ -5,7 +5,7 @@ ################################################################################ QT5COAP_VERSION = 5.15.2 -QT5COAP_SITE = https://code.qt.io/cgit/qt/qtcoap.git +QT5COAP_SITE = https://code.qt.io/qt/qtcoap.git QT5COAP_SITE_METHOD = git QT5COAP_INSTALL_STAGING = YES QT5COAP_LICENSE = GPL-3.0, GFDL-1.3 diff --git a/package/qt5/qt5declarative/qt5declarative.hash b/package/qt5/qt5declarative/qt5declarative.hash index 00c9a044324f..0e7978dc58fe 100644 --- a/package/qt5/qt5declarative/qt5declarative.hash +++ b/package/qt5/qt5declarative/qt5declarative.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 0dd6b29bb19ad419d47d1fb612b39b1834d675fd1c58b80cd85c7d3da98b40bf qtdeclarative-51efb2ed2f071beda188270a23ac450fe4b318f7.tar.bz2 +sha256 dbe0cdf84767564a56abf9d0d867c9cfcc754827169357a0f8162309c11882b5 qtdeclarative-b3aaf1482c48bbc0ca4f7c7934597c055afe4b6a.tar.bz2 # Hashes for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL2 diff --git a/package/qt5/qt5declarative/qt5declarative.mk b/package/qt5/qt5declarative/qt5declarative.mk index cece8e476bb6..18c1608fcad0 100644 --- a/package/qt5/qt5declarative/qt5declarative.mk +++ b/package/qt5/qt5declarative/qt5declarative.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5DECLARATIVE_VERSION = 51efb2ed2f071beda188270a23ac450fe4b318f7 +QT5DECLARATIVE_VERSION = b3aaf1482c48bbc0ca4f7c7934597c055afe4b6a QT5DECLARATIVE_SITE = $(QT5_SITE)/qtdeclarative/-/archive/$(QT5DECLARATIVE_VERSION) QT5DECLARATIVE_SOURCE = qtdeclarative-$(QT5DECLARATIVE_VERSION).tar.bz2 QT5DECLARATIVE_INSTALL_STAGING = YES diff --git a/package/qt5/qt5graphicaleffects/qt5graphicaleffects.hash b/package/qt5/qt5graphicaleffects/qt5graphicaleffects.hash index 5de13a176db9..95567b24767a 100644 --- a/package/qt5/qt5graphicaleffects/qt5graphicaleffects.hash +++ b/package/qt5/qt5graphicaleffects/qt5graphicaleffects.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 83ee3888473fb786c1615c4b98320a9b1eeeb66dbc1ef9743b8339718594e48e qtgraphicaleffects-4c6ec38635aa22cf0854df8e710733c529f4ec02.tar.bz2 +sha256 de41af344889d35252fec9a6b6c78e1f67b7a7be15a5d3986b2ec20e2fcafadc qtgraphicaleffects-e6e1e58ec28fd0f2e6426e6962cc4ccddb493349.tar.bz2 # Hashes for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL2 diff --git a/package/qt5/qt5graphicaleffects/qt5graphicaleffects.mk b/package/qt5/qt5graphicaleffects/qt5graphicaleffects.mk index e4c464b8c7a0..f829c67122d1 100644 --- a/package/qt5/qt5graphicaleffects/qt5graphicaleffects.mk +++ b/package/qt5/qt5graphicaleffects/qt5graphicaleffects.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5GRAPHICALEFFECTS_VERSION = 4c6ec38635aa22cf0854df8e710733c529f4ec02 +QT5GRAPHICALEFFECTS_VERSION = e6e1e58ec28fd0f2e6426e6962cc4ccddb493349 QT5GRAPHICALEFFECTS_SITE = $(QT5_SITE)/qtgraphicaleffects/-/archive/$(QT5GRAPHICALEFFECTS_VERSION) QT5GRAPHICALEFFECTS_SOURCE = qtgraphicaleffects-$(QT5GRAPHICALEFFECTS_VERSION).tar.bz2 QT5GRAPHICALEFFECTS_DEPENDENCIES = qt5declarative diff --git a/package/qt5/qt5imageformats/qt5imageformats.hash b/package/qt5/qt5imageformats/qt5imageformats.hash index 9b8a788cae09..9d821672b308 100644 --- a/package/qt5/qt5imageformats/qt5imageformats.hash +++ b/package/qt5/qt5imageformats/qt5imageformats.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 4ce1982ccf3232d25187286ca4893bcf00b149cf9f6706f06f60d908fab480a0 qtimageformats-b43e31b9f31ec482ddea2066fda7ca9315512815.tar.bz2 +sha256 8bf646d4db7d0099dd49b7c049a64fb585a3e180d73fc2b6edf22a1384529d1d qtimageformats-9044695f4b1acdd7ec24e7b01f6a6ca61f982a75.tar.bz2 # Hashes for license files: sha256 edfe70e99be2a7c109d860b19204609e582720b211c50caedac729da372a1253 LICENSE.GPLv2 diff --git a/package/qt5/qt5imageformats/qt5imageformats.mk b/package/qt5/qt5imageformats/qt5imageformats.mk index 2cc8e0f17b10..0ce6e4ffb49b 100644 --- a/package/qt5/qt5imageformats/qt5imageformats.mk +++ b/package/qt5/qt5imageformats/qt5imageformats.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5IMAGEFORMATS_VERSION = b43e31b9f31ec482ddea2066fda7ca9315512815 +QT5IMAGEFORMATS_VERSION = 9044695f4b1acdd7ec24e7b01f6a6ca61f982a75 QT5IMAGEFORMATS_SITE = $(QT5_SITE)/qtimageformats/-/archive/$(QT5IMAGEFORMATS_VERSION) QT5IMAGEFORMATS_SOURCE = qtimageformats-$(QT5IMAGEFORMATS_VERSION).tar.bz2 QT5IMAGEFORMATS_INSTALL_STAGING = YES diff --git a/package/qt5/qt5knx/qt5knx.mk b/package/qt5/qt5knx/qt5knx.mk index 412e31c65295..91b99aaa87b7 100644 --- a/package/qt5/qt5knx/qt5knx.mk +++ b/package/qt5/qt5knx/qt5knx.mk @@ -5,7 +5,7 @@ ################################################################################ QT5KNX_VERSION = 5.15.2 -QT5KNX_SITE = https://code.qt.io/cgit/qt/qtknx.git +QT5KNX_SITE = https://code.qt.io/qt/qtknx.git QT5KNX_SITE_METHOD = git QT5KNX_INSTALL_STAGING = YES QT5KNX_LICENSE = GPL-3.0 with exception diff --git a/package/qt5/qt5location/qt5location.hash b/package/qt5/qt5location/qt5location.hash index e41b20fd9b2a..f73053f388f4 100644 --- a/package/qt5/qt5location/qt5location.hash +++ b/package/qt5/qt5location/qt5location.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 f9673cb1e5b88b4c43d663d7b9b666ff82d6843bf2b445805367cf537839a782 qt5location-db3b6bc6afed6477e6ab2d8465e41efee30fb6d5-br1.tar.gz +sha256 90b57a335d8c7311a86865a56b2b9cd944a8a1cafa6a7499de5b35a105c5b247 qt5location-ebdf5b38da6e3fe0a183702bcca395c589c459ed-br1.tar.gz # Hashes for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL2 diff --git a/package/qt5/qt5location/qt5location.mk b/package/qt5/qt5location/qt5location.mk index a61994fa5301..904d31a983b2 100644 --- a/package/qt5/qt5location/qt5location.mk +++ b/package/qt5/qt5location/qt5location.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5LOCATION_VERSION = db3b6bc6afed6477e6ab2d8465e41efee30fb6d5 +QT5LOCATION_VERSION = ebdf5b38da6e3fe0a183702bcca395c589c459ed QT5LOCATION_SITE = $(QT5_SITE)/qtlocation QT5LOCATION_SITE_METHOD = git QT5LOCATION_GIT_SUBMODULES = YES diff --git a/package/qt5/qt5lottie/qt5lottie.hash b/package/qt5/qt5lottie/qt5lottie.hash index c5c71ddf6c14..cbd94fd11190 100644 --- a/package/qt5/qt5lottie/qt5lottie.hash +++ b/package/qt5/qt5lottie/qt5lottie.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 7e006b7a3608f0737f41682352819c404db4c1506d9ebe82eb4af7b1ae652d14 qtlottie-ccba2b00bd7f10558edb8664d6b9a95e9fafe6ac.tar.bz2 +sha256 82336dd063f8bedc28e9545cc8c0123053434d6c681e470434c80ad3908ca4b0 qtlottie-d40b67401afe7156b03c62c9a4d517b07555fe64.tar.bz2 # Hashes for license files: sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE.GPL3 diff --git a/package/qt5/qt5lottie/qt5lottie.mk b/package/qt5/qt5lottie/qt5lottie.mk index d02d693401b6..42a920582a10 100644 --- a/package/qt5/qt5lottie/qt5lottie.mk +++ b/package/qt5/qt5lottie/qt5lottie.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5LOTTIE_VERSION = ccba2b00bd7f10558edb8664d6b9a95e9fafe6ac +QT5LOTTIE_VERSION = d40b67401afe7156b03c62c9a4d517b07555fe64 QT5LOTTIE_SITE = $(QT5_SITE)/qtlottie/-/archive/$(QT5LOTTIE_VERSION) QT5LOTTIE_SOURCE = qtlottie-$(QT5LOTTIE_VERSION).tar.bz2 QT5LOTTIE_DEPENDENCIES = qt5declarative diff --git a/package/qt5/qt5mqtt/qt5mqtt.mk b/package/qt5/qt5mqtt/qt5mqtt.mk index 0b62cf1bed59..824d58d1d122 100644 --- a/package/qt5/qt5mqtt/qt5mqtt.mk +++ b/package/qt5/qt5mqtt/qt5mqtt.mk @@ -5,7 +5,7 @@ ################################################################################ QT5MQTT_VERSION = 5.15.2 -QT5MQTT_SITE = https://code.qt.io/cgit/qt/qtmqtt.git +QT5MQTT_SITE = https://code.qt.io/qt/qtmqtt.git QT5MQTT_SITE_METHOD = git QT5MQTT_INSTALL_STAGING = YES QT5MQTT_LICENSE = GPL-3.0 with exception diff --git a/package/qt5/qt5multimedia/qt5multimedia.hash b/package/qt5/qt5multimedia/qt5multimedia.hash index 527e3948b860..4803ef9230df 100644 --- a/package/qt5/qt5multimedia/qt5multimedia.hash +++ b/package/qt5/qt5multimedia/qt5multimedia.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 b6a17deafe7ea7ad44e2852a92ea73b0089beaf9f24cb3434d018db9b8170ee6 qtmultimedia-dc0ee181d4c56ff66c989bd3292dad7cc35e234b.tar.bz2 +sha256 842c5be64dafe7a68d2b120e24faffd14af6e4d9d8e9c0aa8bbf4330b3491aa3 qtmultimedia-76f84c545429a1b988b79f971734ef4bc3e6643f.tar.bz2 # Hashes for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL2 diff --git a/package/qt5/qt5multimedia/qt5multimedia.mk b/package/qt5/qt5multimedia/qt5multimedia.mk index bf2126b285bc..0d0f5dd53d1c 100644 --- a/package/qt5/qt5multimedia/qt5multimedia.mk +++ b/package/qt5/qt5multimedia/qt5multimedia.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5MULTIMEDIA_VERSION = dc0ee181d4c56ff66c989bd3292dad7cc35e234b +QT5MULTIMEDIA_VERSION = 76f84c545429a1b988b79f971734ef4bc3e6643f QT5MULTIMEDIA_SITE = $(QT5_SITE)/qtmultimedia/-/archive/$(QT5MULTIMEDIA_VERSION) QT5MULTIMEDIA_SOURCE = qtmultimedia-$(QT5MULTIMEDIA_VERSION).tar.bz2 QT5MULTIMEDIA_INSTALL_STAGING = YES diff --git a/package/qt5/qt5quickcontrols/qt5quickcontrols.hash b/package/qt5/qt5quickcontrols/qt5quickcontrols.hash index 45af81c99fc0..05a021e8b275 100644 --- a/package/qt5/qt5quickcontrols/qt5quickcontrols.hash +++ b/package/qt5/qt5quickcontrols/qt5quickcontrols.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 c2ddcf9c524ef12a0786c410ac4b3c6d4be9aa17db71f2ea8c57ff615fda62dd qtquickcontrols-d405bf6a29bc9d6da6e3dcefbd1b88f5ed70fb1b.tar.bz2 +sha256 e2c7bc6346a8eb4c21510f8fbf7e752648f68a0c5af8525a784e64503570f72c qtquickcontrols-e62b8b6d2f45a79652238b33f4bbe23023004ae7.tar.bz2 # Hashes for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL2 diff --git a/package/qt5/qt5quickcontrols/qt5quickcontrols.mk b/package/qt5/qt5quickcontrols/qt5quickcontrols.mk index 5903e6d69c77..25c1a74f5c60 100644 --- a/package/qt5/qt5quickcontrols/qt5quickcontrols.mk +++ b/package/qt5/qt5quickcontrols/qt5quickcontrols.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5QUICKCONTROLS_VERSION = d405bf6a29bc9d6da6e3dcefbd1b88f5ed70fb1b +QT5QUICKCONTROLS_VERSION = e62b8b6d2f45a79652238b33f4bbe23023004ae7 QT5QUICKCONTROLS_SITE = $(QT5_SITE)/qtquickcontrols/-/archive/$(QT5QUICKCONTROLS_VERSION) QT5QUICKCONTROLS_SOURCE = qtquickcontrols-$(QT5QUICKCONTROLS_VERSION).tar.bz2 QT5QUICKCONTROLS_DEPENDENCIES = qt5declarative diff --git a/package/qt5/qt5quickcontrols2/qt5quickcontrols2.hash b/package/qt5/qt5quickcontrols2/qt5quickcontrols2.hash index 7d81b6140739..88777a5cc3be 100644 --- a/package/qt5/qt5quickcontrols2/qt5quickcontrols2.hash +++ b/package/qt5/qt5quickcontrols2/qt5quickcontrols2.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 0c4204257be906c13f863b9481bb20ad616c9a80a074b6f160f863ac046dad27 qtquickcontrols2-0d3d39e821ea7634c174a29910c18d7101bce6f7.tar.bz2 +sha256 53caea73e6bdf234cb445067be3bc4e07ed59af7da967638ac598188b719958e qtquickcontrols2-74e8db97fdb9b55c4b4614b83f4bf17e00df55e9.tar.bz2 # Hashes for license files: sha256 d2cfc059acb4abd8e513cd0a73cd8489f34cbafa7bc34d5d31fb3210821cf8ca LICENSE.GPLv3 diff --git a/package/qt5/qt5quickcontrols2/qt5quickcontrols2.mk b/package/qt5/qt5quickcontrols2/qt5quickcontrols2.mk index f847ec95ab37..1732921203f8 100644 --- a/package/qt5/qt5quickcontrols2/qt5quickcontrols2.mk +++ b/package/qt5/qt5quickcontrols2/qt5quickcontrols2.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5QUICKCONTROLS2_VERSION = 0d3d39e821ea7634c174a29910c18d7101bce6f7 +QT5QUICKCONTROLS2_VERSION = 74e8db97fdb9b55c4b4614b83f4bf17e00df55e9 QT5QUICKCONTROLS2_SITE = $(QT5_SITE)/qtquickcontrols2/-/archive/$(QT5QUICKCONTROLS2_VERSION) QT5QUICKCONTROLS2_SOURCE = qtquickcontrols2-$(QT5QUICKCONTROLS2_VERSION).tar.bz2 QT5QUICKCONTROLS2_DEPENDENCIES = qt5declarative diff --git a/package/qt5/qt5quicktimeline/qt5quicktimeline.hash b/package/qt5/qt5quicktimeline/qt5quicktimeline.hash index e68f66edd8a6..a8acf3c5a2c9 100644 --- a/package/qt5/qt5quicktimeline/qt5quicktimeline.hash +++ b/package/qt5/qt5quicktimeline/qt5quicktimeline.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 ab113ead993206de4025c78fd2babea69824f52ff88fa78451b6bbcb932a6ab6 qtquicktimeline-2ce816fa5822bcc1c47678447405b2e5dc1312c1.tar.bz2 +sha256 d22637609c4afcc7560d92c894eb55d4afa01706bb5c86499bf56f7c8723a605 qtquicktimeline-87ad61716a7cba5a070d8a7b1756c8b2b48d5d53.tar.bz2 # Hashes for license files: sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE.GPL3 diff --git a/package/qt5/qt5quicktimeline/qt5quicktimeline.mk b/package/qt5/qt5quicktimeline/qt5quicktimeline.mk index 70cca38ff45c..de94bd037573 100644 --- a/package/qt5/qt5quicktimeline/qt5quicktimeline.mk +++ b/package/qt5/qt5quicktimeline/qt5quicktimeline.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5QUICKTIMELINE_VERSION = 2ce816fa5822bcc1c47678447405b2e5dc1312c1 +QT5QUICKTIMELINE_VERSION = 87ad61716a7cba5a070d8a7b1756c8b2b48d5d53 QT5QUICKTIMELINE_SITE = $(QT5_SITE)/qtquicktimeline/-/archive/$(QT5QUICKTIMELINE_VERSION) QT5QUICKTIMELINE_SOURCE = qtquicktimeline-$(QT5QUICKTIMELINE_VERSION).tar.bz2 QT5QUICKTIMELINE_DEPENDENCIES = qt5declarative diff --git a/package/qt5/qt5remoteobjects/qt5remoteobjects.hash b/package/qt5/qt5remoteobjects/qt5remoteobjects.hash index 980101c7fb59..1b41ab675f3c 100644 --- a/package/qt5/qt5remoteobjects/qt5remoteobjects.hash +++ b/package/qt5/qt5remoteobjects/qt5remoteobjects.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 f51631a142ac47a03266496dae9d07c734f092a0afe8c4e18cd78b7cf9c17b38 qtremoteobjects-809412e1cc2151c21f843796ef67705600f6aafb.tar.bz2 +sha256 ef8e1f64911f7e03da6306693031fdf953af00d453ec154497178bb7ceab1aa2 qtremoteobjects-aa705010da0f658b78c1155babce7091ae44529a.tar.bz2 # Hashes for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL2 diff --git a/package/qt5/qt5remoteobjects/qt5remoteobjects.mk b/package/qt5/qt5remoteobjects/qt5remoteobjects.mk index 984f392dda1c..3160d37ad718 100644 --- a/package/qt5/qt5remoteobjects/qt5remoteobjects.mk +++ b/package/qt5/qt5remoteobjects/qt5remoteobjects.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5REMOTEOBJECTS_VERSION = 809412e1cc2151c21f843796ef67705600f6aafb +QT5REMOTEOBJECTS_VERSION = aa705010da0f658b78c1155babce7091ae44529a QT5REMOTEOBJECTS_SITE = $(QT5_SITE)/qtremoteobjects/-/archive/$(QT5REMOTEOBJECTS_VERSION) QT5REMOTEOBJECTS_SOURCE = qtremoteobjects-$(QT5REMOTEOBJECTS_VERSION).tar.bz2 QT5REMOTEOBJECTS_DEPENDENCIES = qt5base diff --git a/package/qt5/qt5script/qt5script.hash b/package/qt5/qt5script/qt5script.hash index b3e10491fd4d..d6572be818d2 100644 --- a/package/qt5/qt5script/qt5script.hash +++ b/package/qt5/qt5script/qt5script.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 fc625c1682d7ee5d1092255408cbaf08d5cac52eb45bacd3ab52937dc84d91f2 qtscript-5cec94b2c1503f106f4ef4778d016410ebb86211.tar.bz2 +sha256 7731d8c85636d039a2b35a9ee0de7b5ebb0c3900a9b4845676041ce91f56f01f qtscript-f237e324508dcf0dbabde9dd498eda9fa61c4ff0.tar.bz2 # Hashes for license files: sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE.GPL3 diff --git a/package/qt5/qt5script/qt5script.mk b/package/qt5/qt5script/qt5script.mk index 313895f11b33..96cbbfbbadb8 100644 --- a/package/qt5/qt5script/qt5script.mk +++ b/package/qt5/qt5script/qt5script.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5SCRIPT_VERSION = 5cec94b2c1503f106f4ef4778d016410ebb86211 +QT5SCRIPT_VERSION = f237e324508dcf0dbabde9dd498eda9fa61c4ff0 QT5SCRIPT_SITE = $(QT5_SITE)/qtscript/-/archive/$(QT5SCRIPT_VERSION) QT5SCRIPT_SOURCE = qtscript-$(QT5SCRIPT_VERSION).tar.bz2 QT5SCRIPT_INSTALL_STAGING = YES diff --git a/package/qt5/qt5scxml/qt5scxml.hash b/package/qt5/qt5scxml/qt5scxml.hash index 1c11ae5853f3..f4d52b8a52c2 100644 --- a/package/qt5/qt5scxml/qt5scxml.hash +++ b/package/qt5/qt5scxml/qt5scxml.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 5fc3e6166ab3588242864c5d8f18235a45f5c3396482ccfeb8590fe67d0cd549 qtscxml-dcbd73cf3e8a07dbfa249d7db2257caafa83781b.tar.bz2 +sha256 a0113f54d9df14ebae15dd85530f87f093a284372ee8237d1ccceb02e6a4607b qtscxml-631fd7bcc34802b7650c2b1dc73691463954d982.tar.bz2 # Hashes for license files: sha256 0dbe024961f6ab5c52689cbd036c977975d0d0f6a67ff97762d96cb819dd5652 LICENSE.GPL3-EXCEPT diff --git a/package/qt5/qt5scxml/qt5scxml.mk b/package/qt5/qt5scxml/qt5scxml.mk index af18b84e9db6..f6ccb9298e56 100644 --- a/package/qt5/qt5scxml/qt5scxml.mk +++ b/package/qt5/qt5scxml/qt5scxml.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5SCXML_VERSION = dcbd73cf3e8a07dbfa249d7db2257caafa83781b +QT5SCXML_VERSION = 631fd7bcc34802b7650c2b1dc73691463954d982 QT5SCXML_SITE = $(QT5_SITE)/qtscxml/-/archive/$(QT5SCXML_VERSION) QT5SCXML_SOURCE = qtscxml-$(QT5SCXML_VERSION).tar.bz2 QT5SCXML_DEPENDENCIES = qt5declarative diff --git a/package/qt5/qt5sensors/qt5sensors.hash b/package/qt5/qt5sensors/qt5sensors.hash index 559f02e7f6e3..d43fa8ba65c5 100644 --- a/package/qt5/qt5sensors/qt5sensors.hash +++ b/package/qt5/qt5sensors/qt5sensors.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 fa0ffba89fed2086d06dab84074cdd789acbfb89da6f64c40a64fc3bc067832e qtsensors-1ab8d6c7257f9ec060739b648704be1cf1c16b05.tar.bz2 +sha256 8325826a259189fc7dea66651df4022a92a73664e953f86bce5bf5946ebacdf5 qtsensors-35eb5ac7eaef4745a38958c3ca780d7baa2e4f30.tar.bz2 # Hashes for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL2 diff --git a/package/qt5/qt5sensors/qt5sensors.mk b/package/qt5/qt5sensors/qt5sensors.mk index 299fab3db02c..40bb72e038b9 100644 --- a/package/qt5/qt5sensors/qt5sensors.mk +++ b/package/qt5/qt5sensors/qt5sensors.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5SENSORS_VERSION = 1ab8d6c7257f9ec060739b648704be1cf1c16b05 +QT5SENSORS_VERSION = 35eb5ac7eaef4745a38958c3ca780d7baa2e4f30 QT5SENSORS_SITE = $(QT5_SITE)/qtsensors/-/archive/$(QT5SENSORS_VERSION) QT5SENSORS_SOURCE = qtsensors-$(QT5SENSORS_VERSION).tar.bz2 QT5SENSORS_INSTALL_STAGING = YES diff --git a/package/qt5/qt5serialbus/qt5serialbus.hash b/package/qt5/qt5serialbus/qt5serialbus.hash index b8f96cf0c096..01ffd7c2152e 100644 --- a/package/qt5/qt5serialbus/qt5serialbus.hash +++ b/package/qt5/qt5serialbus/qt5serialbus.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 caaccfdabdf502c3aacf9fa842ed31ed7682cab6ada69b06be1ba49273fb1f1c qtserialbus-e34053fbda8d687e3dc294fbd5e3a88bf94a7a66.tar.bz2 +sha256 fe08415d2348797429dc09722478630ceee3d7477652a2712460e79127b7291b qtserialbus-f9f7eee60adac72fcf6617d164e3bf61222bb5c5.tar.bz2 # Hashes for license files: sha256 edfe70e99be2a7c109d860b19204609e582720b211c50caedac729da372a1253 LICENSE.GPLv2 diff --git a/package/qt5/qt5serialbus/qt5serialbus.mk b/package/qt5/qt5serialbus/qt5serialbus.mk index 70f23ce407e8..c718414932b0 100644 --- a/package/qt5/qt5serialbus/qt5serialbus.mk +++ b/package/qt5/qt5serialbus/qt5serialbus.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5SERIALBUS_VERSION = e34053fbda8d687e3dc294fbd5e3a88bf94a7a66 +QT5SERIALBUS_VERSION = f9f7eee60adac72fcf6617d164e3bf61222bb5c5 QT5SERIALBUS_SITE = $(QT5_SITE)/qtserialbus/-/archive/$(QT5SERIALBUS_VERSION) QT5SERIALBUS_SOURCE = qtserialbus-$(QT5SERIALBUS_VERSION).tar.bz2 QT5SERIALBUS_DEPENDENCIES = qt5serialport diff --git a/package/qt5/qt5serialport/qt5serialport.hash b/package/qt5/qt5serialport/qt5serialport.hash index d25b2193e799..58461430c7ab 100644 --- a/package/qt5/qt5serialport/qt5serialport.hash +++ b/package/qt5/qt5serialport/qt5serialport.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 83abb0c5b9c435a031abf1a36d6d44f8e3f5e2fc16150bdc78c6d33b25386bb6 qtserialport-191e67e428522a0e2e1e8d2f3440607a9760d441.tar.bz2 +sha256 6d49d0da174632f51291b0190f6f1db2397a3b339cf293514252766f8a20c63b qtserialport-c9abfcd5d88cb43c2a7c1d5ddecbff4cdd320694.tar.bz2 # Hashes for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL2 diff --git a/package/qt5/qt5serialport/qt5serialport.mk b/package/qt5/qt5serialport/qt5serialport.mk index cd96df200742..7d00bd2ab7d3 100644 --- a/package/qt5/qt5serialport/qt5serialport.mk +++ b/package/qt5/qt5serialport/qt5serialport.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5SERIALPORT_VERSION = 191e67e428522a0e2e1e8d2f3440607a9760d441 +QT5SERIALPORT_VERSION = c9abfcd5d88cb43c2a7c1d5ddecbff4cdd320694 QT5SERIALPORT_SITE = $(QT5_SITE)/qtserialport/-/archive/$(QT5SERIALPORT_VERSION) QT5SERIALPORT_SOURCE = qtserialport-$(QT5SERIALPORT_VERSION).tar.bz2 QT5SERIALPORT_INSTALL_STAGING = YES diff --git a/package/qt5/qt5svg/qt5svg.hash b/package/qt5/qt5svg/qt5svg.hash index 424891ac2c0d..4816206d6489 100644 --- a/package/qt5/qt5svg/qt5svg.hash +++ b/package/qt5/qt5svg/qt5svg.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 eeb4175f0b2c3299abf0ca9d751886612dad5ecd212c954f9801b28b4696f4f7 qtsvg-23b8cf7d833c335d7735855570c05e9e0893a9b7.tar.bz2 +sha256 063ee53515b934c00a65838fe8521142e4a9161b07c8e19b5bb0ea26a0ce9ab3 qtsvg-a9752b00a03438de8e5b080073816e12409404b7.tar.bz2 # Hashes for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL2 diff --git a/package/qt5/qt5svg/qt5svg.mk b/package/qt5/qt5svg/qt5svg.mk index 3072fd7a187c..2a39ed18feef 100644 --- a/package/qt5/qt5svg/qt5svg.mk +++ b/package/qt5/qt5svg/qt5svg.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5SVG_VERSION = 23b8cf7d833c335d7735855570c05e9e0893a9b7 +QT5SVG_VERSION = a9752b00a03438de8e5b080073816e12409404b7 QT5SVG_SITE = $(QT5_SITE)/qtsvg/-/archive/$(QT5SVG_VERSION) QT5SVG_SOURCE = qtsvg-$(QT5SVG_VERSION).tar.bz2 QT5SVG_INSTALL_STAGING = YES diff --git a/package/qt5/qt5tools/Config.in b/package/qt5/qt5tools/Config.in index 46585e1e0439..47a9ad0f5fc9 100644 --- a/package/qt5/qt5tools/Config.in +++ b/package/qt5/qt5tools/Config.in @@ -23,13 +23,13 @@ config BR2_PACKAGE_QT5TOOLS_QDOC_TOOL # currently supported in Buildroot, unless the target is # already supported by llvm. depends on BR2_PACKAGE_LLVM_ARCH_SUPPORTS # llvm, clang - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 # llvm, clang + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 # llvm, clang depends on BR2_TOOLCHAIN_HAS_THREADS # llvm, clang depends on BR2_INSTALL_LIBSTDCPP # llvm, clang depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # llvm, clang depends on !BR2_STATIC_LIBS # llvm, clang depends on BR2_USE_WCHAR # llvm, clang - depends on BR2_HOST_GCC_AT_LEAST_5 # llvm, clang + depends on BR2_HOST_GCC_AT_LEAST_7 # llvm, clang help This option enables the qdoc host tool. diff --git a/package/qt5/qt5tools/qt5tools.hash b/package/qt5/qt5tools/qt5tools.hash index 58ed752b9bf8..d60359825715 100644 --- a/package/qt5/qt5tools/qt5tools.hash +++ b/package/qt5/qt5tools/qt5tools.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 76052a183a41fcddfd4446ffba6a99c3e77a21453fe629cf67379ffa617a0d53 qttools-53ee43a51b5a3de2877dafffc78e71ff55926708.tar.bz2 +sha256 b6eebbd61dcde981d63ce6de39b3c957bad8f11b0140585ba4d57d166c4dd79d qttools-32912a06aadfc3dcbc34e0a668ce2c78351eee6e.tar.bz2 # Hashes for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL2 diff --git a/package/qt5/qt5tools/qt5tools.mk b/package/qt5/qt5tools/qt5tools.mk index e87c9b50a555..a01a336584f8 100644 --- a/package/qt5/qt5tools/qt5tools.mk +++ b/package/qt5/qt5tools/qt5tools.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5TOOLS_VERSION = 53ee43a51b5a3de2877dafffc78e71ff55926708 +QT5TOOLS_VERSION = 32912a06aadfc3dcbc34e0a668ce2c78351eee6e QT5TOOLS_SITE = $(QT5_SITE)/qttools/-/archive/$(QT5TOOLS_VERSION) QT5TOOLS_SOURCE = qttools-$(QT5TOOLS_VERSION).tar.bz2 diff --git a/package/qt5/qt5virtualkeyboard/qt5virtualkeyboard.hash b/package/qt5/qt5virtualkeyboard/qt5virtualkeyboard.hash index 1cdd8f0386b6..60d51fa5fe68 100644 --- a/package/qt5/qt5virtualkeyboard/qt5virtualkeyboard.hash +++ b/package/qt5/qt5virtualkeyboard/qt5virtualkeyboard.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 6ef14ba8bb5eb287320b6c0d6e61c5c2916a94ef754bb8a2d89c123043485d67 qtvirtualkeyboard-e8ae4757dd32e8dbf69a7c57f2bc5c1e238416db.tar.bz2 +sha256 e1e356e81f3a3fb5da6f6739aa475c15aab15090e202de6704441a3bf41c335b qtvirtualkeyboard-9fbb837b55887bec5d73fad142c853ef68db35b3.tar.bz2 # Hashes for license files: sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE.GPL3 diff --git a/package/qt5/qt5virtualkeyboard/qt5virtualkeyboard.mk b/package/qt5/qt5virtualkeyboard/qt5virtualkeyboard.mk index 3fefdc874d0a..49ce71b75e41 100644 --- a/package/qt5/qt5virtualkeyboard/qt5virtualkeyboard.mk +++ b/package/qt5/qt5virtualkeyboard/qt5virtualkeyboard.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5VIRTUALKEYBOARD_VERSION = e8ae4757dd32e8dbf69a7c57f2bc5c1e238416db +QT5VIRTUALKEYBOARD_VERSION = 9fbb837b55887bec5d73fad142c853ef68db35b3 QT5VIRTUALKEYBOARD_SITE = $(QT5_SITE)/qtvirtualkeyboard/-/archive/$(QT5VIRTUALKEYBOARD_VERSION) QT5VIRTUALKEYBOARD_SOURCE = qtvirtualkeyboard-$(QT5VIRTUALKEYBOARD_VERSION).tar.bz2 QT5VIRTUALKEYBOARD_DEPENDENCIES = qt5declarative qt5svg diff --git a/package/qt5/qt5wayland/0001-Add-missing-define-guards.patch b/package/qt5/qt5wayland/0001-Add-missing-define-guards.patch deleted file mode 100644 index adad3768b23c..000000000000 --- a/package/qt5/qt5wayland/0001-Add-missing-define-guards.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 05658e127dedfff65789860415537c6920ec574d Mon Sep 17 00:00:00 2001 -From: Samuli Piippo -Date: Thu, 22 Apr 2021 15:29:56 +0300 -Subject: [PATCH] Add missing define guards - -Ammend cca1b94190a094b5d1d7ce492b6533e2d330c5e8 to use m_composeState -only if xcbcommon is available. - -Pick-to: 5.15 -Change-Id: I48332b15def3282c5bda3e1c7c393ea7e9849cbe -Reviewed-by: Aleix Pol Gonzalez -[Backported from: 05658e127dedfff65789860415537c6920ec574d] -Signed-off-by: Quentin Schulz ---- - src/client/qwaylandinputcontext.cpp | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/client/qwaylandinputcontext.cpp b/src/client/qwaylandinputcontext.cpp -index 16e03ea1..cbf63cde 100644 ---- a/src/client/qwaylandinputcontext.cpp -+++ b/src/client/qwaylandinputcontext.cpp -@@ -408,8 +408,10 @@ bool QWaylandInputContext::isValid() const - void QWaylandInputContext::reset() - { - qCDebug(qLcQpaInputMethods) << Q_FUNC_INFO; -+#if QT_CONFIG(xkbcommon) - if (m_composeState) - xkb_compose_state_reset(m_composeState); -+#endif - - QPlatformInputContext::reset(); - --- -2.35.1 - diff --git a/package/qt5/qt5wayland/qt5wayland.hash b/package/qt5/qt5wayland/qt5wayland.hash index 58935ceadcb1..c9d7f3434c35 100644 --- a/package/qt5/qt5wayland/qt5wayland.hash +++ b/package/qt5/qt5wayland/qt5wayland.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 bfe9bce353c036356dc7bca04e634f03c7c924381062ce89627a88df0ae7484e qtwayland-36659e6130ed3fc2b3f0c91423408ef5ecb7b991.tar.bz2 +sha256 c881745403a7c3639ee928f64ac9e7252d7a941cb62ef682a7ee83ccf3ae0a60 qtwayland-8faf74a7966b520f0ac3eb4d88235f8ec63b31b8.tar.bz2 # Hashes for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL2 diff --git a/package/qt5/qt5wayland/qt5wayland.mk b/package/qt5/qt5wayland/qt5wayland.mk index 63fa1f21c0b3..aeca1b03817b 100644 --- a/package/qt5/qt5wayland/qt5wayland.mk +++ b/package/qt5/qt5wayland/qt5wayland.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5WAYLAND_VERSION = 36659e6130ed3fc2b3f0c91423408ef5ecb7b991 +QT5WAYLAND_VERSION = 8faf74a7966b520f0ac3eb4d88235f8ec63b31b8 QT5WAYLAND_SITE = $(QT5_SITE)/qtwayland/-/archive/$(QT5WAYLAND_VERSION) QT5WAYLAND_SOURCE = qtwayland-$(QT5WAYLAND_VERSION).tar.bz2 QT5WAYLAND_DEPENDENCIES = wayland diff --git a/package/qt5/qt5webengine/0001-gn.pro-don-t-link-statically-with-libstc.patch b/package/qt5/qt5webengine/0001-gn.pro-don-t-link-statically-with-libstc.patch index dff3e6c84947..aeec4c58b171 100644 --- a/package/qt5/qt5webengine/0001-gn.pro-don-t-link-statically-with-libstc.patch +++ b/package/qt5/qt5webengine/0001-gn.pro-don-t-link-statically-with-libstc.patch @@ -28,24 +28,25 @@ linking statically by default. [1] https://github.com/qt/qtwebengine-chromium/commit/cfab9198a9917f42cf08b1caf84ab9b71aac1911#diff-905c8f054808213577c0a92d1b704615 Signed-off-by: Romain Naour +Signed-off-by: Giulio Benetti +[Giulio: rebased to qt5.15.10] --- src/buildtools/gn.pro | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/buildtools/gn.pro b/src/buildtools/gn.pro -index 033202e6..5dd8e241 100644 +index f94694da0..19079a5b3 100644 --- a/src/buildtools/gn.pro +++ b/src/buildtools/gn.pro @@ -20,7 +20,8 @@ build_pass|!debug_and_release { - + gn_gen_args = --no-last-commit-position --out-path $$out_path \ --cc \"$$which($$QMAKE_CC)\" --cxx \"$$which($$QMAKE_CXX)\" \ - --ld \"$$which($$QMAKE_LINK)\" + --ld \"$$which($$QMAKE_LINK)\" \ + --no-static-libstdc++ - - msvc:!clang_cl: gn_gen_args += --use-lto - --- -2.25.4 + !isEmpty(QMAKE_AR): gn_gen_args += --ar \"$$which($$first(QMAKE_AR))\" + msvc:!clang_cl: gn_gen_args += --use-lto +-- +2.34.1 diff --git a/package/qt5/qt5webengine/qt5webengine.hash b/package/qt5/qt5webengine/qt5webengine.hash index 1d2b70c4f6d0..038446a9f498 100644 --- a/package/qt5/qt5webengine/qt5webengine.hash +++ b/package/qt5/qt5webengine/qt5webengine.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 fb7abcf88d4336d55565627e18b33df1855fefb0f12e24931b6a7decbe60913b qtwebengine-v5.15.8-lts.tar.bz2 +sha256 4a3456df42e1c1b859232b3ee1d58360e629d55daf6e5ad308871142c1b0c2fa qtwebengine-v5.15.10-lts.tar.bz2 # Locally calculated sha256 f34787ef0342c614b667186a6ec2f5d6b9d650e30142a2788a589a89743e88e9 LICENSE.Chromium diff --git a/package/qt5/qt5webview/qt5webview.hash b/package/qt5/qt5webview/qt5webview.hash index fe129509293c..d928c7cdcedf 100644 --- a/package/qt5/qt5webview/qt5webview.hash +++ b/package/qt5/qt5webview/qt5webview.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 6b84aab9bc8292f299b249840218e9e69a1dbbff42e08c5da7cb659cff8bc37d qtwebview-826d2a33929c69807917536d48b7861e7682001e.tar.bz2 +sha256 38f6c0a2863e9144632286b0ef43db506b8631eeff0f8facae14b0da86ca0491 qtwebview-87577dde04ed219bda776dabca86176149736331.tar.bz2 # Hashes for license files: sha256 ed8742a95cb9db653a09b050e27ccff5e67ba69c14aa2c3137f2a4e1892f6c0d LICENSE.FDL diff --git a/package/qt5/qt5webview/qt5webview.mk b/package/qt5/qt5webview/qt5webview.mk index 54da733e7b73..a55fd8ae7491 100644 --- a/package/qt5/qt5webview/qt5webview.mk +++ b/package/qt5/qt5webview/qt5webview.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5WEBVIEW_VERSION = 826d2a33929c69807917536d48b7861e7682001e +QT5WEBVIEW_VERSION = 87577dde04ed219bda776dabca86176149736331 QT5WEBVIEW_SITE = $(QT5_SITE)/qtwebview/-/archive/$(QT5WEBVIEW_VERSION) QT5WEBVIEW_SOURCE = qtwebview-$(QT5WEBVIEW_VERSION).tar.bz2 QT5WEBVIEW_DEPENDENCIES = qt5webengine diff --git a/package/qt5/qt5x11extras/qt5x11extras.hash b/package/qt5/qt5x11extras/qt5x11extras.hash index 7b369b0a02fe..87dac8625e9e 100644 --- a/package/qt5/qt5x11extras/qt5x11extras.hash +++ b/package/qt5/qt5x11extras/qt5x11extras.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 fde322c017bee349d56f73f402ca67ad986e0c43a592e3ee032313aa194406da qtx11extras-51b0a5a2e3e35f4cb17da1e7cb4babef6294bfb4.tar.bz2 +sha256 cf9124f3d35f1c8db4e9e47943cb1ec86834abf2be38d70412d0452e64462906 qtx11extras-982f20eb585d77e5b5c721e05a466d7161f7f2d1.tar.bz2 # Hashes for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL2 diff --git a/package/qt5/qt5x11extras/qt5x11extras.mk b/package/qt5/qt5x11extras/qt5x11extras.mk index fb6650e84a1c..80c5498518a5 100644 --- a/package/qt5/qt5x11extras/qt5x11extras.mk +++ b/package/qt5/qt5x11extras/qt5x11extras.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5X11EXTRAS_VERSION = 51b0a5a2e3e35f4cb17da1e7cb4babef6294bfb4 +QT5X11EXTRAS_VERSION = 982f20eb585d77e5b5c721e05a466d7161f7f2d1 QT5X11EXTRAS_SITE = $(QT5_SITE)/qtx11extras/-/archive/$(QT5X11EXTRAS_VERSION) QT5X11EXTRAS_SOURCE = qtx11extras-$(QT5X11EXTRAS_VERSION).tar.bz2 QT5X11EXTRAS_INSTALL_STAGING = YES diff --git a/package/qt5/qt5xmlpatterns/qt5xmlpatterns.hash b/package/qt5/qt5xmlpatterns/qt5xmlpatterns.hash index a1dbb4015465..353dfc84859e 100644 --- a/package/qt5/qt5xmlpatterns/qt5xmlpatterns.hash +++ b/package/qt5/qt5xmlpatterns/qt5xmlpatterns.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 6243e6334c0d1467e3e5bdecd981d7e673f4cc99cf2cee3b99597be4218a4bd2 qtxmlpatterns-dfcae10dec8c1c2c544ad0cd303cea113b0af51d.tar.bz2 +sha256 067b801049f6fada8e7ebcfbce0530db6217a1a94b8ed34c99c530be4129889d qtxmlpatterns-30e6c84fe2752cde8b53aff9d38c2095cd7c8761.tar.bz2 # Hashes for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL2 diff --git a/package/qt5/qt5xmlpatterns/qt5xmlpatterns.mk b/package/qt5/qt5xmlpatterns/qt5xmlpatterns.mk index 6711e9bf70af..803c36cf0493 100644 --- a/package/qt5/qt5xmlpatterns/qt5xmlpatterns.mk +++ b/package/qt5/qt5xmlpatterns/qt5xmlpatterns.mk @@ -4,7 +4,7 @@ # ################################################################################ -QT5XMLPATTERNS_VERSION = dfcae10dec8c1c2c544ad0cd303cea113b0af51d +QT5XMLPATTERNS_VERSION = 30e6c84fe2752cde8b53aff9d38c2095cd7c8761 QT5XMLPATTERNS_SITE = $(QT5_SITE)/qtxmlpatterns/-/archive/$(QT5XMLPATTERNS_VERSION) QT5XMLPATTERNS_SOURCE = qtxmlpatterns-$(QT5XMLPATTERNS_VERSION).tar.bz2 QT5XMLPATTERNS_INSTALL_STAGING = YES diff --git a/package/qt6/Config.in b/package/qt6/Config.in index 655fa8392a31..276a0217ab28 100644 --- a/package/qt6/Config.in +++ b/package/qt6/Config.in @@ -44,7 +44,9 @@ menuconfig BR2_PACKAGE_QT6 if BR2_PACKAGE_QT6 source "package/qt6/qt6base/Config.in" +source "package/qt6/qt6core5compat/Config.in" source "package/qt6/qt6serialbus/Config.in" source "package/qt6/qt6serialport/Config.in" +source "package/qt6/qt6svg/Config.in" endif diff --git a/package/qt6/qt6.mk b/package/qt6/qt6.mk index 431bb8c9d329..1edb252c9675 100644 --- a/package/qt6/qt6.mk +++ b/package/qt6/qt6.mk @@ -5,7 +5,7 @@ ################################################################################ QT6_VERSION_MAJOR = 6.4 -QT6_VERSION = $(QT6_VERSION_MAJOR).2 +QT6_VERSION = $(QT6_VERSION_MAJOR).3 QT6_SOURCE_TARBALL_PREFIX = everywhere-src QT6_SITE = https://download.qt.io/archive/qt/$(QT6_VERSION_MAJOR)/$(QT6_VERSION)/submodules diff --git a/package/qt6/qt6base/Config.in b/package/qt6/qt6base/Config.in index 7927975bff8b..98a7520486b7 100644 --- a/package/qt6/qt6base/Config.in +++ b/package/qt6/qt6base/Config.in @@ -43,6 +43,16 @@ config BR2_PACKAGE_QT6BASE_GUI if BR2_PACKAGE_QT6BASE_GUI +config BR2_PACKAGE_QT6BASE_VULKAN + bool "Vulkan support" + depends on BR2_INSTALL_LIBSTDCPP # vulkan-loader + depends on !BR2_STATIC_LIBS # vulkan-loader + depends on BR2_TOOLCHAIN_HAS_THREADS # vulkan-loader + select BR2_PACKAGE_VULKAN_HEADERS + select BR2_PACKAGE_VULKAN_LOADER + help + This option enables Vulkan support. + config BR2_PACKAGE_QT6BASE_LINUXFB bool "linuxfb support" @@ -165,6 +175,7 @@ endif config BR2_PACKAGE_QT6BASE_NETWORK bool "network module" + select BR2_PACKAGE_LIBOPENSSL_ENABLE_PSK if BR2_PACKAGE_LIBOPENSSL help This options enables the Qt6Network library. diff --git a/package/qt6/qt6base/qt6base.hash b/package/qt6/qt6base/qt6base.hash index 63af37383665..cb111bd405f4 100644 --- a/package/qt6/qt6base/qt6base.hash +++ b/package/qt6/qt6base/qt6base.hash @@ -1,5 +1,5 @@ -# Hash from: https://download.qt.io/official_releases/qt/6.4/6.4.2/submodules/qtbase-everywhere-src-6.4.2.tar.xz.sha256 -sha256 a88bc6cedbb34878a49a622baa79cace78cfbad4f95fdbd3656ddb21c705525d qtbase-everywhere-src-6.4.2.tar.xz +# Hash from: https://download.qt.io/official_releases/qt/6.4/6.4.3/submodules/qtbase-everywhere-src-6.4.3.tar.xz.sha256 +sha256 5087c9e5b0165e7bc3c1a4ab176b35d0cd8f52636aea903fa377bdba00891a60 qtbase-everywhere-src-6.4.3.tar.xz # Hashes for license files sha256 e3ba223bb1423f0aad8c3dfce0fe3148db48926d41e6fbc3afbbf5ff9e1c89cb LICENSES/Apache-2.0.txt diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk index e6cf4f14bbbc..c32089f551bf 100644 --- a/package/qt6/qt6base/qt6base.mk +++ b/package/qt6/qt6base/qt6base.mk @@ -8,6 +8,8 @@ QT6BASE_VERSION = $(QT6_VERSION) QT6BASE_SITE = $(QT6_SITE) QT6BASE_SOURCE = qtbase-$(QT6_SOURCE_TARBALL_PREFIX)-$(QT6BASE_VERSION).tar.xz +QT6BASE_CMAKE_BACKEND = ninja + QT6BASE_LICENSE = \ GPL-2.0+ or LGPL-3.0, \ GPL-3.0 with exception (tools), \ @@ -29,7 +31,6 @@ QT6BASE_LICENSE_FILES = \ LICENSES/Qt-GPL-exception-1.0.txt QT6BASE_DEPENDENCIES = \ - host-ninja \ host-qt6base \ double-conversion \ libb2 \ @@ -38,7 +39,6 @@ QT6BASE_DEPENDENCIES = \ QT6BASE_INSTALL_STAGING = YES QT6BASE_CONF_OPTS = \ - -GNinja \ -DQT_HOST_PATH=$(HOST_DIR) \ -DFEATURE_concurrent=OFF \ -DFEATURE_xml=OFF \ @@ -76,26 +76,12 @@ QT6BASE_CONF_OPTS += \ -DFEATURE_avx512vl=OFF \ -DFEATURE_vaes=OFF -define QT6BASE_BUILD_CMDS - $(TARGET_MAKE_ENV) $(BR2_CMAKE) --build $(QT6BASE_BUILDDIR) -endef - -define QT6BASE_INSTALL_STAGING_CMDS - $(TARGET_MAKE_ENV) DESTDIR=$(STAGING_DIR) $(BR2_CMAKE) --install $(QT6BASE_BUILDDIR) -endef - -define QT6BASE_INSTALL_TARGET_CMDS - $(TARGET_MAKE_ENV) DESTDIR=$(TARGET_DIR) $(BR2_CMAKE) --install $(QT6BASE_BUILDDIR) -endef - HOST_QT6BASE_DEPENDENCIES = \ - host-ninja \ host-double-conversion \ host-libb2 \ host-pcre2 \ host-zlib HOST_QT6BASE_CONF_OPTS = \ - -GNinja \ -DFEATURE_gui=OFF \ -DFEATURE_concurrent=OFF \ -DFEATURE_xml=ON \ @@ -110,14 +96,6 @@ HOST_QT6BASE_CONF_OPTS = \ -DFEATURE_system_pcre2=ON \ -DFEATURE_system_zlib=ON -define HOST_QT6BASE_BUILD_CMDS - $(HOST_MAKE_ENV) $(BR2_CMAKE) --build $(HOST_QT6BASE_BUILDDIR) -endef - -define HOST_QT6BASE_INSTALL_CMDS - $(HOST_MAKE_ENV) $(BR2_CMAKE) --install $(HOST_QT6BASE_BUILDDIR) -endef - # Conditional blocks below are ordered by alphabetic ordering of the # BR2_PACKAGE_* option. @@ -149,6 +127,13 @@ QT6BASE_CONF_OPTS += \ -DFEATURE_vulkan=OFF QT6BASE_DEPENDENCIES += freetype +ifeq ($(BR2_PACKAGE_QT6BASE_VULKAN),y) +QT6BASE_DEPENDENCIES += vulkan-headers vulkan-loader +QT6BASE_CONFIGURE_OPTS += -DFEATURE_vulkan=ON +else +QT6BASE_CONFIGURE_OPTS += -DFEATURE_vulkan=OFF +endif + ifeq ($(BR2_PACKAGE_QT6BASE_LINUXFB),y) QT6BASE_CONF_OPTS += -DFEATURE_linuxfb=ON else diff --git a/package/qt6/qt6core5compat/Config.in b/package/qt6/qt6core5compat/Config.in new file mode 100644 index 000000000000..9d9e08760125 --- /dev/null +++ b/package/qt6/qt6core5compat/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_QT6CORE5COMPAT + bool "qt6core5compat" + select BR2_PACKAGE_QT6BASE_XML + help + Qt is a cross-platform application and UI framework for + developers using C++. + + The Qt 5 Core Compat module contains the Qt 5 Core APIs that + were removed in Qt 6. The module facilitates the transition + to Qt 6. + + https://doc.qt.io/qt-6/qtcore5-index.html diff --git a/package/qt6/qt6core5compat/qt6core5compat.hash b/package/qt6/qt6core5compat/qt6core5compat.hash new file mode 100644 index 000000000000..0735df3af287 --- /dev/null +++ b/package/qt6/qt6core5compat/qt6core5compat.hash @@ -0,0 +1,10 @@ +# Hash from: https://download.qt.io/official_releases/qt/6.4/6.4.3/submodules/qtserialport-everywhere-src-6.4.3.tar.xz.sha256 +sha256 d4b249abb823d575eee9045c24d924ba8d1276e6be7735b287689991d998aa7a qt5compat-everywhere-src-6.4.3.tar.xz + +# Hashes for license files: +sha256 9f0490f18656c6f2435bd14f603ef0c96434d1825615363dce43abb42ed1dcce LICENSES/BSD-3-Clause.txt +sha256 110535522396708cea37c72a802c5e7e81391139f5f7985631c93ef242b206a4 LICENSES/GFDL-1.3-no-invariants-only.txt +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSES/GPL-2.0-only.txt +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSES/GPL-3.0-only.txt +sha256 da7eabb7bafdf7d3ae5e9f223aa5bdc1eece45ac569dc21b3b037520b4464768 LICENSES/LGPL-3.0-only.txt +sha256 40678d338ce53cd93f8b22b281a2ecbcaa3ee65ce60b25ffb0c462b0530846b2 LICENSES/Qt-GPL-exception-1.0.txt diff --git a/package/qt6/qt6core5compat/qt6core5compat.mk b/package/qt6/qt6core5compat/qt6core5compat.mk new file mode 100644 index 000000000000..0b6d9369cb1d --- /dev/null +++ b/package/qt6/qt6core5compat/qt6core5compat.mk @@ -0,0 +1,39 @@ +################################################################################ +# +# qt6core5compat +# +################################################################################ + +QT6CORE5COMPAT_VERSION = $(QT6_VERSION) +QT6CORE5COMPAT_SITE = $(QT6_SITE) +QT6CORE5COMPAT_SOURCE = qt5compat-$(QT6_SOURCE_TARBALL_PREFIX)-$(QT6CORE5COMPAT_VERSION).tar.xz +QT6CORE5COMPAT_INSTALL_STAGING = YES +QT6CORE5COMPAT_SUPPORTS_IN_SOURCE_BUILD = NO + +QT6CORE5COMPAT_CMAKE_BACKEND = ninja + +QT6CORE5COMPAT_LICENSE = \ + GPL-2.0+ or LGPL-3.0, \ + GPL-3.0 with exception (tools), \ + GFDL-1.3 (docs), \ + BSD-3-Clause + +QT6CORE5COMPAT_LICENSE_FILES = \ + LICENSES/BSD-3-Clause.txt \ + LICENSES/GFDL-1.3-no-invariants-only.txt \ + LICENSES/GPL-2.0-only.txt \ + LICENSES/GPL-3.0-only.txt \ + LICENSES/LGPL-3.0-only.txt \ + LICENSES/Qt-GPL-exception-1.0.txt + +QT6CORE5COMPAT_CONF_OPTS = \ + -DQT_HOST_PATH=$(HOST_DIR) \ + -DBUILD_WITH_PCH=OFF \ + -DQT_BUILD_EXAMPLES=OFF \ + -DQT_BUILD_TESTS=OFF + +QT6CORE5COMPAT_DEPENDENCIES = \ + host-pkgconf \ + qt6base + +$(eval $(cmake-package)) diff --git a/package/qt6/qt6serialbus/qt6serialbus.hash b/package/qt6/qt6serialbus/qt6serialbus.hash index be01f13363e6..98c89319626f 100644 --- a/package/qt6/qt6serialbus/qt6serialbus.hash +++ b/package/qt6/qt6serialbus/qt6serialbus.hash @@ -1,5 +1,5 @@ -# Hash from: https://download.qt.io/official_releases/qt/6.4/6.4.2/submodules/qtserialbus-everywhere-src-6.4.2.tar.xz.sha256 -sha256 604013657c7327899aa50748deb4bcb5e545ab37ff4964795b9e6f617d48bf1b qtserialbus-everywhere-src-6.4.2.tar.xz +# Hash from: https://download.qt.io/official_releases/qt/6.4/6.4.3/submodules/qtserialbus-everywhere-src-6.4.3.tar.xz.sha256 +sha256 b6446a7516d1f04e561c00f9c50ce4d39dad72150f067722ba759f00b4b34366 qtserialbus-everywhere-src-6.4.3.tar.xz # Hashes for license files: sha256 9f0490f18656c6f2435bd14f603ef0c96434d1825615363dce43abb42ed1dcce LICENSES/BSD-3-Clause.txt diff --git a/package/qt6/qt6serialbus/qt6serialbus.mk b/package/qt6/qt6serialbus/qt6serialbus.mk index 071773638790..631531e14ff7 100644 --- a/package/qt6/qt6serialbus/qt6serialbus.mk +++ b/package/qt6/qt6serialbus/qt6serialbus.mk @@ -10,6 +10,8 @@ QT6SERIALBUS_SOURCE = qtserialbus-$(QT6_SOURCE_TARBALL_PREFIX)-$(QT6SERIALBUS_VE QT6SERIALBUS_INSTALL_STAGING = YES QT6SERIALBUS_SUPPORTS_IN_SOURCE_BUILD = NO +QT6SERIALBUS_CMAKE_BACKEND = ninja + QT6SERIALBUS_LICENSE = \ GPL-2.0+ or LGPL-3.0, \ GPL-3.0, GFDL-1.3 no invariants (docs) @@ -21,7 +23,6 @@ QT6SERIALBUS_LICENSE_FILES = \ LICENSES/GFDL-1.3-no-invariants-only.txt QT6SERIALBUS_CONF_OPTS = \ - -GNinja \ -DQT_HOST_PATH=$(HOST_DIR) \ -DBUILD_WITH_PCH=OFF \ -DQT_BUILD_EXAMPLES=OFF \ @@ -30,16 +31,4 @@ QT6SERIALBUS_CONF_OPTS = \ QT6SERIALBUS_DEPENDENCIES = \ qt6serialport -define QT6SERIALBUS_BUILD_CMDS - $(TARGET_MAKE_ENV) $(BR2_CMAKE) --build $(QT6SERIALBUS_BUILDDIR) -endef - -define QT6SERIALBUS_INSTALL_STAGING_CMDS - $(TARGET_MAKE_ENV) DESTDIR=$(STAGING_DIR) $(BR2_CMAKE) --install $(QT6SERIALBUS_BUILDDIR) -endef - -define QT6SERIALBUS_INSTALL_TARGET_CMDS - $(TARGET_MAKE_ENV) DESTDIR=$(TARGET_DIR) $(BR2_CMAKE) --install $(QT6SERIALBUS_BUILDDIR) -endef - $(eval $(cmake-package)) diff --git a/package/qt6/qt6serialport/qt6serialport.hash b/package/qt6/qt6serialport/qt6serialport.hash index 1eaa3d615056..9341978d8621 100644 --- a/package/qt6/qt6serialport/qt6serialport.hash +++ b/package/qt6/qt6serialport/qt6serialport.hash @@ -1,5 +1,5 @@ -# Hash from: https://download.qt.io/official_releases/qt/6.4/6.4.2/submodules/qtserialport-everywhere-src-6.4.2.tar.xz.sha256 -sha256 336d95919037800184b3c3de8ccb6f62954b20f3756c05adce8d5010504340fa qtserialport-everywhere-src-6.4.2.tar.xz +# Hash from: https://download.qt.io/official_releases/qt/6.4/6.4.3/submodules/qtserialport-everywhere-src-6.4.3.tar.xz.sha256 +sha256 5f97ad9067efa39a8a2a39fbbc1e03d2191f305733d9c2f3060f8017ecfc95de qtserialport-everywhere-src-6.4.3.tar.xz # Hashes for license files: sha256 9f0490f18656c6f2435bd14f603ef0c96434d1825615363dce43abb42ed1dcce LICENSES/BSD-3-Clause.txt diff --git a/package/qt6/qt6serialport/qt6serialport.mk b/package/qt6/qt6serialport/qt6serialport.mk index 497719d4ec73..bdb16dd892ef 100644 --- a/package/qt6/qt6serialport/qt6serialport.mk +++ b/package/qt6/qt6serialport/qt6serialport.mk @@ -10,6 +10,8 @@ QT6SERIALPORT_SOURCE = qtserialport-$(QT6_SOURCE_TARBALL_PREFIX)-$(QT6SERIALPORT QT6SERIALPORT_INSTALL_STAGING = YES QT6SERIALPORT_SUPPORTS_IN_SOURCE_BUILD = NO +QT6SERIALPORT_CMAKE_BACKEND = ninja + QT6SERIALPORT_LICENSE = \ GPL-2.0+ or LGPL-3.0, \ GPL-3.0 with exception (tools), \ @@ -25,7 +27,6 @@ QT6SERIALPORT_LICENSE_FILES = \ LICENSES/Qt-GPL-exception-1.0.txt QT6SERIALPORT_CONF_OPTS = \ - -GNinja \ -DQT_HOST_PATH=$(HOST_DIR) \ -DBUILD_WITH_PCH=OFF \ -DQT_BUILD_EXAMPLES=OFF \ @@ -33,19 +34,6 @@ QT6SERIALPORT_CONF_OPTS = \ QT6SERIALPORT_DEPENDENCIES = \ host-pkgconf \ - host-ninja \ qt6base -define QT6SERIALPORT_BUILD_CMDS - $(TARGET_MAKE_ENV) $(BR2_CMAKE) --build $(QT6SERIALPORT_BUILDDIR) -endef - -define QT6SERIALPORT_INSTALL_STAGING_CMDS - $(TARGET_MAKE_ENV) DESTDIR=$(STAGING_DIR) $(BR2_CMAKE) --install $(QT6SERIALPORT_BUILDDIR) -endef - -define QT6SERIALPORT_INSTALL_TARGET_CMDS - $(TARGET_MAKE_ENV) DESTDIR=$(TARGET_DIR) $(BR2_CMAKE) --install $(QT6SERIALPORT_BUILDDIR) -endef - $(eval $(cmake-package)) diff --git a/package/qt6/qt6svg/Config.in b/package/qt6/qt6svg/Config.in new file mode 100644 index 000000000000..179101c97f6b --- /dev/null +++ b/package/qt6/qt6svg/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_QT6SVG + bool "qt6svg" + select BR2_PACKAGE_QT6BASE_GUI + help + Qt is a cross-platform application and UI framework for + developers using C++. + + Qt SVG provides classes for rendering and displaying SVG + drawings in widgets and on other paint devices. + + https://doc.qt.io/qt-6/qtsvg-index.html diff --git a/package/qt6/qt6svg/qt6svg.hash b/package/qt6/qt6svg/qt6svg.hash new file mode 100644 index 000000000000..bb239cb012ad --- /dev/null +++ b/package/qt6/qt6svg/qt6svg.hash @@ -0,0 +1,10 @@ +# Hash from: https://download.qt.io/official_releases/qt/6.4/6.4.3/submodules/qtsvg-everywhere-src-6.4.3.tar.xz.sha256 +sha256 88315f886cf81898705e487cedba6e6160724359d23c518c92c333c098879a4a qtsvg-everywhere-src-6.4.3.tar.xz + +# Hashes for license files: +sha256 9f0490f18656c6f2435bd14f603ef0c96434d1825615363dce43abb42ed1dcce LICENSES/BSD-3-Clause.txt +sha256 110535522396708cea37c72a802c5e7e81391139f5f7985631c93ef242b206a4 LICENSES/GFDL-1.3-no-invariants-only.txt +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSES/GPL-2.0-only.txt +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSES/GPL-3.0-only.txt +sha256 da7eabb7bafdf7d3ae5e9f223aa5bdc1eece45ac569dc21b3b037520b4464768 LICENSES/LGPL-3.0-only.txt +sha256 40678d338ce53cd93f8b22b281a2ecbcaa3ee65ce60b25ffb0c462b0530846b2 LICENSES/Qt-GPL-exception-1.0.txt diff --git a/package/qt6/qt6svg/qt6svg.mk b/package/qt6/qt6svg/qt6svg.mk new file mode 100644 index 000000000000..25e87dd20879 --- /dev/null +++ b/package/qt6/qt6svg/qt6svg.mk @@ -0,0 +1,39 @@ +################################################################################ +# +# qt6svg +# +################################################################################ + +QT6SVG_VERSION = $(QT6_VERSION) +QT6SVG_SITE = $(QT6_SITE) +QT6SVG_SOURCE = qtsvg-$(QT6_SOURCE_TARBALL_PREFIX)-$(QT6SVG_VERSION).tar.xz +QT6SVG_INSTALL_STAGING = YES +QT6SVG_SUPPORTS_IN_SOURCE_BUILD = NO + +QT6SVG_CMAKE_BACKEND = ninja + +QT6SVG_LICENSE = \ + GPL-2.0+ or LGPL-3.0, \ + GPL-3.0 with exception (tools), \ + GFDL-1.3 (docs), \ + BSD-3-Clause + +QT6SVG_LICENSE_FILES = \ + LICENSES/BSD-3-Clause.txt \ + LICENSES/GFDL-1.3-no-invariants-only.txt \ + LICENSES/GPL-2.0-only.txt \ + LICENSES/GPL-3.0-only.txt \ + LICENSES/LGPL-3.0-only.txt \ + LICENSES/Qt-GPL-exception-1.0.txt + +QT6SVG_CONF_OPTS = \ + -DQT_HOST_PATH=$(HOST_DIR) \ + -DBUILD_WITH_PCH=OFF \ + -DQT_BUILD_EXAMPLES=OFF \ + -DQT_BUILD_TESTS=OFF + +QT6SVG_DEPENDENCIES = \ + host-pkgconf \ + qt6base + +$(eval $(cmake-package)) diff --git a/package/quazip/Config.in b/package/quazip/Config.in index bba5eddf3d43..4c7a187571c6 100644 --- a/package/quazip/Config.in +++ b/package/quazip/Config.in @@ -1,8 +1,9 @@ config BR2_PACKAGE_QUAZIP bool "quazip" - depends on BR2_PACKAGE_QT5 + depends on BR2_PACKAGE_QT5 || BR2_PACKAGE_QT6 select BR2_PACKAGE_ZLIB select BR2_PACKAGE_ZLIB_FORCE_LIBZLIB + select BR2_PACKAGE_QT6CORE5COMPAT if BR2_PACKAGE_QT6 help QuaZIP is a simple C++ wrapper over Gilles Vollant's ZIP/UNZIP package that can be used to access ZIP diff --git a/package/quazip/quazip.hash b/package/quazip/quazip.hash index 16d299fdf4d5..1c5c614caf2d 100644 --- a/package/quazip/quazip.hash +++ b/package/quazip/quazip.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 c1239559cd6860cab80a0fd81f4204e606f9324f702dab6166b0960676ee1754 quazip-1.3.tar.gz +sha256 79633fd3a18e2d11a7d5c40c4c79c1786ba0c74b59ad752e8429746fe1781dd6 quazip-1.4.tar.gz sha256 b455b21b0d31d6e51993f1fb7e0694c75fa0eb0519a9ea62e4815fcf48b140b0 COPYING diff --git a/package/quazip/quazip.mk b/package/quazip/quazip.mk index 70534b63b371..665058d89071 100644 --- a/package/quazip/quazip.mk +++ b/package/quazip/quazip.mk @@ -4,12 +4,18 @@ # ################################################################################ -QUAZIP_VERSION = 1.3 +QUAZIP_VERSION = 1.4 QUAZIP_SITE = $(call github,stachenov,quazip,v$(QUAZIP_VERSION)) QUAZIP_INSTALL_STAGING = YES -QUAZIP_DEPENDENCIES = \ - zlib \ - qt5base +QUAZIP_DEPENDENCIES = zlib + +ifeq ($(BR2_PACKAGE_QT5BASE),y) +QUAZIP_DEPENDENCIES += qt5base +endif +ifeq ($(BR2_PACKAGE_QT6BASE),y) +QUAZIP_DEPENDENCIES += qt6base qt6core5compat +endif + QUAZIP_LICENSE = LGPL-2.1 QUAZIP_LICENSE_FILES = COPYING QUAZIP_CPE_ID_VENDOR = quazip_project diff --git a/package/quickjs/Config.in b/package/quickjs/Config.in index dc466241bac0..fd174bc65738 100644 --- a/package/quickjs/Config.in +++ b/package/quickjs/Config.in @@ -1,6 +1,8 @@ config BR2_PACKAGE_QUICKJS bool "quickjs" + depends on !BR2_microblaze # fenv.h lacks FE_{DOWN,UP}WARD depends on !BR2_nios2 # fenv.h lacks FE_{DOWN,UP}WARD on nios2 + depends on !BR2_sh # fenv.h lacks FE_{DOWN,UP}WARD depends on !BR2_STATIC_LIBS # No way to check for fenv support. depends on !BR2_TOOLCHAIN_USES_UCLIBC @@ -15,7 +17,9 @@ config BR2_PACKAGE_QUICKJS https://bellard.org/quickjs/ comment "quickjs needs a glibc or musl toolchain w/ gcc >= 4.9, host gcc >= 4.9, dynamic library" + depends on !BR2_microblaze depends on !BR2_nios2 + depends on !BR2_sh depends on BR2_USE_MMU depends on BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_UCLIBC || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || !BR2_HOST_GCC_AT_LEAST_4_9 diff --git a/package/rabbitmq-c/0001-Add-option-to-read-username-password-from-file.patch b/package/rabbitmq-c/0001-Add-option-to-read-username-password-from-file.patch new file mode 100644 index 000000000000..347063cfb3b0 --- /dev/null +++ b/package/rabbitmq-c/0001-Add-option-to-read-username-password-from-file.patch @@ -0,0 +1,130 @@ +From 463054383fbeef889b409a7f843df5365288e2a0 Mon Sep 17 00:00:00 2001 +From: Christian Kastner +Date: Tue, 13 Jun 2023 14:21:52 +0200 +Subject: [PATCH] Add option to read username/password from file (#781) + +* Add option to read username/password from file + +Upstream: https://github.com/alanxz/rabbitmq-c/commit/463054383fbeef889b409a7f843df5365288e2a0 +Signed-off-by: Fabrice Fontaine +--- + tools/common.c | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 66 insertions(+) + +diff --git a/tools/common.c b/tools/common.c +index 73b47e25..7efe557b 100644 +--- a/tools/common.c ++++ b/tools/common.c +@@ -18,6 +18,11 @@ + #include "compat.h" + #endif + ++/* For when reading auth data from a file */ ++#define MAXAUTHTOKENLEN 128 ++#define USERNAMEPREFIX "username:" ++#define PASSWORDPREFIX "password:" ++ + void die(const char *fmt, ...) { + va_list ap; + va_start(ap, fmt); +@@ -125,6 +130,7 @@ static char *amqp_vhost; + static char *amqp_username; + static char *amqp_password; + static int amqp_heartbeat = 0; ++static char *amqp_authfile; + #ifdef WITH_SSL + static int amqp_ssl = 0; + static char *amqp_cacert = "/etc/ssl/certs/cacert.pem"; +@@ -147,6 +153,8 @@ struct poptOption connect_options[] = { + "the password to login with", "password"}, + {"heartbeat", 0, POPT_ARG_INT, &amqp_heartbeat, 0, + "heartbeat interval, set to 0 to disable", "heartbeat"}, ++ {"authfile", 0, POPT_ARG_STRING, &amqp_authfile, 0, ++ "path to file containing username/password for authentication", "file"}, + #ifdef WITH_SSL + {"ssl", 0, POPT_ARG_NONE, &amqp_ssl, 0, "connect over SSL/TLS", NULL}, + {"cacert", 0, POPT_ARG_STRING, &amqp_cacert, 0, +@@ -158,6 +166,50 @@ struct poptOption connect_options[] = { + #endif /* WITH_SSL */ + {NULL, '\0', 0, NULL, 0, NULL, NULL}}; + ++void read_authfile(const char *path) { ++ size_t n; ++ FILE *fp = NULL; ++ char token[MAXAUTHTOKENLEN]; ++ ++ if ((amqp_username = malloc(MAXAUTHTOKENLEN)) == NULL || ++ (amqp_password = malloc(MAXAUTHTOKENLEN)) == NULL) { ++ die("Out of memory"); ++ } else if ((fp = fopen(path, "r")) == NULL) { ++ die("Could not read auth data file %s", path); ++ } ++ ++ if (fgets(token, MAXAUTHTOKENLEN, fp) == NULL || ++ strncmp(token, USERNAMEPREFIX, strlen(USERNAMEPREFIX))) { ++ die("Malformed auth file (missing username)"); ++ } ++ strncpy(amqp_username, &token[strlen(USERNAMEPREFIX)], MAXAUTHTOKENLEN); ++ /* Missing newline means token was cut off */ ++ n = strlen(amqp_username); ++ if (amqp_username[n - 1] != '\n') { ++ die("Username too long"); ++ } else { ++ amqp_username[n - 1] = '\0'; ++ } ++ ++ if (fgets(token, MAXAUTHTOKENLEN, fp) == NULL || ++ strncmp(token, PASSWORDPREFIX, strlen(PASSWORDPREFIX))) { ++ die("Malformed auth file (missing password)"); ++ } ++ strncpy(amqp_password, &token[strlen(PASSWORDPREFIX)], MAXAUTHTOKENLEN); ++ /* Missing newline means token was cut off */ ++ n = strlen(amqp_password); ++ if (amqp_password[n - 1] != '\n') { ++ die("Password too long"); ++ } else { ++ amqp_password[n - 1] = '\0'; ++ } ++ ++ (void)fgetc(fp); ++ if (!feof(fp)) { ++ die("Malformed auth file (trailing data)"); ++ } ++} ++ + static void init_connection_info(struct amqp_connection_info *ci) { + ci->user = NULL; + ci->password = NULL; +@@ -237,6 +289,8 @@ static void init_connection_info(struct amqp_connection_info *ci) { + if (amqp_username) { + if (amqp_url) { + die("--username and --url options cannot be used at the same time"); ++ } else if (amqp_authfile) { ++ die("--username and --authfile options cannot be used at the same time"); + } + + ci->user = amqp_username; +@@ -245,11 +299,23 @@ static void init_connection_info(struct amqp_connection_info *ci) { + if (amqp_password) { + if (amqp_url) { + die("--password and --url options cannot be used at the same time"); ++ } else if (amqp_authfile) { ++ die("--password and --authfile options cannot be used at the same time"); + } + + ci->password = amqp_password; + } + ++ if (amqp_authfile) { ++ if (amqp_url) { ++ die("--authfile and --url options cannot be used at the same time"); ++ } ++ ++ read_authfile(amqp_authfile); ++ ci->user = amqp_username; ++ ci->password = amqp_password; ++ } ++ + if (amqp_vhost) { + if (amqp_url) { + die("--vhost and --url options cannot be used at the same time"); diff --git a/package/rabbitmq-c/rabbitmq-c.hash b/package/rabbitmq-c/rabbitmq-c.hash index dc1406d3d52a..66768ef34f58 100644 --- a/package/rabbitmq-c/rabbitmq-c.hash +++ b/package/rabbitmq-c/rabbitmq-c.hash @@ -1,3 +1,4 @@ # Locally calculated -sha256 437d45e0e35c18cf3e59bcfe5dfe37566547eb121e69fca64b98f5d2c1c2d424 rabbitmq-c-0.11.0.tar.gz -sha256 94a12c906acb31a66c2c8a6c1b6e46cab52bc5694c5ada2a06d86b05d3d3f422 LICENSE-MIT +sha256 8b224e41bba504fc52b02f918d8df7e4bf5359d493cbbff36c06078655c676e6 rabbitmq-c-0.13.0.tar.gz +sha256 3111fdaa26e86dd844d7c6cbb2723d0ed31702a840978ef116c86963c2429b0f LICENSE +sha256 defee723621ff1c556539af42780f449f258e47e3dcc8254bcbc095863f02b7c README.md diff --git a/package/rabbitmq-c/rabbitmq-c.mk b/package/rabbitmq-c/rabbitmq-c.mk index 18ecaa309879..cac0f67ddc0a 100644 --- a/package/rabbitmq-c/rabbitmq-c.mk +++ b/package/rabbitmq-c/rabbitmq-c.mk @@ -4,16 +4,19 @@ # ################################################################################ -RABBITMQ_C_VERSION = 0.11.0 +RABBITMQ_C_VERSION = 0.13.0 RABBITMQ_C_SITE = $(call github,alanxz,rabbitmq-c,v$(RABBITMQ_C_VERSION)) RABBITMQ_C_LICENSE = MIT -RABBITMQ_C_LICENSE_FILES = LICENSE-MIT +RABBITMQ_C_LICENSE_FILES = LICENSE README.md RABBITMQ_C_CPE_ID_VENDOR = rabbitmq-c_project RABBITMQ_C_INSTALL_STAGING = YES RABBITMQ_C_CONF_OPTS = \ -DBUILD_API_DOCS=OFF \ -DBUILD_TOOLS_DOCS=OFF +# 0001-Add-option-to-read-username-password-from-file.patch +RABBITMQ_C_IGNORE_CVES += CVE-2023-35789 + # BUILD_SHARED_LIBS is handled in pkg-cmake.mk as it is a generic cmake variable ifeq ($(BR2_SHARED_STATIC_LIBS),y) RABBITMQ_C_CONF_OPTS += -DBUILD_STATIC_LIBS=ON diff --git a/package/racehound/Config.in b/package/racehound/Config.in index d13f90adb487..5b8bdc77bc04 100644 --- a/package/racehound/Config.in +++ b/package/racehound/Config.in @@ -5,7 +5,6 @@ config BR2_PACKAGE_RACEHOUND depends on BR2_USE_WCHAR # elfutils depends on !BR2_STATIC_LIBS # elfutils depends on BR2_TOOLCHAIN_HAS_THREADS # elfutils - depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils # only x86/x86_64 supported depends on BR2_i386 || BR2_x86_64 select BR2_PACKAGE_ELFUTILS @@ -30,8 +29,7 @@ comment "racehound needs an Linux kernel >= 3.14 to be built" depends on !BR2_LINUX_KERNEL depends on BR2_i386 || BR2_x86_64 -comment "racehound needs a uClibc or glibc toolchain w/ C++, wchar, dynamic library, threads" +comment "racehound needs a toolchain w/ C++, wchar, dynamic library, threads" depends on BR2_i386 || BR2_x86_64 depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || BR2_STATIC_LIBS \ - || !BR2_TOOLCHAIN_HAS_THREADS \ - || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) + || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/ramspeed/Config.in b/package/ramspeed/Config.in index b236329a84d1..bd0438ffe1e8 100644 --- a/package/ramspeed/Config.in +++ b/package/ramspeed/Config.in @@ -1,5 +1,9 @@ +comment "ramspeed needs a toolchain not affected by GCC bug 43744" + depends on BR2_TOOLCHAIN_HAS_GCC_BUG_43744 + config BR2_PACKAGE_RAMSPEED bool "ramspeed" + depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_43744 help RAMspeed is a free open source command line utility to measure cache and memory performance. diff --git a/package/ranger/0001-colorscheme-check-for-compiled-python-files.patch b/package/ranger/0001-colorscheme-check-for-compiled-python-files.patch deleted file mode 100644 index bde3fee035f4..000000000000 --- a/package/ranger/0001-colorscheme-check-for-compiled-python-files.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 654e3116825c4d12340613196279fb13a5662113 Mon Sep 17 00:00:00 2001 -From: Thijs Vermeir -Date: Tue, 20 Oct 2015 18:13:36 +0200 -Subject: [PATCH] colorscheme: check for compiled python files - -Some systems only provide *.pyc files - -Patch accepted upstream: -https://github.com/hut/ranger/commit/d69f1ed3207c785d1a39ddd2992f6abb021b7540 - -Signed-off-by: Thijs Vermeir ---- - ranger/gui/colorscheme.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ranger/gui/colorscheme.py b/ranger/gui/colorscheme.py -index d6afcac..d2b3b2d 100644 ---- a/ranger/gui/colorscheme.py -+++ b/ranger/gui/colorscheme.py -@@ -86,7 +86,7 @@ def _colorscheme_name_to_class(signal): - usecustom = not ranger.arg.clean - - def exists(colorscheme): -- return os.path.exists(colorscheme + '.py') -+ return os.path.exists(colorscheme + '.py') or os.path.exists(colorscheme + '.pyc') - - def is_scheme(x): - try: --- -2.6.1 - diff --git a/package/ranger/Config.in b/package/ranger/Config.in index a379002f9505..056f806c33cd 100644 --- a/package/ranger/Config.in +++ b/package/ranger/Config.in @@ -13,7 +13,7 @@ config BR2_PACKAGE_RANGER file launcher that is good at automatically finding out which program to use for what file type. - http://ranger.nongnu.org + https://ranger.github.io comment "ranger needs a toolchain w/ wchar, threads, dynamic library" depends on BR2_USE_MMU diff --git a/package/ranger/ranger.hash b/package/ranger/ranger.hash index dee088f229a6..b1ae8a8b8f1b 100644 --- a/package/ranger/ranger.hash +++ b/package/ranger/ranger.hash @@ -1,4 +1,5 @@ # Locally calculated after checking pgp signature -sha256 94f6e342daee4445f15db5a7440a11138487c49cc25da0c473bbf1b8978f5b79 ranger-1.7.2.tar.gz +sha256 ce088a04c91c25263a9675dc5c43514b7ec1b38c8ea43d9a9d00923ff6cdd251 ranger-1.9.3.tar.gz # Locally computed -sha256 fa3b40d44066b033ac8a134b792a4a4a1915aa7bc7757098e0f67080648a3271 AUTHORS +sha256 ef973501404bd0556fd47324411fc69679f30daf7128e042eafa64e2c4f9ecb9 AUTHORS +sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE diff --git a/package/ranger/ranger.mk b/package/ranger/ranger.mk index 91b30f216e0e..d8a55b1fc209 100644 --- a/package/ranger/ranger.mk +++ b/package/ranger/ranger.mk @@ -4,11 +4,11 @@ # ################################################################################ -RANGER_VERSION = 1.7.2 -RANGER_SITE = http://ranger.nongnu.org -RANGER_SETUP_TYPE = distutils +RANGER_VERSION = 1.9.3 +RANGER_SITE = https://ranger.github.io +RANGER_SETUP_TYPE = setuptools RANGER_LICENSE = GPL-3.0 -RANGER_LICENSE_FILES = AUTHORS +RANGER_LICENSE_FILES = AUTHORS LICENSE # The ranger script request python to be called with -O (optimize generated # bytecode slightly; also PYTHONOPTIMIZE=x). This implicitly requires the python @@ -16,7 +16,7 @@ RANGER_LICENSE_FILES = AUTHORS # files are installed. define RANGER_DO_NOT_GENERATE_BYTECODE_AT_RUNTIME - $(SED) 's%/usr/bin/python -O%/usr/bin/python%g' $(@D)/scripts/ranger + $(SED) 's%/usr/bin/python -O%/usr/bin/python%g' $(@D)/ranger.py endef ifeq ($(BR2_PACKAGE_PYTHON3_PYC_ONLY),y) diff --git a/package/raptor/0002-Calcualte-max-nspace-declarations-correctly-for-XML-.patch b/package/raptor/0002-Calcualte-max-nspace-declarations-correctly-for-XML-.patch deleted file mode 100644 index 406e265cf33d..000000000000 --- a/package/raptor/0002-Calcualte-max-nspace-declarations-correctly-for-XML-.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 590681e546cd9aa18d57dc2ea1858cb734a3863f Mon Sep 17 00:00:00 2001 -From: Dave Beckett -Date: Sun, 16 Apr 2017 23:15:12 +0100 -Subject: [PATCH] Calcualte max nspace declarations correctly for XML writer - -(raptor_xml_writer_start_element_common): Calculate max including for -each attribute a potential name and value. - -Fixes Issues #0000617 http://bugs.librdf.org/mantis/view.php?id=617 -and #0000618 http://bugs.librdf.org/mantis/view.php?id=618 - -[Peter: fixes CVE-2017-18926, upstream: - https://github.com/dajobe/raptor/commit/590681e546cd9aa18d57dc2ea1858cb734a3863f] -Signed-off-by: Peter Korsgaard ---- - src/raptor_xml_writer.c | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - -diff --git a/src/raptor_xml_writer.c b/src/raptor_xml_writer.c -index 693b9468..0d3a36a5 100644 ---- a/src/raptor_xml_writer.c -+++ b/src/raptor_xml_writer.c -@@ -181,9 +181,10 @@ raptor_xml_writer_start_element_common(raptor_xml_writer* xml_writer, - size_t nspace_declarations_count = 0; - unsigned int i; - -- /* max is 1 per element and 1 for each attribute + size of declared */ - if(nstack) { -- int nspace_max_count = element->attribute_count+1; -+ int nspace_max_count = element->attribute_count * 2; /* attr and value */ -+ if(element->name->nspace) -+ nspace_max_count++; - if(element->declared_nspaces) - nspace_max_count += raptor_sequence_size(element->declared_nspaces); - if(element->xml_language) -@@ -237,7 +238,7 @@ raptor_xml_writer_start_element_common(raptor_xml_writer* xml_writer, - } - } - -- /* Add the attribute + value */ -+ /* Add the attribute's value */ - nspace_declarations[nspace_declarations_count].declaration= - raptor_qname_format_as_xml(element->attributes[i], - &nspace_declarations[nspace_declarations_count].length); --- -2.20.1 - diff --git a/package/raptor/0002-Remove-the-access-to-entities-checked-private-symbol.patch b/package/raptor/0002-Remove-the-access-to-entities-checked-private-symbol.patch new file mode 100644 index 000000000000..cd9542a9a902 --- /dev/null +++ b/package/raptor/0002-Remove-the-access-to-entities-checked-private-symbol.patch @@ -0,0 +1,35 @@ +From 4dbc4c1da2a033c497d84a1291c46f416a9cac51 Mon Sep 17 00:00:00 2001 +From: David Anes +Date: Thu, 4 May 2023 11:54:02 +0200 +Subject: [PATCH] Remove the access to entities 'checked' private symbol for + libxml2 2.11.0 + +Since version 2.11.0, some private symbols that were never intended +as public API/ABI have been removed from libxml2, therefore the field +'checked' is no longer present and raptor fails to build in this +scenario. + +Upstream: https://github.com/dajobe/raptor/commit/4dbc4c1da2a033c497d84a1291c46f416a9cac51 + +Signed-off-by: Bernd Kuhls +--- + src/raptor_libxml.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/raptor_libxml.c b/src/raptor_libxml.c +index 538c2c8e..8bcee139 100644 +--- a/src/raptor_libxml.c ++++ b/src/raptor_libxml.c +@@ -246,10 +246,11 @@ raptor_libxml_getEntity(void* user_data, const xmlChar *name) + + ret->owner = 1; + +-#if LIBXML_VERSION >= 20627 ++#if LIBXML_VERSION >= 20627 && LIBXML_VERSION < 21100 + /* Checked field was released in 2.6.27 on 2006-10-25 + * http://git.gnome.org/browse/libxml2/commit/?id=a37a6ad91a61d168ecc4b29263def3363fff4da6 + * ++ * and was later removed in version 2.11.0 + */ + + /* Mark this entity as having been checked - never do this again */ diff --git a/package/raptor/0003-XML-Writer-compare-namespace-declarations-correctly.patch b/package/raptor/0003-XML-Writer-compare-namespace-declarations-correctly.patch deleted file mode 100644 index a48a583cb1e6..000000000000 --- a/package/raptor/0003-XML-Writer-compare-namespace-declarations-correctly.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 4f5dbbffcc1c6cf0398bd03450453289a0979dea Mon Sep 17 00:00:00 2001 -From: Dave Beckett -Date: Sat, 18 Sep 2021 17:40:00 -0700 -Subject: [PATCH] XML Writer : compare namespace declarations correctly - -Apply patch from -0001-CVE-2020-25713-raptor2-malformed-input-file-can-lead.patch.1 -that fixes Issue#0000650 https://bugs.librdf.org/mantis/view.php?id=650 -which overwrote heap during XML writing in parse type literal -content. This was detected with clang asan. - -Thanks to Michael Stahl / mst2 for the fix. - -[Retrieved from: -https://github.com/dajobe/raptor/commit/4f5dbbffcc1c6cf0398bd03450453289a0979dea] -Signed-off-by: Fabrice Fontaine ---- - src/raptor_xml_writer.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/raptor_xml_writer.c b/src/raptor_xml_writer.c -index 56993dc3..4426d38c 100644 ---- a/src/raptor_xml_writer.c -+++ b/src/raptor_xml_writer.c -@@ -227,7 +227,7 @@ raptor_xml_writer_start_element_common(raptor_xml_writer* xml_writer, - - /* check it wasn't an earlier declaration too */ - for(j = 0; j < nspace_declarations_count; j++) -- if(nspace_declarations[j].nspace == element->attributes[j]->nspace) { -+ if(nspace_declarations[j].nspace == element->attributes[i]->nspace) { - declare_me = 0; - break; - } diff --git a/package/raptor/raptor.hash b/package/raptor/raptor.hash index 2a54bf270dee..05e9c53902d6 100644 --- a/package/raptor/raptor.hash +++ b/package/raptor/raptor.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 ada7f0ba54787b33485d090d3d2680533520cd4426d2f7fb4782dd4a6a1480ed raptor2-2.0.15.tar.gz -sha256 6b926a47abfb87451c436fbd4a868defec963d0232c70b806ac02d4a2a6e1968 LICENSE.txt +sha256 089db78d7ac982354bdbf39d973baf09581e6904ac4c92a98c5caadb3de44680 raptor2-2.0.16.tar.gz +sha256 0f0c719a05c9f7a0be2051ab83c1470837f595ed23e34989f46fd8eb45cfc251 LICENSE.txt diff --git a/package/raptor/raptor.mk b/package/raptor/raptor.mk index 69ac121300e4..ec7643ce3dd9 100644 --- a/package/raptor/raptor.mk +++ b/package/raptor/raptor.mk @@ -4,7 +4,7 @@ # ################################################################################ -RAPTOR_VERSION = 2.0.15 +RAPTOR_VERSION = 2.0.16 RAPTOR_SOURCE = raptor2-$(RAPTOR_VERSION).tar.gz RAPTOR_SITE = http://download.librdf.org/source RAPTOR_DEPENDENCIES = libxml2 libxslt @@ -17,12 +17,6 @@ RAPTOR_INSTALL_STAGING = YES # Flag is added to make sure the patch is applied for the configure.ac of raptor. RAPTOR_AUTORECONF = YES -# 0002-Calcualte-max-nspace-declarations-correctly-for-XML-.patch -RAPTOR_IGNORE_CVES += CVE-2017-18926 - -# 0003-XML-Writer-compare-namespace-declarations-correctly.patch -RAPTOR_IGNORE_CVES += CVE-2020-25713 - RAPTOR_CONF_OPTS =\ --with-xml2-config=$(STAGING_DIR)/usr/bin/xml2-config \ --with-xslt-config=$(STAGING_DIR)/usr/bin/xslt-config diff --git a/package/rauc-hawkbit-updater/Config.in b/package/rauc-hawkbit-updater/Config.in new file mode 100644 index 000000000000..dafc2f883c4f --- /dev/null +++ b/package/rauc-hawkbit-updater/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_RAUC_HAWKBIT_UPDATER + bool "rauc-hawkbit-updater" + depends on BR2_TOOLCHAIN_HAS_THREADS # rauc, json-glib + depends on BR2_USE_MMU # rauc, json-glib + depends on BR2_USE_WCHAR # rauc, json-glib + select BR2_PACKAGE_JSON_GLIB + select BR2_PACKAGE_LIBCURL + # runtime + select BR2_PACKAGE_RAUC + help + rauc-hawkbit-updater is a link between Pengutronix RAUC and + the Eclipse Hawkbit API. Hawkbit can communicate to remote + update servers, and use the d-bus interface to trigger + updates from RAUC. + + http://rauc.io/ + +comment "rauc-hawkbit-updater needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/rauc-hawkbit-updater/rauc-hawkbit-updater.hash b/package/rauc-hawkbit-updater/rauc-hawkbit-updater.hash new file mode 100644 index 000000000000..c65ead3784a2 --- /dev/null +++ b/package/rauc-hawkbit-updater/rauc-hawkbit-updater.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 42318e96a464e6c716edb45c48bd3ec3b874462973db902fbe099a395e4acb4b rauc-hawkbit-updater-1.3.tar.xz +sha256 041234c81fd6fe6c531ea1a886b9e740b9ee06759d1a910a14edbd06f4aa62c7 LICENSE diff --git a/package/rauc-hawkbit-updater/rauc-hawkbit-updater.mk b/package/rauc-hawkbit-updater/rauc-hawkbit-updater.mk new file mode 100644 index 000000000000..10ba91abbbf6 --- /dev/null +++ b/package/rauc-hawkbit-updater/rauc-hawkbit-updater.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# rauc-hawkbit-updater +# +################################################################################ + +RAUC_HAWKBIT_UPDATER_VERSION = 1.3 +RAUC_HAWKBIT_UPDATER_SITE = https://github.com/rauc/rauc-hawkbit-updater/releases/download/v$(RAUC_HAWKBIT_UPDATER_VERSION) +RAUC_HAWKBIT_UPDATER_SOURCE = rauc-hawkbit-updater-$(RAUC_HAWKBIT_UPDATER_VERSION).tar.xz +RAUC_HAWKBIT_UPDATER_LICENSE = LGPL-2.1 +RAUC_HAWKBIT_UPDATER_LICENSE_FILES = LICENSE +RAUC_HAWKBIT_UPDATER_CPE_ID_VENDOR = pengutronix +RAUC_HAWKBIT_UPDATER_DEPENDENCIES = json-glib libcurl + +$(eval $(meson-package)) diff --git a/package/rauc/rauc.hash b/package/rauc/rauc.hash index 8351d0266e8f..38fea45b8a76 100644 --- a/package/rauc/rauc.hash +++ b/package/rauc/rauc.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 d233247c1763b1c56c851d0adef2094b7aa2fcd72decf524a8ac0419188e0978 rauc-1.8.tar.xz +sha256 aa99164c5f54fd29b5c8456221b51f92c900884af66de3e1b7f15a25b7db98a7 rauc-1.10.1.tar.xz sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING diff --git a/package/rauc/rauc.mk b/package/rauc/rauc.mk index 0c81a6cc35c7..4211abdcc444 100644 --- a/package/rauc/rauc.mk +++ b/package/rauc/rauc.mk @@ -4,16 +4,17 @@ # ################################################################################ -RAUC_VERSION = 1.8 +RAUC_VERSION = 1.10.1 RAUC_SITE = https://github.com/rauc/rauc/releases/download/v$(RAUC_VERSION) RAUC_SOURCE = rauc-$(RAUC_VERSION).tar.xz RAUC_LICENSE = LGPL-2.1 RAUC_LICENSE_FILES = COPYING RAUC_CPE_ID_VENDOR = pengutronix RAUC_DEPENDENCIES = host-pkgconf openssl libglib2 +RAUC_CONF_OPTS += -Dtests=false ifeq ($(BR2_PACKAGE_RAUC_DBUS),y) -RAUC_CONF_OPTS += --enable-service +RAUC_CONF_OPTS += -Dservice=true RAUC_DEPENDENCIES += dbus # systemd service uses dbus interface @@ -28,35 +29,35 @@ endef endif else -RAUC_CONF_OPTS += --disable-service +RAUC_CONF_OPTS += -Dservice=false endif ifeq ($(BR2_PACKAGE_RAUC_GPT),y) -RAUC_CONF_OPTS += --enable-gpt +RAUC_CONF_OPTS += -Dgpt=enabled RAUC_DEPENDENCIES += util-linux-libs else -RAUC_CONF_OPTS += --disable-gpt +RAUC_CONF_OPTS += -Dgpt=disabled endif ifeq ($(BR2_PACKAGE_RAUC_NETWORK),y) -RAUC_CONF_OPTS += --enable-network +RAUC_CONF_OPTS += -Dnetwork=true RAUC_DEPENDENCIES += libcurl else -RAUC_CONF_OPTS += --disable-network +RAUC_CONF_OPTS += -Dnetwork=false endif ifeq ($(BR2_PACKAGE_RAUC_JSON),y) -RAUC_CONF_OPTS += --enable-json +RAUC_CONF_OPTS += -Djson=enabled RAUC_DEPENDENCIES += json-glib else -RAUC_CONF_OPTS += --disable-json +RAUC_CONF_OPTS += -Djson=disabled endif ifeq ($(BR2_PACKAGE_RAUC_STREAMING),y) -RAUC_CONF_OPTS += --enable-streaming +RAUC_CONF_OPTS += -Dstreaming=true RAUC_DEPENDENCIES += libnl else -RAUC_CONF_OPTS += --disable-streaming +RAUC_CONF_OPTS += -Dstreaming=false endif HOST_RAUC_DEPENDENCIES = \ @@ -65,12 +66,13 @@ HOST_RAUC_DEPENDENCIES = \ host-libglib2 \ host-squashfs \ $(if $(BR2_PACKAGE_HOST_LIBP11),host-libp11) + HOST_RAUC_CONF_OPTS += \ - --disable-network \ - --disable-json \ - --disable-service \ - --without-dbuspolicydir \ - --with-systemdunitdir=no + -Dnetwork=false \ + -Dstreaming=false \ + -Djson=disabled \ + -Dservice=false \ + -Dtests=false -$(eval $(autotools-package)) -$(eval $(host-autotools-package)) +$(eval $(meson-package)) +$(eval $(host-meson-package)) diff --git a/package/rdma-core/rdma-core.hash b/package/rdma-core/rdma-core.hash index 1aff44f7f4e7..f0f2448a8f37 100644 --- a/package/rdma-core/rdma-core.hash +++ b/package/rdma-core/rdma-core.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 4a2eec55b37ac25f25e7680a372f71c1781c23808542bd31fb68dc0448b8cba2 rdma-core-44.0.tar.gz +sha256 e78abaa3ed16771bc6c40b538fe27082429363b86b6ce47636bb57a59238b2be rdma-core-48.0.tar.gz sha256 99e0df1d009a21d0dfb031600c550fd8f4efc0c6b2a4ef8b34a995aa6f79c9f4 COPYING.BSD_MIT sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING.GPL2 sha256 c46a557f25b8ef9bec76526c4e593fc13e6cba27e7ba30d73b6497a689cf06f6 COPYING.md diff --git a/package/rdma-core/rdma-core.mk b/package/rdma-core/rdma-core.mk index 885821bf985f..41f10d44f6ce 100644 --- a/package/rdma-core/rdma-core.mk +++ b/package/rdma-core/rdma-core.mk @@ -4,7 +4,7 @@ # ################################################################################ -RDMA_CORE_VERSION = 44.0 +RDMA_CORE_VERSION = 48.0 RDMA_CORE_SITE = $(call github,linux-rdma,rdma-core,v$(RDMA_CORE_VERSION)) RDMA_CORE_LICENSE = GPL-2.0 or BSD-2-Clause RDMA_CORE_LICENSE_FILES = COPYING.GPL2 COPYING.BSD_MIT COPYING.md diff --git a/package/readline/0002-Readline-8.2-patch-1-fix-crash-when-readline-is-star.patch b/package/readline/0002-Readline-8.2-patch-1-fix-crash-when-readline-is-star.patch new file mode 100644 index 000000000000..c2c2d812600e --- /dev/null +++ b/package/readline/0002-Readline-8.2-patch-1-fix-crash-when-readline-is-star.patch @@ -0,0 +1,41 @@ +From b8d91eab12603fa88e095248855f5f772d182d05 Mon Sep 17 00:00:00 2001 +From: Chet Ramey +Date: Wed, 5 Oct 2022 10:41:16 -0400 +Subject: [PATCH] Readline-8.2 patch 1: fix crash when readline is started with + an invalid locale specification + +Upstream: https://git.savannah.gnu.org/cgit/readline.git/patch/?id=7274faabe97ce53d6b464272d7e6ab6c1392837b +[peter: stripped unrelated ._.gitignore change] +Signed-off-by: Peter Seiderer +--- + nls.c | 4 ++++ + patchlevel | 2 +- + 2 files changed, 5 insertions(+), 1 deletion(-) + +diff --git a/nls.c b/nls.c +index 5c6a13b..8c027d6 100644 +--- a/nls.c ++++ b/nls.c +@@ -141,6 +141,10 @@ _rl_init_locale (void) + if (lspec == 0) + lspec = ""; + ret = setlocale (LC_CTYPE, lspec); /* ok, since it does not change locale */ ++ if (ret == 0 || *ret == 0) ++ ret = setlocale (LC_CTYPE, (char *)NULL); ++ if (ret == 0 || *ret == 0) ++ ret = RL_DEFAULT_LOCALE; + #else + ret = (lspec == 0 || *lspec == 0) ? RL_DEFAULT_LOCALE : lspec; + #endif +diff --git a/patchlevel b/patchlevel +index d8c9df7..fdf4740 100644 +--- a/patchlevel ++++ b/patchlevel +@@ -1,3 +1,3 @@ + # Do not edit -- exists only for use by patch + +-0 ++1 +-- +2.39.2 + diff --git a/package/redis-plus-plus/Config.in b/package/redis-plus-plus/Config.in new file mode 100644 index 000000000000..6a21aee2b3ba --- /dev/null +++ b/package/redis-plus-plus/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_REDIS_PLUS_PLUS + bool "redis-plus-plus" + depends on BR2_INSTALL_LIBSTDCPP + select BR2_PACKAGE_HIREDIS + help + Redis client written in C++ + + This is a C++ client library for Redis. + It's based on hiredis, and is compatible + with C++ 17, C++ 14, and C++ 11. + + https://github.com/sewenew/redis-plus-plus + +comment "redis-plus-plus needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/redis-plus-plus/redis-plus-plus.hash b/package/redis-plus-plus/redis-plus-plus.hash new file mode 100644 index 000000000000..1d88365bc0df --- /dev/null +++ b/package/redis-plus-plus/redis-plus-plus.hash @@ -0,0 +1,3 @@ +# Locally calculated: +sha256 85d9d9ff84c873c4a14bd28bee569a1f311285fad8d4f2fb0e472f65d4bb842a redis-plus-plus-1.3.10.tar.gz +sha256 c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 LICENSE diff --git a/package/redis-plus-plus/redis-plus-plus.mk b/package/redis-plus-plus/redis-plus-plus.mk new file mode 100644 index 000000000000..a286e2de3367 --- /dev/null +++ b/package/redis-plus-plus/redis-plus-plus.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# redis-plus-plus +# +################################################################################ + +REDIS_PLUS_PLUS_VERSION = 1.3.10 +REDIS_PLUS_PLUS_SITE = $(call github,sewenew,redis-plus-plus,$(REDIS_PLUS_PLUS_VERSION)) +REDIS_PLUS_PLUS_LICENSE = Apache-2.0 +REDIS_PLUS_PLUS_LICENSE_FILES = LICENSE +REDIS_PLUS_PLUS_INSTALL_STAGING = YES +REDIS_PLUS_PLUS_DEPENDENCIES = hiredis + +REDIS_PLUS_PLUS_CONF_OPTS = \ + -DREDIS_PLUS_PLUS_BUILD_SHARED=$(if $(BR2_STATIC_LIBS),OFF,ON) \ + -DREDIS_PLUS_PLUS_BUILD_TEST=OFF + +# since version 1.3.0, by default, redis-plus-plus is built with the +# -std=c++17 standard +ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_8),) +ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_5),y) +REDIS_PLUS_PLUS_CONF_OPTS += -DREDIS_PLUS_PLUS_CXX_STANDARD=14 +else +REDIS_PLUS_PLUS_CONF_OPTS += -DREDIS_PLUS_PLUS_CXX_STANDARD=11 +endif +endif + +$(eval $(cmake-package)) diff --git a/package/redis/0001-uclibc.patch b/package/redis/0001-uclibc.patch index 197f43e7a72c..6761f9f3fe0b 100644 --- a/package/redis/0001-uclibc.patch +++ b/package/redis/0001-uclibc.patch @@ -12,17 +12,19 @@ Signed-off-by: Martin Bark Signed-off-by: Titouan Christophe [Fabrice: update for 6.0.9] Signed-off-by: Fabrice Fontaine +[Titouan: adapt to 7.2.1] +Signed-off-by: Titouan Christophe ========================================================================= diff -ur old/src/config.h new/src/config.h --- old/src/config.h 2012-10-26 07:20:24.000000000 -0700 +++ new/src/config.h 2012-10-31 13:41:51.206309564 -0700 -@@ -62,7 +62,7 @@ +@@ -71,7 +71,7 @@ #endif /* Test for backtrace() */ -#if defined(__APPLE__) || (defined(__linux__) && defined(__GLIBC__)) || \ +#if defined(__APPLE__) || (defined(__linux__) && defined(__GLIBC__) && !defined(__UCLIBC__)) || \ - defined(__FreeBSD__) || ((defined(__OpenBSD__) || defined(__NetBSD__)) && defined(USE_BACKTRACE))\ - || defined(__DragonFly__) + defined(__FreeBSD__) || ((defined(__OpenBSD__) || defined(__NetBSD__) || defined(__sun)) && defined(USE_BACKTRACE))\ + || defined(__DragonFly__) || (defined(__UCLIBC__) && defined(__UCLIBC_HAS_BACKTRACE__)) #define HAVE_BACKTRACE 1 diff --git a/package/redis/redis.hash b/package/redis/redis.hash index eb8c21be9850..365fbf40632b 100644 --- a/package/redis/redis.hash +++ b/package/redis/redis.hash @@ -1,5 +1,5 @@ # From https://github.com/redis/redis-hashes/blob/master/README -sha256 8d327d7e887d1bb308fc37aaf717a0bf79f58129e3739069aaeeae88955ac586 redis-7.0.7.tar.gz +sha256 3e2b196d6eb4ddb9e743088bfc2915ccbb42d40f5a8a3edd8cb69c716ec34be7 redis-7.2.3.tar.gz # Locally calculated sha256 97f0a15b7bbae580d2609dad2e11f1956ae167be296ab60f4691ab9c30ee9828 COPYING diff --git a/package/redis/redis.mk b/package/redis/redis.mk index b08be1153879..77cfb1e0b123 100644 --- a/package/redis/redis.mk +++ b/package/redis/redis.mk @@ -4,7 +4,7 @@ # ################################################################################ -REDIS_VERSION = 7.0.7 +REDIS_VERSION = 7.2.3 REDIS_SITE = http://download.redis.io/releases REDIS_LICENSE = BSD-3-Clause (core); MIT and BSD family licenses (Bundled components) REDIS_LICENSE_FILES = COPYING diff --git a/package/refpolicy/0001-policy-modules-services-smartmon.te-make-fstools-opt.patch b/package/refpolicy/0001-policy-modules-services-smartmon.te-make-fstools-opt.patch new file mode 100644 index 000000000000..ddf2943bfa72 --- /dev/null +++ b/package/refpolicy/0001-policy-modules-services-smartmon.te-make-fstools-opt.patch @@ -0,0 +1,44 @@ +From c6d1345732c463cb45d8ba490081ad92936bfd69 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Tue, 28 Nov 2023 22:30:01 +0100 +Subject: [PATCH] policy/modules/services/smartmon.te: make fstools optional + +Make fstools optional to avoid the following build failure raised since +version 2.20231002 and +https://github.com/SELinuxProject/refpolicy/commit/cb068f09d224f90a97fa63a574fb423bbe1ceeda: + + Compiling targeted policy.33 + env LD_LIBRARY_PATH="/home/thomas/autobuild/instance-2/output-1/host/lib:/home/thomas/autobuild/instance-2/output-1/host/usr/lib" /home/thomas/autobuild/instance-2/output-1/host/usr/bin/checkpolicy -c 33 -U deny -S -O -E policy.conf -o policy.33 + policy/modules/services/smartmon.te:146:ERROR 'type fsadm_exec_t is not within scope' at token ';' on line 237472: + allow smartmon_update_drivedb_t fsadm_exec_t:file { { getattr open map read execute ioctl } ioctl lock execute_no_trans }; + #line 146 + checkpolicy: error(s) encountered while parsing configuration + make[1]: *** [Rules.monolithic:80: policy.33] Error 1 + +Fixes: + - http://autobuild.buildroot.org/results/a01123de9a8c1927060e7e4748666bebfc82ea44 + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/SELinuxProject/refpolicy/pull/738 +--- + policy/modules/services/smartmon.te | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/policy/modules/services/smartmon.te b/policy/modules/services/smartmon.te +index 32c80f712..761280c11 100644 +--- a/policy/modules/services/smartmon.te ++++ b/policy/modules/services/smartmon.te +@@ -143,7 +143,9 @@ corenet_tcp_connect_http_port(smartmon_update_drivedb_t) + + files_read_etc_files(smartmon_update_drivedb_t) + +-fstools_exec(smartmon_update_drivedb_t) ++optional_policy(` ++ fstools_exec(smartmon_update_drivedb_t) ++') + + kernel_dontaudit_read_system_state(smartmon_update_drivedb_t) + +-- +2.42.0 + diff --git a/package/refpolicy/refpolicy.hash b/package/refpolicy/refpolicy.hash index b08c22ed4e5f..70d1acc9afde 100644 --- a/package/refpolicy/refpolicy.hash +++ b/package/refpolicy/refpolicy.hash @@ -1,5 +1,5 @@ # From https://github.com/SELinuxProject/refpolicy/releases -sha256 965f98f0b68a24fd0b8e8d973d319332aea88973e1d6c455ef9c2a31aefaeaa6 refpolicy-2.20220106.tar.bz2 +sha256 c89cd3b2e5d99765cc24536fd8e76de83951ad23e05472350328b5a4f8bee410 refpolicy-2.20231002.tar.bz2 # Locally computed sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 COPYING diff --git a/package/refpolicy/refpolicy.mk b/package/refpolicy/refpolicy.mk index f11b72755aec..fb1c213b8408 100644 --- a/package/refpolicy/refpolicy.mk +++ b/package/refpolicy/refpolicy.mk @@ -23,7 +23,7 @@ REFPOLICY_SITE = $(call qstrip,$(BR2_PACKAGE_REFPOLICY_CUSTOM_REPO_URL)) REFPOLICY_SITE_METHOD = git BR_NO_CHECK_HASH_FOR += $(REFPOLICY_SOURCE) else -REFPOLICY_VERSION = 2.20220106 +REFPOLICY_VERSION = 2.20231002 REFPOLICY_SOURCE = refpolicy-$(REFPOLICY_VERSION).tar.bz2 REFPOLICY_SITE = https://github.com/SELinuxProject/refpolicy/releases/download/RELEASE_$(subst .,_,$(REFPOLICY_VERSION)) endif diff --git a/package/reproc/0001-reproc-Try-to-fix-gcc-13-build.patch b/package/reproc/0001-reproc-Try-to-fix-gcc-13-build.patch new file mode 100644 index 000000000000..22b21bcbc7e1 --- /dev/null +++ b/package/reproc/0001-reproc-Try-to-fix-gcc-13-build.patch @@ -0,0 +1,37 @@ +From 0b23d88894ccedde04537fa23ea55cb2f8365342 Mon Sep 17 00:00:00 2001 +From: Daan De Meyer +Date: Sat, 18 Mar 2023 19:38:19 +0100 +Subject: [PATCH] reproc++: Try to fix gcc 13 build + +Upstream: https://github.com/DaanDeMeyer/reproc/commit/0b23d88894ccedde04537fa23ea55cb2f8365342 +Signed-off-by: Fabrice Fontaine +--- + reproc++/include/reproc++/reproc.hpp | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/reproc++/include/reproc++/reproc.hpp b/reproc++/include/reproc++/reproc.hpp +index ab6f1394..e883ecec 100644 +--- a/reproc++/include/reproc++/reproc.hpp ++++ b/reproc++/include/reproc++/reproc.hpp +@@ -88,7 +88,7 @@ struct redirect { + + struct options { + struct { +- env::type behavior; ++ enum env::type behavior; + /*! Implicitly converts from any STL container of string pairs to the + environment format expected by `reproc_start`. */ + class env extra; +@@ -97,9 +97,9 @@ struct options { + const char *working_directory = nullptr; + + struct { +- redirect in; +- redirect out; +- redirect err; ++ struct redirect in; ++ struct redirect out; ++ struct redirect err; + bool parent; + bool discard; + FILE *file; diff --git a/package/reproc/0002-Fix-gcc-13-build.patch b/package/reproc/0002-Fix-gcc-13-build.patch new file mode 100644 index 000000000000..3e06a2a39655 --- /dev/null +++ b/package/reproc/0002-Fix-gcc-13-build.patch @@ -0,0 +1,28 @@ +From 9f399675b821e175f85ac3ee6e3fd2e6056573eb Mon Sep 17 00:00:00 2001 +From: Daan De Meyer +Date: Fri, 21 Apr 2023 19:36:45 +0200 +Subject: [PATCH] Fix gcc 13 build + +Upstream: https://github.com/DaanDeMeyer/reproc/commit/9f399675b821e175f85ac3ee6e3fd2e6056573eb +Signed-off-by: Fabrice Fontaine +--- + reproc++/include/reproc++/reproc.hpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/reproc++/include/reproc++/reproc.hpp b/reproc++/include/reproc++/reproc.hpp +index b52f495e..7b614a94 100644 +--- a/reproc++/include/reproc++/reproc.hpp ++++ b/reproc++/include/reproc++/reproc.hpp +@@ -88,10 +88,10 @@ struct redirect { + + struct options { + struct { +- enum env::type behavior; ++ reproc::env::type behavior; + /*! Implicitly converts from any STL container of string pairs to the + environment format expected by `reproc_start`. */ +- class env extra; ++ reproc::env extra; + } env = {}; + + const char *working_directory = nullptr; diff --git a/package/resiprocate/0001-Fix-some-issue-compiling-with-Visual-Studio.patch b/package/resiprocate/0001-Fix-some-issue-compiling-with-Visual-Studio.patch index 0efe0d9cfbcc..2157ea04509a 100644 --- a/package/resiprocate/0001-Fix-some-issue-compiling-with-Visual-Studio.patch +++ b/package/resiprocate/0001-Fix-some-issue-compiling-with-Visual-Studio.patch @@ -4,8 +4,8 @@ Date: Sat, 22 Aug 2020 23:14:11 +0100 Subject: [PATCH] Fix some issue compiling with Visual Studio 16.7.0 and tidy up Visual Studio 16 project files -[Retrieved (and updated to keep only RendKa.cxx update) from: -https://github.com/resiprocate/resiprocate/commit/be76b10a50749e2e11dce8dcc38b414a7f9d8747] +Upstream: https://github.com/resiprocate/resiprocate/commit/be76b10a50749e2e11dce8dcc38b414a7f9d8747 +[Retrieved (and updated to keep only RendKa.cxx update)] Signed-off-by: Fabrice Fontaine --- VisualStudioReadme.htm | 65 + diff --git a/package/resiprocate/0002-rutil-OpenSSLInit-disable-use-of-legacy-OpenSSL-memo.patch b/package/resiprocate/0002-rutil-OpenSSLInit-disable-use-of-legacy-OpenSSL-memo.patch new file mode 100644 index 000000000000..c333df849df9 --- /dev/null +++ b/package/resiprocate/0002-rutil-OpenSSLInit-disable-use-of-legacy-OpenSSL-memo.patch @@ -0,0 +1,38 @@ +From e7c33f4e078e6e5dfa7dea796fa4ffb88f48a37a Mon Sep 17 00:00:00 2001 +From: Daniel Pocock +Date: Thu, 4 Aug 2022 10:55:30 +0200 +Subject: [PATCH] rutil: OpenSSLInit: disable use of legacy OpenSSL memory leak + checking with OpenSSL 3.0 and later + +Upstream: https://github.com/resiprocate/resiprocate/commit/e7c33f4e078e6e5dfa7dea796fa4ffb88f48a37a + +Signed-off-by: Bernd Kuhls +--- + rutil/ssl/OpenSSLInit.cxx | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/rutil/ssl/OpenSSLInit.cxx b/rutil/ssl/OpenSSLInit.cxx +index d42486f96b..65afed09fe 100644 +--- a/rutil/ssl/OpenSSLInit.cxx ++++ b/rutil/ssl/OpenSSLInit.cxx +@@ -69,14 +69,19 @@ OpenSSLInit::OpenSSLInit() + CRYPTO_set_dynlock_lock_callback(::resip_OpenSSLInit_dynLockFunction); + #endif + ++/* The OpenSSL memory leak checking has been deprecated since ++ OpenSSL v3.0. OpenSSL developers recommend that we rely ++ on modern compilers to provide the same functionality. */ + #if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER) + CRYPTO_malloc_debug_init(); + CRYPTO_set_mem_debug_options(V_CRYPTO_MDEBUG_ALL); +-#else ++#elsif (OPENSSL_VERSION_NUMBER < 0x30000000L) + CRYPTO_set_mem_debug(1); + #endif + ++#if (OPENSSL_VERSION_NUMBER < 0x30000000L) || defined(LIBRESSL_VERSION_NUMBER) + CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); ++#endif + + SSL_library_init(); + SSL_load_error_strings(); diff --git a/package/resiprocate/0003-rutil-fix-typo-in-preprocessor-condition.patch b/package/resiprocate/0003-rutil-fix-typo-in-preprocessor-condition.patch new file mode 100644 index 000000000000..5cbe5871d01b --- /dev/null +++ b/package/resiprocate/0003-rutil-fix-typo-in-preprocessor-condition.patch @@ -0,0 +1,25 @@ +From 53302195c339dfaa104788a50aa900a48dbff777 Mon Sep 17 00:00:00 2001 +From: Andrey Semashev +Date: Sat, 10 Sep 2022 12:15:06 +0200 +Subject: [PATCH] rutil: fix typo in preprocessor condition + +Upstream: https://github.com/resiprocate/resiprocate/commit/53302195c339dfaa104788a50aa900a48dbff777 + +Signed-off-by: Bernd Kuhls +--- + rutil/ssl/OpenSSLInit.cxx | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/rutil/ssl/OpenSSLInit.cxx b/rutil/ssl/OpenSSLInit.cxx +index 65afed09fe..0d87a9f9d8 100644 +--- a/rutil/ssl/OpenSSLInit.cxx ++++ b/rutil/ssl/OpenSSLInit.cxx +@@ -75,7 +75,7 @@ OpenSSLInit::OpenSSLInit() + #if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined(LIBRESSL_VERSION_NUMBER) + CRYPTO_malloc_debug_init(); + CRYPTO_set_mem_debug_options(V_CRYPTO_MDEBUG_ALL); +-#elsif (OPENSSL_VERSION_NUMBER < 0x30000000L) ++#elif (OPENSSL_VERSION_NUMBER < 0x30000000L) + CRYPTO_set_mem_debug(1); + #endif + diff --git a/package/resiprocate/0004-resip-stack-ssl-Security-cxx-remove-deprecated-OpenS.patch b/package/resiprocate/0004-resip-stack-ssl-Security-cxx-remove-deprecated-OpenS.patch new file mode 100644 index 000000000000..2b595d64c11d --- /dev/null +++ b/package/resiprocate/0004-resip-stack-ssl-Security-cxx-remove-deprecated-OpenS.patch @@ -0,0 +1,26 @@ +From 88f98702d908549d888aa7f0ee1b0763e09662b1 Mon Sep 17 00:00:00 2001 +From: Daniel Pocock +Date: Thu, 4 Aug 2022 11:09:43 +0200 +Subject: [PATCH] resip/stack: ssl/Security.cxx: remove deprecated OpenSSL + ERR_GET_FUNC, not required + +Upstream: https://github.com/resiprocate/resiprocate/commit/88f98702d908549d888aa7f0ee1b0763e09662b1 + +Signed-off-by: Bernd Kuhls +--- + resip/stack/ssl/Security.cxx | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/resip/stack/ssl/Security.cxx b/resip/stack/ssl/Security.cxx +index 75dc6d838a..23c2ebbf09 100644 +--- a/resip/stack/ssl/Security.cxx ++++ b/resip/stack/ssl/Security.cxx +@@ -967,7 +967,7 @@ BaseSecurity::addPrivateKeyPEM( PEMType type, + char buffer[120]; + unsigned long err = ERR_get_error(); + ERR_error_string(err, buffer); +- if(ERR_GET_LIB(err) == ERR_LIB_EVP && ERR_GET_FUNC(err) == EVP_F_EVP_DECRYPTFINAL_EX && ERR_GET_REASON(err) == EVP_R_BAD_DECRYPT) ++ if(ERR_GET_LIB(err) == ERR_LIB_EVP && ERR_GET_REASON(err) == EVP_R_BAD_DECRYPT) + { + ErrLog(<< "Could not read private key (error=" << buffer << ") - likely incorrect password provided, may load correctly when transports are added with appropriate password"); + } diff --git a/package/restorecond/restorecond.hash b/package/restorecond/restorecond.hash index b38c6dcf1433..215c9192f476 100644 --- a/package/restorecond/restorecond.hash +++ b/package/restorecond/restorecond.hash @@ -1,5 +1,5 @@ # https://github.com/SELinuxProject/selinux/wiki/Releases -sha256 218c3d8873f31764e3c82d53ac713c0c9faaa07caf42ed7184e93ca2b27d8f27 restorecond-3.3.tar.gz +sha256 f00d8caddb6aba2793c65e69154d04671b52f3d37e081b0e96c1b443fe23c2fe restorecond-3.5.tar.gz # Hash for license file -sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 COPYING +sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 LICENSE diff --git a/package/restorecond/restorecond.mk b/package/restorecond/restorecond.mk index 7d6ed86f08e4..cd409052305f 100644 --- a/package/restorecond/restorecond.mk +++ b/package/restorecond/restorecond.mk @@ -4,10 +4,10 @@ # ################################################################################ -RESTORECOND_VERSION = 3.3 +RESTORECOND_VERSION = 3.5 RESTORECOND_SITE = https://github.com/SELinuxProject/selinux/releases/download/$(RESTORECOND_VERSION) RESTORECOND_LICENSE = GPL-2.0 -RESTORECOND_LICENSE_FILES = COPYING +RESTORECOND_LICENSE_FILES = LICENSE RESTORECOND_DEPENDENCIES = libglib2 libsepol libselinux dbus-glib diff --git a/package/riscv64-elf-toolchain/riscv64-elf-toolchain.hash b/package/riscv64-elf-toolchain/riscv64-elf-toolchain.hash new file mode 100644 index 000000000000..9f40da09413b --- /dev/null +++ b/package/riscv64-elf-toolchain/riscv64-elf-toolchain.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 de2bb188300dc38d74103516ce5cfd1060dfd105e8a408e9e3991512cf27285e riscv64-unknown-elf-toolchain-10.2.0-2020.12.8-x86_64-linux-centos6.tar.gz diff --git a/package/rockchip-mali/rockchip-mali.hash b/package/rockchip-mali/rockchip-mali.hash index 446bf9ac65eb..b19937fa0723 100644 --- a/package/rockchip-mali/rockchip-mali.hash +++ b/package/rockchip-mali/rockchip-mali.hash @@ -1,2 +1,2 @@ -sha256 ee440d859e9d7dfdf29b9a00c7a633337913c407be567d3651c29c12eb75fd9c rockchip-mali-721653b5b3b525a4f80d15aa7e2f9df7b7e60427.tar.gz +sha256 1a291bbd75f317ee9205eb356aed617ac269db166ad6528a1734361cc08f8f7c rockchip-mali-721653b5b3b525a4f80d15aa7e2f9df7b7e6042.tar.gz sha256 a78acc73de9909efb879800d4daa4640c4aaa55cd751238a133954aba15e4285 END_USER_LICENCE_AGREEMENT.txt diff --git a/package/rockchip-mali/rockchip-mali.mk b/package/rockchip-mali/rockchip-mali.mk index 5c8e5543468e..125b1c61fd6c 100644 --- a/package/rockchip-mali/rockchip-mali.mk +++ b/package/rockchip-mali/rockchip-mali.mk @@ -4,7 +4,15 @@ # ################################################################################ -ROCKCHIP_MALI_VERSION = 721653b5b3b525a4f80d15aa7e2f9df7b7e60427 +# Full sha1 is 721653b5b3b525a4f80d15aa7e2f9df7b7e60427, but we use the +# "mirrors" repository, which names the top-level directory "mirrors-VERSION" +# while the original was the "libmali" repository which named the top-level +# directory "libmali-VERSION". Hence the content changes, and thus the hash +# changes. +# To avoid conflict with the old tarball on s.b.o. used by older versions of +# Buildroot, we can't use the same filename for the generated archive, so we +# drop the last char in the commit hash. +ROCKCHIP_MALI_VERSION = 721653b5b3b525a4f80d15aa7e2f9df7b7e6042 ROCKCHIP_MALI_SITE = $(call github,JeffyCN,mirrors,$(ROCKCHIP_MALI_VERSION)) ROCKCHIP_MALI_LICENSE = Proprietary ROCKCHIP_MALI_LICENSE_FILES = END_USER_LICENCE_AGREEMENT.txt diff --git a/package/rockchip-rkbin/Config.in b/package/rockchip-rkbin/Config.in new file mode 100644 index 000000000000..6c66acb7e6ad --- /dev/null +++ b/package/rockchip-rkbin/Config.in @@ -0,0 +1,27 @@ +config BR2_PACKAGE_ROCKCHIP_RKBIN + bool "rockchip-rkbin" + depends on BR2_arm || BR2_aarch64 + help + This package provides Rockchip SoC binary blobs for U-Boot. + +if BR2_PACKAGE_ROCKCHIP_RKBIN + +config BR2_PACKAGE_ROCKCHIP_RKBIN_TPL_FILENAME + string "Rockchip rkbin tpl file path" + help + Path to the tpl file inside the rkbin repository. The + specified file will be copied and used by U-Boot as tpl. + +config BR2_PACKAGE_ROCKCHIP_RKBIN_BL31_FILENAME + string "Rockchip rkbin bl31 file path" + help + Path to the bl31 file inside the rkbin repository. The + specified file will be copied and used by U-Boot as bl31. + +config BR2_PACKAGE_ROCKCHIP_RKBIN_TEE_FILENAME + string "Rockchip rkbin tee file path" + help + Path to the TEE file inside the rkbin repository. The + specified file will be copied and used by U-Boot as TEE. + +endif # BR2_PACKAGE_ROCKCHIP_RKBIN diff --git a/package/rockchip-rkbin/rockchip-rkbin.hash b/package/rockchip-rkbin/rockchip-rkbin.hash new file mode 100644 index 000000000000..a4b6cbeaa7df --- /dev/null +++ b/package/rockchip-rkbin/rockchip-rkbin.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 bd8d19ace202ff26d1c0b4d7744cd467cd0093801dc674dde57290159eedee2b rockchip-rkbin-b4558da0860ca48bf1a571dd33ccba580b9abe23-br1.tar.gz +sha256 1f2e25ae65f3af774e6f141f84253d6a05d489fb0b88b311220d70471c023c9c LICENSE diff --git a/package/rockchip-rkbin/rockchip-rkbin.mk b/package/rockchip-rkbin/rockchip-rkbin.mk new file mode 100644 index 000000000000..49271084eb9f --- /dev/null +++ b/package/rockchip-rkbin/rockchip-rkbin.mk @@ -0,0 +1,30 @@ +################################################################################ +# +# rockchip-rkbin +# +################################################################################ + +ROCKCHIP_RKBIN_VERSION = b4558da0860ca48bf1a571dd33ccba580b9abe23 +ROCKCHIP_RKBIN_SITE = https://github.com/rockchip-linux/rkbin.git +ROCKCHIP_RKBIN_SITE_METHOD = git +ROCKCHIP_RKBIN_LICENSE = PROPRIETARY +ROCKCHIP_RKBIN_LICENSE_FILES = LICENSE + +ROCKCHIP_RKBIN_INSTALL_IMAGES = YES +ROCKCHIP_RKBIN_INSTALL_TARGET = NO + +ROCKCHIP_RKBIN_BL31_FILENAME = $(call qstrip,$(BR2_PACKAGE_ROCKCHIP_RKBIN_BL31_FILENAME)) +ROCKCHIP_RKBIN_TPL_FILENAME = $(call qstrip,$(BR2_PACKAGE_ROCKCHIP_RKBIN_TPL_FILENAME)) +ROCKCHIP_RKBIN_TEE_FILENAME = $(call qstrip,$(BR2_PACKAGE_ROCKCHIP_RKBIN_TEE_FILENAME)) + +define ROCKCHIP_RKBIN_INSTALL_IMAGES_CMDS + $(foreach f, \ + $(ROCKCHIP_RKBIN_BL31_FILENAME) \ + $(ROCKCHIP_RKBIN_TPL_FILENAME) \ + $(ROCKCHIP_RKBIN_TEE_FILENAME) \ + , \ + $(INSTALL) -D -m 0644 -t $(BINARIES_DIR) $(@D)/$(f) + ) +endef + +$(eval $(generic-package)) diff --git a/package/rpm/0001-fix-var-declare-in-label-error.patch b/package/rpm/0001-fix-var-declare-in-label-error.patch new file mode 100644 index 000000000000..648040c66307 --- /dev/null +++ b/package/rpm/0001-fix-var-declare-in-label-error.patch @@ -0,0 +1,40 @@ +From b960c0b43a080287a7c13533eeb2d9f288db1414 Mon Sep 17 00:00:00 2001 +From: Florian Festi +Date: Thu, 16 Mar 2023 19:05:04 +0100 +Subject: [PATCH] Fix compiler error on clang + +Turns out variable declarations are not allowed after a label, even in +C99. And while some compilers don't seem to care others do. + +Moving the declaration of mayopen to the start of the function to avoid +this problem. + +Resolves: #2435 + +Upstream: b960c0b43a080287a7c13533eeb2d9f288db1414 +Signed-off-by: James Knight +--- + lib/fsm.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/lib/fsm.c b/lib/fsm.c +index 5671ac642d..183293edb0 100644 +--- a/lib/fsm.c ++++ b/lib/fsm.c +@@ -879,6 +879,7 @@ int rpmPackageFilesInstall(rpmts ts, rpmte te, rpmfiles files, + int nodigest = (rpmtsFlags(ts) & RPMTRANS_FLAG_NOFILEDIGEST) ? 1 : 0; + int nofcaps = (rpmtsFlags(ts) & RPMTRANS_FLAG_NOCAPS) ? 1 : 0; + int firstlinkfile = -1; ++ int mayopen = 0; + char *tid = NULL; + struct filedata_s *fdata = xcalloc(fc, sizeof(*fdata)); + struct filedata_s *firstlink = NULL; +@@ -1016,7 +1017,7 @@ int rpmPackageFilesInstall(rpmts ts, rpmte te, rpmfiles files, + + setmeta: + /* Special files require path-based ops */ +- int mayopen = S_ISREG(fp->sb.st_mode) || S_ISDIR(fp->sb.st_mode); ++ mayopen = S_ISREG(fp->sb.st_mode) || S_ISDIR(fp->sb.st_mode); + if (!rc && fd == -1 && mayopen) { + int flags = O_RDONLY; + /* Only follow safe symlinks, and never on temporary files */ diff --git a/package/rpm/rpm.hash b/package/rpm/rpm.hash index dfe50303f7db..fd03f062bc7d 100644 --- a/package/rpm/rpm.hash +++ b/package/rpm/rpm.hash @@ -1,5 +1,5 @@ -# From https://rpm.org/wiki/Releases/4.18.0.html -sha256 2a17152d7187ab30edf2c2fb586463bdf6388de7b5837480955659e5e9054554 rpm-4.18.0.tar.bz2 +# From https://rpm.org/wiki/Releases/4.18.1.html +sha256 37f3b42c0966941e2ad3f10fde3639824a6591d07197ba8fd0869ca0779e1f56 rpm-4.18.1.tar.bz2 # Hash for license file sha256 171d94d9f1641316bff7f157a903237dc69cdb5fca405fed8c832c76ed8370f9 COPYING diff --git a/package/rpm/rpm.mk b/package/rpm/rpm.mk index fc57a14fd651..c66ce6992d9b 100644 --- a/package/rpm/rpm.mk +++ b/package/rpm/rpm.mk @@ -5,7 +5,7 @@ ################################################################################ RPM_VERSION_MAJOR = 4.18 -RPM_VERSION = $(RPM_VERSION_MAJOR).0 +RPM_VERSION = $(RPM_VERSION_MAJOR).1 RPM_SOURCE = rpm-$(RPM_VERSION).tar.bz2 RPM_SITE = http://ftp.rpm.org/releases/rpm-$(RPM_VERSION_MAJOR).x RPM_DEPENDENCIES = \ @@ -27,9 +27,11 @@ RPM_SELINUX_MODULES = rpm # --enable-openmp is provided and OpenMP is < 4.5: # https://github.com/rpm-software-management/rpm/pull/1433 RPM_CONF_OPTS = \ - --disable-python \ --disable-rpath \ - --with-gnu-ld + --with-gnu-ld \ + --without-fapolicyd \ + --without-fsverity \ + --without-imaevm ifeq ($(BR2_PACKAGE_ACL),y) RPM_DEPENDENCIES += acl @@ -80,6 +82,20 @@ else RPM_CONF_OPTS += --without-selinux endif +ifeq ($(BR2_PACKAGE_PYTHON3),y) +RPM_DEPENDENCIES += python3 +RPM_CONF_OPTS += --enable-python +else +RPM_CONF_OPTS += --disable-python +endif + +ifeq ($(BR2_PACKAGE_READLINE),y) +RPM_DEPENDENCIES += readline +RPM_CONF_OPTS += --with-readline +else +RPM_CONF_OPTS += --without-readline +endif + ifeq ($(BR2_PACKAGE_SQLITE),y) RPM_DEPENDENCIES += sqlite RPM_CONF_OPTS += --enable-sqlite @@ -104,7 +120,6 @@ endif # ac_cv_prog_cc_c99: RPM uses non-standard GCC extensions (ex. `asm`). RPM_CONF_ENV = \ ac_cv_prog_cc_c99='-std=gnu99' \ - CFLAGS="$(TARGET_CFLAGS) $(RPM_CFLAGS)" \ LIBS=$(TARGET_NLS_LIBS) $(eval $(autotools-package)) diff --git a/package/rrdtool/rrdtool.hash b/package/rrdtool/rrdtool.hash index 5266e5b7a1a3..1a6d18aea9ac 100644 --- a/package/rrdtool/rrdtool.hash +++ b/package/rrdtool/rrdtool.hash @@ -1,4 +1,4 @@ # Locally calculated -sha256 a199faeb7eff7cafc46fac253e682d833d08932f3db93a550a4a5af180ca58db rrdtool-1.7.2.tar.gz +sha256 bd37614137d7a8dc523359648eb2a81631a34fd91a82ed5581916a52c08433f4 rrdtool-1.8.0.tar.gz sha256 ab6b4646e9e01f1ec287c29c351c886c4cb7f945c11efc0a1be9f6e5e6cc5320 COPYRIGHT sha256 d8c320ffc0030d1b096ae4732b50d2b811cf95e9a9b7377c1127b2563e0a0388 LICENSE diff --git a/package/rrdtool/rrdtool.mk b/package/rrdtool/rrdtool.mk index 2731b7b39d96..24d84c79c3d9 100644 --- a/package/rrdtool/rrdtool.mk +++ b/package/rrdtool/rrdtool.mk @@ -4,15 +4,15 @@ # ################################################################################ -RRDTOOL_VERSION = 1.7.2 -RRDTOOL_SITE = http://oss.oetiker.ch/rrdtool/pub +RRDTOOL_VERSION = 1.8.0 +RRDTOOL_SITE = https://github.com/oetiker/rrdtool-1.x/releases/download/v$(RRDTOOL_VERSION) RRDTOOL_LICENSE = GPL-2.0+ with FLOSS license exceptions as explained in COPYRIGHT RRDTOOL_LICENSE_FILES = COPYRIGHT LICENSE RRDTOOL_DEPENDENCIES = host-pkgconf libglib2 $(TARGET_NLS_DEPENDENCIES) # autoreconf needed to avoid link failure due to missing -lintl, -# gettextize needed as a consequence of autoreconf +# autopoint needed as a consequence of autoreconf RRDTOOL_AUTORECONF = YES -RRDTOOL_GETTEXTIZE = YES +RRDTOOL_AUTOPOINT = YES RRDTOOL_INSTALL_STAGING = YES RRDTOOL_CONF_OPTS = \ --disable-examples \ diff --git a/package/rsh-redone/Config.in b/package/rsh-redone/Config.in index 53ff2bea7f5a..fed643def425 100644 --- a/package/rsh-redone/Config.in +++ b/package/rsh-redone/Config.in @@ -19,11 +19,13 @@ config BR2_PACKAGE_RSH_REDONE_RLOGIND depends on BR2_ENABLE_LOCALE && BR2_USE_WCHAR depends on !BR2_TOOLCHAIN_USES_MUSL depends on BR2_USE_MMU # linux-pam + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # linux-pam select BR2_PACKAGE_LINUX_PAM -comment "rlogind needs a uClibc or glibc toolchain w/ wchar, locale, dynamic library" +comment "rlogind needs a uClibc or glibc toolchain w/ wchar, locale, dynamic library, gcc >= 4.9" depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \ - || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL + || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 config BR2_PACKAGE_RSH_REDONE_RSH bool "rsh" @@ -33,10 +35,11 @@ config BR2_PACKAGE_RSH_REDONE_RSHD depends on BR2_ENABLE_LOCALE && BR2_USE_WCHAR depends on !BR2_STATIC_LIBS depends on BR2_USE_MMU # linux-pam + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # linux-pam select BR2_PACKAGE_LINUX_PAM -comment "rshd needs a toolchain w/ wchar, locale, dynamic library" +comment "rshd needs a toolchain w/ wchar, locale, dynamic library, gcc >= 4.9" depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \ - || BR2_STATIC_LIBS + || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 endif diff --git a/package/rt-tests/rt-tests.hash b/package/rt-tests/rt-tests.hash index 49df8313f9fb..eb28f4d441a6 100644 --- a/package/rt-tests/rt-tests.hash +++ b/package/rt-tests/rt-tests.hash @@ -1,4 +1,4 @@ # From https://mirrors.edge.kernel.org/pub/linux/utils/rt-tests/sha256sums.asc -sha256 393457f0c91cce57e82b876ecb9b672871f898e6cecafc751548079512bcc808 rt-tests-2.4.tar.xz +sha256 2ed2e4c965c7f336a15d3354dec090e27a0b1e9ada91ae0b9ef18bbcb993874e rt-tests-2.5.tar.xz # locally computed hash sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/rt-tests/rt-tests.mk b/package/rt-tests/rt-tests.mk index 74290211ce3f..8ad4215ee192 100644 --- a/package/rt-tests/rt-tests.mk +++ b/package/rt-tests/rt-tests.mk @@ -6,7 +6,7 @@ RT_TESTS_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/rt-tests RT_TESTS_SOURCE = rt-tests-$(RT_TESTS_VERSION).tar.xz -RT_TESTS_VERSION = 2.4 +RT_TESTS_VERSION = 2.5 RT_TESTS_LICENSE = GPL-2.0+ RT_TESTS_LICENSE_FILES = COPYING diff --git a/package/rtl8188eu/rtl8188eu.hash b/package/rtl8188eu/rtl8188eu.hash index 29ce0e32c282..b3ead087d46f 100644 --- a/package/rtl8188eu/rtl8188eu.hash +++ b/package/rtl8188eu/rtl8188eu.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 c573529862861a7a75534a4f2bc34ba7e3b116125298b5bc0d432b3065bd7df6 rtl8188eu-f4af53305cb1e9a0d8d9957a042f7c01b7121bfc.tar.gz +sha256 6bf8c026c7d875248f18f14de6fd116cac178db9bdb5bdbc1e267c8ac6b6237f rtl8188eu-3ff6f7d84cb5346ed8d5dc21056769f2e03746d9.tar.gz sha256 af8067302947c01fd9eee72befa54c7e3ef8a48fecde7fd71277f2290b2bf0f7 COPYING diff --git a/package/rtl8188eu/rtl8188eu.mk b/package/rtl8188eu/rtl8188eu.mk index 3698115d3c7c..f475bf3cabe4 100644 --- a/package/rtl8188eu/rtl8188eu.mk +++ b/package/rtl8188eu/rtl8188eu.mk @@ -4,7 +4,7 @@ # ################################################################################ -RTL8188EU_VERSION = f4af53305cb1e9a0d8d9957a042f7c01b7121bfc +RTL8188EU_VERSION = 3ff6f7d84cb5346ed8d5dc21056769f2e03746d9 RTL8188EU_SITE = $(call github,lwfinger,rtl8188eu,$(RTL8188EU_VERSION)) RTL8188EU_LICENSE = GPL-2.0, proprietary (rtl8188eufw.bin firmware blob) RTL8188EU_LICENSE_FILES = COPYING diff --git a/package/rtl8189es/0001-Fix-build-failure-on-PowerPC64.patch b/package/rtl8189es/0001-Fix-build-failure-on-PowerPC64.patch deleted file mode 100644 index 8c876f16ee41..000000000000 --- a/package/rtl8189es/0001-Fix-build-failure-on-PowerPC64.patch +++ /dev/null @@ -1,113 +0,0 @@ -From c7bf7590bc0d7252005fd0496898ad420a85e1ae Mon Sep 17 00:00:00 2001 -From: Giulio Benetti -Date: Mon, 27 Feb 2023 09:12:39 +0100 -Subject: [PATCH] Fix build failure on PowerPC64 - -get_ra() is defined in Linux kernel for PowerPC64 architecture and it -conflicts with local get_ra() definition so let's rename local definition -as rtl_get_ra(). - -Signed-off-by: Giulio Benetti ---- - core/rtw_odm.c | 6 +++--- - core/rtw_recv.c | 4 ++-- - hal/hal_com.c | 2 +- - include/wifi.h | 2 +- - os_dep/linux/ioctl_cfg80211.c | 2 +- - 5 files changed, 8 insertions(+), 8 deletions(-) - -diff --git a/core/rtw_odm.c b/core/rtw_odm.c -index 8a35816..d74e134 100644 ---- a/core/rtw_odm.c -+++ b/core/rtw_odm.c -@@ -273,7 +273,7 @@ void rtw_odm_parse_rx_phy_status_chinfo(union recv_frame *rframe, u8 *phys) - RTW_PRINT("phys_t%u ta="MAC_FMT" %s, %s(band:%u, ch:%u, l_rxsc:%u)\n" - , *phys & 0xf - , MAC_ARG(get_ta(wlanhdr)) -- , is_broadcast_mac_addr(get_ra(wlanhdr)) ? "BC" : is_multicast_mac_addr(get_ra(wlanhdr)) ? "MC" : "UC" -+ , is_broadcast_mac_addr(rtl_get_ra(wlanhdr)) ? "BC" : is_multicast_mac_addr(rtl_get_ra(wlanhdr)) ? "MC" : "UC" - , HDATA_RATE(attrib->data_rate) - , phys_t0->band, phys_t0->channel, phys_t0->rxsc - ); -@@ -383,7 +383,7 @@ type1_end: - RTW_PRINT("phys_t%u ta="MAC_FMT" %s, %s(band:%u, ch:%u, rf_mode:%u, l_rxsc:%u, ht_rxsc:%u) => %u,%u\n" - , *phys & 0xf - , MAC_ARG(get_ta(wlanhdr)) -- , is_broadcast_mac_addr(get_ra(wlanhdr)) ? "BC" : is_multicast_mac_addr(get_ra(wlanhdr)) ? "MC" : "UC" -+ , is_broadcast_mac_addr(rtl_get_ra(wlanhdr)) ? "BC" : is_multicast_mac_addr(rtl_get_ra(wlanhdr)) ? "MC" : "UC" - , HDATA_RATE(attrib->data_rate) - , phys_t1->band, phys_t1->channel, phys_t1->rf_mode, phys_t1->l_rxsc, phys_t1->ht_rxsc - , pkt_cch, pkt_bw -@@ -401,7 +401,7 @@ type1_end: - RTW_PRINT("phys_t%u ta="MAC_FMT" %s, %s(band:%u, ch:%u, l_rxsc:%u, ht_rxsc:%u)\n" - , *phys & 0xf - , MAC_ARG(get_ta(wlanhdr)) -- , is_broadcast_mac_addr(get_ra(wlanhdr)) ? "BC" : is_multicast_mac_addr(get_ra(wlanhdr)) ? "MC" : "UC" -+ , is_broadcast_mac_addr(rtl_get_ra(wlanhdr)) ? "BC" : is_multicast_mac_addr(rtl_get_ra(wlanhdr)) ? "MC" : "UC" - , HDATA_RATE(attrib->data_rate) - , phys_t2->band, phys_t2->channel, phys_t2->l_rxsc, phys_t2->ht_rxsc - ); -diff --git a/core/rtw_recv.c b/core/rtw_recv.c -index dc65adf..a5a65f9 100644 ---- a/core/rtw_recv.c -+++ b/core/rtw_recv.c -@@ -4678,7 +4678,7 @@ void rx_query_phy_status( - wlanhdr = get_recvframe_data(precvframe); - - ta = get_ta(wlanhdr); -- ra = get_ra(wlanhdr); -+ ra = rtl_get_ra(wlanhdr); - is_ra_bmc = IS_MCAST(ra); - - if (_rtw_memcmp(adapter_mac_addr(padapter), ta, ETH_ALEN) == _TRUE) { -@@ -4818,7 +4818,7 @@ s32 pre_recv_entry(union recv_frame *precvframe, u8 *pphy_status) - { - s32 ret = _SUCCESS; - u8 *pbuf = precvframe->u.hdr.rx_data; -- u8 *pda = get_ra(pbuf); -+ u8 *pda = rtl_get_ra(pbuf); - u8 ra_is_bmc = IS_MCAST(pda); - _adapter *primary_padapter = precvframe->u.hdr.adapter; - #ifdef CONFIG_CONCURRENT_MODE -diff --git a/hal/hal_com.c b/hal/hal_com.c -index c28ae39..27b0825 100644 ---- a/hal/hal_com.c -+++ b/hal/hal_com.c -@@ -13406,7 +13406,7 @@ void rtw_store_phy_info(_adapter *padapter, union recv_frame *prframe) - - /*RTW_INFO("=>%s WIFI_DATA_TYPE or WIFI_QOS_DATA_TYPE\n", __FUNCTION__);*/ - if (psta) { -- if (IS_MCAST(get_ra(get_recvframe_data(prframe)))) -+ if (IS_MCAST(rtl_get_ra(get_recvframe_data(prframe)))) - psta_dframe_info = &psta->sta_dframe_info_bmc; - else - psta_dframe_info = &psta->sta_dframe_info; -diff --git a/include/wifi.h b/include/wifi.h -index def77a4..c2e7afb 100644 ---- a/include/wifi.h -+++ b/include/wifi.h -@@ -456,7 +456,7 @@ __inline static int IS_MCAST(const u8 *da) - return _FALSE; - } - --__inline static unsigned char *get_ra(unsigned char *pframe) -+__inline static unsigned char *rtl_get_ra(unsigned char *pframe) - { - unsigned char *ra; - ra = GetAddr1Ptr(pframe); -diff --git a/os_dep/linux/ioctl_cfg80211.c b/os_dep/linux/ioctl_cfg80211.c -index 4e810e5..e744d69 100644 ---- a/os_dep/linux/ioctl_cfg80211.c -+++ b/os_dep/linux/ioctl_cfg80211.c -@@ -6347,7 +6347,7 @@ void rtw_cfg80211_rx_p2p_action_public(_adapter *adapter, union recv_frame *rfra - indicate: - #endif - #if defined(RTW_DEDICATED_P2P_DEVICE) -- if (rtw_cfg80211_redirect_pd_wdev(dvobj_to_wiphy(dvobj), get_ra(frame), &wdev)) -+ if (rtw_cfg80211_redirect_pd_wdev(dvobj_to_wiphy(dvobj), rtl_get_ra(frame), &wdev)) - if (0) - RTW_INFO("redirect to pd_wdev:%p\n", wdev); - #endif --- -2.34.1 - diff --git a/package/rtl8189es/rtl8189es.hash b/package/rtl8189es/rtl8189es.hash index 44d73e60f091..4668c3832caf 100644 --- a/package/rtl8189es/rtl8189es.hash +++ b/package/rtl8189es/rtl8189es.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 96347dbfedd95a217fb89b7b295fe417b711dbad3db896ef0c2fa733c6d150fd rtl8189es-e58bd86c9d9408c648b1246a0dd76b16856ec172.tar.gz +sha256 0d59e75977a43e614c87e783d7af9d89b84063d8d0d1926820af427eacd01837 rtl8189es-05996691a5f3a61968a83f8b368454fd2c6885ca.tar.gz diff --git a/package/rtl8189es/rtl8189es.mk b/package/rtl8189es/rtl8189es.mk index c2ee77f92290..e7bc915c7991 100644 --- a/package/rtl8189es/rtl8189es.mk +++ b/package/rtl8189es/rtl8189es.mk @@ -4,7 +4,7 @@ # ################################################################################ -RTL8189ES_VERSION = e58bd86c9d9408c648b1246a0dd76b16856ec172 +RTL8189ES_VERSION = 05996691a5f3a61968a83f8b368454fd2c6885ca RTL8189ES_SITE = $(call github,jwrdegoede,rtl8189ES_linux,$(RTL8189ES_VERSION)) RTL8189ES_LICENSE = GPL-2.0 diff --git a/package/rtl8189fs/0001-Makefile-move-EXTRA_CFLAGS-USER_EXTRA_CFLAGS-at-the-.patch b/package/rtl8189fs/0001-Makefile-move-EXTRA_CFLAGS-USER_EXTRA_CFLAGS-at-the-.patch new file mode 100644 index 000000000000..f9e2d6845d78 --- /dev/null +++ b/package/rtl8189fs/0001-Makefile-move-EXTRA_CFLAGS-USER_EXTRA_CFLAGS-at-the-.patch @@ -0,0 +1,41 @@ +From f48d99fab8b79e573850067a3ff2d8c16aa95ce1 Mon Sep 17 00:00:00 2001 +From: Giulio Benetti +Date: Wed, 28 Sep 2022 21:17:17 +0200 +Subject: [PATCH] Makefile: move 'EXTRA_CFLAGS += $(USER_EXTRA_CFLAGS)' at the + end of EXTRA_FLAGS assignment + +At the moment USER_EXTRA_CFLAGS can't override local Makfile EXTRA_CFLAGS +since it's assigned at the beginning of the Makefile. For example it's not +possible to undefine the hardcoded CONFIG_LITTLE_ENDIAN and this doesn't +allow to build these modules for big endian architectures. So let's move +the assignment of USER_EXTRA_CFLAGS to EXTRA_CFLAGS after the last +EXTRA_CFLAGS assignment. + +Upstream: https://github.com/jwrdegoede/rtl8189ES_linux/pull/101 + +Signed-off-by: Giulio Benetti +--- + Makefile | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index dfca305..6f91d0a 100644 +--- a/Makefile ++++ b/Makefile +@@ -1,4 +1,3 @@ +-EXTRA_CFLAGS += $(USER_EXTRA_CFLAGS) + EXTRA_CFLAGS += -O1 + #EXTRA_CFLAGS += -O3 + #EXTRA_CFLAGS += -Wall +@@ -2208,6 +2207,8 @@ ifneq ($(USER_MODULE_NAME),) + MODULE_NAME := $(USER_MODULE_NAME) + endif + ++EXTRA_CFLAGS += $(USER_EXTRA_CFLAGS) ++ + ifneq ($(KERNELRELEASE),) + + ########### this part for *.mk ############################ +-- +2.34.1 + diff --git a/package/rtl8189fs/rtl8189fs.hash b/package/rtl8189fs/rtl8189fs.hash index 4f117cfd14e3..377812fba810 100644 --- a/package/rtl8189fs/rtl8189fs.hash +++ b/package/rtl8189fs/rtl8189fs.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 96347dbfedd95a217fb89b7b295fe417b711dbad3db896ef0c2fa733c6d150fd rtl8189fs-e58bd86c9d9408c648b1246a0dd76b16856ec172.tar.gz +sha256 9ff7aa9ee8cd7a8f386531d3b009e7bcbce1ff71bb676c187c40e538755eb8b5 rtl8189fs-75a566a830037c7d1309c5a9fe411562772a1cf2.tar.gz diff --git a/package/rtl8189fs/rtl8189fs.mk b/package/rtl8189fs/rtl8189fs.mk index 15a5329a45b2..bd2946924226 100644 --- a/package/rtl8189fs/rtl8189fs.mk +++ b/package/rtl8189fs/rtl8189fs.mk @@ -4,14 +4,23 @@ # ################################################################################ -RTL8189FS_VERSION = e58bd86c9d9408c648b1246a0dd76b16856ec172 +RTL8189FS_VERSION = 75a566a830037c7d1309c5a9fe411562772a1cf2 RTL8189FS_SITE = $(call github,jwrdegoede,rtl8189ES_linux,$(RTL8189FS_VERSION)) RTL8189FS_LICENSE = GPL-2.0 +RTL8189FS_USER_EXTRA_CFLAGS = \ + -UCONFIG_LITTLE_ENDIAN \ + -DCONFIG_$(call qstrip,$(BR2_ENDIAN))_ENDIAN + RTL8189FS_MODULE_MAKE_OPTS = \ CONFIG_RTL8189FS=m \ KVER=$(LINUX_VERSION_PROBED) \ - KSRC=$(LINUX_DIR) + KSRC=$(LINUX_DIR) \ + USER_EXTRA_CFLAGS="$(RTL8189FS_USER_EXTRA_CFLAGS)" + +ifeq ($(BR2_ENABLE_RUNTIME_DEBUG),) +RTL8189FS_MODULE_MAKE_OPTS += CONFIG_RTW_DEBUG=n +endif define RTL8189FS_LINUX_CONFIG_FIXUPS $(call KCONFIG_ENABLE_OPT,CONFIG_WIRELESS) diff --git a/package/rtl8192eu/0001-Fix-build-failure-due-to-redefition-of-local-sha256-.patch b/package/rtl8192eu/0001-Fix-build-failure-due-to-redefition-of-local-sha256-.patch deleted file mode 100644 index 52ef8c900554..000000000000 --- a/package/rtl8192eu/0001-Fix-build-failure-due-to-redefition-of-local-sha256-.patch +++ /dev/null @@ -1,108 +0,0 @@ -From 1f968bd58656f200347bd398b34aa9f1b6393302 Mon Sep 17 00:00:00 2001 -From: Giulio Benetti -Date: Wed, 28 Dec 2022 18:54:48 +0100 -Subject: [PATCH] Fix build failure due to redefition of local sha256 data - types and functions - -Linux provides sha256_init() and 'struct sha256_state' in file -include/crypto/sha2.h so this leads to a build failure due to redefinition. -To avoid this let's prepend to all local exposed functions and data types -rtl_. sha256_process() and sha256_done() are not required to be renamed but -let's change them for consistency. - -[Upstream status: https://github.com/clnhub/rtl8192eu-linux/pull/69] -Signed-off-by: Giulio Benetti ---- - core/crypto/sha256-internal.c | 16 ++++++++-------- - core/crypto/sha256_i.h | 8 ++++---- - 2 files changed, 12 insertions(+), 12 deletions(-) - -diff --git a/core/crypto/sha256-internal.c b/core/crypto/sha256-internal.c -index 4d61cb1..537bb2e 100644 ---- a/core/crypto/sha256-internal.c -+++ b/core/crypto/sha256-internal.c -@@ -26,17 +26,17 @@ - int sha256_vector(size_t num_elem, const u8 *addr[], const size_t *len, - u8 *mac) - { -- struct sha256_state ctx; -+ struct rtl_sha256_state ctx; - size_t i; - - if (TEST_FAIL()) - return -1; - -- sha256_init(&ctx); -+ rtl_sha256_init(&ctx); - for (i = 0; i < num_elem; i++) -- if (sha256_process(&ctx, addr[i], len[i])) -+ if (rtl_sha256_process(&ctx, addr[i], len[i])) - return -1; -- if (sha256_done(&ctx, mac)) -+ if (rtl_sha256_done(&ctx, mac)) - return -1; - return 0; - } -@@ -82,7 +82,7 @@ static const unsigned long K[64] = { - #endif - - /* compress 512-bits */ --static int sha256_compress(struct sha256_state *md, unsigned char *buf) -+static int sha256_compress(struct rtl_sha256_state *md, unsigned char *buf) - { - u32 S[8], W[64], t0, t1; - u32 t; -@@ -125,7 +125,7 @@ static int sha256_compress(struct sha256_state *md, unsigned char *buf) - - - /* Initialize the hash state */ --void sha256_init(struct sha256_state *md) -+void rtl_sha256_init(struct rtl_sha256_state *md) - { - md->curlen = 0; - md->length = 0; -@@ -146,7 +146,7 @@ void sha256_init(struct sha256_state *md) - @param inlen The length of the data (octets) - @return CRYPT_OK if successful - */ --int sha256_process(struct sha256_state *md, const unsigned char *in, -+int rtl_sha256_process(struct rtl_sha256_state *md, const unsigned char *in, - unsigned long inlen) - { - unsigned long n; -@@ -186,7 +186,7 @@ int sha256_process(struct sha256_state *md, const unsigned char *in, - @param out [out] The destination of the hash (32 bytes) - @return CRYPT_OK if successful - */ --int sha256_done(struct sha256_state *md, unsigned char *out) -+int rtl_sha256_done(struct rtl_sha256_state *md, unsigned char *out) - { - int i; - -diff --git a/core/crypto/sha256_i.h b/core/crypto/sha256_i.h -index a502d2b..93a8858 100644 ---- a/core/crypto/sha256_i.h -+++ b/core/crypto/sha256_i.h -@@ -11,15 +11,15 @@ - - #define SHA256_BLOCK_SIZE 64 - --struct sha256_state { -+struct rtl_sha256_state { - u64 length; - u32 state[8], curlen; - u8 buf[SHA256_BLOCK_SIZE]; - }; - --void sha256_init(struct sha256_state *md); --int sha256_process(struct sha256_state *md, const unsigned char *in, -+void rtl_sha256_init(struct rtl_sha256_state *md); -+int rtl_sha256_process(struct rtl_sha256_state *md, const unsigned char *in, - unsigned long inlen); --int sha256_done(struct sha256_state *md, unsigned char *out); -+int rtl_sha256_done(struct rtl_sha256_state *md, unsigned char *out); - - #endif /* SHA256_I_H */ --- -2.34.1 - diff --git a/package/rtl8192eu/0002-Fix-conflicting-get_ra-on-PowerPC.patch b/package/rtl8192eu/0002-Fix-conflicting-get_ra-on-PowerPC.patch deleted file mode 100644 index dbc4ddd2e819..000000000000 --- a/package/rtl8192eu/0002-Fix-conflicting-get_ra-on-PowerPC.patch +++ /dev/null @@ -1,124 +0,0 @@ -From 4a7e9c3c02a759d818a68c5d23ad7623d8b82ee6 Mon Sep 17 00:00:00 2001 -From: Giulio Benetti -Date: Sat, 11 Mar 2023 19:26:32 +0100 -Subject: [PATCH] Fix conflicting get_ra() on PowerPC - -In PowerPc Linux only get_ra() exists[0] and conflicts with local get_ra() -that has a completely different purpose. So let's rename local get_ra() -to rtl_get_ra() to make it different from Linux's get_ra(). - -[0]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/powerpc/include/asm/disassemble.h?h=v6.1-rc7#n49 - -Signed-off-by: Giulio Benetti ---- - core/rtw_odm.c | 6 +++--- - core/rtw_recv.c | 6 +++--- - hal/hal_com.c | 2 +- - include/wifi.h | 2 +- - os_dep/linux/ioctl_cfg80211.c | 2 +- - 5 files changed, 9 insertions(+), 9 deletions(-) - -diff --git a/core/rtw_odm.c b/core/rtw_odm.c -index 750598c..18e0222 100644 ---- a/core/rtw_odm.c -+++ b/core/rtw_odm.c -@@ -258,7 +258,7 @@ void rtw_odm_parse_rx_phy_status_chinfo(union recv_frame *rframe, u8 *phys) - RTW_PRINT("phys_t%u ta="MAC_FMT" %s, %s(band:%u, ch:%u, l_rxsc:%u)\n" - , *phys & 0xf - , MAC_ARG(get_ta(wlanhdr)) -- , is_broadcast_mac_addr(get_ra(wlanhdr)) ? "BC" : is_multicast_mac_addr(get_ra(wlanhdr)) ? "MC" : "UC" -+ , is_broadcast_mac_addr(rtl_get_ra(wlanhdr)) ? "BC" : is_multicast_mac_addr(rtl_get_ra(wlanhdr)) ? "MC" : "UC" - , HDATA_RATE(attrib->data_rate) - , phys_t0->band, phys_t0->channel, phys_t0->rxsc - ); -@@ -368,7 +368,7 @@ type1_end: - RTW_PRINT("phys_t%u ta="MAC_FMT" %s, %s(band:%u, ch:%u, rf_mode:%u, l_rxsc:%u, ht_rxsc:%u) => %u,%u\n" - , *phys & 0xf - , MAC_ARG(get_ta(wlanhdr)) -- , is_broadcast_mac_addr(get_ra(wlanhdr)) ? "BC" : is_multicast_mac_addr(get_ra(wlanhdr)) ? "MC" : "UC" -+ , is_broadcast_mac_addr(rtl_get_ra(wlanhdr)) ? "BC" : is_multicast_mac_addr(rtl_get_ra(wlanhdr)) ? "MC" : "UC" - , HDATA_RATE(attrib->data_rate) - , phys_t1->band, phys_t1->channel, phys_t1->rf_mode, phys_t1->l_rxsc, phys_t1->ht_rxsc - , pkt_cch, pkt_bw -@@ -386,7 +386,7 @@ type1_end: - RTW_PRINT("phys_t%u ta="MAC_FMT" %s, %s(band:%u, ch:%u, l_rxsc:%u, ht_rxsc:%u)\n" - , *phys & 0xf - , MAC_ARG(get_ta(wlanhdr)) -- , is_broadcast_mac_addr(get_ra(wlanhdr)) ? "BC" : is_multicast_mac_addr(get_ra(wlanhdr)) ? "MC" : "UC" -+ , is_broadcast_mac_addr(rtl_get_ra(wlanhdr)) ? "BC" : is_multicast_mac_addr(rtl_get_ra(wlanhdr)) ? "MC" : "UC" - , HDATA_RATE(attrib->data_rate) - , phys_t2->band, phys_t2->channel, phys_t2->l_rxsc, phys_t2->ht_rxsc - ); -diff --git a/core/rtw_recv.c b/core/rtw_recv.c -index 63ecbc6..d52a7bb 100755 ---- a/core/rtw_recv.c -+++ b/core/rtw_recv.c -@@ -4245,7 +4245,7 @@ int recv_func(_adapter *padapter, union recv_frame *rframe) - - if (check_fwstate(mlmepriv, WIFI_MONITOR_STATE) - #ifdef RTW_SIMPLE_CONFIG -- || (check_fwstate(mlmepriv, WIFI_AP_STATE) && padapter->rtw_simple_config == _TRUE && IS_MCAST(get_ra(ptr))) -+ || (check_fwstate(mlmepriv, WIFI_AP_STATE) && padapter->rtw_simple_config == _TRUE && IS_MCAST(rtl_get_ra(ptr))) - #endif - ) { - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 24)) -@@ -4598,7 +4598,7 @@ void rx_query_phy_status( - wlanhdr = get_recvframe_data(precvframe); - - ta = get_ta(wlanhdr); -- ra = get_ra(wlanhdr); -+ ra = rtl_get_ra(wlanhdr); - is_ra_bmc = IS_MCAST(ra); - - if (_rtw_memcmp(adapter_mac_addr(padapter), ta, ETH_ALEN) == _TRUE) { -@@ -4746,7 +4746,7 @@ s32 pre_recv_entry(union recv_frame *precvframe, u8 *pphy_status) - { - s32 ret = _SUCCESS; - u8 *pbuf = precvframe->u.hdr.rx_data; -- u8 *ra = get_ra(pbuf); -+ u8 *ra = rtl_get_ra(pbuf); - u8 ra_is_bmc = IS_MCAST(ra); - bool phy_queried = 0; - _adapter *primary_padapter = precvframe->u.hdr.adapter; -diff --git a/hal/hal_com.c b/hal/hal_com.c -index 96c7ade..fe5b156 100755 ---- a/hal/hal_com.c -+++ b/hal/hal_com.c -@@ -13590,7 +13590,7 @@ void rtw_store_phy_info(_adapter *padapter, union recv_frame *prframe) - - /*RTW_INFO("=>%s WIFI_DATA_TYPE or WIFI_QOS_DATA_TYPE\n", __FUNCTION__);*/ - if (psta) { -- if (IS_MCAST(get_ra(get_recvframe_data(prframe)))) -+ if (IS_MCAST(rtl_get_ra(get_recvframe_data(prframe)))) - psta_dframe_info = &psta->sta_dframe_info_bmc; - else - psta_dframe_info = &psta->sta_dframe_info; -diff --git a/include/wifi.h b/include/wifi.h -index 322cfba..dd289f2 100644 ---- a/include/wifi.h -+++ b/include/wifi.h -@@ -459,7 +459,7 @@ __inline static int IS_MCAST(const u8 *da) - return _FALSE; - } - --__inline static unsigned char *get_ra(unsigned char *pframe) -+__inline static unsigned char *rtl_get_ra(unsigned char *pframe) - { - unsigned char *ra; - ra = GetAddr1Ptr(pframe); -diff --git a/os_dep/linux/ioctl_cfg80211.c b/os_dep/linux/ioctl_cfg80211.c -index 942971f..f36c77a 100755 ---- a/os_dep/linux/ioctl_cfg80211.c -+++ b/os_dep/linux/ioctl_cfg80211.c -@@ -7076,7 +7076,7 @@ void rtw_cfg80211_rx_p2p_action_public(_adapter *adapter, union recv_frame *rfra - indicate: - #endif - #if defined(RTW_DEDICATED_P2P_DEVICE) -- if (rtw_cfg80211_redirect_pd_wdev(dvobj_to_wiphy(dvobj), get_ra(frame), &wdev)) -+ if (rtw_cfg80211_redirect_pd_wdev(dvobj_to_wiphy(dvobj), rtl_get_ra(frame), &wdev)) - if (0) - RTW_INFO("redirect to pd_wdev:%p\n", wdev); - #endif --- -2.34.1 - diff --git a/package/rtl8192eu/rtl8192eu.hash b/package/rtl8192eu/rtl8192eu.hash index 0cb9961345ed..852868967071 100644 --- a/package/rtl8192eu/rtl8192eu.hash +++ b/package/rtl8192eu/rtl8192eu.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 827e9592336744cbcfca5de988d8f4e14a62690302d3cabf72aa4bedebded2b7 rtl8192eu-94bce7798bbb18de6d8b1646dedb2511f24867d3.tar.gz +sha256 665a8f857b3881554edd6d5e5e6c8f058b8ecfecf921817993e861d48e214d36 rtl8192eu-ac8517206e14f70babbeed68e136ee23c85cba3d.tar.gz diff --git a/package/rtl8192eu/rtl8192eu.mk b/package/rtl8192eu/rtl8192eu.mk index d967db90b85d..9ae29d994003 100644 --- a/package/rtl8192eu/rtl8192eu.mk +++ b/package/rtl8192eu/rtl8192eu.mk @@ -4,7 +4,7 @@ # ################################################################################ -RTL8192EU_VERSION = 94bce7798bbb18de6d8b1646dedb2511f24867d3 +RTL8192EU_VERSION = ac8517206e14f70babbeed68e136ee23c85cba3d RTL8192EU_SITE = $(call github,clnhub,rtl8192eu-linux,$(RTL8192EU_VERSION)) RTL8192EU_LICENSE = GPL-2.0 diff --git a/package/rtl8723ds/rtl8723ds.mk b/package/rtl8723ds/rtl8723ds.mk index 1bb164fa86d7..f62ce2bf6c77 100644 --- a/package/rtl8723ds/rtl8723ds.mk +++ b/package/rtl8723ds/rtl8723ds.mk @@ -9,7 +9,7 @@ RTL8723DS_SITE = $(call github,lwfinger,rtl8723ds,$(RTL8723DS_VERSION)) RTL8723DS_LICENSE = GPL-2.0 RTL8723DS_LICENSE_FILES = COPYING -RTL8723DS_USER_EXTRA_CLAGS = \ +RTL8723DS_USER_EXTRA_CFLAGS = \ -DCONFIG_$(call qstrip,$(BR2_ENDIAN))_ENDIAN \ -DCONFIG_IOCTL_CFG80211 \ -DRTW_USE_CFG80211_STA_EVENT \ @@ -20,7 +20,7 @@ RTL8723DS_MODULE_MAKE_OPTS = \ CONFIG_RTL8723DS=m \ KVER=$(LINUX_VERSION_PROBED) \ KSRC=$(LINUX_DIR) \ - USER_EXTRA_CFLAGS="$(RTL8723DS_USER_EXTRA_CLAGS)" + USER_EXTRA_CFLAGS="$(RTL8723DS_USER_EXTRA_CFLAGS)" define RTL8723DS_LINUX_CONFIG_FIXUPS $(call KCONFIG_ENABLE_OPT,CONFIG_NET) diff --git a/package/rtl8812au-aircrack-ng/rtl8812au-aircrack-ng.hash b/package/rtl8812au-aircrack-ng/rtl8812au-aircrack-ng.hash index cdf5f3b4e2fc..414ea98b08ba 100644 --- a/package/rtl8812au-aircrack-ng/rtl8812au-aircrack-ng.hash +++ b/package/rtl8812au-aircrack-ng/rtl8812au-aircrack-ng.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 69891a35724a6c30fcb29d9eba783879e0bee3f5f7847341fce06101a7542f5f rtl8812au-aircrack-ng-d98018d038a5db96066e79f26ed4a72f2fe1774e.tar.gz +sha256 969fa96c90e16fcaf8f6b30d4576a8446c7041932bea34bbfea7e9c91038bfe5 rtl8812au-aircrack-ng-4a983e47dafc048019412350d36270864f6b5f2d.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE diff --git a/package/rtl8812au-aircrack-ng/rtl8812au-aircrack-ng.mk b/package/rtl8812au-aircrack-ng/rtl8812au-aircrack-ng.mk index ab3ebe207776..df3b03998e40 100644 --- a/package/rtl8812au-aircrack-ng/rtl8812au-aircrack-ng.mk +++ b/package/rtl8812au-aircrack-ng/rtl8812au-aircrack-ng.mk @@ -4,7 +4,7 @@ # ################################################################################ -RTL8812AU_AIRCRACK_NG_VERSION = d98018d038a5db96066e79f26ed4a72f2fe1774e +RTL8812AU_AIRCRACK_NG_VERSION = 4a983e47dafc048019412350d36270864f6b5f2d RTL8812AU_AIRCRACK_NG_SITE = $(call github,aircrack-ng,rtl8812au,$(RTL8812AU_AIRCRACK_NG_VERSION)) RTL8812AU_AIRCRACK_NG_LICENSE = GPL-2.0 RTL8812AU_AIRCRACK_NG_LICENSE_FILES = LICENSE diff --git a/package/rtl8821cu/rtl8821cu.hash b/package/rtl8821cu/rtl8821cu.hash index e2d83adc0f92..c98fd6234f7a 100644 --- a/package/rtl8821cu/rtl8821cu.hash +++ b/package/rtl8821cu/rtl8821cu.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 1d090da292c3f9322603846467a80278670211fcde3354dcabfe32c449992493 rtl8821cu-69c903b75bde36293c66b25c051916a74dbadf58.tar.gz -sha256 af54d00efc57cfce664171ac8be2a20c0f290b1b5c1a67bb2eba7b6380276c4e LICENSE +sha256 8e155db366b5a97bc629534131e4fe1e29b455aa0ec9e1f42af23a9b6f610107 rtl8821cu-de36dfeff890086a9f30cd0052715fbaa9554087.tar.gz +sha256 22cdb0a9cf492dbf05c5b27381a5c0e73ae0d4622427b522b0ba92b7495e5fb0 LICENSE diff --git a/package/rtl8821cu/rtl8821cu.mk b/package/rtl8821cu/rtl8821cu.mk index 5a93376c20bb..09fca49eb326 100644 --- a/package/rtl8821cu/rtl8821cu.mk +++ b/package/rtl8821cu/rtl8821cu.mk @@ -4,7 +4,7 @@ # ################################################################################ -RTL8821CU_VERSION = 69c903b75bde36293c66b25c051916a74dbadf58 +RTL8821CU_VERSION = de36dfeff890086a9f30cd0052715fbaa9554087 RTL8821CU_SITE = $(call github,morrownr,8821cu-20210916,$(RTL8821CU_VERSION)) RTL8821CU_LICENSE = GPL-2.0 RTL8821CU_LICENSE_FILES = LICENSE @@ -29,5 +29,11 @@ RTL8821CU_MODULE_MAKE_OPTS = \ KVER=$(LINUX_VERSION_PROBED) \ USER_EXTRA_CFLAGS="$(RTL8821CU_USER_EXTRA_CFLAGS)" +define RTL8821CU_INSTALL_MODPROBE_CONF + $(INSTALL) -m 0644 -D $(@D)/8821cu.conf \ + $(TARGET_DIR)/etc/modprobe.d/8821cu.conf +endef +RTL8821CU_POST_INSTALL_TARGET_HOOKS += RTL8821CU_INSTALL_MODPROBE_CONF + $(eval $(kernel-module)) $(eval $(generic-package)) diff --git a/package/rtl8822cs/Config.in b/package/rtl8822cs/Config.in new file mode 100644 index 000000000000..c827291ae4f7 --- /dev/null +++ b/package/rtl8822cs/Config.in @@ -0,0 +1,13 @@ +comment "rl8822cs needs a Linux kernel to be built" + depends on !BR2_s390x + depends on !BR2_LINUX_KERNEL + +config BR2_PACKAGE_RTL8822CS + bool "rtl8822cs" + depends on !BR2_s390x + depends on BR2_LINUX_KERNEL + help + Realtek RTL8822CS Wi-Fi driver as a kernel module (JetHome + repository) + + https://github.com/jethome-ru/rtl88x2cs/ diff --git a/package/rtl8822cs/rtl8822cs.hash b/package/rtl8822cs/rtl8822cs.hash new file mode 100644 index 000000000000..4b445129138a --- /dev/null +++ b/package/rtl8822cs/rtl8822cs.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 b3b8543ff6d6d602ffaf60342969830edc8205917b96d004f84ed79524894dc7 rtl8822cs-2e4e99ae1502b173a938357dc1087e49475b26ed.tar.gz diff --git a/package/rtl8822cs/rtl8822cs.mk b/package/rtl8822cs/rtl8822cs.mk new file mode 100644 index 000000000000..6036acb864a9 --- /dev/null +++ b/package/rtl8822cs/rtl8822cs.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# rtl8822cs +# +################################################################################ + +RTL8822CS_VERSION = 2e4e99ae1502b173a938357dc1087e49475b26ed +RTL8822CS_SITE = $(call github,jethome-ru,rtl88x2cs,$(RTL8822CS_VERSION)) +RTL8822CS_LICENSE = GPL-2.0 + +RTL8822CS_MODULE_MAKE_OPTS = \ + CONFIG_RTL8822CS=m \ + KVER=$(LINUX_VERSION_PROBED) \ + KSRC=$(LINUX_DIR) + +define RTL8822CS_LINUX_CONFIG_FIXUPS + $(call KCONFIG_ENABLE_OPT,CONFIG_NET) + $(call KCONFIG_ENABLE_OPT,CONFIG_WIRELESS) + $(call KCONFIG_ENABLE_OPT,CONFIG_CFG80211) + $(call KCONFIG_ENABLE_OPT,CONFIG_MAC80211) + $(call KCONFIG_ENABLE_OPT,CONFIG_MMC) +endef + +$(eval $(kernel-module)) +$(eval $(generic-package)) diff --git a/package/rtty/rtty.mk b/package/rtty/rtty.mk index 964ec04ec4b9..8a40f584def2 100644 --- a/package/rtty/rtty.mk +++ b/package/rtty/rtty.mk @@ -24,7 +24,7 @@ RTTY_CONF_OPTS += \ -DUSE_MBEDTLS=OFF \ -DUSE_OPENSSL=ON \ -DUSE_WOLFSSL=OFF -else ifeq ($(BR2_PACKAGE_WOLFSSL),y) +else ifeq ($(BR2_PACKAGE_WOLFSSL_ALL),y) RTTY_DEPENDENCIES += wolfssl RTTY_CONF_OPTS += \ -DSSL_SUPPORT=ON \ diff --git a/package/runc/runc.hash b/package/runc/runc.hash index 6c8fddd39787..5ffd21a5dd5a 100644 --- a/package/runc/runc.hash +++ b/package/runc/runc.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 4f02077432642eebd768fc857318ae7929290b3a3511eb1be338005e360cfa34 runc-1.1.4.tar.gz +sha256 509993674481aad7e14aedfb280e0eb160f3a34c0b77e2e98c4b3c0b1df76894 runc-1.1.9.tar.gz sha256 552a739c3b25792263f731542238b92f6f8d07e9a488eae27e6c4690038a8243 LICENSE diff --git a/package/runc/runc.mk b/package/runc/runc.mk index b60f1da2e713..62e117685a79 100644 --- a/package/runc/runc.mk +++ b/package/runc/runc.mk @@ -4,7 +4,7 @@ # ################################################################################ -RUNC_VERSION = 1.1.4 +RUNC_VERSION = 1.1.9 RUNC_SITE = $(call github,opencontainers,runc,v$(RUNC_VERSION)) RUNC_LICENSE = Apache-2.0, LGPL-2.1 (libseccomp) RUNC_LICENSE_FILES = LICENSE diff --git a/package/rust-bin/rust-bin.hash b/package/rust-bin/rust-bin.hash index d00e6342e806..a11a964a90bb 100644 --- a/package/rust-bin/rust-bin.hash +++ b/package/rust-bin/rust-bin.hash @@ -1,129 +1,129 @@ -# From https://static.rust-lang.org/dist/rust-1.67.0-aarch64-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-1.67.0-aarch64-unknown-linux-gnu.tar.xz.asc -sha256 5a108891cab3fd0567bf8c2b44f18c045c067c607bbec3ea62b02ad40809b151 rust-1.67.0-aarch64-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-1.67.0-i686-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-1.67.0-i686-unknown-linux-gnu.tar.xz.asc -sha256 2ba12fe020b17de3a6fe7633c59ab50ef44f9715caa858077aad3301408f583c rust-1.67.0-i686-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-1.67.0-mips-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-1.67.0-mips-unknown-linux-gnu.tar.xz.asc -sha256 f7fd19d9b4740b2acaee2ac3bf502feb2f16d1d0c203c1d7d2d2652652a9f997 rust-1.67.0-mips-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-1.67.0-mipsel-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-1.67.0-mipsel-unknown-linux-gnu.tar.xz.asc -sha256 23dc0289abd12ef396c2ac822a28245157f1be5b574b5a5f4059a9ba7b61184c rust-1.67.0-mipsel-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-1.67.0-powerpc-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-1.67.0-powerpc-unknown-linux-gnu.tar.xz.asc -sha256 9998f93c29272d9ecabb69e908da23e728ec835520b430d0af12250d175b981d rust-1.67.0-powerpc-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-1.67.0-powerpc64-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-1.67.0-powerpc64-unknown-linux-gnu.tar.xz.asc -sha256 c24de54f46022c9490fc403ccb1e7384a52181ecd28afea0a37f800793b229b4 rust-1.67.0-powerpc64-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-1.67.0-powerpc64le-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-1.67.0-powerpc64le-unknown-linux-gnu.tar.xz.asc -sha256 271b4181072251276e3c97c3f772b6d9ee39aa8d9f05ed28f34bf5910c9964ad rust-1.67.0-powerpc64le-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-1.67.0-riscv64gc-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-1.67.0-riscv64gc-unknown-linux-gnu.tar.xz.asc -sha256 f3a8517334a174826cf92954d525d039c941265066f46948ad89b61791398dd3 rust-1.67.0-riscv64gc-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-1.67.0-s390x-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-1.67.0-s390x-unknown-linux-gnu.tar.xz.asc -sha256 2b4c27e3a9475278838588fb64159f74a5a8e752f53249a299d2c5188f0bc2e1 rust-1.67.0-s390x-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-1.67.0-x86_64-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-1.67.0-x86_64-unknown-linux-gnu.tar.xz.asc -sha256 e6345aebeba55f39cb35fc06a3ac6c43c35f596309a6ed26023b1898346419bd rust-1.67.0-x86_64-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-aarch64-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-aarch64-unknown-linux-gnu.tar.xz.asc -sha256 d78573b19cff475c5d3612570d79f53b220d6aaf3824c71bc94d74b5f778ef84 rust-std-1.67.0-aarch64-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-aarch64-unknown-linux-musl.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-aarch64-unknown-linux-musl.tar.xz.asc -sha256 6ba01d65aa949128a125d85d750f3facff59c5b1448ccaf66fbdb7bbb3696107 rust-std-1.67.0-aarch64-unknown-linux-musl.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-arm-unknown-linux-gnueabi.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-arm-unknown-linux-gnueabi.tar.xz.asc -sha256 04fb84e9de6c815a7031930afca5d66e6993b639a7f304052df6da750d5bbbe8 rust-std-1.67.0-arm-unknown-linux-gnueabi.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-arm-unknown-linux-gnueabihf.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-arm-unknown-linux-gnueabihf.tar.xz.asc -sha256 896aad9bcf8990ef213230755311609a5a05c99f3d265f47bc6844638f60d202 rust-std-1.67.0-arm-unknown-linux-gnueabihf.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-arm-unknown-linux-musleabihf.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-arm-unknown-linux-musleabihf.tar.xz.asc -sha256 8fd54bfb494089fd26c76b8d9f537bf031aa9018aa29ffe5d7258c82eaa51223 rust-std-1.67.0-arm-unknown-linux-musleabihf.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-arm-unknown-linux-musleabi.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-arm-unknown-linux-musleabi.tar.xz.asc -sha256 212def6f18494cd45c90a471f2b0aff67c4eaa03567c7ab03fe901c337d853d3 rust-std-1.67.0-arm-unknown-linux-musleabi.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-armv5te-unknown-linux-gnueabi.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-armv5te-unknown-linux-gnueabi.tar.xz.asc -sha256 adcab5bb095b4b9af706d3b2cc62341bced76470a7c573354b52f9c8cffb4b46 rust-std-1.67.0-armv5te-unknown-linux-gnueabi.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-armv5te-unknown-linux-musleabi.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-armv5te-unknown-linux-musleabi.tar.xz.asc -sha256 97c7922f3250d70e8b7a7f7420caf299274e253e1f46c3160f2dea33e159d5fe rust-std-1.67.0-armv5te-unknown-linux-musleabi.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-armv7-unknown-linux-gnueabihf.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-armv7-unknown-linux-gnueabihf.tar.xz.asc -sha256 8aec6e33b6c80365979519423a168729c4fff2ea57f66e5123e0602f2ef050a7 rust-std-1.67.0-armv7-unknown-linux-gnueabihf.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-armv7-unknown-linux-gnueabi.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-armv7-unknown-linux-gnueabi.tar.xz.asc -sha256 f98f2f4e76ef3056ba98be13ecfaacad07ab214f8ce940dfad56723056d42872 rust-std-1.67.0-armv7-unknown-linux-gnueabi.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-armv7-unknown-linux-musleabihf.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-armv7-unknown-linux-musleabihf.tar.xz.asc -sha256 dc10cc70b1fd6f74d0c3a7d6cf25bc583edd5f61cd26dbcc6f6bfd22d3e4eb04 rust-std-1.67.0-armv7-unknown-linux-musleabihf.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-armv7-unknown-linux-musleabi.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-armv7-unknown-linux-musleabi.tar.xz.asc -sha256 1677ef03dfbaa5715609fe7b51e3b036f722fe8934a9186e8f24e26b94588b41 rust-std-1.67.0-armv7-unknown-linux-musleabi.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-i586-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-i586-unknown-linux-gnu.tar.xz.asc -sha256 675f0e2e2930f784d03ad6de663fd4ed2b5737689944f0bc8b20653e611c3bb3 rust-std-1.67.0-i586-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-i586-unknown-linux-musl.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-i586-unknown-linux-musl.tar.xz.asc -sha256 da13b4d9cf2709b3de996d0923df05fb343f774ff89fcfb6a8548f562113c44a rust-std-1.67.0-i586-unknown-linux-musl.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-i686-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-i686-unknown-linux-gnu.tar.xz.asc -sha256 080ce3fa7f5b84d900be5842a52053345a40d6dd77b20bcac016eb2083a9a59d rust-std-1.67.0-i686-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-i686-unknown-linux-musl.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-i686-unknown-linux-musl.tar.xz.asc -sha256 b5d5a777ca669d8d6aa8bad85efe5ff9d5559a3f6f9dfb9a8d95337dd0cf1b21 rust-std-1.67.0-i686-unknown-linux-musl.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-mips-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-mips-unknown-linux-gnu.tar.xz.asc -sha256 a2bf13ed3f38427ae65c9ee33a0f4c71fd70d8fae6d9af45045f5318834370e5 rust-std-1.67.0-mips-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-mips-unknown-linux-musl.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-mips-unknown-linux-musl.tar.xz.asc -sha256 d7d223ec4ddb4816e9c537a395a6575ad853e48e0c41415c1a54235c3eb2aa72 rust-std-1.67.0-mips-unknown-linux-musl.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-mips64-unknown-linux-gnuabi64.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-mips64-unknown-linux-gnuabi64.tar.xz.asc -sha256 3b02a3d60f952336e16d1d67a2276ae3197f3839c7b2a557f5ec8d2594325958 rust-std-1.67.0-mips64-unknown-linux-gnuabi64.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-mips64-unknown-linux-muslabi64.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-mips64-unknown-linux-muslabi64.tar.xz.asc -sha256 2ca3557e288fc1a312021b5ee2c08d1c2acd052b72b60472b494e79b42d2e713 rust-std-1.67.0-mips64-unknown-linux-muslabi64.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-mips64el-unknown-linux-gnuabi64.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-mips64el-unknown-linux-gnuabi64.tar.xz.asc -sha256 585c73b1407938290aa5f72beea6d994c60323b6a48b26b618d2c2f9e53916b1 rust-std-1.67.0-mips64el-unknown-linux-gnuabi64.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-mips64el-unknown-linux-muslabi64.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-mips64el-unknown-linux-muslabi64.tar.xz.asc -sha256 23364fbf0dae146a0be76496ac3ac22fbae5603435020d930e28531395b8355d rust-std-1.67.0-mips64el-unknown-linux-muslabi64.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-mipsel-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-mipsel-unknown-linux-gnu.tar.xz.asc -sha256 2b877cdc8af0546358df77a0e22104d5e59a3fc622b6986a3fcbffc9c96a3c8b rust-std-1.67.0-mipsel-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-mipsel-unknown-linux-musl.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-mipsel-unknown-linux-musl.tar.xz.asc -sha256 6e2e15c188dc67428467e894a62679d6f4115d5e5e10916d0273c16152ab060e rust-std-1.67.0-mipsel-unknown-linux-musl.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-powerpc-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-powerpc-unknown-linux-gnu.tar.xz.asc -sha256 44b700068e9e40a01418e537b5c0f4ee279995b55ee6d6266409f057ead1c6de rust-std-1.67.0-powerpc-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-powerpc64-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-powerpc64-unknown-linux-gnu.tar.xz.asc -sha256 db3960e0eac9d7c2485fe418bf9052d2fdd16557499d320919f385f9f3db5448 rust-std-1.67.0-powerpc64-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-powerpc64le-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-powerpc64le-unknown-linux-gnu.tar.xz.asc -sha256 ec92fa64616c67785039bebabc213e6bae6ffc2744ef052b79c7960df60b257f rust-std-1.67.0-powerpc64le-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-riscv64gc-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-riscv64gc-unknown-linux-gnu.tar.xz.asc -sha256 630e4b8b95c0b501676f2477b6009ca122019e1e0d637222443e26a0c5931f3c rust-std-1.67.0-riscv64gc-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-s390x-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-s390x-unknown-linux-gnu.tar.xz.asc -sha256 f1988eb337c00dd30469f545b822b8fd3b0372e6aa88924b7906785ea1f69fba rust-std-1.67.0-s390x-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-sparc64-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-sparc64-unknown-linux-gnu.tar.xz.asc -sha256 d8cdbee292c86182b54ba152cd33ac3abe4c684186f29017bb4cf7e92ff3a2be rust-std-1.67.0-sparc64-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-x86_64-unknown-linux-gnu.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-x86_64-unknown-linux-gnu.tar.xz.asc -sha256 8f03b271bba56b0245833f2cb08044865068ce8721d6a736d3ef7056aa109daa rust-std-1.67.0-x86_64-unknown-linux-gnu.tar.xz -# From https://static.rust-lang.org/dist/rust-std-1.67.0-x86_64-unknown-linux-musl.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rust-std-1.67.0-x86_64-unknown-linux-musl.tar.xz.asc -sha256 33f320dc4ae075f720f541564868e494c17dea97ea853507225f89f8b0c57363 rust-std-1.67.0-x86_64-unknown-linux-musl.tar.xz +# From https://static.rust-lang.org/dist/rust-1.71.1-aarch64-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-1.71.1-aarch64-unknown-linux-gnu.tar.xz.asc +sha256 911f2370b67b066cefd2ee772c5219015817e2c2dc327351f8b00c5ca7a1098f rust-1.71.1-aarch64-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-1.71.1-i686-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-1.71.1-i686-unknown-linux-gnu.tar.xz.asc +sha256 c8ec5dcb8f59276d46360ed832fb428d212985fd5b2b0591e6f70a279d10274f rust-1.71.1-i686-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-1.71.1-mips-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-1.71.1-mips-unknown-linux-gnu.tar.xz.asc +sha256 64f3189a2c55a8c7323e344c891d07637448454a10fed6dad5f7744f25abea94 rust-1.71.1-mips-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-1.71.1-mipsel-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-1.71.1-mipsel-unknown-linux-gnu.tar.xz.asc +sha256 8f35174620db211a99743660c7eddff1b41ad2d4c80787d4e6c808d548bdf3b7 rust-1.71.1-mipsel-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-1.71.1-powerpc-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-1.71.1-powerpc-unknown-linux-gnu.tar.xz.asc +sha256 ec14ef19f8929029435f5c0f9ee1c92534454e03369767968c0353fcd7b41791 rust-1.71.1-powerpc-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-1.71.1-powerpc64-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-1.71.1-powerpc64-unknown-linux-gnu.tar.xz.asc +sha256 a03ad9d193960a2303269d98cd99f9f27990eb3874e76396282a49347c048085 rust-1.71.1-powerpc64-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-1.71.1-powerpc64le-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-1.71.1-powerpc64le-unknown-linux-gnu.tar.xz.asc +sha256 be14d5e2978f72e2607d7d6611f7e4066e772a46e0effa97862a60ee51f9afa8 rust-1.71.1-powerpc64le-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-1.71.1-riscv64gc-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-1.71.1-riscv64gc-unknown-linux-gnu.tar.xz.asc +sha256 b2a0562d547a48ed6279a1594ca2a489ee34c08dc4181b1117b900bc2f4ccfc9 rust-1.71.1-riscv64gc-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-1.71.1-s390x-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-1.71.1-s390x-unknown-linux-gnu.tar.xz.asc +sha256 ba282d429013028c45ea14ea4d909c3a1bb5ef2f57bca1dda7b436216554977d rust-1.71.1-s390x-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-1.71.1-x86_64-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-1.71.1-x86_64-unknown-linux-gnu.tar.xz.asc +sha256 ee205c9ee095ee5a9382332422b0be2bd2737451c6dd6e24cb2a28cec16b97ac rust-1.71.1-x86_64-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-aarch64-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-aarch64-unknown-linux-gnu.tar.xz.asc +sha256 232afbb1b8673694742eba6444ee7c70294ca6da285cdeef9d43acd3f4c58ddc rust-std-1.71.1-aarch64-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-aarch64-unknown-linux-musl.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-aarch64-unknown-linux-musl.tar.xz.asc +sha256 347af135014822d0f191241457ee1fba28ee85285bc26881c5137989fcb0fa53 rust-std-1.71.1-aarch64-unknown-linux-musl.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-arm-unknown-linux-gnueabi.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-arm-unknown-linux-gnueabi.tar.xz.asc +sha256 68c51ede38dc74e6adac606ddba7d688b4f5f9df058e922916af73cd59b17379 rust-std-1.71.1-arm-unknown-linux-gnueabi.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-arm-unknown-linux-gnueabihf.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-arm-unknown-linux-gnueabihf.tar.xz.asc +sha256 4720dee4efe1cbcf7c21ba3a5806dbfb6f7f04e67dec1a79c3fd61d5fd2deea3 rust-std-1.71.1-arm-unknown-linux-gnueabihf.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-arm-unknown-linux-musleabihf.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-arm-unknown-linux-musleabihf.tar.xz.asc +sha256 d1746b00db5d0ad09749e5a93740830a2850bcbd726b2e96d44fff06a2c72f6c rust-std-1.71.1-arm-unknown-linux-musleabihf.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-arm-unknown-linux-musleabi.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-arm-unknown-linux-musleabi.tar.xz.asc +sha256 21533a39478f7484e22d733154405dca2842e2ad0f38cb1f53d6edbe85bb6e2d rust-std-1.71.1-arm-unknown-linux-musleabi.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-armv5te-unknown-linux-gnueabi.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-armv5te-unknown-linux-gnueabi.tar.xz.asc +sha256 9a5b0aa20ab0f1951af9ba79df9e28d2cd57612f1d309e8210d2c24334d8332f rust-std-1.71.1-armv5te-unknown-linux-gnueabi.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-armv5te-unknown-linux-musleabi.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-armv5te-unknown-linux-musleabi.tar.xz.asc +sha256 aa8dbaf140b357c392ea2364b2d22a735900ca2d0d6e609c85b94666725c4999 rust-std-1.71.1-armv5te-unknown-linux-musleabi.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-armv7-unknown-linux-gnueabihf.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-armv7-unknown-linux-gnueabihf.tar.xz.asc +sha256 7f3816824948a017135d5c58aeb97df962f2e60575a18f18967eb473e68c7cdc rust-std-1.71.1-armv7-unknown-linux-gnueabihf.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-armv7-unknown-linux-gnueabi.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-armv7-unknown-linux-gnueabi.tar.xz.asc +sha256 030a8ad8e5b794c5ca265a8837c46da442acae7c1ad2c4dfb61e9f751ddcfa1e rust-std-1.71.1-armv7-unknown-linux-gnueabi.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-armv7-unknown-linux-musleabihf.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-armv7-unknown-linux-musleabihf.tar.xz.asc +sha256 66a7c87d9a78fa4799eea5c73d885c4e6da17608d1f8e13823b298d82310ccca rust-std-1.71.1-armv7-unknown-linux-musleabihf.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-armv7-unknown-linux-musleabi.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-armv7-unknown-linux-musleabi.tar.xz.asc +sha256 afb5e6f523ec8b0ffc033942af53c4f60e564122f85af4e405b4c4ef7643f182 rust-std-1.71.1-armv7-unknown-linux-musleabi.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-i586-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-i586-unknown-linux-gnu.tar.xz.asc +sha256 a8bead93f5260c81f7a6795a29e8365ac30b966e7808c4957a4bd37843ab4e80 rust-std-1.71.1-i586-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-i586-unknown-linux-musl.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-i586-unknown-linux-musl.tar.xz.asc +sha256 7314624674c9817de083c0e88ea8650d839273a55f03de2e6f037ba64309d477 rust-std-1.71.1-i586-unknown-linux-musl.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-i686-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-i686-unknown-linux-gnu.tar.xz.asc +sha256 672811c88fd5ffc5185d40eeecc7d257aeff47c9b48e0ced70ccea1e2559b273 rust-std-1.71.1-i686-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-i686-unknown-linux-musl.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-i686-unknown-linux-musl.tar.xz.asc +sha256 5d214864c9c62ea65e460e75ea65e2313b5b68a9db11f1c30edf271c8b041097 rust-std-1.71.1-i686-unknown-linux-musl.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-mips-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-mips-unknown-linux-gnu.tar.xz.asc +sha256 e4348549904d9fff3f4d5608464d463815b8f47a3361927cf87458b4daf6b093 rust-std-1.71.1-mips-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-mips-unknown-linux-musl.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-mips-unknown-linux-musl.tar.xz.asc +sha256 e9d3caf95d111029f6a882ed2ca322a7d2c182e4c094a1f383725ae1aa980707 rust-std-1.71.1-mips-unknown-linux-musl.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-mips64-unknown-linux-gnuabi64.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-mips64-unknown-linux-gnuabi64.tar.xz.asc +sha256 c3185d57e96832d1a6c5e48e83e75698a46a49675432a367ecd0701c481d1280 rust-std-1.71.1-mips64-unknown-linux-gnuabi64.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-mips64-unknown-linux-muslabi64.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-mips64-unknown-linux-muslabi64.tar.xz.asc +sha256 6f5549ff40278b8baa84c203730d348fff94aef20372c28fd373bc55acf99a3e rust-std-1.71.1-mips64-unknown-linux-muslabi64.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-mips64el-unknown-linux-gnuabi64.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-mips64el-unknown-linux-gnuabi64.tar.xz.asc +sha256 c6cf211aa291e09115fb08a96070deb1c9b292ef21e4263ee80e168eb66c675f rust-std-1.71.1-mips64el-unknown-linux-gnuabi64.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-mips64el-unknown-linux-muslabi64.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-mips64el-unknown-linux-muslabi64.tar.xz.asc +sha256 9cd1a7b2364d6af230e96700bd6b631b7f8dcfc3bad0feffefdf9ca6ce1df79c rust-std-1.71.1-mips64el-unknown-linux-muslabi64.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-mipsel-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-mipsel-unknown-linux-gnu.tar.xz.asc +sha256 05eb744705ac17a1b21693891219051ffbec05f2bc2be84f1eb4c5d1573f1b15 rust-std-1.71.1-mipsel-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-mipsel-unknown-linux-musl.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-mipsel-unknown-linux-musl.tar.xz.asc +sha256 4fb95536ff01b04f57cd14eebb57043e7d420aabce4b0b5beb3133f3a9844fa4 rust-std-1.71.1-mipsel-unknown-linux-musl.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-powerpc-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-powerpc-unknown-linux-gnu.tar.xz.asc +sha256 8a5e93d9a106c90d658b88c8ded15b8d2446d3d6316f5d477b3b259b62119d7c rust-std-1.71.1-powerpc-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-powerpc64-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-powerpc64-unknown-linux-gnu.tar.xz.asc +sha256 73d80d654f0b04a7b05168d08322ea9e4cc3bceeb8546cad5f398f8bbdeeddf5 rust-std-1.71.1-powerpc64-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-powerpc64le-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-powerpc64le-unknown-linux-gnu.tar.xz.asc +sha256 949c3d340674aac746a0278bb90707b179b95afe37200a61f05c56e8bdfc9060 rust-std-1.71.1-powerpc64le-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-riscv64gc-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-riscv64gc-unknown-linux-gnu.tar.xz.asc +sha256 dd8399582595bc449aee5c7c7fb5d8061338be36583404a82e2d9e5b20743dae rust-std-1.71.1-riscv64gc-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-s390x-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-s390x-unknown-linux-gnu.tar.xz.asc +sha256 60275c7d1a36abec87bf6e151d908a04e5cd28d22215fe0098caa4342f1c30d0 rust-std-1.71.1-s390x-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-sparc64-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-sparc64-unknown-linux-gnu.tar.xz.asc +sha256 92e46ba59c0f402691a810a6b57136ebccbcfab4beefb0ccfca55e3fb288180d rust-std-1.71.1-sparc64-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-x86_64-unknown-linux-gnu.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-x86_64-unknown-linux-gnu.tar.xz.asc +sha256 31f392df564850d78be80adc625b06a3964a49ef5c519075b930f2042a422264 rust-std-1.71.1-x86_64-unknown-linux-gnu.tar.xz +# From https://static.rust-lang.org/dist/rust-std-1.71.1-x86_64-unknown-linux-musl.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rust-std-1.71.1-x86_64-unknown-linux-musl.tar.xz.asc +sha256 20667738a9005dda0386c8b6e59d55ce3044be11f78002f6640ca874d6911483 rust-std-1.71.1-x86_64-unknown-linux-musl.tar.xz # Locally generated sha256 62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a LICENSE-APACHE sha256 23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3 LICENSE-MIT diff --git a/package/rust-bin/rust-bin.mk b/package/rust-bin/rust-bin.mk index d62ce39cfccf..db31e26a70b4 100644 --- a/package/rust-bin/rust-bin.mk +++ b/package/rust-bin/rust-bin.mk @@ -6,7 +6,7 @@ # When updating this version, check whether support/download/cargo-post-process # still generates the same archives. -RUST_BIN_VERSION = 1.67.0 +RUST_BIN_VERSION = 1.71.1 RUST_BIN_SITE = https://static.rust-lang.org/dist RUST_BIN_LICENSE = Apache-2.0 or MIT RUST_BIN_LICENSE_FILES = LICENSE-APACHE LICENSE-MIT diff --git a/package/rust-bindgen/rust-bindgen.hash b/package/rust-bindgen/rust-bindgen.hash new file mode 100644 index 000000000000..fe94bbc09675 --- /dev/null +++ b/package/rust-bindgen/rust-bindgen.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 e1cdbaa8e0ed96f647e49807aecfc44d9239d438c2b1c084edb9a3cca0b1f68f rust-bindgen-0.65.1.tar.gz +sha256 c23953d9deb0a3312dbeaf6c128a657f3591acee45067612fa68405eaa4525db LICENSE diff --git a/package/rust-bindgen/rust-bindgen.mk b/package/rust-bindgen/rust-bindgen.mk new file mode 100644 index 000000000000..aa0d7d44a486 --- /dev/null +++ b/package/rust-bindgen/rust-bindgen.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# rust-bindgen +# +################################################################################ + +RUST_BINDGEN_VERSION = 0.65.1 +RUST_BINDGEN_SITE = $(call github,rust-lang,rust-bindgen,v$(RUST_BINDGEN_VERSION)) +RUST_BINDGEN_LICENSE = BSD-3-clause +RUST_BINDGEN_LICENSE_FILES = LICENSE + +# The Cargo.toml at the root directory is a "virtual manifest". +# Since we only want to build and install bindgen use the Cargo.toml +# from the bindgen-cli subdirectory. +RUST_BINDGEN_SUBDIR = bindgen-cli + +$(eval $(host-cargo-package)) diff --git a/package/rust/0001-fix-unsoundness-in-bootstrap-cache-code.patch b/package/rust/0001-fix-unsoundness-in-bootstrap-cache-code.patch deleted file mode 100644 index 3eae34642fdc..000000000000 --- a/package/rust/0001-fix-unsoundness-in-bootstrap-cache-code.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 6bf37780ed49846c78d6707355f1cf44790c4301 Mon Sep 17 00:00:00 2001 -From: Michael Goulet -Date: Mon, 12 Dec 2022 18:29:33 +0000 -Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=A8=20fix=20unsoundness=20in=20bootstr?= - =?UTF-8?q?ap=20cache=20code?= -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -(cherry picked from commit 3fe64ebbce21e79adb64099984e96dfb79bdd0f9) -Signed-off-by: Sebastian Weyer ---- - src/bootstrap/cache.rs | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/src/bootstrap/cache.rs b/src/bootstrap/cache.rs -index be5c9bb0788..05f25af68ea 100644 ---- a/src/bootstrap/cache.rs -+++ b/src/bootstrap/cache.rs -@@ -89,16 +89,16 @@ fn hash(&self, state: &mut H) { - - impl Deref for Interned { - type Target = T::Target; -- fn deref(&self) -> &'static Self::Target { -+ fn deref(&self) -> &Self::Target { - let l = T::intern_cache().lock().unwrap(); -- unsafe { mem::transmute::<&Self::Target, &'static Self::Target>(l.get(*self)) } -+ unsafe { mem::transmute::<&Self::Target, &Self::Target>(l.get(*self)) } - } - } - - impl, U: ?Sized> AsRef for Interned { -- fn as_ref(&self) -> &'static U { -+ fn as_ref(&self) -> &U { - let l = T::intern_cache().lock().unwrap(); -- unsafe { mem::transmute::<&U, &'static U>(l.get(*self).as_ref()) } -+ unsafe { mem::transmute::<&U, &U>(l.get(*self).as_ref()) } - } - } - --- -2.25.1 - diff --git a/package/rust/rust.hash b/package/rust/rust.hash index 2a260ca64fe0..59270e195727 100644 --- a/package/rust/rust.hash +++ b/package/rust/rust.hash @@ -1,6 +1,6 @@ -# From https://static.rust-lang.org/dist/rustc-1.67.0-src.tar.xz.sha256 -# Verified using https://static.rust-lang.org/dist/rustc-1.67.0-src.tar.xz.asc -sha256 9ef8cf88a1d35d319808daf2f193aadca9ed9bcae1d4d5db8946a448c9432c6d rustc-1.67.0-src.tar.xz +# From https://static.rust-lang.org/dist/rustc-1.71.1-src.tar.xz.sha256 +# Verified using https://static.rust-lang.org/dist/rustc-1.71.1-src.tar.xz.asc +sha256 371af0fbe04051e20a74dbea6d4e4e548f10f15309c49cae2688afb882b6c7f1 rustc-1.71.1-src.tar.xz # Locally generated sha256 62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a LICENSE-APACHE sha256 23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3 LICENSE-MIT diff --git a/package/rust/rust.mk b/package/rust/rust.mk index d14ad3a3e784..a55bc447f494 100644 --- a/package/rust/rust.mk +++ b/package/rust/rust.mk @@ -6,7 +6,7 @@ # When updating this version, check whether support/download/cargo-post-process # still generates the same archives. -RUST_VERSION = 1.67.0 +RUST_VERSION = 1.71.1 RUST_SOURCE = rustc-$(RUST_VERSION)-src.tar.xz RUST_SITE = https://static.rust-lang.org/dist RUST_LICENSE = Apache-2.0 or MIT diff --git a/package/rwmem/Config.in b/package/rwmem/Config.in index cd9a7f78f139..690b03407077 100644 --- a/package/rwmem/Config.in +++ b/package/rwmem/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_RWMEM bool "rwmem" - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_10 # C++20 depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR # fmt select BR2_PACKAGE_FMT @@ -10,6 +10,6 @@ config BR2_PACKAGE_RWMEM https://github.com/tomba/rwmem -comment "rwmem needs a toolchain w/ C++, wchar, gcc >= 5" +comment "rwmem needs a toolchain w/ C++, wchar, gcc >= 10" depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ - !BR2_TOOLCHAIN_GCC_AT_LEAST_5 + !BR2_TOOLCHAIN_GCC_AT_LEAST_10 diff --git a/package/rwmem/rwmem.hash b/package/rwmem/rwmem.hash index 9becbc5b2161..da74002cb448 100644 --- a/package/rwmem/rwmem.hash +++ b/package/rwmem/rwmem.hash @@ -1,2 +1,2 @@ -sha256 55d28f029c0cd5c21d3e1c89371e2905d5217f571ef5389ed0fce163804d1c4a rwmem-c8291705c82bb0686be9adf6a427a2b72114719a.tar.gz +sha256 e6cb76b77869aef9ec4a2c31d0d80af0182a5f9c9c3ae06225c8fb2f8266379f rwmem-c89bc9ad9a8f2359f358c510db57b7678eb156d1.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE diff --git a/package/rwmem/rwmem.mk b/package/rwmem/rwmem.mk index 24c4e92efc8a..d6ef05193bdd 100644 --- a/package/rwmem/rwmem.mk +++ b/package/rwmem/rwmem.mk @@ -4,7 +4,7 @@ # ################################################################################ -RWMEM_VERSION = c8291705c82bb0686be9adf6a427a2b72114719a +RWMEM_VERSION = c89bc9ad9a8f2359f358c510db57b7678eb156d1 RWMEM_SITE = $(call github,tomba,rwmem,$(RWMEM_VERSION)) RWMEM_LICENSE = GPL-2.0 RWMEM_LICENSE_FILES = LICENSE diff --git a/package/rygel/Config.in b/package/rygel/Config.in index 30e843053705..e160068a5561 100644 --- a/package/rygel/Config.in +++ b/package/rygel/Config.in @@ -52,12 +52,12 @@ comment "gstreamer1 needs gst1-editing-services" endchoice -comment "rygel needs a glibc toolchain w/ wchar, threads, gcc >= 4.9, host gcc >= 8" +endif # BR2_PACKAGE_RYGEL + +comment "rygel needs python3 and a glibc toolchain w/ wchar, threads, gcc >= 4.9, host gcc >= 8" depends on BR2_USE_MMU depends on BR2_PACKAGE_GOBJECT_INTROSPECTION_ARCH_SUPPORTS depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ !BR2_TOOLCHAIN_USES_GLIBC || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \ - !BR2_HOST_GCC_AT_LEAST_8 - -endif # BR2_PACKAGE_RYGEL + !BR2_HOST_GCC_AT_LEAST_8 || !BR2_PACKAGE_PYTHON3 diff --git a/package/s390-tools/s390-tools.hash b/package/s390-tools/s390-tools.hash index 37b67c5cb180..a00e95437b96 100644 --- a/package/s390-tools/s390-tools.hash +++ b/package/s390-tools/s390-tools.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 da81c55fb11d84923c0ebaed703f557052eb1a273495f60ebe3d20a74627303e s390-tools-2.26.0.tar.gz +sha256 849ff400dc6c1eb7eebe4aa3e7a4871721c25bcee6cfdd0535a056a038fd3ab0 s390-tools-2.29.0.tar.gz sha256 cca17a9a944ebec769adee4aebd805c912c357785ff2705a99ffe68563021f75 LICENSE diff --git a/package/s390-tools/s390-tools.mk b/package/s390-tools/s390-tools.mk index 8cd549140547..c3155a13ff5a 100644 --- a/package/s390-tools/s390-tools.mk +++ b/package/s390-tools/s390-tools.mk @@ -4,7 +4,7 @@ # ################################################################################ -S390_TOOLS_VERSION = 2.26.0 +S390_TOOLS_VERSION = 2.29.0 S390_TOOLS_SITE = $(call github,ibm-s390-linux,s390-tools,v$(S390_TOOLS_VERSION)) S390_TOOLS_LICENSE = MIT S390_TOOLS_LICENSE_FILES = LICENSE @@ -14,7 +14,7 @@ S390_TOOLS_MAKE_OPTS = \ ARCH=$(BR2_ARCH) \ CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE" -ifeq ($(BR2_PACKAGE_LIBCURL),y) +ifeq ($(BR2_PACKAGE_LIBCURL_OPENSSL),y) S390_TOOLS_DEPENDENCIES += libcurl S390_TOOLS_MAKE_OPTS += \ CURL_CONFIG=$(STAGING_DIR)/usr/bin/curl-config \ diff --git a/package/sam-ba/Config.in.host b/package/sam-ba/Config.in.host index 1967f33ab317..cd11e8633e53 100644 --- a/package/sam-ba/Config.in.host +++ b/package/sam-ba/Config.in.host @@ -1,7 +1,6 @@ config BR2_PACKAGE_HOST_SAM_BA bool "host sam-ba" depends on BR2_HOSTARCH = "x86_64" - select BR2_HOSTARCH_NEEDS_IA32_LIBS help Atmel SAM-BA software provides an open set of tools for programming the Atmel SAM3, SAM7 and SAM9 ARM-based diff --git a/package/samba4/0001-libreplace-disable-libbsd-support.patch b/package/samba4/0001-libreplace-disable-libbsd-support.patch index 79216860dd8b..8259e91fc653 100644 --- a/package/samba4/0001-libreplace-disable-libbsd-support.patch +++ b/package/samba4/0001-libreplace-disable-libbsd-support.patch @@ -19,7 +19,7 @@ diff --git a/lib/replace/wscript b/lib/replace/wscript index 240d730cbee..c6d8df43c74 100644 --- a/lib/replace/wscript +++ b/lib/replace/wscript -@@ -406,21 +406,6 @@ def configure(conf): +@@ -436,21 +436,6 @@ def configure(conf): strlcpy_in_bsd = False diff --git a/package/samba4/0002-build-find-pre-built-heimdal-build-tools-in-case-of-.patch b/package/samba4/0002-build-find-pre-built-heimdal-build-tools-in-case-of-.patch index 484e6722ea23..1c4de6a02ef7 100644 --- a/package/samba4/0002-build-find-pre-built-heimdal-build-tools-in-case-of-.patch +++ b/package/samba4/0002-build-find-pre-built-heimdal-build-tools-in-case-of-.patch @@ -1,4 +1,4 @@ -From e002d2ef2688d5433d2bd03aa4d77a0ec5ac4e63 Mon Sep 17 00:00:00 2001 +From 2e53f331104b29db7caf1641a30d3e9316b57184 Mon Sep 17 00:00:00 2001 From: Uri Simchoni Date: Sun, 20 Oct 2019 00:03:14 +0300 Subject: [PATCH] build: find pre-built heimdal build tools in case of embedded @@ -33,18 +33,20 @@ BUG: https://bugzilla.samba.org/show_bug.cgi?id=14164 Signed-off-by: Uri Simchoni Signed-off-by: Bernd Kuhls -[Bernd: rebased for version 4.11.13] +[Bernd: rebased for version 4.11.13 & 4.17.7] --- wscript_configure_embedded_heimdal | 11 +++++++++++ wscript_configure_system_heimdal | 11 ----------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/wscript_configure_embedded_heimdal b/wscript_configure_embedded_heimdal -index 8c55ae2a938..4fdae8062c5 100644 +index 8c55ae2..4fdae80 100644 --- a/wscript_configure_embedded_heimdal +++ b/wscript_configure_embedded_heimdal -@@ -1 +1,12 @@ - conf.RECURSE('source4/heimdal_build') +@@ -6,3 +6,14 @@ + + conf.define('USING_EMBEDDED_HEIMDAL', 1) + conf.RECURSE('third_party/heimdal_build') + +def check_system_heimdal_binary(name): + if conf.LIB_MAY_BE_BUNDLED(name): @@ -56,34 +58,6 @@ index 8c55ae2a938..4fdae8062c5 100644 + +check_system_heimdal_binary("compile_et") +check_system_heimdal_binary("asn1_compile") -diff --git a/wscript_configure_system_heimdal b/wscript_configure_system_heimdal -index 0ff6dad2f55..f77c177442f 100644 ---- a/wscript_configure_system_heimdal -+++ b/wscript_configure_system_heimdal -@@ -37,14 +37,6 @@ def check_system_heimdal_lib(name, functions='', headers='', onlyif=None): - conf.define('USING_SYSTEM_%s' % name.upper(), 1) - return True - --def check_system_heimdal_binary(name): -- if conf.LIB_MAY_BE_BUNDLED(name): -- return False -- if not conf.find_program(name, var=name.upper()): -- return False -- conf.define('USING_SYSTEM_%s' % name.upper(), 1) -- return True -- - check_system_heimdal_lib("com_err", "com_right_r com_err", "com_err.h") - - if check_system_heimdal_lib("roken", "rk_socket_set_reuseaddr", "roken.h"): -@@ -96,9 +88,6 @@ - #if conf.CHECK_BUNDLED_SYSTEM('tommath', checkfunctions='mp_init', headers='tommath.h'): - # conf.define('USING_SYSTEM_TOMMATH', 1) - --check_system_heimdal_binary("compile_et") --check_system_heimdal_binary("asn1_compile") -- - conf.env.KRB5_VENDOR = 'heimdal' - conf.define('USING_SYSTEM_KRB5', 1) - conf.define('USING_SYSTEM_HEIMDAL', 1) -- 2.20.1 + diff --git a/package/samba4/0004-lib-util-Add-signal.h-include.patch b/package/samba4/0004-lib-util-Add-signal.h-include.patch deleted file mode 100644 index 838a8fa6d756..000000000000 --- a/package/samba4/0004-lib-util-Add-signal.h-include.patch +++ /dev/null @@ -1,37 +0,0 @@ -From d1732a79dbf30c41802245909d0250ebe2b9d92e Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -Date: Sun, 12 Dec 2021 10:27:42 +0100 -Subject: [PATCH] lib/util: Add signal.h include -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Fixes build error with samba-4.15.3 and uClibc: - -../../source3/printing/samba-bgqd.c: In function ‘main’: -../../source3/printing/samba-bgqd.c:340:21: error: ‘SIGPIPE’ undeclared (first use in this function); did you mean ‘EPIPE’? -../../source3/printing/samba-bgqd.c:384:14: error: ‘SIGTERM’ undeclared (first use in this function) - -Patch sent upstream: -https://gitlab.com/samba-team/samba/-/merge_requests/2296 - -Signed-off-by: Bernd Kuhls ---- - lib/util/signal.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/lib/util/signal.h b/lib/util/signal.h -index 0663af6ab94..f662ee110d6 100644 ---- a/lib/util/signal.h -+++ b/lib/util/signal.h -@@ -21,6 +21,7 @@ - #ifndef _SAMBA_UTIL_SIGNAL_H_ - #define _SAMBA_UTIL_SIGNAL_H_ - -+#include - #include - - /** --- -2.30.2 - diff --git a/package/samba4/0005-samba-4.16.2-fix-build-without-innetgr.patch b/package/samba4/0005-samba-4.16.2-fix-build-without-innetgr.patch deleted file mode 100644 index b338596d7aae..000000000000 --- a/package/samba4/0005-samba-4.16.2-fix-build-without-innetgr.patch +++ /dev/null @@ -1,34 +0,0 @@ -# Gentoo bug 855047 - -Fixes uClibc build when uClibc was build without netgroup support. -Upstream enables netgroup support based on getdomainname() being -present: -https://github.com/samba-team/samba/commit/f179184a2be2ddd38f463fcc12252f8d24e529f8#diff-b8d1bc25b89846e70ecb61cb296a8f5c50c9a0a1b62e46790fae81aa9d5bfaaeR632 - -Downloaded from -https://gitweb.gentoo.org/repo/gentoo.git/tree/net-fs/samba/files/samba-4.16.2-fix-musl-without-innetgr.patch - -Signed-off-by: Bernd Kuhls - ---- a/lib/util/access.c -+++ b/lib/util/access.c -@@ -115,7 +115,7 @@ static bool string_match(const char *tok,const char *s) - return true; - } - } else if (tok[0] == '@') { /* netgroup: look it up */ --#ifdef HAVE_NETGROUP -+#if defined(HAVE_NETGROUP) && defined(HAVE_INNETGR) - DATA_BLOB tmp; - char *mydomain = NULL; - char *hostname = NULL; ---- a/source3/auth/user_util.c -+++ b/source3/auth/user_util.c -@@ -135,7 +135,7 @@ static void store_map_in_gencache(TALLOC_CTX *ctx, const char *from, const char - - bool user_in_netgroup(TALLOC_CTX *ctx, const char *user, const char *ngname) - { --#ifdef HAVE_NETGROUP -+#if defined(HAVE_NETGROUP) && defined(HAVE_INNETGR) - char nis_domain_buf[256]; - const char *nis_domain = NULL; - char *lowercase_user = NULL; diff --git a/package/samba4/samba4.hash b/package/samba4/samba4.hash index 81cbab45527d..81e8a6f2e903 100644 --- a/package/samba4/samba4.hash +++ b/package/samba4/samba4.hash @@ -1,4 +1,4 @@ # Locally calculated after checking pgp signature -# https://download.samba.org/pub/samba/stable/samba-4.15.12.tar.asc -sha256 5889493d69dc7723be6c3154387fbed38c1cddf93a16da8670d99b7cca33b15e samba-4.15.12.tar.gz +# https://download.samba.org/pub/samba/stable/samba-4.19.3.tar.asc +sha256 280553b90f131b1940580df293653c9e9bd8906201f5def6e5e8c160f0bfac96 samba-4.19.3.tar.gz sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/package/samba4/samba4.mk b/package/samba4/samba4.mk index 31f692e03d7a..42bcd0a9280b 100644 --- a/package/samba4/samba4.mk +++ b/package/samba4/samba4.mk @@ -4,7 +4,7 @@ # ################################################################################ -SAMBA4_VERSION = 4.15.12 +SAMBA4_VERSION = 4.19.3 SAMBA4_SITE = https://download.samba.org/pub/samba/stable SAMBA4_SOURCE = samba-$(SAMBA4_VERSION).tar.gz SAMBA4_INSTALL_STAGING = YES @@ -93,6 +93,13 @@ else SAMBA4_CONF_OPTS += --without-libarchive endif +ifeq ($(BR2_PACKAGE_LIBUNWIND),y) +SAMBA4_CONF_OPTS += --with-libunwind +SAMBA4_DEPENDENCIES += libunwind +else +SAMBA4_CONF_OPTS += --without-libunwind +endif + ifeq ($(BR2_PACKAGE_NCURSES),y) SAMBA4_CONF_ENV += NCURSES_CONFIG="$(STAGING_DIR)/usr/bin/$(NCURSES_CONFIG_SCRIPTS)" SAMBA4_DEPENDENCIES += ncurses @@ -111,7 +118,7 @@ SAMBA4_POST_INSTALL_TARGET_HOOKS += SAMBA4_REMOVE_CTDB_TESTS define SAMBA4_CONFIGURE_CMDS $(INSTALL) -m 0644 package/samba4/samba4-cache.txt $(@D)/cache.txt; - echo 'Checking whether fcntl supports setting/geting hints: $(if $(BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13),OK,NO)' >>$(@D)/cache.txt; + echo 'Checking whether fcntl supports setting/getting hints: $(if $(BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13),OK,NO)' >>$(@D)/cache.txt; echo 'Checking uname machine type: $(BR2_ARCH)' >>$(@D)/cache.txt; (cd $(@D); \ $(SAMBA4_PYTHON) \ @@ -120,7 +127,7 @@ define SAMBA4_CONFIGURE_CMDS PERL="$(HOST_DIR)/bin/perl" \ $(TARGET_CONFIGURE_OPTS) \ $(SAMBA4_CONF_ENV) \ - ./buildtools/bin/waf configure \ + ./configure \ --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ diff --git a/package/sconeserver/Config.in b/package/sconeserver/Config.in index 3040dddbbbea..0e8a99509059 100644 --- a/package/sconeserver/Config.in +++ b/package/sconeserver/Config.in @@ -3,6 +3,7 @@ menuconfig BR2_PACKAGE_SCONESERVER depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL depends on !BR2_STATIC_LIBS # dlopen() + select BR2_PACKAGE_PCRE select BR2_PACKAGE_ZLIB help Sconeserver is a modular, object-orientated and extremely diff --git a/package/sconeserver/sconeserver.mk b/package/sconeserver/sconeserver.mk index bfbd5dc6ede0..89abc8d3b297 100644 --- a/package/sconeserver/sconeserver.mk +++ b/package/sconeserver/sconeserver.mk @@ -10,7 +10,7 @@ SCONESERVER_LICENSE = GPL-2.0+ SCONESERVER_LICENSE_FILES = COPYING SCONESERVER_DEPENDENCIES = \ host-pkgconf \ - $(if $(BR2_PACKAGE_PCRE),pcre) \ + pcre \ zlib # disable image as it fails to build with ImageMagick # disable markdown module because its git submodule cmark diff --git a/package/scons/scons.hash b/package/scons/scons.hash index a72fbaee5a1a..48b5077b2e1f 100644 --- a/package/scons/scons.hash +++ b/package/scons/scons.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 7801f3f62f654528e272df780be10c0e9337e897650b62ddcee9f39fde13f8fb scons-3.1.2.tar.gz -sha256 72ed889165fb28378cadac14552be4a959f1ebab6b148abb5dd2b49712c3c6f6 LICENSE.txt +sha256 ce26aac95d350a79a4192196b0beac3cb24f4ccabce0123eb28d3370f576f072 SCons-4.5.2.tar.gz +sha256 2f6ac9a1fc98394d18b80dba9bedb9d5626006d44db3fecf7cf3e21cff7e8b1c LICENSE diff --git a/package/scons/scons.mk b/package/scons/scons.mk index 6b75d3ddcacd..ffd6abf60937 100644 --- a/package/scons/scons.mk +++ b/package/scons/scons.mk @@ -4,14 +4,15 @@ # ################################################################################ -SCONS_VERSION = 3.1.2 +SCONS_VERSION = 4.5.2 +SCONS_SOURCE = SCons-$(SCONS_VERSION).tar.gz SCONS_SITE = http://downloads.sourceforge.net/project/scons/scons/$(SCONS_VERSION) SCONS_LICENSE = MIT -SCONS_LICENSE_FILES = LICENSE.txt -SCONS_SETUP_TYPE = distutils +SCONS_LICENSE_FILES = LICENSE +SCONS_SETUP_TYPE = setuptools HOST_SCONS_INSTALL_OPTS = \ - --install-lib=$(HOST_DIR)/lib/scons-$(SCONS_VERSION) + --install-lib=$(HOST_DIR)/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages $(eval $(host-python-package)) diff --git a/package/screen/0001-Do-not-use-memcpy-as-an-alternative-for-bcopy-memmov.patch b/package/screen/0001-Do-not-use-memcpy-as-an-alternative-for-bcopy-memmov.patch new file mode 100644 index 000000000000..ab002701d7ee --- /dev/null +++ b/package/screen/0001-Do-not-use-memcpy-as-an-alternative-for-bcopy-memmov.patch @@ -0,0 +1,133 @@ +From 545875ad0b6c9697fae41ae8770e95d117fe3cca Mon Sep 17 00:00:00 2001 +From: Maarten ter Huurne +Date: Sat, 13 Sep 2014 11:37:59 +0200 +Subject: [PATCH] Do not use memcpy as an alternative for bcopy/memmove + +The configure script runs a small test program to check whether +memcpy can handle overlapping memory areas. However, it is not valid +to conclude that if a single case of overlapping memory is handled +correctly, all cases will be handled correctly. + +Since screen already has its own bcopy implementation as a fallback +for the case that bcopy and memmove are unusable, removing the memcpy +option should not break any systems. + +Signed-off-by: Maarten ter Huurne +[Ricardo: rebase on top of 4.3.1] +Signed-off-by: Ricardo Martincoski +[Bernd: rebase on top of 4.7.0] +Signed-off-by: Bernd Kuhls +[Julien: rebase on top of 4.9.1] +Signed-off-by: Julien Olivain +--- + acconfig.h | 3 +-- + configure.ac | 22 +--------------------- + os.h | 8 ++------ + osdef.h.in | 10 +--------- + 4 files changed, 5 insertions(+), 38 deletions(-) + +diff --git a/acconfig.h b/acconfig.h +index 46d62b0..f83572c 100644 +--- a/acconfig.h ++++ b/acconfig.h +@@ -476,7 +476,7 @@ + #undef GETTTYENT + + /* +- * Define USEBCOPY if the bcopy/memcpy from your system's C library ++ * Define USEBCOPY if the bcopy from your system's C library + * supports the overlapping of source and destination blocks. When + * undefined, screen uses its own (probably slower) version of bcopy(). + * +@@ -487,7 +487,6 @@ + * Their memove fails the test in the configure script. Sigh. (Juergen) + */ + #undef USEBCOPY +-#undef USEMEMCPY + #undef USEMEMMOVE + + /* +diff --git a/configure.ac b/configure.ac +index 1a12c04..6f6c2da 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1278,7 +1278,7 @@ AC_TRY_LINK([ + fdwalk(NULL, NULL); + ],AC_DEFINE(HAVE_FDWALK)) + +-AC_CHECKING(whether memcpy/memmove/bcopy handles overlapping arguments) ++AC_CHECKING(whether memmove/bcopy handles overlapping arguments) + AC_TRY_RUN([ + #include + #include +@@ -1319,26 +1319,6 @@ main() { + }], AC_DEFINE(USEMEMMOVE),, + AC_NOTE(- skipping check because we are cross compiling; use memmove) AC_DEFINE(USEMEMMOVE)) + +-AC_TRY_RUN([ +-#include +-#include +- +-#define bcopy(s,d,l) memcpy(d,s,l) +- +-int +-main() { +- char buf[10]; +- strcpy(buf, "abcdefghi"); +- bcopy(buf, buf + 2, 3); +- if (strncmp(buf, "ababcf", 6)) +- return 1; +- strcpy(buf, "abcdefghi"); +- bcopy(buf + 2, buf, 3); +- if (strncmp(buf, "cdedef", 6)) +- return 1; +- return 0; /* libc version works properly. */ +-}], AC_DEFINE(USEMEMCPY),,:) +- + AC_SYS_LONG_FILE_NAMES + + AC_MSG_CHECKING(for vsprintf) +diff --git a/os.h b/os.h +index 2a1c2ca..d1ac87e 100644 +--- a/os.h ++++ b/os.h +@@ -142,12 +142,8 @@ extern int errno; + # ifdef USEMEMMOVE + # define bcopy(s,d,len) memmove(d,s,len) + # else +-# ifdef USEMEMCPY +-# define bcopy(s,d,len) memcpy(d,s,len) +-# else +-# define NEED_OWN_BCOPY +-# define bcopy xbcopy +-# endif ++# define NEED_OWN_BCOPY ++# define bcopy xbcopy + # endif + #endif + +diff --git a/osdef.h.in b/osdef.h.in +index 6ddbd66..abdacf7 100644 +--- a/osdef.h.in ++++ b/osdef.h.in +@@ -58,16 +58,8 @@ extern int bcmp __P((char *, char *, int)); + extern int killpg __P((int, int)); + #endif + +-#ifndef USEBCOPY +-# ifdef USEMEMCPY +-extern void memcpy __P((char *, char *, int)); +-# else +-# ifdef USEMEMMOVE ++#if defined(USEMEMMOVE) && !defined(USEBCOPY) + extern void memmove __P((char *, char *, int)); +-# else +-extern void bcopy __P((char *, char *, int)); +-# endif +-# endif + #else + extern void bcopy __P((char *, char *, int)); + #endif +-- +2.41.0 + diff --git a/package/screen/0001-no-memcpy-fallback.patch b/package/screen/0001-no-memcpy-fallback.patch deleted file mode 100644 index 2137907199cd..000000000000 --- a/package/screen/0001-no-memcpy-fallback.patch +++ /dev/null @@ -1,126 +0,0 @@ -From: Maarten ter Huurne -Date: Sat, 13 Sep 2014 11:37:59 +0200 -Subject: Do not use memcpy as an alternative for bcopy/memmove - -The configure script runs a small test program to check whether -memcpy can handle overlapping memory areas. However, it is not valid -to conclude that if a single case of overlapping memory is handled -correctly, all cases will be handled correctly. - -Since screen already has its own bcopy implementation as a fallback -for the case that bcopy and memmove are unusable, removing the memcpy -option should not break any systems. - -Signed-off-by: Maarten ter Huurne -[Ricardo: rebase on top of 4.3.1] -Signed-off-by: Ricardo Martincoski -[Bernd: rebase on top of 4.7.0] -Signed-off-by: Bernd Kuhls ---- - acconfig.h | 3 +-- - configure.ac | 18 +----------------- - os.h | 8 ++------ - osdef.h.in | 10 +--------- - 4 files changed, 5 insertions(+), 34 deletions(-) - -diff --git a/acconfig.h b/acconfig.h -index 2e46985..9b0b9d4 100644 ---- a/acconfig.h -+++ b/acconfig.h -@@ -476,7 +476,7 @@ - #undef GETTTYENT - - /* -- * Define USEBCOPY if the bcopy/memcpy from your system's C library -+ * Define USEBCOPY if the bcopy from your system's C library - * supports the overlapping of source and destination blocks. When - * undefined, screen uses its own (probably slower) version of bcopy(). - * -@@ -487,7 +487,6 @@ - * Their memove fails the test in the configure script. Sigh. (Juergen) - */ - #undef USEBCOPY --#undef USEMEMCPY - #undef USEMEMMOVE - - /* -diff --git a/configure.ac b/configure.ac -index 27690a6..b8e3bec 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1145,7 +1145,7 @@ AC_TRY_LINK(,[getttyent();], AC_DEFINE(GETTTYENT)) - AC_CHECKING(fdwalk) - AC_TRY_LINK([#include ], [fdwalk(NULL, NULL);],AC_DEFINE(HAVE_FDWALK)) - --AC_CHECKING(whether memcpy/memmove/bcopy handles overlapping arguments) -+AC_CHECKING(whether memmove/bcopy handles overlapping arguments) - AC_TRY_RUN([ - main() { - char buf[10]; -@@ -1175,22 +1175,6 @@ main() { - exit(0); /* libc version works properly. */ - }], AC_DEFINE(USEMEMMOVE)) - -- --AC_TRY_RUN([ --#define bcopy(s,d,l) memcpy(d,s,l) --main() { -- char buf[10]; -- strcpy(buf, "abcdefghi"); -- bcopy(buf, buf + 2, 3); -- if (strncmp(buf, "ababcf", 6)) -- exit(1); -- strcpy(buf, "abcdefghi"); -- bcopy(buf + 2, buf, 3); -- if (strncmp(buf, "cdedef", 6)) -- exit(1); -- exit(0); /* libc version works properly. */ --}], AC_DEFINE(USEMEMCPY),,:) -- - AC_SYS_LONG_FILE_NAMES - - AC_MSG_CHECKING(for vsprintf) -diff --git a/os.h b/os.h -index e827ac9..0b41fb9 100644 ---- a/os.h -+++ b/os.h -@@ -142,12 +142,8 @@ extern int errno; - # ifdef USEMEMMOVE - # define bcopy(s,d,len) memmove(d,s,len) - # else --# ifdef USEMEMCPY --# define bcopy(s,d,len) memcpy(d,s,len) --# else --# define NEED_OWN_BCOPY --# define bcopy xbcopy --# endif -+# define NEED_OWN_BCOPY -+# define bcopy xbcopy - # endif - #endif - -diff --git a/osdef.h.in b/osdef.h.in -index 8687b60..e4057a0 100644 ---- a/osdef.h.in -+++ b/osdef.h.in -@@ -58,16 +58,8 @@ extern int bcmp __P((char *, char *, int)); - extern int killpg __P((int, int)); - #endif - --#ifndef USEBCOPY --# ifdef USEMEMCPY --extern void memcpy __P((char *, char *, int)); --# else --# ifdef USEMEMMOVE -+#if defined(USEMEMMOVE) && !defined(USEBCOPY) - extern void memmove __P((char *, char *, int)); --# else --extern void bcopy __P((char *, char *, int)); --# endif --# endif - #else - extern void bcopy __P((char *, char *, int)); - #endif --- -1.8.4.5 - diff --git a/package/screen/0002-Do-not-create-backup-of-old-installed-binary.patch b/package/screen/0002-Do-not-create-backup-of-old-installed-binary.patch new file mode 100644 index 000000000000..ef82cd3e76d0 --- /dev/null +++ b/package/screen/0002-Do-not-create-backup-of-old-installed-binary.patch @@ -0,0 +1,44 @@ +From 86b5c7677c5bef780bd4c28cbbdaa97eda938230 Mon Sep 17 00:00:00 2001 +From: Maarten ter Huurne +Date: Sun, 14 Sep 2014 23:58:34 +0200 +Subject: [PATCH] Do not create backup of old installed binary + +This is a rather unusual feature that packagers will not expect. + +Signed-off-by: Maarten ter Huurne +[baruch: update for 4.6.2] +Signed-off-by: Baruch Siach +[Julien: rebase on top of 4.9.1] +Signed-off-by: Julien Olivain +--- + Makefile.in | 4 ---- + 1 file changed, 4 deletions(-) + +diff --git a/Makefile.in b/Makefile.in +index 26ec404..3efbbfd 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -83,12 +83,9 @@ screen: $(OFILES) + $(OPTIONS) $(CFLAGS) $< + + install_bin: .version screen installdirs +- -if [ -f $(DESTDIR)$(bindir)/$(SCREEN) ] && [ ! -f $(DESTDIR)$(bindir)/$(SCREEN).old ]; \ +- then mv $(DESTDIR)$(bindir)/$(SCREEN) $(DESTDIR)$(bindir)/$(SCREEN).old; fi + $(INSTALL_PROGRAM) screen $(DESTDIR)$(bindir)/$(SCREEN) + -chown root $(DESTDIR)$(bindir)/$(SCREEN) && chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN) + # This doesn't work if $(bindir)/screen is a symlink +- -if [ -f $(DESTDIR)$(bindir)/screen ] && [ ! -f $(DESTDIR)$(bindir)/screen.old ]; then mv $(DESTDIR)$(bindir)/screen $(DESTDIR)$(bindir)/screen.old; fi + rm -f $(DESTDIR)$(bindir)/screen + (cd $(DESTDIR)$(bindir) && ln -f -s $(SCREEN) screen) + cp $(srcdir)/utf8encodings/?? $(DESTDIR)$(SCREENENCODINGS) +@@ -113,7 +110,6 @@ installdirs: + uninstall: .version + rm -f $(DESTDIR)$(bindir)/$(SCREEN) + rm -f $(DESTDIR)$(bindir)/screen +- -mv $(DESTDIR)$(bindir)/screen.old $(DESTDIR)$(bindir)/screen + rm -f $(DESTDIR)$(ETCSCREENRC) + cd doc; $(MAKE) uninstall + +-- +2.41.0 + diff --git a/package/screen/0002-install-no-backup-binary.patch b/package/screen/0002-install-no-backup-binary.patch deleted file mode 100644 index 7842662b5767..000000000000 --- a/package/screen/0002-install-no-backup-binary.patch +++ /dev/null @@ -1,41 +0,0 @@ -From: Maarten ter Huurne -Date: Sun, 14 Sep 2014 23:58:34 +0200 -Subject: Do not create backup of old installed binary - -This is a rather unusual feature that packagers will not expect. - -Signed-off-by: Maarten ter Huurne -[baruch: update for 4.6.2] -Signed-off-by: Baruch Siach ---- - Makefile.in | 4 ---- - 1 file changed, 4 deletions(-) - -diff --git a/Makefile.in b/Makefile.in -index 187a69b..65549e9 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -83,12 +83,9 @@ screen: $(OFILES) - $(OPTIONS) $(CFLAGS) $< - - install_bin: .version screen installdirs -- -if [ -f $(DESTDIR)$(bindir)/$(SCREEN) ] && [ ! -f $(DESTDIR)$(bindir)/$(SCREEN).old ]; \ -- then mv $(DESTDIR)$(bindir)/$(SCREEN) $(DESTDIR)$(bindir)/$(SCREEN).old; fi - $(INSTALL_PROGRAM) screen $(DESTDIR)$(bindir)/$(SCREEN) - -chown root $(DESTDIR)$(bindir)/$(SCREEN) && chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN) - # This doesn't work if $(bindir)/screen is a symlink -- -if [ -f $(DESTDIR)$(bindir)/screen ] && [ ! -f $(DESTDIR)$(bindir)/screen.old ]; then mv $(DESTDIR)$(bindir)/screen $(DESTDIR)$(bindir)/screen.old; fi - rm -f $(DESTDIR)$(bindir)/screen - (cd $(DESTDIR)$(bindir) && ln -f -s $(SCREEN) screen) - cp $(srcdir)/utf8encodings/?? $(DESTDIR)$(SCREENENCODINGS) -@@ -113,7 +110,6 @@ installdirs: - uninstall: .version - rm -f $(DESTDIR)$(bindir)/$(SCREEN) - rm -f $(DESTDIR)$(bindir)/screen -- -mv $(DESTDIR)$(bindir)/screen.old $(DESTDIR)$(bindir)/screen - rm -f $(DESTDIR)$(ETCSCREENRC) - cd doc; $(MAKE) uninstall - --- -1.8.4.5 - diff --git a/package/screen/0003-Change-binary-permission-flags-even-if-chown-fails.patch b/package/screen/0003-Change-binary-permission-flags-even-if-chown-fails.patch new file mode 100644 index 000000000000..bc3f676af3c1 --- /dev/null +++ b/package/screen/0003-Change-binary-permission-flags-even-if-chown-fails.patch @@ -0,0 +1,32 @@ +From 4231969c47a8379f9113e0c9c9586bcfdd545c37 Mon Sep 17 00:00:00 2001 +From: Maarten ter Huurne +Date: Mon, 15 Sep 2014 00:03:05 +0200 +Subject: [PATCH] Change binary permission flags even if chown fails + +Typically when creating a package, the build is not run as root, so +the chown will fail. But the chmod can still be done. + +Signed-off-by: Maarten ter Huurne +[Julien: rebase on top of 4.9.1] +Signed-off-by: Julien Olivain +--- + Makefile.in | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/Makefile.in b/Makefile.in +index 3efbbfd..0315fde 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -84,7 +84,8 @@ screen: $(OFILES) + + install_bin: .version screen installdirs + $(INSTALL_PROGRAM) screen $(DESTDIR)$(bindir)/$(SCREEN) +- -chown root $(DESTDIR)$(bindir)/$(SCREEN) && chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN) ++ -chown root $(DESTDIR)$(bindir)/$(SCREEN) ++ -chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN) + # This doesn't work if $(bindir)/screen is a symlink + rm -f $(DESTDIR)$(bindir)/screen + (cd $(DESTDIR)$(bindir) && ln -f -s $(SCREEN) screen) +-- +2.41.0 + diff --git a/package/screen/0003-install-always-chmod.patch b/package/screen/0003-install-always-chmod.patch deleted file mode 100644 index 0aa7690b086f..000000000000 --- a/package/screen/0003-install-always-chmod.patch +++ /dev/null @@ -1,29 +0,0 @@ -From: Maarten ter Huurne -Date: Mon, 15 Sep 2014 00:03:05 +0200 -Subject: Change binary permission flags even if chown fails - -Typically when creating a package, the build is not run as root, so -the chown will fail. But the chmod can still be done. - -Signed-off-by: Maarten ter Huurne ---- - Makefile.in | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/Makefile.in b/Makefile.in -index 65549e9..3c12fdb 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -84,7 +84,8 @@ screen: $(OFILES) - - install_bin: .version screen - $(INSTALL_PROGRAM) screen $(DESTDIR)$(bindir)/$(SCREEN) -- -chown root $(DESTDIR)$(bindir)/$(SCREEN) && chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN) -+ -chown root $(DESTDIR)$(bindir)/$(SCREEN) -+ -chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN) - # This doesn't work if $(bindir)/screen is a symlink - rm -f $(DESTDIR)$(bindir)/screen - (cd $(DESTDIR)$(bindir) && ln -f -s $(SCREEN) screen) --- -1.8.4.5 - diff --git a/package/screen/0004-Support-overriding-SCREEN-to-get-a-non-versioned-bin.patch b/package/screen/0004-Support-overriding-SCREEN-to-get-a-non-versioned-bin.patch new file mode 100644 index 000000000000..15795874ae20 --- /dev/null +++ b/package/screen/0004-Support-overriding-SCREEN-to-get-a-non-versioned-bin.patch @@ -0,0 +1,34 @@ +From 07d6e4d9da8bc7c6ed31aa9b643410ea093d164f Mon Sep 17 00:00:00 2001 +From: Maarten ter Huurne +Date: Mon, 15 Sep 2014 00:06:20 +0200 +Subject: [PATCH] Support overriding SCREEN to get a non-versioned binary + +If a packager runs "make install SCREEN=screen", do not create +"screen" as a symlink to itself. + +Signed-off-by: Maarten ter Huurne +[Julien: rebase on top of 4.9.1] +Signed-off-by: Julien Olivain +--- + Makefile.in | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/Makefile.in b/Makefile.in +index 0315fde..4718f08 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -86,9 +86,11 @@ install_bin: .version screen installdirs + $(INSTALL_PROGRAM) screen $(DESTDIR)$(bindir)/$(SCREEN) + -chown root $(DESTDIR)$(bindir)/$(SCREEN) + -chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN) ++ifneq (${SCREEN},screen) + # This doesn't work if $(bindir)/screen is a symlink + rm -f $(DESTDIR)$(bindir)/screen + (cd $(DESTDIR)$(bindir) && ln -f -s $(SCREEN) screen) ++endif + cp $(srcdir)/utf8encodings/?? $(DESTDIR)$(SCREENENCODINGS) + + ############################################################################### +-- +2.41.0 + diff --git a/package/screen/0004-install-nonversioned-binary.patch b/package/screen/0004-install-nonversioned-binary.patch deleted file mode 100644 index ecbbd6519754..000000000000 --- a/package/screen/0004-install-nonversioned-binary.patch +++ /dev/null @@ -1,31 +0,0 @@ -From: Maarten ter Huurne -Date: Mon, 15 Sep 2014 00:06:20 +0200 -Subject: Support overriding SCREEN to get a non-versioned binary - -If a packager runs "make install SCREEN=screen", do not create -"screen" as a symlink to itself. - -Signed-off-by: Maarten ter Huurne ---- - Makefile.in | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/Makefile.in b/Makefile.in -index 3c12fdb..860f351 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -86,9 +86,11 @@ install_bin: .version screen - $(INSTALL_PROGRAM) screen $(DESTDIR)$(bindir)/$(SCREEN) - -chown root $(DESTDIR)$(bindir)/$(SCREEN) - -chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN) -+ifneq (${SCREEN},screen) - # This doesn't work if $(bindir)/screen is a symlink - rm -f $(DESTDIR)$(bindir)/screen - (cd $(DESTDIR)$(bindir) && ln -f -s $(SCREEN) screen) -+endif - cp $(srcdir)/utf8encodings/?? $(DESTDIR)$(SCREENENCODINGS) - - ############################################################################### --- -1.8.4.5 - diff --git a/package/screen/0005-Renamed-sched.h-to-eventqueue.h.patch b/package/screen/0005-Renamed-sched.h-to-eventqueue.h.patch new file mode 100644 index 000000000000..24df05de8c46 --- /dev/null +++ b/package/screen/0005-Renamed-sched.h-to-eventqueue.h.patch @@ -0,0 +1,39 @@ +From 8b066a777b61600ff2c60cad0725f2089299ff56 Mon Sep 17 00:00:00 2001 +From: Maarten ter Huurne +Date: Mon, 15 Sep 2014 00:24:41 +0200 +Subject: [PATCH] Renamed sched.h to eventqueue.h + +There is a system header that got shadowed by "sched.h". +While Screen itself doesn't include , other system headers +might include it indirectly. This broke the build when using uClibc +with pthread support. + +Signed-off-by: Maarten ter Huurne +[Julien: rebase on top of 4.9.1] +Signed-off-by: Julien Olivain +--- + sched.h => eventqueue.h | 0 + screen.h | 2 +- + 2 files changed, 1 insertion(+), 1 deletion(-) + rename sched.h => eventqueue.h (100%) + +diff --git a/sched.h b/eventqueue.h +similarity index 100% +rename from sched.h +rename to eventqueue.h +diff --git a/screen.h b/screen.h +index 4823efb..2d51788 100644 +--- a/screen.h ++++ b/screen.h +@@ -43,7 +43,7 @@ + #include "osdef.h" + + #include "ansi.h" +-#include "sched.h" ++#include "eventqueue.h" + #include "acls.h" + #include "comm.h" + #include "layer.h" +-- +2.41.0 + diff --git a/package/screen/0005-rename-sched_h.patch b/package/screen/0005-rename-sched_h.patch deleted file mode 100644 index 9b29b76e0711..000000000000 --- a/package/screen/0005-rename-sched_h.patch +++ /dev/null @@ -1,142 +0,0 @@ -From: Maarten ter Huurne -Date: Mon, 15 Sep 2014 00:24:41 +0200 -Subject: Renamed sched.h to eventqueue.h - -There is a system header that got shadowed by "sched.h". -While Screen itself doesn't include , other system headers -might include it indirectly. This broke the build when using uClibc -with pthread support. - -Signed-off-by: Maarten ter Huurne ---- - eventqueue.h | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ - sched.h | 48 ------------------------------------------------ - screen.h | 2 +- - 3 files changed, 49 insertions(+), 49 deletions(-) - create mode 100644 eventqueue.h - delete mode 100644 sched.h - -diff --git a/eventqueue.h b/eventqueue.h -new file mode 100644 -index 0000000..fdc3fc4 ---- /dev/null -+++ b/eventqueue.h -@@ -0,0 +1,48 @@ -+/* Copyright (c) 2008, 2009 -+ * Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de) -+ * Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de) -+ * Micah Cowan (micah@cowan.name) -+ * Sadrul Habib Chowdhury (sadrul@users.sourceforge.net) -+ * Copyright (c) 1993-2002, 2003, 2005, 2006, 2007 -+ * Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de) -+ * Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de) -+ * Copyright (c) 1987 Oliver Laumann -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 3, or (at your option) -+ * any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program (see the file COPYING); if not, see -+ * https://www.gnu.org/licenses/, or contact Free Software Foundation, Inc., -+ * 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA -+ * -+ **************************************************************** -+ * $Id$ GNU -+ */ -+ -+struct event -+{ -+ struct event *next; -+ void (*handler) __P((struct event *, char *)); -+ char *data; -+ int fd; -+ int type; -+ int pri; -+ struct timeval timeout; -+ int queued; /* in evs queue */ -+ int active; /* in fdset */ -+ int *condpos; /* only active if condpos - condneg > 0 */ -+ int *condneg; -+}; -+ -+#define EV_TIMEOUT 0 -+#define EV_READ 1 -+#define EV_WRITE 2 -+#define EV_ALWAYS 3 -diff --git a/sched.h b/sched.h -deleted file mode 100644 -index fdc3fc4..0000000 ---- a/sched.h -+++ /dev/null -@@ -1,48 +0,0 @@ --/* Copyright (c) 2008, 2009 -- * Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de) -- * Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de) -- * Micah Cowan (micah@cowan.name) -- * Sadrul Habib Chowdhury (sadrul@users.sourceforge.net) -- * Copyright (c) 1993-2002, 2003, 2005, 2006, 2007 -- * Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de) -- * Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de) -- * Copyright (c) 1987 Oliver Laumann -- * -- * This program is free software; you can redistribute it and/or modify -- * it under the terms of the GNU General Public License as published by -- * the Free Software Foundation; either version 3, or (at your option) -- * any later version. -- * -- * This program is distributed in the hope that it will be useful, -- * but WITHOUT ANY WARRANTY; without even the implied warranty of -- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- * GNU General Public License for more details. -- * -- * You should have received a copy of the GNU General Public License -- * along with this program (see the file COPYING); if not, see -- * https://www.gnu.org/licenses/, or contact Free Software Foundation, Inc., -- * 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA -- * -- **************************************************************** -- * $Id$ GNU -- */ -- --struct event --{ -- struct event *next; -- void (*handler) __P((struct event *, char *)); -- char *data; -- int fd; -- int type; -- int pri; -- struct timeval timeout; -- int queued; /* in evs queue */ -- int active; /* in fdset */ -- int *condpos; /* only active if condpos - condneg > 0 */ -- int *condneg; --}; -- --#define EV_TIMEOUT 0 --#define EV_READ 1 --#define EV_WRITE 2 --#define EV_ALWAYS 3 -diff --git a/screen.h b/screen.h -index 603ca3f..34238c8 100644 ---- a/screen.h -+++ b/screen.h -@@ -43,7 +43,7 @@ - #include "osdef.h" - - #include "ansi.h" --#include "sched.h" -+#include "eventqueue.h" - #include "acls.h" - #include "comm.h" - #include "layer.h" --- -1.8.4.5 - diff --git a/package/screen/0006-comm-h-now-depends-on-term-h.patch b/package/screen/0006-comm-h-now-depends-on-term-h.patch deleted file mode 100644 index 6ff6f3da0bec..000000000000 --- a/package/screen/0006-comm-h-now-depends-on-term-h.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 39c5f1c76f1fcef4b5958bf828a63f53426b6984 Mon Sep 17 00:00:00 2001 -From: Mike Gerwitz -Date: Tue, 24 Dec 2013 22:16:31 -0500 -Subject: comm.h now depends on term.h - -Signed-off-by: Fabrice Fontaine -[Patch retrieved and updated from: -http://git.savannah.gnu.org/cgit/screen.git/commit/?id=39c5f1c] ---- - src/Makefile.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Makefile.in b/Makefile.in -index e791e79..d4f7c0b 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -113,7 +113,7 @@ term.h: term.c term.sh - - kmapdef.c: term.h - --comm.h: comm.c comm.sh config.h -+comm.h: comm.c comm.sh config.h term.h - AWK=$(AWK) CC="$(CC) $(CFLAGS)" srcdir=${srcdir} sh $(srcdir)/comm.sh - - docs: --- -cgit v1.0-41-gc330 - diff --git a/package/screen/0006-comm.h-now-depends-on-term.h.patch b/package/screen/0006-comm.h-now-depends-on-term.h.patch new file mode 100644 index 000000000000..088dfb340c92 --- /dev/null +++ b/package/screen/0006-comm.h-now-depends-on-term.h.patch @@ -0,0 +1,30 @@ +From 23a8ca6be87ad374d66854cee66ab758880cc651 Mon Sep 17 00:00:00 2001 +From: Mike Gerwitz +Date: Tue, 24 Dec 2013 22:16:31 -0500 +Subject: [PATCH] comm.h now depends on term.h + +Signed-off-by: Fabrice Fontaine +[Patch retrieved and updated from: +http://git.savannah.gnu.org/cgit/screen.git/commit/?id=39c5f1c] +[Julien: rebase on top of 4.9.1] +Signed-off-by: Julien Olivain +--- + Makefile.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile.in b/Makefile.in +index 4718f08..7082a3e 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -132,7 +132,7 @@ kmapdef.c: term.h + tty.c: tty.sh + sh $(srcdir)/tty.sh tty.c + +-comm.h: comm.c comm.sh config.h ++comm.h: comm.c comm.sh config.h term.h + AWK=$(AWK) CC="$(CC) $(CFLAGS)" srcdir=${srcdir} sh $(srcdir)/comm.sh + + osdef.h: osdef.sh config.h osdef.h.in +-- +2.41.0 + diff --git a/package/screen/0007-comm.h-needed-for-list_-display-generic-.o.patch b/package/screen/0007-comm.h-needed-for-list_-display-generic-.o.patch index f406a1afac69..d46bf723b800 100644 --- a/package/screen/0007-comm.h-needed-for-list_-display-generic-.o.patch +++ b/package/screen/0007-comm.h-needed-for-list_-display-generic-.o.patch @@ -1,4 +1,4 @@ -From b719314d201a3e9e1e57c65746a468c47bfc847f Mon Sep 17 00:00:00 2001 +From 8d8899b3ffd26d5049f8a9ccf12ff9ac65c352b4 Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Wed, 3 Oct 2018 22:29:32 +0200 Subject: [PATCH] comm.h needed for list_{display,generic}.o @@ -12,15 +12,17 @@ Fixes: Signed-off-by: Fabrice Fontaine [Upstream status: https://savannah.gnu.org/bugs/index.php?54776] +[Julien: rebase on top of 4.9.1] +Signed-off-by: Julien Olivain --- Makefile.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile.in b/Makefile.in -index af5938b..e6d5247 100644 +index 7082a3e..cd363b7 100644 --- a/Makefile.in +++ b/Makefile.in -@@ -265,7 +265,7 @@ braille.h +@@ -349,7 +349,7 @@ layout.o: layout.h viewport.h canvas.h layout.c config.h screen.h os.h osdef.h a viewport.o: layout.h viewport.h canvas.h viewport.c config.h screen.h os.h osdef.h ansi.h acls.h \ comm.h layer.h term.h image.h display.h window.h extern.h \ braille.h @@ -31,5 +33,5 @@ index af5938b..e6d5247 100644 list_window.o: list_generic.h list_window.c window.h layer.h screen.h osdef.h comm.h -- -2.17.1 +2.41.0 diff --git a/package/screen/screen.hash b/package/screen/screen.hash index a261d3100de4..ef32eb0696b0 100644 --- a/package/screen/screen.hash +++ b/package/screen/screen.hash @@ -1,5 +1,5 @@ # Locally calculated after checking pgp signature -# https://ftp.gnu.org/gnu/screen/screen-4.9.0.tar.gz.sig -sha256 f9335281bb4d1538ed078df78a20c2f39d3af9a4e91c57d084271e0289c730f4 screen-4.9.0.tar.gz +# https://ftp.gnu.org/gnu/screen/screen-4.9.1.tar.gz.sig +sha256 26cef3e3c42571c0d484ad6faf110c5c15091fbf872b06fa7aa4766c7405ac69 screen-4.9.1.tar.gz # Locally calculated sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/package/screen/screen.mk b/package/screen/screen.mk index 3239a1c1f390..d4052b119151 100644 --- a/package/screen/screen.mk +++ b/package/screen/screen.mk @@ -4,7 +4,7 @@ # ################################################################################ -SCREEN_VERSION = 4.9.0 +SCREEN_VERSION = 4.9.1 SCREEN_SITE = $(BR2_GNU_MIRROR)/screen SCREEN_LICENSE = GPL-3.0+ SCREEN_LICENSE_FILES = COPYING diff --git a/package/screenfetch/0001-Detect-which-awk-to-use.patch b/package/screenfetch/0001-Detect-which-awk-to-use.patch new file mode 100644 index 000000000000..86e51e55115d --- /dev/null +++ b/package/screenfetch/0001-Detect-which-awk-to-use.patch @@ -0,0 +1,783 @@ +From 39b6eec51f0c2fa5f2b0e876b14dcfc9c1febf97 Mon Sep 17 00:00:00 2001 +From: Nicolas Boichat +Date: Fri, 4 Aug 2023 12:55:36 +0000 +Subject: [PATCH] Detect which awk to use + +Some embedded distributions (e.g. buildroot) may only provide mawk, +without a symlink to awk. + +At first glance, awk scripts to appear to work fine with either +gawk or mawk. + +Signed-off-by: Nicolas Boichat +Upstream: https://github.com/KittyKatt/screenFetch/commit/b49a2334b8ba806dbc532219e86363886a85d9c8 +[rebased on 3.9.1] +--- + screenfetch-dev | 245 +++++++++++++++++++++++++----------------------- + 1 file changed, 130 insertions(+), 115 deletions(-) + +diff --git a/screenfetch-dev b/screenfetch-dev +index 1e53b2c..765930f 100755 +--- a/screenfetch-dev ++++ b/screenfetch-dev +@@ -352,9 +352,9 @@ colorNumberToCode () { + + detectColors () { + my_colors=$(sed 's/^,/na,/;s/,$/,na/;s/,/ /' <<< "${OPTARG}") +- my_lcolor=$(awk -F' ' '{print $1}' <<< "${my_colors}") ++ my_lcolor=$("${AWK}" -F' ' '{print $1}' <<< "${my_colors}") + my_lcolor=$(colorNumberToCode "${my_lcolor}") +- my_hcolor=$(awk -F' ' '{print $2}' <<< "${my_colors}") ++ my_hcolor=$("${AWK}" -F' ' '{print $2}' <<< "${my_colors}") + my_hcolor=$(colorNumberToCode "${my_hcolor}") + } + +@@ -462,7 +462,22 @@ case $1 in + --version) displayVersion; exit 0;; + esac + ++# Detect which awk to use (unless already specified in environment) ++if [[ -z "${AWK}" ]]; then ++ for awk in awk gawk mawk; do ++ if command -v "${awk}" > /dev/null; then ++ AWK="${awk}" ++ break ++ fi ++ done ++fi ++ ++if ! command -v "${AWK}" > /dev/null; then ++ errorOut "No awk interpreter available (AWK=\"${AWK}\")." ++ exit 1 ++fi + ++# Parse the rest of the flags (some of these functions require awk) + while getopts ":hsu:evVEnLNtlS:A:D:o:c:d:pa:w" flags; do + case $flags in + h) displayHelp; exit 0 ;; +@@ -608,8 +623,8 @@ detectdistro () { + "Debian") + if [[ -f /etc/crunchbang-lsb-release || -f /etc/lsb-release-crunchbang ]]; then + distro="CrunchBang" +- distro_release=$(awk -F'=' '/^DISTRIB_RELEASE=/ {print $2}' /etc/lsb-release-crunchbang) +- distro_codename=$(awk -F'=' '/^DISTRIB_DESCRIPTION=/ {print $2}' /etc/lsb-release-crunchbang) ++ distro_release=$("${AWK}" -F'=' '/^DISTRIB_RELEASE=/ {print $2}' /etc/lsb-release-crunchbang) ++ distro_codename=$("${AWK}" -F'=' '/^DISTRIB_DESCRIPTION=/ {print $2}' /etc/lsb-release-crunchbang) + elif [[ -f /etc/siduction-version ]]; then + distro="Siduction" + distro_release="(Debian Sid)" +@@ -620,10 +635,10 @@ detectdistro () { + elif [[ -f /etc/os-release ]]; then + if grep -q -i 'Raspbian' /etc/os-release ; then + distro="Raspbian" +- distro_release=$(awk -F'=' '/^PRETTY_NAME=/ {print $2}' /etc/os-release) ++ distro_release=$("${AWK}" -F'=' '/^PRETTY_NAME=/ {print $2}' /etc/os-release) + elif grep -q -i 'BlankOn' /etc/os-release ; then + distro='BlankOn' +- distro_release=$(awk -F'=' '/^PRETTY_NAME=/ {print $2}' /etc/os-release) ++ distro_release=$("${AWK}" -F'=' '/^PRETTY_NAME=/ {print $2}' /etc/os-release) + else + distro="Debian" + fi +@@ -639,7 +654,7 @@ detectdistro () { + ;; + "Sulin") + distro="Sulin" +- distro_release=$(awk -F'=' '/^ID_LIKE=/ {print $2}' /etc/os-release) ++ distro_release=$("${AWK}" -F'=' '/^ID_LIKE=/ {print $2}' /etc/os-release) + distro_codename="Roolling donkey" # this is not wrong :D + ;; + "KaOS"|"kaos") +@@ -718,7 +733,7 @@ detectdistro () { + if grep -q 'SailfishOS' /etc/os-release; then + distro="SailfishOS" + distro_codename="$(grep 'VERSION=' /etc/os-release | cut -d '(' -f2 | cut -d ')' -f1)" +- distro_release="$(awk -F'=' '/^VERSION=/ {print $2}' /etc/os-release)" ++ distro_release="$("${AWK}" -F'=' '/^VERSION=/ {print $2}' /etc/os-release)" + fi + fi + ;; +@@ -753,7 +768,7 @@ detectdistro () { + if grep -q -i 'SUSE Linux Enterprise' /etc/os-release ; then + distro="SUSE Linux Enterprise" + distro_codename="n/a" +- distro_release=$(awk -F'=' '/^VERSION_ID=/ {print $2}' /etc/os-release | tr -d '"') ++ distro_release=$("${AWK}" -F'=' '/^VERSION_ID=/ {print $2}' /etc/os-release | tr -d '"') + fi + fi + if [[ "${distro_codename}" == "Tumbleweed" ]]; then +@@ -789,7 +804,7 @@ detectdistro () { + distro="SailfishOS" + if [[ -f /etc/os-release ]]; then + distro_codename="$(grep 'VERSION=' /etc/os-release | cut -d '(' -f2 | cut -d ')' -f1)" +- distro_release="$(awk -F'=' '/^VERSION=/ {print $2}' /etc/os-release)" ++ distro_release="$("${AWK}" -F'=' '/^VERSION=/ {print $2}' /etc/os-release)" + fi + ;; + "Sparky"|"SparkyLinux") +@@ -863,12 +878,12 @@ detectdistro () { + ;; + "Haiku") + distro="Haiku" +- distro_more="$(uname -v | awk '/^hrev/ {print $1}')" ++ distro_more="$(uname -v | "${AWK}" '/^hrev/ {print $1}')" + ;; + "GNU/Linux") + if type -p crux >/dev/null 2>&1; then + distro="CRUX" +- distro_more="$(crux | awk '{print $3}')" ++ distro_more="$(crux | "${AWK}" '{print $3}')" + fi + if type -p nixos-version >/dev/null 2>&1; then + distro="NixOS" +@@ -944,7 +959,7 @@ detectdistro () { + [[ "${distro}" == "Neon" ]] && distro="KDE neon" + [[ "${distro}" == "SLED" || "${distro}" == "sled" || "${distro}" == "SLES" || "${distro}" == "sles" ]] && distro="SUSE Linux Enterprise" + if [[ "${distro}" == "SUSE Linux Enterprise" && -f /etc/os-release ]]; then +- distro_more="$(awk -F'=' '/^VERSION_ID=/ {print $2}' /etc/os-release | tr -d '"')" ++ distro_more="$("${AWK}" -F'=' '/^VERSION_ID=/ {print $2}' /etc/os-release | tr -d '"')" + fi + if [[ "${distro}" == "Debian" && -f /usr/bin/pveversion ]]; then + distro="Proxmox VE" +@@ -955,7 +970,7 @@ detectdistro () { + + if [[ "${distro}" == "Unknown" && "${OSTYPE}" =~ "linux" && -f /etc/lsb-release ]]; then + LSB_RELEASE=$(/dev/null; then + distro="Mac OS X" + elif [[ -f /var/run/dmesg.boot ]]; then +- distro=$(awk 'BEGIN { ++ distro=$("${AWK}" 'BEGIN { + distro = "Unknown" + } + { +@@ -1080,7 +1095,7 @@ detectdistro () { + + if [[ "${distro}" == "Unknown" ]] && [[ "${OSTYPE}" =~ "linux" || "${OSTYPE}" == "gnu" ]]; then + if [[ -f /etc/issue ]]; then +- distro=$(awk 'BEGIN { ++ distro=$("${AWK}" 'BEGIN { + distro = "Unknown" + } + { +@@ -1123,8 +1138,8 @@ detectdistro () { + fi + elif [[ -f /etc/lsb-release ]]; then + if grep -q -i 'CHROMEOS_RELEASE_NAME' /etc/lsb-release; then +- distro="$(awk -F'=' '/^CHROMEOS_RELEASE_NAME=/ {print $2}' /etc/lsb-release)" +- distro_more="$(awk -F'=' '/^CHROMEOS_RELEASE_VERSION=/ {print $2}' /etc/lsb-release)" ++ distro="$("${AWK}" -F'=' '/^CHROMEOS_RELEASE_NAME=/ {print $2}' /etc/lsb-release)" ++ distro_more="$("${AWK}" -F'=' '/^CHROMEOS_RELEASE_VERSION=/ {print $2}' /etc/lsb-release)" + fi + fi + fi +@@ -1301,7 +1316,7 @@ detectuptime () { + now=$(date +%s) + uptime=$((now - boot)) + elif [[ "${distro}" == "Haiku" ]]; then +- uptime=$(uptime | awk -F', up ' '{gsub(/ *hours?,/, "h"); gsub(/ *minutes?/, "m"); print $2;}') ++ uptime=$(uptime | "${AWK}" -F', up ' '{gsub(/ *hours?,/, "h"); gsub(/ *minutes?/, "m"); print $2;}') + else + if [[ -f /proc/uptime ]]; then + uptime=$( /dev/null | awk '/OpenGL renderer string/ { sub(/OpenGL renderer string: /,""); print }') ++ gpu=$(glxinfo 2> /dev/null | "${AWK}" '/OpenGL renderer string/ { sub(/OpenGL renderer string: /,""); print }') + elif [[ "${distro}" == "Mac OS X" ]]; then +- gpu=$(system_profiler SPDisplaysDataType | awk -F': ' '/^ *Chipset Model:/ {print $2}' | awk '{ printf "%s / ", $0 }' | sed -e 's/\/ $//g') ++ gpu=$(system_profiler SPDisplaysDataType | "${AWK}" -F': ' '/^ *Chipset Model:/ {print $2}' | "${AWK}" '{ printf "%s / ", $0 }' | sed -e 's/\/ $//g') + elif [[ "${distro}" == "Cygwin" || "${distro}" == "Msys" ]]; then + gpu=$(wmic path Win32_VideoController get caption | sed -n '2p') + elif [[ "${distro}" == "Haiku" ]]; then +- gpu="$(listdev | grep -A2 -e 'device Display controller' | awk -F': ' '/^ +device/ {print $2}')" ++ gpu="$(listdev | grep -A2 -e 'device Display controller' | "${AWK}" -F': ' '/^ +device/ {print $2}')" + else + if [[ -n "$(PATH="/opt/bin:$PATH" type -p nvidia-smi)" ]]; then +- gpu=$($(PATH="/opt/bin:$PATH" type -p nvidia-smi | cut -f1) -q | awk -F':' '/Product Name/ {gsub(/: /,":"); print $2}' | sed ':a;N;$!ba;s/\n/, /g') ++ gpu=$($(PATH="/opt/bin:$PATH" type -p nvidia-smi | cut -f1) -q | "${AWK}" -F':' '/Product Name/ {gsub(/: /,":"); print $2}' | sed ':a;N;$!ba;s/\n/, /g') + elif [[ -n "$(PATH="/usr/sbin:$PATH" type -p glxinfo)" && -z "${gpu}" ]]; then + gpu_info=$($(PATH="/usr/sbin:$PATH" type -p glxinfo | cut -f1) 2>/dev/null) + gpu=$(grep "OpenGL renderer string" <<< "${gpu_info}" | cut -d ':' -f2 | sed -n -e '1h;2,$H;${g;s/\n/, /g' -e 'p' -e '}') +@@ -1650,12 +1665,12 @@ detectgpu () { + # Run it only on Intel Processors if GPU is unknown + DetectIntelGPU() { + if [ -r /proc/fb ]; then +- gpu=$(awk 'BEGIN {ORS = " &"} {$1="";print}' /proc/fb | sed -r s/'^\s+|\s*&$'//g) ++ gpu=$("${AWK}" 'BEGIN {ORS = " &"} {$1="";print}' /proc/fb | sed -r s/'^\s+|\s*&$'//g) + fi + + case $gpu in + *mfb) +- gpu=$(lspci | grep -i vga | awk -F ": " '{print $2}') ++ gpu=$(lspci | grep -i vga | "${AWK}" -F ": " '{print $2}') + ;; + *intel*) + gpu="intel" +@@ -1667,7 +1682,7 @@ DetectIntelGPU() { + + if [[ "$gpu" = "intel" ]]; then + #Detect CPU +- local CPU=$(uname -p | awk '{print $3}') ++ local CPU=$(uname -p | "${AWK}" '{print $3}') + CPU=${CPU#*'-'}; #Detect CPU number + + #Detect Intel GPU +@@ -1710,7 +1725,7 @@ detectdisk () { + if [[ "${distro}" =~ (Free|Net|DragonFly)BSD ]]; then + totaldisk=$(df -h -c 2>/dev/null | tail -1) + elif [[ "${distro}" == "OpenBSD" ]]; then +- totaldisk=$(df -Pk 2> /dev/null | awk ' ++ totaldisk=$(df -Pk 2> /dev/null | "${AWK}" ' + /^\// {total+=$2; used+=$3; avail+=$4} + END{printf("total %.1fG %.1fG %.1fG %d%%\n", total/1048576, used/1048576, avail/1048576, used*100/total)}') + elif [[ "${distro}" == "Mac OS X" ]]; then +@@ -1718,9 +1733,9 @@ detectdisk () { + else + totaldisk=$(df -h -x aufs -x tmpfs -x overlay --total 2>/dev/null | tail -1) + fi +- disktotal=$(awk '{print $2}' <<< "${totaldisk}") +- diskused=$(awk '{print $3}' <<< "${totaldisk}") +- diskusedper=$(awk '{print $5}' <<< "${totaldisk}") ++ disktotal=$("${AWK}" '{print $2}' <<< "${totaldisk}") ++ diskused=$("${AWK}" '{print $3}' <<< "${totaldisk}") ++ diskusedper=$("${AWK}" '{print $5}' <<< "${totaldisk}") + diskusage="${diskused} / ${disktotal} (${diskusedper})" + diskusage_verbose=$(sed 's/%/%%/' <<< "$diskusage") + fi +@@ -1733,17 +1748,17 @@ detectdisk () { + detectmem () { + if [ "$distro" == "Mac OS X" ]; then + totalmem=$(echo "$(sysctl -n hw.memsize)" / 1024^2 | bc) +- wiredmem=$(vm_stat | grep wired | awk '{ print $4 }' | sed 's/\.//') +- activemem=$(vm_stat | grep ' active' | awk '{ print $3 }' | sed 's/\.//') +- compressedmem=$(vm_stat | grep occupied | awk '{ print $5 }' | sed 's/\.//') ++ wiredmem=$(vm_stat | grep wired | "${AWK}" '{ print $4 }' | sed 's/\.//') ++ activemem=$(vm_stat | grep ' active' | "${AWK}" '{ print $3 }' | sed 's/\.//') ++ compressedmem=$(vm_stat | grep occupied | "${AWK}" '{ print $5 }' | sed 's/\.//') + if [[ ! -z "$compressedmem | tr -d" ]]; then # FIXME: is this line correct? + compressedmem=0 + fi + usedmem=$(((wiredmem + activemem + compressedmem) * 4 / 1024)) + elif [[ "${distro}" == "Cygwin" || "${distro}" == "Msys" ]]; then +- total_mem=$(awk '/MemTotal/ { print $2 }' /proc/meminfo) ++ total_mem=$("${AWK}" '/MemTotal/ { print $2 }' /proc/meminfo) + totalmem=$((total_mem / 1024)) +- free_mem=$(awk '/MemFree/ { print $2 }' /proc/meminfo) ++ free_mem=$("${AWK}" '/MemFree/ { print $2 }' /proc/meminfo) + used_mem=$((total_mem - free_mem)) + usedmem=$((used_mem / 1024)) + elif [[ "$distro" == "FreeBSD" || "$distro" == "DragonFlyBSD" ]]; then +@@ -1769,21 +1784,21 @@ detectmem () { + usedmem=$((used_mem / 1024 / 1024)) + elif [ "$distro" == "OpenBSD" ]; then + totalmem=$(($(sysctl -n hw.physmem) / 1024 / 1024)) +- usedmem=$(vmstat | awk '!/[a-z]/{gsub("M",""); print $3}') ++ usedmem=$(vmstat | "${AWK}" '!/[a-z]/{gsub("M",""); print $3}') + elif [ "$distro" == "NetBSD" ]; then +- phys_mem=$(awk '/MemTotal/ { print $2 }' /proc/meminfo) ++ phys_mem=$("${AWK}" '/MemTotal/ { print $2 }' /proc/meminfo) + totalmem=$((phys_mem / 1024)) + if grep -q 'Cached' /proc/meminfo; then +- cache=$(awk '/Cached/ {print $2}' /proc/meminfo) ++ cache=$("${AWK}" '/Cached/ {print $2}' /proc/meminfo) + usedmem=$((cache / 1024)) + else +- free_mem=$(awk '/MemFree/ { print $2 }' /proc/meminfo) ++ free_mem=$("${AWK}" '/MemFree/ { print $2 }' /proc/meminfo) + used_mem=$((phys_mem - free_mem)) + usedmem=$((used_mem / 1024)) + fi + elif [ "$distro" == "Haiku" ]; then +- totalmem=$(sysinfo -mem | awk 'NR == 1 {gsub(/[\(\)\/]/, ""); printf("%d", $6/1024**2)}') +- usedmem=$(sysinfo -mem | awk 'NR == 1 {gsub(/[\(\)\/]/, ""); printf("%d", $5/1024**2)}') ++ totalmem=$(sysinfo -mem | "${AWK}" 'NR == 1 {gsub(/[\(\)\/]/, ""); printf("%d", $6/1024**2)}') ++ usedmem=$(sysinfo -mem | "${AWK}" 'NR == 1 {gsub(/[\(\)\/]/, ""); printf("%d", $5/1024**2)}') + else + # MemUsed = Memtotal + Shmem - MemFree - Buffers - Cached - SReclaimable + # Source: https://github.com/dylanaraps/neofetch/pull/391/files#diff-e863270127ca6116fd30e708cdc582fc +@@ -1798,7 +1813,7 @@ detectmem () { + #done + #usedmem=$((usedmem / 1024)) + #totalmem=$((totalmem / 1024)) +- mem=$(free -b | awk 'NR==2{print $2"-"$7}') ++ mem=$(free -b | "${AWK}" 'NR==2{print $2"-"$7}') + usedmem=$((mem / 1024 / 1024)) + totalmem=$((${mem//-*} / 1024 / 1024)) + fi +@@ -1823,7 +1838,7 @@ detectshell_ver () { + esac + + if [[ -n $version_data ]];then +- version=$(awk ' ++ version=$("${AWK}" ' + BEGIN { + IGNORECASE=1 + } +@@ -1842,7 +1857,7 @@ detectshell () { + if [[ ! "${shell_type}" ]]; then + if [[ "${distro}" == "Cygwin" || "${distro}" == "Msys" || "${distro}" == "Haiku" || "${distro}" == "Alpine Linux" || + "${distro}" == "Mac OS X" || "${distro}" == "TinyCore" || "${distro}" == "Raspbian" || "${OSTYPE}" == "gnu" ]]; then +- shell_type=$(echo "$SHELL" | awk -F'/' '{print $NF}') ++ shell_type=$(echo "$SHELL" | "${AWK}" -F'/' '{print $NF}') + elif readlink -f "$SHELL" 2>&1 | grep -q -i 'busybox'; then + shell_type="BusyBox" + else +@@ -1851,7 +1866,7 @@ detectshell () { + elif [[ "${distro}" =~ "BSD" ]]; then + shell_type=$(ps -p $PPID -o command | tail -1) + else +- shell_type=$(ps -p "$(ps -p $PPID | awk '$1 !~ /PID/ {print $1}')" | awk 'FNR>1 {print $1}') ++ shell_type=$(ps -p "$(ps -p $PPID | "${AWK}" '$1 !~ /PID/ {print $1}')" | "${AWK}" 'FNR>1 {print $1}') + fi + shell_type=${shell_type/-} + shell_type=${shell_type//*\/} +@@ -1881,7 +1896,7 @@ detectshell () { + shell_version_data=$( detectshell_ver "$shell_type" "^zsh" "2" ) + ;; + fish) +- shell_version_data=$( fish --version | awk '{print $3}' ) ++ shell_version_data=$( fish --version | "${AWK}" '{print $3}' ) + ;; + esac + +@@ -1899,17 +1914,17 @@ detectshell () { + detectres () { + xResolution="No X Server" + if [[ ${distro} == "Mac OS X" ]]; then +- xResolution=$(system_profiler SPDisplaysDataType | awk '/Resolution:/ {print $2"x"$4" "}') ++ xResolution=$(system_profiler SPDisplaysDataType | "${AWK}" '/Resolution:/ {print $2"x"$4" "}') + if [[ "$(echo "$xResolution" | wc -l)" -ge 1 ]]; then + xResolution=$(echo "$xResolution" | tr "\\n" "," | sed 's/\(.*\),/\1/') + fi + elif [[ "${distro}" == "Cygwin" || "${distro}" == "Msys" ]]; then +- xResolution=$(wmic path Win32_VideoController get CurrentHorizontalResolution,CurrentVerticalResolution | awk 'NR==2 {print $1"x"$2}') ++ xResolution=$(wmic path Win32_VideoController get CurrentHorizontalResolution,CurrentVerticalResolution | "${AWK}" 'NR==2 {print $1"x"$2}') + elif [[ "${distro}" == "Haiku" ]]; then +- xResolution="$(screenmode | grep Resolution | awk '{gsub(/,/,""); print $2"x"$3}')" ++ xResolution="$(screenmode | grep Resolution | "${AWK}" '{gsub(/,/,""); print $2"x"$3}')" + elif [[ -n ${DISPLAY} ]]; then + if type -p xdpyinfo >/dev/null 2>&1; then +- xResolution=$(xdpyinfo | awk '/^ +dimensions/ {print $2}') ++ xResolution=$(xdpyinfo | "${AWK}" '/^ +dimensions/ {print $2}') + fi + fi + verboseOut "Finding current resolution(s)...found as '$xResolution'" +@@ -1937,7 +1952,7 @@ detectde () { + if type -p xprop >/dev/null 2>&1;then + xprop_root="$(xprop -root 2>/dev/null)" + if [[ -n ${xprop_root} ]]; then +- DE=$(echo "${xprop_root}" | awk 'BEGIN { ++ DE=$(echo "${xprop_root}" | "${AWK}" 'BEGIN { + de = "Not Present" + } + { +@@ -2099,7 +2114,7 @@ detectde () { + elif [[ ${KDE_FULL_SESSION} == 'true' ]]; then + DE="KDE" + DEver_data=$(kded --version 2>/dev/null) +- DEver=$(grep -si '^KDE:' <<< "$DEver_data" | awk '{print $2}') ++ DEver=$(grep -si '^KDE:' <<< "$DEver_data" | "${AWK}" '{print $2}') + fi + fi + fi +@@ -2154,7 +2169,7 @@ detectde () { + fi + elif [[ ${DE} == "LXQt" ]]; then + if type -p lxqt-about >/dev/null 2>&1; then +- DEver=$(lxqt-about --version | awk '/^liblxqt/ {print $2}') ++ DEver=$(lxqt-about --version | "${AWK}" '/^liblxqt/ {print $2}') + DE="${DE} ${DEver}" + fi + elif [[ ${DE} == "MATE" ]]; then +@@ -2169,12 +2184,12 @@ detectde () { + fi + elif [[ ${DE} == "Deepin" ]]; then + if [[ -f /etc/deepin-version ]]; then +- DEver="$(awk -F '=' '/Version/ {print $2}' /etc/deepin-version)" ++ DEver="$("${AWK}" -F '=' '/Version/ {print $2}' /etc/deepin-version)" + DE="${DE} ${DEver//* }" + fi + elif [[ ${DE} == "Trinity" ]]; then + if type -p tde-config >/dev/null 2>&1; then +- DEver="$(tde-config --version | awk -F ' ' '/TDE:/ {print $2}')" ++ DEver="$(tde-config --version | "${AWK}" -F ' ' '/TDE:/ {print $2}')" + DE="${DE} ${DEver//* }" + fi + fi +@@ -2418,7 +2433,7 @@ detectwmtheme () { + else + themeFile="$(reg query 'HKCU\Software\Microsoft\Windows\CurrentVersion\Themes' /v 'CurrentTheme')" + fi +- Win_theme=$(echo "$themeFile" | awk -F"\\" '{print $NF}' | sed 's|\.theme$||') ++ Win_theme=$(echo "$themeFile" | "${AWK}" -F"\\" '{print $NF}' | sed 's|\.theme$||') + fi + else + case $WM in +@@ -2433,7 +2448,7 @@ detectwmtheme () { + ;; + 'BlackBox') + if [ -f "$HOME/.blackboxrc" ]; then +- Win_theme="$(awk -F"/" '/styleFile/ {print $NF}' "$HOME/.blackboxrc")" ++ Win_theme="$("${AWK}" -F"/" '/styleFile/ {print $NF}' "$HOME/.blackboxrc")" + fi + ;; + 'BudgieWM') +@@ -2465,11 +2480,11 @@ detectwmtheme () { + fi + ;; + 'E16') +- Win_theme="$(awk -F"= " '/theme.name/ {print $2}' "$HOME/.e16/e_config--0.0.cfg")" ++ Win_theme="$("${AWK}" -F"= " '/theme.name/ {print $2}' "$HOME/.e16/e_config--0.0.cfg")" + ;; + 'E17'|'Enlightenment') + if [ "$(which eet 2>/dev/null)" ]; then +- econfig="$(eet -d "$HOME/.e/e/config/standard/e.cfg" config | awk '/value \"file\" string.*.edj/{ print $4 }')" ++ econfig="$(eet -d "$HOME/.e/e/config/standard/e.cfg" config | "${AWK}" '/value \"file\" string.*.edj/{ print $4 }')" + econfigend="${econfig##*/}" + Win_theme=${econfigend%.*} + elif [ -n "${E_CONF_PROFILE}" ]; then +@@ -2485,12 +2500,12 @@ detectwmtheme () { + ;; + 'FluxBox'|'Fluxbox') + if [ -f "$HOME/.fluxbox/init" ]; then +- Win_theme="$(awk -F"/" '/styleFile/ {print $NF}' "$HOME/.fluxbox/init")" ++ Win_theme="$("${AWK}" -F"/" '/styleFile/ {print $NF}' "$HOME/.fluxbox/init")" + fi + ;; + 'IceWM') + if [ -f "$HOME/.icewm/theme" ]; then +- Win_theme="$(awk -F"[\",/]" '!/#/ {print $2}' "$HOME/.icewm/theme")" ++ Win_theme="$("${AWK}" -F"[\",/]" '!/#/ {print $2}' "$HOME/.icewm/theme")" + fi + ;; + 'KWin'*) +@@ -2507,14 +2522,14 @@ detectwmtheme () { + Win_theme="Not Applicable" + KDE_CONFIG_DIR=${KDE_CONFIG_DIR%/} + if [[ -f $KDE_CONFIG_DIR/share/config/kwinrc ]]; then +- Win_theme="$(awk '/PluginLib=kwin3_/{gsub(/PluginLib=kwin3_/,"",$0); print $0; exit}' "$KDE_CONFIG_DIR/share/config/kwinrc")" ++ Win_theme="$("${AWK}" '/PluginLib=kwin3_/{gsub(/PluginLib=kwin3_/,"",$0); print $0; exit}' "$KDE_CONFIG_DIR/share/config/kwinrc")" + if [[ -z "$Win_theme" ]]; then + Win_theme="Not Applicable" + fi + fi + if [[ "$Win_theme" == "Not Applicable" ]]; then + if [[ -f $KDE_CONFIG_DIR/share/config/kdebugrc ]]; then +- Win_theme="$(awk '/(decoration)/ {gsub(/\[/,"",$1); print $1; exit}' "$KDE_CONFIG_DIR/share/config/kdebugrc")" ++ Win_theme="$("${AWK}" '/(decoration)/ {gsub(/\[/,"",$1); print $1; exit}' "$KDE_CONFIG_DIR/share/config/kdebugrc")" + if [[ -z "$Win_theme" ]]; then + Win_theme="Not Applicable" + fi +@@ -2522,7 +2537,7 @@ detectwmtheme () { + fi + if [[ "$Win_theme" == "Not Applicable" ]]; then + if [[ -f $KDE_CONFIG_DIR/share/config/kdeglobals ]]; then +- Win_theme="$(awk '/\[General\]/ {flag=1;next} /^$/{flag=0} flag {print}' "$KDE_CONFIG_DIR/share/config/kdeglobals" | grep -oP 'Name=\K.*')" ++ Win_theme="$("${AWK}" '/\[General\]/ {flag=1;next} /^$/{flag=0} flag {print}' "$KDE_CONFIG_DIR/share/config/kdeglobals" | grep -oP 'Name=\K.*')" + if [[ -z "$Win_theme" ]]; then + Win_theme="Not Applicable" + fi +@@ -2552,20 +2567,20 @@ detectwmtheme () { + ;; + 'OpenBox'|'Openbox') + if [ -f "${XDG_CONFIG_HOME:-${HOME}/.config}/openbox/rc.xml" ]; then +- Win_theme="$(awk -F"[<,>]" '/]" '/]" '/]" '//dev/null 2>&1; then + gtk2Theme=$(xfconf-query -c xsettings -p /Net/ThemeName 2>/dev/null) +@@ -2779,15 +2794,15 @@ detectgtk () { + fi + + if grep -q 'sNet\/ThemeName' "${config_home}${lxdeconf}" 2>/dev/null; then +- gtk2Theme=$(awk -F'=' '/sNet\/ThemeName/ {print $2}' "${config_home}${lxdeconf}") ++ gtk2Theme=$("${AWK}" -F'=' '/sNet\/ThemeName/ {print $2}' "${config_home}${lxdeconf}") + fi + + if grep -q 'IconThemeName' "${config_home}${lxdeconf}" 2>/dev/null; then +- gtkIcons=$(awk -F'=' '/sNet\/IconThemeName/ {print $2}' "${config_home}${lxdeconf}") ++ gtkIcons=$("${AWK}" -F'=' '/sNet\/IconThemeName/ {print $2}' "${config_home}${lxdeconf}") + fi + + if grep -q 'FontName' "${config_home}${lxdeconf}" 2>/dev/null; then +- gtkFont=$(awk -F'=' '/sGtk\/FontName/ {print $2}' "${config_home}${lxdeconf}") ++ gtkFont=$("${AWK}" -F'=' '/sGtk\/FontName/ {print $2}' "${config_home}${lxdeconf}") + fi + ;; + +@@ -2796,15 +2811,15 @@ detectgtk () { + *) # Lightweight or No DE Found + if [ -f "$HOME/.gtkrc-2.0" ]; then + if grep -q 'gtk-theme' "$HOME/.gtkrc-2.0"; then +- gtk2Theme=$(awk -F'"' '/^gtk-theme/ {print $2}' "$HOME/.gtkrc-2.0") ++ gtk2Theme=$("${AWK}" -F'"' '/^gtk-theme/ {print $2}' "$HOME/.gtkrc-2.0") + fi + + if grep -q 'icon-theme' "$HOME/.gtkrc-2.0"; then +- gtkIcons=$(awk -F'"' '/^gtk-icon-theme/ {print $2}' "$HOME/.gtkrc-2.0") ++ gtkIcons=$("${AWK}" -F'"' '/^gtk-icon-theme/ {print $2}' "$HOME/.gtkrc-2.0") + fi + + if grep -q 'font' "$HOME/.gtkrc-2.0"; then +- gtkFont=$(awk -F'"' '/^gtk-font-name/ {print $2}' "$HOME/.gtkrc-2.0") ++ gtkFont=$("${AWK}" -F'"' '/^gtk-font-name/ {print $2}' "$HOME/.gtkrc-2.0") + fi + fi + # $HOME/.gtkrc.mine theme detect only +@@ -2815,37 +2830,37 @@ detectgtk () { + fi + if [ -f "$minegtkrc" ]; then + if grep -q '^include' "$minegtkrc"; then +- gtk2Theme=$(grep '^include.*gtkrc' "$minegtkrc" | awk -F "/" '{ print $5 }') ++ gtk2Theme=$(grep '^include.*gtkrc' "$minegtkrc" | "${AWK}" -F "/" '{ print $5 }') + fi + if grep -q '^gtk-icon-theme-name' "$minegtkrc"; then +- gtkIcons=$(grep '^gtk-icon-theme-name' "$minegtkrc" | awk -F '"' '{print $2}') ++ gtkIcons=$(grep '^gtk-icon-theme-name' "$minegtkrc" | "${AWK}" -F '"' '{print $2}') + fi + fi + # /etc/gtk-2.0/gtkrc compatibility + if [[ -f /etc/gtk-2.0/gtkrc && ! -f "$HOME/.gtkrc-2.0" && ! -f "$HOME/.gtkrc.mine" && ! -f "$HOME/.gtkrc-2.0.mine" ]]; then + if grep -q 'gtk-theme-name' /etc/gtk-2.0/gtkrc; then +- gtk2Theme=$(awk -F'"' '/^gtk-theme-name/ {print $2}' /etc/gtk-2.0/gtkrc) ++ gtk2Theme=$("${AWK}" -F'"' '/^gtk-theme-name/ {print $2}' /etc/gtk-2.0/gtkrc) + fi + if grep -q 'gtk-fallback-theme-name' /etc/gtk-2.0/gtkrc && ! [ "x$gtk2Theme" = "x" ]; then +- gtk2Theme=$(awk -F'"' '/^gtk-fallback-theme-name/ {print $2}' /etc/gtk-2.0/gtkrc) ++ gtk2Theme=$("${AWK}" -F'"' '/^gtk-fallback-theme-name/ {print $2}' /etc/gtk-2.0/gtkrc) + fi + + if grep -q 'icon-theme' /etc/gtk-2.0/gtkrc; then +- gtkIcons=$(awk -F'"' '/^icon-theme/ {print $2}' /etc/gtk-2.0/gtkrc) ++ gtkIcons=$("${AWK}" -F'"' '/^icon-theme/ {print $2}' /etc/gtk-2.0/gtkrc) + fi + if grep -q 'gtk-fallback-icon-theme' /etc/gtk-2.0/gtkrc && ! [ "x$gtkIcons" = "x" ]; then +- gtkIcons=$(awk -F'"' '/^gtk-fallback-icon-theme/ {print $2}' /etc/gtk-2.0/gtkrc) ++ gtkIcons=$("${AWK}" -F'"' '/^gtk-fallback-icon-theme/ {print $2}' /etc/gtk-2.0/gtkrc) + fi + + if grep -q 'font' /etc/gtk-2.0/gtkrc; then +- gtkFont=$(awk -F'"' '/^gtk-font-name/ {print $2}' /etc/gtk-2.0/gtkrc) ++ gtkFont=$("${AWK}" -F'"' '/^gtk-font-name/ {print $2}' /etc/gtk-2.0/gtkrc) + fi + fi + + # EXPERIMENTAL gtk3 Theme detection + if [[ "$gtk3Theme" = "Not Found" && -f "$HOME/.config/gtk-3.0/settings.ini" ]]; then + if grep -q 'gtk-theme-name' "$HOME/.config/gtk-3.0/settings.ini"; then +- gtk3Theme=$(awk -F'=' '/^gtk-theme-name/ {print $2}' "$HOME/.config/gtk-3.0/settings.ini") ++ gtk3Theme=$("${AWK}" -F'=' '/^gtk-theme-name/ {print $2}' "$HOME/.config/gtk-3.0/settings.ini") + fi + fi + +@@ -2859,7 +2874,7 @@ detectgtk () { + + # ROX-Filer icon detect only + if [ -a "${XDG_CONFIG_HOME:-${HOME}/.config}/rox.sourceforge.net/ROX-Filer/Options" ]; then +- gtkIcons=$(awk -F'[>,<]' '/icon_theme/ {print $3}' "${XDG_CONFIG_HOME:-${HOME}/.config}/rox.sourceforge.net/ROX-Filer/Options") ++ gtkIcons=$("${AWK}" -F'[>,<]' '/icon_theme/ {print $3}' "${XDG_CONFIG_HOME:-${HOME}/.config}/rox.sourceforge.net/ROX-Filer/Options") + fi + + # E17 detection +@@ -2872,10 +2887,10 @@ detectgtk () { + # Background Detection (feh, nitrogen) + if [ "$background_detect" == "1" ]; then + if [ -a "$HOME/.fehbg" ]; then +- gtkBackgroundFull=$(awk -F"'" '/feh --bg/{print $2}' "$HOME/.fehbg" 2>/dev/null) +- gtkBackground=$(echo "$gtkBackgroundFull" | awk -F"/" '{print $NF}') ++ gtkBackgroundFull=$("${AWK}" -F"'" '/feh --bg/{print $2}' "$HOME/.fehbg" 2>/dev/null) ++ gtkBackground=$(echo "$gtkBackgroundFull" | "${AWK}" -F"/" '{print $NF}') + elif [ -a "${XDG_CONFIG_HOME:-${HOME}/.config}/nitrogen/bg-saved.cfg" ]; then +- gtkBackground=$(awk -F"/" '/file=/ {print $NF}' "${XDG_CONFIG_HOME:-${HOME}/.config}/nitrogen/bg-saved.cfg") ++ gtkBackground=$("${AWK}" -F"/" '/file=/ {print $NF}' "${XDG_CONFIG_HOME:-${HOME}/.config}/nitrogen/bg-saved.cfg") + fi + fi + +@@ -2910,7 +2925,7 @@ detectdroid () { + rom=$(getprop ro.build.display.id) + fi + baseband=$(getprop ro.baseband) +- cpu=$(awk -F': ' '/^Processor/ {P=$2} /^Hardware/ {H=$2} END {print H != "" ? H : P}' /proc/cpuinfo) ++ cpu=$("${AWK}" -F': ' '/^Processor/ {P=$2} /^Hardware/ {H=$2} END {print H != "" ? H : P}' /proc/cpuinfo) + } + + +@@ -6032,7 +6047,7 @@ asciiText () { + #n=${#fulloutput[*]} + for ((i=0; i<${#fulloutput[*]}; i++)); do + # echo "${out_array[@]}" +- case $(awk 'BEGIN{srand();print int(rand()*(1000-1))+1 }') in ++ case $("${AWK}" 'BEGIN{srand();print int(rand()*(1000-1))+1 }') in + 411|188|15|166|609) + f_size=${#fulloutput[*]} + o_size=${#out_array[*]} +-- +2.41.0.640.ga95def55d0-goog + diff --git a/package/sdbus-cpp/Config.in.host b/package/sdbus-cpp/Config.in.host new file mode 100644 index 000000000000..d62a65ae843b --- /dev/null +++ b/package/sdbus-cpp/Config.in.host @@ -0,0 +1,11 @@ +config BR2_PACKAGE_HOST_SDBUS_CPP + bool "host sdbus-c++" + depends on BR2_HOST_GCC_AT_LEAST_7 + help + sdbus-c++ is a high-level C++ D-Bus library for Linux + designed to provide expressive, easy-to-use API in modern C++. + + This will build the stub code generator for the adaptor and + proxy interfaces from D-Bus IDL. + + https://github.com/Kistler-Group/sdbus-cpp diff --git a/package/sdbus-cpp/sdbus-cpp.hash b/package/sdbus-cpp/sdbus-cpp.hash index 169fad280761..f4336228af06 100644 --- a/package/sdbus-cpp/sdbus-cpp.hash +++ b/package/sdbus-cpp/sdbus-cpp.hash @@ -1,4 +1,4 @@ # Locally computed: -sha256 7f7231904abb6a996b8c18ddc5fb50078ef5dff5191649abf9f127aff41d24e9 v1.2.0.tar.gz +sha256 ca7405c7f0f9ae3023dcfa37bc68974c4b8a1c9ea2909b970e0aedc3e8657ee6 sdbus-cpp-1.4.0.tar.gz sha256 20c17d8b8c48a600800dfd14f95d5cb9ff47066a9641ddeab48dc54aec96e331 COPYING -sha256 be43debbf06a38325616054a39e44ed5afde4ed21b99de197488a4a306d47e39 COPYING-LGPL-Exception +sha256 a1c9e75e25d8f2ce18017c88978edab2f0dbc7814ad0697d4ff2e5e59959f657 COPYING-LGPL-Exception diff --git a/package/sdbus-cpp/sdbus-cpp.mk b/package/sdbus-cpp/sdbus-cpp.mk index 0e8d74cfcd4d..9ffaeb26d2b9 100644 --- a/package/sdbus-cpp/sdbus-cpp.mk +++ b/package/sdbus-cpp/sdbus-cpp.mk @@ -4,12 +4,20 @@ # ################################################################################ -SDBUS_CPP_VERSION = 1.2.0 -SDBUS_CPP_SOURCE = v$(SDBUS_CPP_VERSION).tar.gz +SDBUS_CPP_VERSION = 1.4.0 SDBUS_CPP_SITE = $(call github,Kistler-Group,sdbus-cpp,v$(SDBUS_CPP_VERSION)) SDBUS_CPP_INSTALL_STAGING = YES SDBUS_CPP_DEPENDENCIES = host-pkgconf systemd SDBUS_CPP_LICENSE = LGPL-2.1+ with exception (headers) SDBUS_CPP_LICENSE_FILES = COPYING COPYING-LGPL-Exception +# Host build for sdbus-c++-xml2cpp +HOST_SDBUS_CPP_DEPENDENCIES = host-pkgconf host-systemd +HOST_SDBUS_CPP_CONF_OPTS = \ + -DBUILD_CODE_GEN=ON \ + -DBUILD_DOC=OFF \ + -DBUILD_TESTS=OFF \ + -DBUILD_LIBSYSTEMD=OFF + $(eval $(cmake-package)) +$(eval $(host-cmake-package)) diff --git a/package/sdl2/sdl2.hash b/package/sdl2/sdl2.hash index e26dcee30160..7a28d5efc87c 100644 --- a/package/sdl2/sdl2.hash +++ b/package/sdl2/sdl2.hash @@ -1,4 +1,4 @@ -# Locally calculated after checking http://www.libsdl.org/release/SDL2-2.26.3.tar.gz.sig -sha256 c661205a553b7d252425f4b751ff13209e5e020b876bbfa1598494af61790057 SDL2-2.26.3.tar.gz +# Locally calculated after checking http://www.libsdl.org/release/SDL2-2.28.5.tar.gz.sig +sha256 332cb37d0be20cb9541739c61f79bae5a477427d79ae85e352089afdaf6666e4 SDL2-2.28.5.tar.gz # Locally calculated sha256 9928507f684c1965d07f2b6ef4b4723d5efc2f6b4ab731f743a413c51c319927 LICENSE.txt diff --git a/package/sdl2/sdl2.mk b/package/sdl2/sdl2.mk index c01f12d12cf7..4646e7d1f871 100644 --- a/package/sdl2/sdl2.mk +++ b/package/sdl2/sdl2.mk @@ -4,7 +4,7 @@ # ################################################################################ -SDL2_VERSION = 2.26.3 +SDL2_VERSION = 2.28.5 SDL2_SOURCE = SDL2-$(SDL2_VERSION).tar.gz SDL2_SITE = http://www.libsdl.org/release SDL2_LICENSE = Zlib diff --git a/package/sdl2_image/sdl2_image.hash b/package/sdl2_image/sdl2_image.hash index e1efa4debe6b..55b2661fc08e 100644 --- a/package/sdl2_image/sdl2_image.hash +++ b/package/sdl2_image/sdl2_image.hash @@ -1,3 +1,3 @@ -# Locally calculated after checking https://www.libsdl.org/projects/SDL_image/release/SDL2_image-2.6.2.tar.gz.sig -sha256 48355fb4d8d00bac639cd1c4f4a7661c4afef2c212af60b340e06b7059814777 SDL2_image-2.6.2.tar.gz -sha256 28aabfed22b3cb0b7e23ef40385e4f66297c960082f029c96d073cc1d4e008d5 LICENSE.txt +# Locally calculated +sha256 931c9be5bf1d7c8fae9b7dc157828b7eee874e23c7f24b44ba7eff6b4836312c SDL2_image-2.6.3.tar.gz +sha256 1852c8549e3d154687197d46abababd3e8faae035f19991b2ca850fa3a43ad57 LICENSE.txt diff --git a/package/sdl2_image/sdl2_image.mk b/package/sdl2_image/sdl2_image.mk index 953742de28ab..aaf379788cc4 100644 --- a/package/sdl2_image/sdl2_image.mk +++ b/package/sdl2_image/sdl2_image.mk @@ -4,7 +4,7 @@ # ################################################################################ -SDL2_IMAGE_VERSION = 2.6.2 +SDL2_IMAGE_VERSION = 2.6.3 SDL2_IMAGE_SOURCE = SDL2_image-$(SDL2_IMAGE_VERSION).tar.gz SDL2_IMAGE_SITE = http://www.libsdl.org/projects/SDL_image/release SDL2_IMAGE_INSTALL_STAGING = YES diff --git a/package/sdl2_mixer/sdl2_mixer.hash b/package/sdl2_mixer/sdl2_mixer.hash index f3bab151f22c..4592014d7f30 100644 --- a/package/sdl2_mixer/sdl2_mixer.hash +++ b/package/sdl2_mixer/sdl2_mixer.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 b4cf5a382c061cd75081cf246c2aa2f9df8db04bdda8dcdc6b6cca55bede2419 SDL2_mixer-2.0.4.tar.gz -sha256 113727180e7956cb9718b03b41da85b63ea54743a33047071a623bf672895a10 COPYING.txt +sha256 7a6ba86a478648ce617e3a5e9277181bc67f7ce9876605eea6affd4a0d6eea8f SDL2_mixer-2.6.3.tar.gz +sha256 1852c8549e3d154687197d46abababd3e8faae035f19991b2ca850fa3a43ad57 LICENSE.txt diff --git a/package/sdl2_mixer/sdl2_mixer.mk b/package/sdl2_mixer/sdl2_mixer.mk index f349b8ca80cf..074e28220549 100644 --- a/package/sdl2_mixer/sdl2_mixer.mk +++ b/package/sdl2_mixer/sdl2_mixer.mk @@ -4,11 +4,11 @@ # ################################################################################ -SDL2_MIXER_VERSION = 2.0.4 +SDL2_MIXER_VERSION = 2.6.3 SDL2_MIXER_SOURCE = SDL2_mixer-$(SDL2_MIXER_VERSION).tar.gz SDL2_MIXER_SITE = http://www.libsdl.org/projects/SDL_mixer/release SDL2_MIXER_LICENSE = Zlib -SDL2_MIXER_LICENSE_FILES = COPYING.txt +SDL2_MIXER_LICENSE_FILES = LICENSE.txt SDL2_MIXER_INSTALL_STAGING = YES SDL2_MIXER_DEPENDENCIES = sdl2 host-pkgconf diff --git a/package/sdl2_net/sdl2_net.hash b/package/sdl2_net/sdl2_net.hash index a58e3c96cf31..eac0ac707f7a 100644 --- a/package/sdl2_net/sdl2_net.hash +++ b/package/sdl2_net/sdl2_net.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 15ce8a7e5a23dafe8177c8df6e6c79b6749a03fff1e8196742d3571657609d21 SDL2_net-2.0.1.tar.gz -sha256 f09845a238245402a8b8388db6634d8a5b2c3e1dc098f16f9d8c74a276ef4594 COPYING.txt +sha256 4e4a891988316271974ff4e9585ed1ef729a123d22c08bd473129179dc857feb SDL2_net-2.2.0.tar.gz +sha256 fcb07e07ac6bc8b2fcf047b50431ef4ebe5b619d7ca7c82212018309a9067426 LICENSE.txt diff --git a/package/sdl2_net/sdl2_net.mk b/package/sdl2_net/sdl2_net.mk index 93bf3a2eb366..85676af08117 100644 --- a/package/sdl2_net/sdl2_net.mk +++ b/package/sdl2_net/sdl2_net.mk @@ -4,11 +4,11 @@ # ################################################################################ -SDL2_NET_VERSION = 2.0.1 +SDL2_NET_VERSION = 2.2.0 SDL2_NET_SOURCE = SDL2_net-$(SDL2_NET_VERSION).tar.gz SDL2_NET_SITE = http://www.libsdl.org/projects/SDL_net/release SDL2_NET_LICENSE = Zlib -SDL2_NET_LICENSE_FILES = COPYING.txt +SDL2_NET_LICENSE_FILES = LICENSE.txt SDL2_NET_INSTALL_STAGING = YES SDL2_NET_DEPENDENCIES = sdl2 host-pkgconf diff --git a/package/sdl2_ttf/sdl2_ttf.hash b/package/sdl2_ttf/sdl2_ttf.hash index 3313b341f9e6..f43ec790fdde 100644 --- a/package/sdl2_ttf/sdl2_ttf.hash +++ b/package/sdl2_ttf/sdl2_ttf.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 78cdad51f3cc3ada6932b1bb6e914b33798ab970a1e817763f22ddbfd97d0c57 SDL2_ttf-2.20.1.tar.gz -sha256 28aabfed22b3cb0b7e23ef40385e4f66297c960082f029c96d073cc1d4e008d5 LICENSE.txt +sha256 9dc71ed93487521b107a2c4a9ca6bf43fb62f6bddd5c26b055e6b91418a22053 SDL2_ttf-2.20.2.tar.gz +sha256 1852c8549e3d154687197d46abababd3e8faae035f19991b2ca850fa3a43ad57 LICENSE.txt diff --git a/package/sdl2_ttf/sdl2_ttf.mk b/package/sdl2_ttf/sdl2_ttf.mk index f859d097fff7..c2c4b660f82f 100644 --- a/package/sdl2_ttf/sdl2_ttf.mk +++ b/package/sdl2_ttf/sdl2_ttf.mk @@ -4,7 +4,7 @@ # ################################################################################ -SDL2_TTF_VERSION = 2.20.1 +SDL2_TTF_VERSION = 2.20.2 SDL2_TTF_SOURCE = SDL2_ttf-$(SDL2_TTF_VERSION).tar.gz SDL2_TTF_SITE = http://www.libsdl.org/projects/SDL_ttf/release SDL2_TTF_LICENSE = Zlib diff --git a/package/seatd/seatd.hash b/package/seatd/seatd.hash index 7500036e5b1d..e1db897d44a7 100644 --- a/package/seatd/seatd.hash +++ b/package/seatd/seatd.hash @@ -1,5 +1,5 @@ # Calculated locally -sha256 210ddf8efa1149cde4dd35908bef8e9e63c2edaa0cdb5435f2e6db277fafff3c 0.7.0.tar.gz +sha256 a562a44ee33ccb20954a1c1ec9a90ecb2db7a07ad6b18d0ac904328efbcf65a0 0.8.0.tar.gz # License files sha256 282a494803d666616bd726e0279636b5f6a31387ae19a707459074050f2600d3 LICENSE diff --git a/package/seatd/seatd.mk b/package/seatd/seatd.mk index 96caf63b303d..27f3c8646fb3 100644 --- a/package/seatd/seatd.mk +++ b/package/seatd/seatd.mk @@ -4,7 +4,7 @@ # ################################################################################ -SEATD_VERSION = 0.7.0 +SEATD_VERSION = 0.8.0 SEATD_SOURCE = $(SEATD_VERSION).tar.gz SEATD_SITE = https://git.sr.ht/~kennylevinsen/seatd/archive SEATD_LICENSE = MIT @@ -33,7 +33,7 @@ ifeq ($(BR2_PACKAGE_SEATD_DAEMON),y) SEATD_CONF_OPTS += -Dlibseat-seatd=enabled -Dserver=enabled define SEATD_USERS - - - video -1 - - - - - + - - seat -1 - - - - - endef define SEATD_INSTALL_INIT_SYSV diff --git a/package/sedutil/0002-include-missing-cstdint.patch b/package/sedutil/0002-include-missing-cstdint.patch new file mode 100644 index 000000000000..07a617c5e769 --- /dev/null +++ b/package/sedutil/0002-include-missing-cstdint.patch @@ -0,0 +1,31 @@ +From 927cd88cad7bea94c2eebecc18f7881f0defaccb Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Thu, 26 Jan 2023 23:36:29 -0800 +Subject: [PATCH] include missing + +gcc 13 moved some includes around and as a result +is no longer transitively included [1]. Explicitly include +it for uint{32,64}_t. + +[1] https://gcc.gnu.org/gcc-13/porting_to.html#header-dep-changes + +Signed-off-by: Khem Raj + +Upstream: https://github.com/Drive-Trust-Alliance/sedutil/pull/425 +Signed-off-by: Fabrice Fontaine +--- + Common/DtaOptions.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Common/DtaOptions.h b/Common/DtaOptions.h +index c012af1d..7530a0b7 100644 +--- a/Common/DtaOptions.h ++++ b/Common/DtaOptions.h +@@ -21,6 +21,7 @@ along with sedutil. If not, see . + #ifndef _DTAOPTIONS_H + #define _DTAOPTIONS_H + ++#include + /** Output modes */ + typedef enum _sedutiloutput { + sedutilNormal, diff --git a/package/selinux-python/0001-python-sepolgen-fix-ausearch-path.patch b/package/selinux-python/0001-python-sepolgen-fix-ausearch-path.patch new file mode 100644 index 000000000000..31c5013d69c2 --- /dev/null +++ b/package/selinux-python/0001-python-sepolgen-fix-ausearch-path.patch @@ -0,0 +1,63 @@ +From 8610efc1610a4e9d4cbfa19ed4a519a6425aee70 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Tue, 9 May 2023 22:28:36 +0200 +Subject: [PATCH] python?sepolgen: fix ausearch path + +ausearch is not always isntalled in /sbin; some systems install it in +/usr/sbin, or it can also be locally installed in /usr/local/sbin. + +The python doc [0] suggests using shutil.which() to find the path where +a command is. which() returns None if the command is not found. If +ausearch is not found, that would result in an exception being raised by +Popen(): + TypeError: expected str, bytes or os.PathLike object, not NoneType + +This is not very informative of what actually failed... + +However, the doc suggests so for portability. In our case, the python +tools are only ever going to run on a Linux host (by their virtue of +dealing with SELinux), so the search will be reliably done by looking in +PATH, so we can let Popen() bubble the resolving of an unqualified +command, down to execvpe() (or the similar actual syscall of the exec*() +familly). If ausearch is then not found, Popen() raises an exception +that is wy more informative then: + FileNotFoundError: [Errno 2] No such file or directory: 'ausearch' + +[0] https://docs.python.org/3/library/subprocess.html#subprocess.Popen + +Signed-off-by: Adam Duskett +[yann.morin.1998@free.fr: + - let Popen() resolve from PATH + - rewrite commit log +] +Signed-off-by: Yann E. MORIN +Upstream: not submitted +--- + python/sepolgen/src/sepolgen/audit.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/python/sepolgen/src/sepolgen/audit.py b/python/sepolgen/src/sepolgen/audit.py +index 4adb851f..5eafa587 100644 +--- a/sepolgen/src/sepolgen/audit.py ++++ b/sepolgen/src/sepolgen/audit.py +@@ -41,7 +41,7 @@ def get_audit_boot_msgs(): + s = time.localtime(time.time() - off) + bootdate = time.strftime("%x", s) + boottime = time.strftime("%X", s) +- output = subprocess.Popen(["/sbin/ausearch", "-m", "AVC,USER_AVC,MAC_POLICY_LOAD,DAEMON_START,SELINUX_ERR", "-ts", bootdate, boottime], ++ output = subprocess.Popen(["ausearch", "-m", "AVC,USER_AVC,MAC_POLICY_LOAD,DAEMON_START,SELINUX_ERR", "-ts", bootdate, boottime], + stdout=subprocess.PIPE).communicate()[0] + if util.PY3: + output = util.decode_input(output) +@@ -56,7 +56,7 @@ def get_audit_msgs(): + string contain all of the audit messages returned by ausearch. + """ + import subprocess +- output = subprocess.Popen(["/sbin/ausearch", "-m", "AVC,USER_AVC,MAC_POLICY_LOAD,DAEMON_START,SELINUX_ERR"], ++ output = subprocess.Popen(["ausearch", "-m", "AVC,USER_AVC,MAC_POLICY_LOAD,DAEMON_START,SELINUX_ERR"], + stdout=subprocess.PIPE).communicate()[0] + if util.PY3: + output = util.decode_input(output) +-- +2.25.1 + diff --git a/package/selinux-python/selinux-python.hash b/package/selinux-python/selinux-python.hash index 6ada3fee363e..3592540703bc 100644 --- a/package/selinux-python/selinux-python.hash +++ b/package/selinux-python/selinux-python.hash @@ -1,5 +1,5 @@ # https://github.com/SELinuxProject/selinux/wiki/Releases -sha256 8ad91061300387996ccb474962fb93dde263d924aa8f740618be16b22e2444ec selinux-python-3.3.tar.gz +sha256 8245bb4dae59333461f19ca0c79a829081f07972fa5e3ad4c2b2b917dd71d96b selinux-python-3.5.tar.gz # Hash for license file -sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 COPYING +sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 LICENSE diff --git a/package/selinux-python/selinux-python.mk b/package/selinux-python/selinux-python.mk index 0cec602f3ddf..7505474aa461 100644 --- a/package/selinux-python/selinux-python.mk +++ b/package/selinux-python/selinux-python.mk @@ -4,10 +4,10 @@ # ################################################################################ -SELINUX_PYTHON_VERSION = 3.3 +SELINUX_PYTHON_VERSION = 3.5 SELINUX_PYTHON_SITE = https://github.com/SELinuxProject/selinux/releases/download/$(SELINUX_PYTHON_VERSION) SELINUX_PYTHON_LICENSE = GPL-2.0 -SELINUX_PYTHON_LICENSE_FILES = COPYING +SELINUX_PYTHON_LICENSE_FILES = LICENSE SELINUX_PYTHON_DEPENDENCIES = python3 SELINUX_PYTHON_MAKE_OPTS += \ diff --git a/package/semodule-utils/semodule-utils.hash b/package/semodule-utils/semodule-utils.hash index c252506df5a0..ac3357d3fab9 100644 --- a/package/semodule-utils/semodule-utils.hash +++ b/package/semodule-utils/semodule-utils.hash @@ -1,5 +1,5 @@ # https://github.com/SELinuxProject/selinux/wiki/Releases -sha256 3098ec5e5f04a1dbbf4aa569b63a4570750a9fe0d4da14ce45954aa300a17063 semodule-utils-3.3.tar.gz +sha256 c9a550a737051ebaf2c102f665c7ec2f85e7232870980aa0067998459b414283 semodule-utils-3.5.tar.gz # Hash for license file -sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 COPYING +sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 LICENSE diff --git a/package/semodule-utils/semodule-utils.mk b/package/semodule-utils/semodule-utils.mk index a9388f7ee8e1..9a0f0841288b 100644 --- a/package/semodule-utils/semodule-utils.mk +++ b/package/semodule-utils/semodule-utils.mk @@ -4,10 +4,10 @@ # ################################################################################ -SEMODULE_UTILS_VERSION = 3.3 +SEMODULE_UTILS_VERSION = 3.5 SEMODULE_UTILS_SITE = https://github.com/SELinuxProject/selinux/releases/download/$(SEMODULE_UTILS_VERSION) SEMODULE_UTILS_LICENSE = GPL-2.0 -SEMODULE_UTILS_LICENSE_FILES = COPYING +SEMODULE_UTILS_LICENSE_FILES = LICENSE SEMODULE_UTILS_DEPENDENCIES = libsepol SEMODULE_UTILS_MAKE_OPTS += \ diff --git a/package/sentry-cli/0001-Disable-SSL-support-for-the-curl-module.patch b/package/sentry-cli/0001-Disable-SSL-support-for-the-curl-module.patch new file mode 100644 index 000000000000..819d8016ae2e --- /dev/null +++ b/package/sentry-cli/0001-Disable-SSL-support-for-the-curl-module.patch @@ -0,0 +1,62 @@ +From 5b4179af15b435a476c006260718d4f6e22ea2ab Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Mon, 31 Jul 2023 22:34:04 +0200 +Subject: [PATCH] Disable SSL support for the curl module + +Fixes build with OpenSSL v3. + +Downloaded Cargo.toml patch from +https://cgit.freebsd.org/ports/tree/devel/sentry-cli/files/patch-Cargo.toml + +Upstream: https://github.com/getsentry/sentry-cli/issues/1706 + +Signed-off-by: Bernd Kuhls +--- + Cargo.lock | 10 ---------- + Cargo.toml | 2 +- + 2 files changed, 1 insertion(+), 11 deletions(-) + +diff --git a/Cargo.lock b/Cargo.lock +index e5031db..7357215 100644 +--- a/Cargo.lock ++++ b/Cargo.lock +@@ -1521,15 +1521,6 @@ version = "0.1.5" + source = "registry+https://github.com/rust-lang/crates.io-index" + checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" + +-[[package]] +-name = "openssl-src" +-version = "111.25.0+1.1.1t" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "3173cd3626c43e3854b1b727422a276e568d9ec5fe8cec197822cf52cfb743d6" +-dependencies = [ +- "cc", +-] +- + [[package]] + name = "openssl-sys" + version = "0.9.80" +@@ -1539,7 +1530,6 @@ dependencies = [ + "autocfg", + "cc", + "libc", +- "openssl-src", + "pkg-config", + "vcpkg", + ] +diff --git a/Cargo.toml b/Cargo.toml +index c8c9ca9..117e77d 100644 +--- a/Cargo.toml ++++ b/Cargo.toml +@@ -25,7 +25,7 @@ clap = { version = "4.1.6", default-features = false, features = [ + "error-context", + ] } + console = "0.15.5" +-curl = { version = "0.4.44", features = ["static-curl", "static-ssl"] } ++curl = { version = "0.4.44" } + dirs = "4.0.0" + dotenv = "0.15.0" + elementtree = "1.2.3" +-- +2.39.2 + diff --git a/package/sentry-cli/sentry-cli.hash b/package/sentry-cli/sentry-cli.hash index 3562199a8297..78f137da3a0e 100644 --- a/package/sentry-cli/sentry-cli.hash +++ b/package/sentry-cli/sentry-cli.hash @@ -1,3 +1,3 @@ # locally calculated -sha256 fa06f9f47782713eef8a4f10b674e2375b9439360ab34b37558ec4b30ec84861 sentry-cli-2.8.0.tar.gz +sha256 2188b8eead4f2b6543725b23852427bea164e8dd76bf1ce33f41ca0c03cfeee7 sentry-cli-2.20.3.tar.gz sha256 9503def7b54ceb6e3cd182fd59bc05d3a30d7eae481e65aaba4b495133c83c14 LICENSE diff --git a/package/sentry-cli/sentry-cli.mk b/package/sentry-cli/sentry-cli.mk index 15094c2d01b8..df419f81e19d 100644 --- a/package/sentry-cli/sentry-cli.mk +++ b/package/sentry-cli/sentry-cli.mk @@ -4,7 +4,7 @@ # ################################################################################ -SENTRY_CLI_VERSION = 2.8.0 +SENTRY_CLI_VERSION = 2.20.3 SENTRY_CLI_SITE = $(call github,getsentry,sentry-cli,$(SENTRY_CLI_VERSION)) SENTRY_CLI_LICENSE = BSD-3-clause SENTRY_CLI_LICENSE_FILES = LICENSE diff --git a/package/setools/0001-Do-not-export-use-setools.InfoFlowAnalysis-and-setoo.patch b/package/setools/0001-Do-not-export-use-setools.InfoFlowAnalysis-and-setoo.patch index 3c3ae97dff89..36063a4e13e7 100644 --- a/package/setools/0001-Do-not-export-use-setools.InfoFlowAnalysis-and-setoo.patch +++ b/package/setools/0001-Do-not-export-use-setools.InfoFlowAnalysis-and-setoo.patch @@ -15,22 +15,22 @@ sedta and seinfoflow to require python3-networkx Signed-off-by: Antoine Tenart [Refreshed for 4.3.0] Signed-off-by: Adam Duskett -[Refreshed for 4.4.0] +[Refreshed for 4.4.2] --- sedta | 3 ++- seinfoflow | 5 +++-- setools/__init__.py | 4 ++-- setoolsgui/apol/dta.py | 2 +- setoolsgui/apol/infoflow.py | 2 +- - tests/dta.py | 2 +- - tests/infoflow.py | 2 +- + tests/test_dta.py | 2 +- + tests/test_infoflow.py | 2 +- 7 files changed, 11 insertions(+), 9 deletions(-) diff --git a/sedta b/sedta -index 60861ca630a5..0056172a55e5 100755 +index ffd9ede..4c53825 100755 --- a/sedta +++ b/sedta -@@ -23,6 +23,7 @@ import logging +@@ -10,6 +10,7 @@ import logging import signal import setools @@ -38,7 +38,7 @@ index 60861ca630a5..0056172a55e5 100755 def print_transition(trans: setools.DomainTransition) -> None: -@@ -114,7 +115,7 @@ else: +@@ -104,7 +105,7 @@ else: try: p = setools.SELinuxPolicy(args.policy) @@ -48,10 +48,10 @@ index 60861ca630a5..0056172a55e5 100755 if args.shortest_path or args.all_paths: if args.shortest_path: diff --git a/seinfoflow b/seinfoflow -index f10c39de4d8e..fe733bbd0787 100755 +index 5f4e764..a27b781 100755 --- a/seinfoflow +++ b/seinfoflow -@@ -18,6 +18,7 @@ +@@ -5,6 +5,7 @@ # import setools @@ -59,7 +59,7 @@ index f10c39de4d8e..fe733bbd0787 100755 import argparse import sys import logging -@@ -102,8 +103,8 @@ elif args.booleans is not None: +@@ -91,8 +92,8 @@ elif args.booleans is not None: try: p = setools.SELinuxPolicy(args.policy) m = setools.PermissionMap(args.map) @@ -71,10 +71,10 @@ index f10c39de4d8e..fe733bbd0787 100755 if args.shortest_path or args.all_paths: if args.shortest_path: diff --git a/setools/__init__.py b/setools/__init__.py -index d72d343..4d5aaaa 100644 +index ad9b36a..2bde01b 100644 --- a/setools/__init__.py +++ b/setools/__init__.py -@@ -91,11 +91,11 @@ from .pcideviceconquery import PcideviceconQuery +@@ -77,11 +77,11 @@ from .pcideviceconquery import PcideviceconQuery from .devicetreeconquery import DevicetreeconQuery # Information Flow Analysis @@ -89,10 +89,10 @@ index d72d343..4d5aaaa 100644 # Policy difference from .diff import PolicyDifference diff --git a/setoolsgui/apol/dta.py b/setoolsgui/apol/dta.py -index 4608b9dbf34e..2cde44c142e9 100644 +index a78d960..e71c70a 100644 --- a/setoolsgui/apol/dta.py +++ b/setoolsgui/apol/dta.py -@@ -24,7 +24,7 @@ from PyQt5.QtCore import pyqtSignal, Qt, QStringListModel, QThread +@@ -11,7 +11,7 @@ from PyQt5.QtCore import pyqtSignal, Qt, QStringListModel, QThread from PyQt5.QtGui import QPalette, QTextCursor from PyQt5.QtWidgets import QCompleter, QHeaderView, QMessageBox, QProgressDialog, \ QTreeWidgetItem @@ -102,10 +102,10 @@ index 4608b9dbf34e..2cde44c142e9 100644 from ..logtosignal import LogHandlerToSignal from .analysistab import AnalysisSection, AnalysisTab diff --git a/setoolsgui/apol/infoflow.py b/setoolsgui/apol/infoflow.py -index 7bca299d23fc..7fee2778f35f 100644 +index fb9b409..738f1b8 100644 --- a/setoolsgui/apol/infoflow.py +++ b/setoolsgui/apol/infoflow.py -@@ -26,7 +26,7 @@ from PyQt5.QtCore import pyqtSignal, Qt, QStringListModel, QThread +@@ -13,7 +13,7 @@ from PyQt5.QtCore import pyqtSignal, Qt, QStringListModel, QThread from PyQt5.QtGui import QPalette, QTextCursor from PyQt5.QtWidgets import QCompleter, QHeaderView, QMessageBox, QProgressDialog, \ QTreeWidgetItem @@ -114,11 +114,11 @@ index 7bca299d23fc..7fee2778f35f 100644 from setools.exception import UnmappedClass, UnmappedPermission from ..logtosignal import LogHandlerToSignal -diff --git a/tests/dta.py b/tests/dta.py -index a0cc9381469c..177e6fb0b961 100644 ---- a/tests/dta.py -+++ b/tests/dta.py -@@ -18,7 +18,7 @@ +diff --git a/tests/test_dta.py b/tests/test_dta.py +index 7f9bbc9..48338c5 100644 +--- a/tests/test_dta.py ++++ b/tests/test_dta.py +@@ -5,7 +5,7 @@ import os import unittest @@ -127,11 +127,11 @@ index a0cc9381469c..177e6fb0b961 100644 from setools import TERuletype as TERT from setools.exception import InvalidType from setools.policyrep import Type -diff --git a/tests/infoflow.py b/tests/infoflow.py -index aa0e44a7e4f8..fca2848aeca5 100644 ---- a/tests/infoflow.py -+++ b/tests/infoflow.py -@@ -18,7 +18,7 @@ +diff --git a/tests/test_infoflow.py b/tests/test_infoflow.py +index 5a8f745..e25993b 100644 +--- a/tests/test_infoflow.py ++++ b/tests/test_infoflow.py +@@ -5,7 +5,7 @@ import os import unittest diff --git a/package/setools/setools.hash b/package/setools/setools.hash index fdb0919f1173..6a61fc2809f8 100644 --- a/package/setools/setools.hash +++ b/package/setools/setools.hash @@ -1,5 +1,5 @@ # Locally computed -sha256 202eac5f857475937bee8136cff278aa2b4a4b94a0dec63fbbbe18c9eb644a4e setools-4.4.0.tar.gz -sha256 2f7547e10f76a382c24c053595f38a5cc6dda9347f508f254ca490e0046a9624 COPYING +sha256 29f5e7d98764a6942b2e32c8aa44da6a618882818c79599ade967ece0cf1dace setools-4.4.3.tar.gz +sha256 0e58d74751e394f39748c7b7b4039d6a883b5def9711160668ba962b52e69e01 COPYING sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING.GPL sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LGPL diff --git a/package/setools/setools.mk b/package/setools/setools.mk index ea355f10c8d7..efb3869e5b71 100644 --- a/package/setools/setools.mk +++ b/package/setools/setools.mk @@ -4,7 +4,7 @@ # ################################################################################ -SETOOLS_VERSION = 4.4.0 +SETOOLS_VERSION = 4.4.3 SETOOLS_SITE = $(call github,SELinuxProject,setools,$(SETOOLS_VERSION)) SETOOLS_DEPENDENCIES = libselinux libsepol python-setuptools host-bison host-flex host-python-cython host-swig SETOOLS_INSTALL_STAGING = YES diff --git a/package/sg3_utils/0001-src-sg_dd.c-fix-musl-build.patch b/package/sg3_utils/0001-src-sg_dd.c-fix-musl-build.patch deleted file mode 100644 index 50a81a78a469..000000000000 --- a/package/sg3_utils/0001-src-sg_dd.c-fix-musl-build.patch +++ /dev/null @@ -1,39 +0,0 @@ -From c93ad13ecd8ddfbb8bb3e4d5d5ad7f3f2c633db6 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Sun, 14 Nov 2021 12:37:16 +0100 -Subject: [PATCH] src/sg_dd.c: fix musl build - -Fix the following build failure on musl raised since version 1.47 and -https://github.com/doug-gilbert/sg3_utils/commit/f0195003bb0c66ba55084b2f7e0fe982f08c5675: - -sg_dd.c: In function 'main': -sg_dd.c:2402:17: error: unknown type name 'uint'; did you mean 'int'? - 2402 | uint off; - | ^~~~ - | int - -Fixes: - - http://autobuild.buildroot.org/results/9ead59ffefefe2a4e3b94a153b3d23231736d882 - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/doug-gilbert/sg3_utils/pull/7] ---- - src/sg_dd.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/sg_dd.c b/src/sg_dd.c -index 9d05c93..35e2423 100644 ---- a/src/sg_dd.c -+++ b/src/sg_dd.c -@@ -2399,7 +2399,7 @@ main(int argc, char * argv[]) - res = blocks * blk_sz; - if (iflag.zero && iflag.ff && (blk_sz >= 4)) { - uint32_t pos = (uint32_t)skip; -- uint off; -+ uint32_t off; - - for (k = 0, off = 0; k < blocks; ++k, off += blk_sz, ++pos) { - for (j = 0; j < (blk_sz - 3); j += 4) --- -2.33.0 - diff --git a/package/sg3_utils/0002-configure.ac-fix-uclibc-ng-build.patch b/package/sg3_utils/0002-configure.ac-fix-uclibc-ng-build.patch deleted file mode 100644 index 4c475ee1ff47..000000000000 --- a/package/sg3_utils/0002-configure.ac-fix-uclibc-ng-build.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 1e95d5b8c507a49f6d15d2795dc46d82b4d1ded0 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Tue, 16 Nov 2021 08:41:48 +0100 -Subject: [PATCH] configure.ac: fix uclibc-ng build - -Fix the following build failure with uclibc-ng raised because SG_IO is -not defined: - -/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/arm-buildroot-uclinux-uclibcgnueabi/bin/ld.real: sg_dd.o: in function `sg_read_low.constprop.0': -sg_dd.c:(.text+0xc6c): undefined reference to `sg_chk_n_print3' - -Fixes: - - http://autobuild.buildroot.org/results/38a0dfc70a21ce574368b7a485deb231f778b3e7 - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/doug-gilbert/sg3_utils/pull/8] ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 0a65d94..23378ad 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -107,7 +107,7 @@ case "${host}" in - AC_DEFINE_UNQUOTED(HAVE_NVME, 1, [Found NVMe]) - check_for_getrandom - CFLAGS="$CFLAGS -D__USE_MINGW_ANSI_STDIO";; -- *-*-linux-gnu* | *-*-linux*) -+ *-*-linux-gnu* | *-*-linux* | *-*-uclinux-gnu* | *-*-uclinux*) - AC_DEFINE_UNQUOTED(SG_LIB_LINUX, 1, [sg3_utils on linux]) - check_for_linux_sg_v4_hdr - check_for_getrandom --- -2.33.0 - diff --git a/package/sg3_utils/sg3_utils.hash b/package/sg3_utils/sg3_utils.hash index ff2ef5518017..0a06595a3127 100644 --- a/package/sg3_utils/sg3_utils.hash +++ b/package/sg3_utils/sg3_utils.hash @@ -1,6 +1,6 @@ # Locally calculated from download (no sig, hash) -sha256 ddb0cab85fedd8b0db020f3e3f02f6967a055616bf16ea9d5c7408cde41472b2 sg3_utils-1.47.tar.xz +sha256 d6b9a41690d540e58d1e99c26ac8db37336c849ef6a03f96ea48ca2fe334dbfa sg3_utils-1.48.tar.xz # Hash for license files sha256 d212debdb0a5d7754c977f6dc53bb6c88b4ace7ab784ddbccd06bb970adb1a37 COPYING -sha256 8ddd1d82f2be2f5cbd5b5c3b5c2ee94a90d2ca7112958448da74dd78384fd96a BSD_LICENSE +sha256 6b1a1de0b3394002973daaa407b93a1d2c13efd8dd1a32095d6872c36f09ba66 BSD_LICENSE diff --git a/package/sg3_utils/sg3_utils.mk b/package/sg3_utils/sg3_utils.mk index b291bd69d9e9..3d85a59a57c4 100644 --- a/package/sg3_utils/sg3_utils.mk +++ b/package/sg3_utils/sg3_utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -SG3_UTILS_VERSION = 1.47 +SG3_UTILS_VERSION = 1.48 SG3_UTILS_SOURCE = sg3_utils-$(SG3_UTILS_VERSION).tar.xz SG3_UTILS_SITE = http://sg.danny.cz/sg/p SG3_UTILS_LICENSE = BSD-2-Clause (library) @@ -13,8 +13,6 @@ ifeq ($(BR2_PACKAGE_SG3_UTILS_PROGS),y) SG3_UTILS_LICENSE += , GPL-2.0+ (programs), BSD-2-Clause (programs) endif SG3_UTILS_LICENSE_FILES = COPYING BSD_LICENSE -# We're patching configure.ac -SG3_UTILS_AUTORECONF = YES # install the libsgutils2 library SG3_UTILS_INSTALL_STAGING = YES diff --git a/package/shadow/0001-Fix-yescrypt-support.patch b/package/shadow/0001-Fix-yescrypt-support.patch new file mode 100644 index 000000000000..19427676ca50 --- /dev/null +++ b/package/shadow/0001-Fix-yescrypt-support.patch @@ -0,0 +1,38 @@ +From 7a63017b3c873a59e3482322b7824160a8c8ca67 Mon Sep 17 00:00:00 2001 +11;rgb:f6f6/f5f5/f4f4From: Bernd Kuhls +Date: Sun, 9 Jul 2023 10:55:03 +0200 +Subject: [PATCH] Fix yescrypt support + +Fixes build error: +newusers.c: In function 'update_passwd': +newusers.c:433:21: error: 'sflg' undeclared (first use in this function); did you mean 'rflg'? + +introduced by +https://github.com/shadow-maint/shadow/commit/5cd04d03f94622c12220d4a6352824af081b8531 +which forgot to define sflg for these configure options: + +--without-sha-crypt --without-bcrypt --with-yescrypt + +Upstream: https://github.com/shadow-maint/shadow/commit/29da702491eea314b915ea9c7a83c9af80cf5797 + +Signed-off-by: Bernd Kuhls +--- + src/newusers.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/newusers.c b/src/newusers.c +index 7cb8434b..08f79798 100644 +--- a/src/newusers.c ++++ b/src/newusers.c +@@ -60,7 +60,7 @@ static bool rflg = false; /* create a system account */ + #ifndef USE_PAM + static /*@null@*//*@observer@*/char *crypt_method = NULL; + #define cflg (NULL != crypt_method) +-#if defined(USE_SHA_CRYPT) || defined(USE_BCRYPT) ++#if defined(USE_SHA_CRYPT) || defined(USE_BCRYPT) || defined(USE_YESCRYPT) + static bool sflg = false; + #endif + #ifdef USE_SHA_CRYPT +-- +2.39.2 + diff --git a/package/shadow/Config.in b/package/shadow/Config.in new file mode 100644 index 000000000000..e85e5884d207 --- /dev/null +++ b/package/shadow/Config.in @@ -0,0 +1,64 @@ +menuconfig BR2_PACKAGE_SHADOW + bool "shadow" + depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 + help + Utilities to deal with user accounts. + + https://github.com/shadow-maint/shadow + +if BR2_PACKAGE_SHADOW + +config BR2_PACKAGE_SHADOW_SHADOWGRP + bool "shadowgrp" + help + Enable shadow group support. + +config BR2_PACKAGE_SHADOW_ACCOUNT_TOOLS_SETUID + bool "account-tools-setuid" + depends on BR2_USE_MMU # linux-pam + depends on BR2_ENABLE_LOCALE # linux-pam + depends on BR2_USE_WCHAR # linux-pam + depends on !BR2_STATIC_LIBS # linux-pam + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # linux-pam + select BR2_PACKAGE_LINUX_PAM + help + Install the user and group management tools (e.g. groupadd) + with setuid and authenticate the callers via PAM. + +comment "account-tools-setuid needs a toolchain w/ dynamic library, wchar, locale, gcc >= 4.9" + depends on BR2_USE_MMU + depends on BR2_STATIC_LIBS || !BR2_USE_WCHAR || \ + !BR2_ENABLE_LOCALE || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + +config BR2_PACKAGE_SHADOW_UTMPX + bool "utmpx" + help + Enable loggin in utmpx / wtmpx. + +config BR2_PACKAGE_SHADOW_SUBORDINATE_IDS + bool "subordinate-ids" + help + Support subordinate ids. Helpful to use container solution + like podman without root. + +config BR2_PACKAGE_SHADOW_SHA_CRYPT + bool "sha-crypt" + default y + help + Allow the SHA256 and SHA512 password encryption algorithms. + +config BR2_PACKAGE_SHADOW_BCRYPT + bool "bcrypt" + help + Allow the bcrypt password encryption algorithm. + +config BR2_PACKAGE_SHADOW_YESCRYPT + bool "yescrypt" + help + Allow the yescrypt password encryption algorithm. + +endif # BR2_PACKAGE_SHADOW + +comment "shadow needs a toolchain w/ headers >= 4.14, dynamic library" + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 || BR2_STATIC_LIBS diff --git a/package/shadow/shadow.hash b/package/shadow/shadow.hash new file mode 100644 index 000000000000..2e5c4a81689c --- /dev/null +++ b/package/shadow/shadow.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 9afe245d79a2e7caac5f1ed62519b17416b057ec89df316df1c3935502f9dd2c shadow-4.13.tar.xz +sha256 3d25ab8f43fdc14624296a56ff8dc3e72e499ad35f32ae0c803f4959cfe17c0a COPYING diff --git a/package/shadow/shadow.mk b/package/shadow/shadow.mk new file mode 100644 index 000000000000..4bc3cce037e1 --- /dev/null +++ b/package/shadow/shadow.mk @@ -0,0 +1,135 @@ +################################################################################ +# +# shadow +# +################################################################################ + +SHADOW_VERSION = 4.13 +SHADOW_SITE = https://github.com/shadow-maint/shadow/releases/download/$(SHADOW_VERSION) +SHADOW_SOURCE = shadow-$(SHADOW_VERSION).tar.xz +SHADOW_LICENSE = BSD-3-Clause +SHADOW_LICENSE_FILES = COPYING +SHADOW_CPE_ID_VENDOR = debian + +SHADOW_CONF_OPTS = \ + --disable-man \ + --without-btrfs \ + --without-nscd \ + --without-skey \ + --without-sssd \ + --without-su \ + --without-tcb + +ifeq ($(BR2_PACKAGE_SHADOW_SHADOWGRP),y) +SHADOW_CONF_OPTS += --enable-shadowgrp +else +SHADOW_CONF_OPTS += --disable-shadowgrp +endif + +ifeq ($(BR2_PACKAGE_SHADOW_ACCOUNT_TOOLS_SETUID),y) +SHADOW_CONF_OPTS += --enable-account-tools-setuid +define SHADOW_ACCOUNT_TOOLS_SETUID_PERMISSIONS + /usr/sbin/chgpasswd f 4755 0 0 - - - - - + /usr/sbin/chpasswd f 4755 0 0 - - - - - + /usr/sbin/groupadd f 4755 0 0 - - - - - + /usr/sbin/groupdel f 4755 0 0 - - - - - + /usr/sbin/groupmod f 4755 0 0 - - - - - + /usr/sbin/newusers f 4755 0 0 - - - - - + /usr/sbin/useradd f 4755 0 0 - - - - - + /usr/sbin/userdel f 4755 0 0 - - - - - + /usr/sbin/usermod f 4755 0 0 - - - - - +endef +else +SHADOW_CONF_OPTS += --disable-account-tools-setuid +endif + +ifeq ($(BR2_PACKAGE_SHADOW_UTMPX),y) +SHADOW_CONF_OPTS += --enable-utmpx +else +SHADOW_CONF_OPTS += --disable-utmpx +endif + +ifeq ($(BR2_PACKAGE_SHADOW_SUBORDINATE_IDS),y) +SHADOW_CONF_OPTS += --enable-subordinate-ids +define SHADOW_SUBORDINATE_IDS_PERMISSIONS + /usr/bin/newuidmap f 4755 0 0 - - - - - + /usr/bin/newgidmap f 4755 0 0 - - - - - +endef +else +SHADOW_CONF_OPTS += --disable-subordinate-ids +endif + +ifeq ($(BR2_PACKAGE_ACL),y) +SHADOW_CONF_OPTS += --with-acl +SHADOW_DEPENDENCIES += acl +else +SHADOW_CONF_OPTS += --without-acl +endif + +ifeq ($(BR2_PACKAGE_ATTR),y) +SHADOW_CONF_OPTS += --with-attr +SHADOW_DEPENDENCIES += attr +else +SHADOW_CONF_OPTS += --without-attr +endif + +ifeq ($(BR2_PACKAGE_AUDIT),y) +SHADOW_CONF_OPTS += --with-audit +SHADOW_DEPENDENCIES += audit +else +SHADOW_CONF_OPTS += --without-audit +endif + +ifeq ($(BR2_PACKAGE_CRACKLIB),y) +SHADOW_CONF_OPTS += --with-libcrack +SHADOW_DEPENDENCIES += cracklib +else +SHADOW_CONF_OPTS += --without-libcrack +endif + +ifeq ($(BR2_PACKAGE_LIBSELINUX)$(BR2_PACKAGE_LIBSEMANAGE),yy) +SHADOW_CONF_OPTS += --with-selinux +SHADOW_DEPENDENCIES += libselinux libsemanage +else +SHADOW_CONF_OPTS += --without-selinux +endif + +# linux-pam is also used without account-tools-setuid enabled +ifeq ($(BR2_PACKAGE_LINUX_PAM),y) +SHADOW_CONF_OPTS += --with-libpam +SHADOW_DEPENDENCIES += linux-pam +else +SHADOW_CONF_OPTS += --without-libpam +endif + +ifeq ($(BR2_PACKAGE_SHADOW_SHA_CRYPT),y) +SHADOW_CONF_OPTS += --with-sha-crypt +else +SHADOW_CONF_OPTS += --without-sha-crypt +endif + +ifeq ($(BR2_PACKAGE_SHADOW_BCRYPT),y) +SHADOW_CONF_OPTS += --with-bcrypt +else +SHADOW_CONF_OPTS += --without-bcrypt +endif + +ifeq ($(BR2_PACKAGE_SHADOW_YESCRYPT),y) +SHADOW_CONF_OPTS += --with-yescrypt +else +SHADOW_CONF_OPTS += --without-yescrypt +endif + +define SHADOW_PERMISSIONS + /usr/bin/chage f 4755 0 0 - - - - - + /usr/bin/chfn f 4755 0 0 - - - - - + /usr/bin/chsh f 4755 0 0 - - - - - + /usr/bin/expiry f 4755 0 0 - - - - - + /usr/bin/gpasswd f 4755 0 0 - - - - - + /usr/bin/newgrp f 4755 0 0 - - - - - + /usr/bin/passwd f 4755 0 0 - - - - - + $(SHADOW_ACCOUNT_TOOLS_SETUID_PERMISSIONS) + $(SHADOW_SUBORDINATE_IDS_PERMISSIONS) +endef + +$(eval $(autotools-package)) diff --git a/package/skeleton-init-systemd/factory/var.mount b/package/skeleton-init-systemd/factory/var.mount new file mode 100644 index 000000000000..a681ab0c5448 --- /dev/null +++ b/package/skeleton-init-systemd/factory/var.mount @@ -0,0 +1,15 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later +# Modelled after systemd's tmp.mount + +[Unit] +Description=Buildroot /var tmpfs +DefaultDependencies=no +Conflicts=umount.target +Before=local-fs.target umount.target +After=swap.target + +[Mount] +What=tmpfs +Where=/var +Type=tmpfs +Options=nosuid,nodev,size=50%%,nr_inodes=1m diff --git a/package/skeleton-init-systemd/overlayfs/prepare-var-overlay.service b/package/skeleton-init-systemd/overlayfs/prepare-var-overlay.service new file mode 100644 index 000000000000..281aa0efb5c0 --- /dev/null +++ b/package/skeleton-init-systemd/overlayfs/prepare-var-overlay.service @@ -0,0 +1,19 @@ +[Unit] +Description=Variable storage overlay setup +ConditionPathIsSymbolicLink=!/var +DefaultDependencies=no +RequiresMountsFor=/run/buildroot/mounts/var + +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStart=/usr/bin/mkdir -p /run/buildroot/mounts/var/lower /run/buildroot/mounts/var/upper /run/buildroot/mounts/var/work + +# Ideally, we would like to use a systemd mount unit to manage the bind +# mount. Unfortunately, that creates a circular dependency: such a unit +# would have What=/var while var.mount has Where=/var so that introduces +# an implicit dependency from that unit to var.mount, but var.mount +# would have an explicit dependency to be ordered after that unit. +# So we handle the bind mount manually. +ExecStart=/usr/bin/mount -n -o bind,private /var /run/buildroot/mounts/var/lower +ExecStop=/usr/bin/umount -l /run/buildroot/mounts/var/lower diff --git a/package/skeleton-init-systemd/overlayfs/var.mount b/package/skeleton-init-systemd/overlayfs/var.mount new file mode 100644 index 000000000000..812e6ce7bf9b --- /dev/null +++ b/package/skeleton-init-systemd/overlayfs/var.mount @@ -0,0 +1,14 @@ +[Unit] +Description=Variable storage overlay +Documentation=man:file-hierarchy(7) +ConditionPathIsSymbolicLink=!/var +DefaultDependencies=no +After=prepare-var-overlay.service +BindsTo=prepare-var-overlay.service + +[Mount] +What=overlay_var +Where=/var +Type=overlay +Options=lowerdir=/run/buildroot/mounts/var/lower,upperdir=/run/buildroot/mounts/var/upper,workdir=/run/buildroot/mounts/var/work,redirect_dir=on,index=on,xino=on +LazyUnmount=true diff --git a/package/skeleton-init-systemd/skeleton-init-systemd.mk b/package/skeleton-init-systemd/skeleton-init-systemd.mk index fb15552f99ea..b312fe33e4cc 100644 --- a/package/skeleton-init-systemd/skeleton-init-systemd.mk +++ b/package/skeleton-init-systemd/skeleton-init-systemd.mk @@ -33,7 +33,7 @@ endef # a real (but empty) directory, and the "factory files" will be copied # back there by the tmpfiles.d mechanism. ifeq ($(BR2_INIT_SYSTEMD_VAR_FACTORY),y) -define SKELETON_INIT_SYSTEMD_PRE_ROOTFS_VAR +define SKELETON_INIT_SYSTEMD_PRE_ROOTFS_VAR_FACTORY rm -rf $(TARGET_DIR)/usr/share/factory/var mv $(TARGET_DIR)/var $(TARGET_DIR)/usr/share/factory/var mkdir -p $(TARGET_DIR)/var @@ -52,11 +52,30 @@ define SKELETON_INIT_SYSTEMD_PRE_ROOTFS_VAR || exit 1; \ fi; \ done >$(TARGET_DIR)/usr/lib/tmpfiles.d/00-buildroot-var.conf - $(INSTALL) -D -m 0644 $(SKELETON_INIT_SYSTEMD_PKGDIR)/var.mount \ + $(INSTALL) -D -m 0644 $(SKELETON_INIT_SYSTEMD_PKGDIR)/factory/var.mount \ $(TARGET_DIR)/usr/lib/systemd/system/var.mount endef -SKELETON_INIT_SYSTEMD_ROOTFS_PRE_CMD_HOOKS += SKELETON_INIT_SYSTEMD_PRE_ROOTFS_VAR +SKELETON_INIT_SYSTEMD_ROOTFS_PRE_CMD_HOOKS += SKELETON_INIT_SYSTEMD_PRE_ROOTFS_VAR_FACTORY endif # BR2_INIT_SYSTEMD_VAR_FACTORY + +ifeq ($(BR2_INIT_SYSTEMD_VAR_OVERLAYFS),y) + +define SKELETON_INIT_SYSTEMD_LINUX_CONFIG_FIXUPS + $(call KCONFIG_ENABLE_OPT,CONFIG_OVERLAY_FS) +endef + +define SKELETON_INIT_SYSTEMD_PRE_ROOTFS_VAR_OVERLAYFS + $(INSTALL) -D -m 0644 \ + $(SKELETON_INIT_SYSTEMD_PKGDIR)/overlayfs/prepare-var-overlay.service \ + $(TARGET_DIR)/usr/lib/systemd/system/prepare-var-overlay.service + $(INSTALL) -D -m 0644 \ + $(SKELETON_INIT_SYSTEMD_PKGDIR)/overlayfs/var.mount \ + $(TARGET_DIR)/usr/lib/systemd/system/var.mount +endef +SKELETON_INIT_SYSTEMD_POST_INSTALL_TARGET_HOOKS += SKELETON_INIT_SYSTEMD_PRE_ROOTFS_VAR_OVERLAYFS + +endif # BR2_INIT_SYSTEMD_VAR_OVERLAYFS + endif # BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW ifeq ($(BR2_INIT_SYSTEMD_POPULATE_TMPFILES),y) diff --git a/package/skeleton-init-systemd/var.mount b/package/skeleton-init-systemd/var.mount deleted file mode 100644 index e97accef9391..000000000000 --- a/package/skeleton-init-systemd/var.mount +++ /dev/null @@ -1,15 +0,0 @@ -# SPDX-License-Identifier: LGPL-2.1-or-later -# Modelled after systemd's tmp.mount - -[Unit] -Description=Buildroot /var tmpfs -DefaultDependencies=no -Conflicts=umount.target -Before=local-fs.target umount.target -After=swap.target - -[Mount] -What=tmpfs -Where=/var -Type=tmpfs -Options=mode=1777,strictatime,nosuid,nodev,size=50%%,nr_inodes=1m diff --git a/package/skeleton/skeleton.mk b/package/skeleton/skeleton.mk index 9d97f02f08bf..4eaaf32eada6 100644 --- a/package/skeleton/skeleton.mk +++ b/package/skeleton/skeleton.mk @@ -11,9 +11,11 @@ SKELETON_ADD_TOOLCHAIN_DEPENDENCY = NO SKELETON_ADD_SKELETON_DEPENDENCY = NO -# We create a compatibility symlink in case a post-build script still -# uses $(HOST_DIR)/usr +# Although the $(HOST_DIR)/usr symlink is mostly for backward compatibility, +# there are weird packages that still require it (see host-systemd, and +# commit 35c11a027c88). define HOST_SKELETON_INSTALL_CMDS +# check-package DoNotInstallToHostdirUsr $(Q)ln -snf . $(HOST_DIR)/usr $(Q)mkdir -p $(HOST_DIR)/lib $(Q)mkdir -p $(HOST_DIR)/include diff --git a/package/snappy/0001-Add-inline-with-SNAPPY_ATTRIBUTE_ALWAYS_INLINE.patch b/package/snappy/0001-Add-inline-with-SNAPPY_ATTRIBUTE_ALWAYS_INLINE.patch deleted file mode 100644 index bd2ef0779445..000000000000 --- a/package/snappy/0001-Add-inline-with-SNAPPY_ATTRIBUTE_ALWAYS_INLINE.patch +++ /dev/null @@ -1,71 +0,0 @@ -From 0c716d435abe65250100c2caea0e5126ac4e14bd Mon Sep 17 00:00:00 2001 -From: "Georgi D. Sotirov" -Date: Wed, 5 May 2021 14:16:46 +0300 -Subject: [PATCH] Add inline with SNAPPY_ATTRIBUTE_ALWAYS_INLINE - -Add inline with SNAPPY_ATTRIBUTE_ALWAYS_INLINE on AdvanceToNextTag to -fix the following compilation errors and a warning with GCC: - -[ 2%] Building CXX object CMakeFiles/snappy.dir/snappy.cc.o -/usr/bin/c++ -DHAVE_CONFIG_H -Dsnappy_EXPORTS --I/tmp/snappy-1.1.9/build -I/tmp/snappy-1.1.9 -O3 --march=i586 -mtune=i686 -Wall -Wextra -fno-exceptions -fno-rtti -O3 --DNDEBUG -fPIC -std=c++11 -o CMakeFiles/snappy.dir/snappy.cc.o -c -/tmp/snappy-1.1.9/snappy.cc -/tmp/snappy-1.1.9/snappy.cc:1017:8: warning: always_inline -function might not be inlinable [-Wattributes] - size_t AdvanceToNextTag(const uint8_t** ip_p, size_t* tag) { - ^ -/tmp/snappy-1.1.9/snappy.cc: In function 'std::pair snappy::DecompressBranchless(const uint8_t*, const -uint8_t*, ptrdiff_t, T, ptrdiff_t) [with T = char*; uint8_t = unsigned -char; ptrdiff_t = int]': -/tmp/snappy-1.1.9/snappy.cc:1017:8: error: inlining failed in -call to always_inline 'size_t snappy::AdvanceToNextTag(const uint8_t**, -size_t*)': function body can be overwritten at link time -/tmp/snappy-1.1.9/snappy.cc:1097:53: error: called from here - size_t tag_type = AdvanceToNextTag(&ip, &tag); - ^ -/tmp/snappy-1.1.9/snappy.cc:1017:8: error: inlining failed in -call to always_inline 'size_t snappy::AdvanceToNextTag(const uint8_t**, -size_t*)': function body can be overwritten at link time - size_t AdvanceToNextTag(const uint8_t** ip_p, size_t* tag) { - ^ -/tmp/snappy-1.1.9/snappy.cc:1097:53: error: called from here - size_t tag_type = AdvanceToNextTag(&ip, &tag); - ^ -/tmp/snappy-1.1.9/snappy.cc:1017:8: error: inlining failed in -call to always_inline 'size_t snappy::AdvanceToNextTag(const uint8_t**, -size_t*)': function body can be overwritten at link time - size_t AdvanceToNextTag(const uint8_t** ip_p, size_t* tag) { - ^ -/tmp/snappy-1.1.9/snappy.cc:1097:53: error: called from here - size_t tag_type = AdvanceToNextTag(&ip, &tag); - ^ -CMakeFiles/snappy.dir/build.make:137: recipe for target -'CMakeFiles/snappy.dir/snappy.cc.o' failed - -Just like with other functions using SNAPPY_ATTRIBUTE_ALWAYS_INLINE -macro (i.e. __attribute__((always_inline)) ) it is necessary to use C++ -inline specifier. - -[Retrieved from: -https://github.com/google/snappy/pull/128/commits/0c716d435abe65250100c2caea0e5126ac4e14bd] -Signed-off-by: Fabrice Fontaine ---- - snappy.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/snappy.cc b/snappy.cc -index 79dc0e8d..51157be2 100644 ---- a/snappy.cc -+++ b/snappy.cc -@@ -1014,7 +1014,7 @@ void MemMove(ptrdiff_t dst, const void* src, size_t size) { - } - - SNAPPY_ATTRIBUTE_ALWAYS_INLINE --size_t AdvanceToNextTag(const uint8_t** ip_p, size_t* tag) { -+inline size_t AdvanceToNextTag(const uint8_t** ip_p, size_t* tag) { - const uint8_t*& ip = *ip_p; - // This section is crucial for the throughput of the decompression loop. - // The latency of an iteration is fundamentally constrained by the diff --git a/package/snappy/snappy.hash b/package/snappy/snappy.hash index b49b0e7e3b4a..729d696d7e62 100644 --- a/package/snappy/snappy.hash +++ b/package/snappy/snappy.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 75c1fbb3d618dd3a0483bff0e26d0a92b495bbe5059c8b4f1c962b478b6e06e7 snappy-1.1.9.tar.gz +sha256 49d831bffcc5f3d01482340fe5af59852ca2fe76c3e05df0e67203ebbe0f1d90 snappy-1.1.10.tar.gz sha256 55172044f7e241207117448a4d9d6ba1d0925c8ad66b5d4c08c70adfa9cc3de6 COPYING diff --git a/package/snappy/snappy.mk b/package/snappy/snappy.mk index d31dcdd5fe13..c96dff35fa01 100644 --- a/package/snappy/snappy.mk +++ b/package/snappy/snappy.mk @@ -4,7 +4,7 @@ # ################################################################################ -SNAPPY_VERSION = 1.1.9 +SNAPPY_VERSION = 1.1.10 SNAPPY_SITE = $(call github,google,snappy,$(SNAPPY_VERSION)) SNAPPY_LICENSE = BSD-3-Clause SNAPPY_LICENSE_FILES = COPYING diff --git a/package/sngrep/sngrep.hash b/package/sngrep/sngrep.hash index 60a32022e6c1..c9b9c8be8df0 100644 --- a/package/sngrep/sngrep.hash +++ b/package/sngrep/sngrep.hash @@ -1,6 +1,6 @@ -# From https://github.com/irontec/sngrep/releases/download/v1.6.0/sngrep-1.6.0.tar.gz.md5sum -md5 1519ca6cd1167c0722debfb96e2ac173 sngrep-1.6.0.tar.gz +# From https://github.com/irontec/sngrep/releases/download/v1.7.0/sngrep-1.7.0.tar.gz.md5sum +md5 ee3cc7bd75adeb713411aa678e45ae4c sngrep-1.7.0.tar.gz # Locally computed -sha256 fd80964d6560f2ff57b4f5bef2353d1a6f7c48d2f1a5f0a167c854bd2e801999 sngrep-1.6.0.tar.gz +sha256 2e5ba3a4d6486ea00bd73d2cceff383ba162dcd6d0170ae74cfa3b1c206e2cb1 sngrep-1.7.0.tar.gz sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE diff --git a/package/sngrep/sngrep.mk b/package/sngrep/sngrep.mk index eedb99492f5f..b86d7e83f0ac 100644 --- a/package/sngrep/sngrep.mk +++ b/package/sngrep/sngrep.mk @@ -4,11 +4,12 @@ # ################################################################################ -SNGREP_VERSION = 1.6.0 +SNGREP_VERSION = 1.7.0 SNGREP_SITE = \ https://github.com/irontec/sngrep/releases/download/v$(SNGREP_VERSION) SNGREP_LICENSE = GPL-3.0+ SNGREP_LICENSE_FILES = LICENSE +SNGREP_CPE_ID_VENDOR = irontec SNGREP_AUTORECONF = YES SNGREP_DEPENDENCIES = libpcap ncurses host-pkgconf diff --git a/package/snmppp/0001-fix-build-with-libressl-3-5-0.patch b/package/snmppp/0001-fix-build-with-libressl-3-5-0.patch deleted file mode 100644 index f60f84f9a25b..000000000000 --- a/package/snmppp/0001-fix-build-with-libressl-3-5-0.patch +++ /dev/null @@ -1,39 +0,0 @@ -fix build with libressl >= 3.5.0 - -Fix the following build failure with libressl >= 3.5.0: - -auth_priv.cpp: In member function 'virtual int Snmp_pp::AuthMD5::password_to_key(const unsigned char*, unsigned int, const unsigned char*, unsigned int, unsigned char*, unsigned int*)': -auth_priv.cpp:1132:20: error: aggregate 'Snmp_pp::MD5HashStateType md5_hash_state' has incomplete type and cannot be defined - MD5HashStateType md5_hash_state; - ^~~~~~~~~~~~~~ - -Fixes: - - http://autobuild.buildroot.org/results/b50b883c03e82564198a8b7e91bd14bf007772e0 - -Signed-off-by: Fabrice Fontaine -[Upstream status: merged (emailed to katz.agentpp.com@magenta.de)] - -diff -Naurp snmp++-3.4.9.orig/src/auth_priv.cpp snmp++-3.4.9/src/auth_priv.cpp ---- snmp++-3.4.9.orig/src/auth_priv.cpp 2022-05-13 11:39:14.083038544 +0200 -+++ snmp++-3.4.9/src/auth_priv.cpp 2022-05-13 15:00:42.576102348 +0200 -@@ -79,8 +79,9 @@ static const char *loggerModuleName = "s - - /* -- START: Defines for OpenSSL -- */ - --#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) --// OpenSSL versions up to 1.0.x and LibreSSL -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || \ -+ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x30500000L) -+// OpenSSL versions up to 1.0.x and LibreSSL versions up to 3.4.x - typedef EVP_MD_CTX EVPHashStateType; - - int evpAllocAndInit(EVP_MD_CTX *ctx, const EVP_MD *md) -@@ -138,7 +139,7 @@ typedef EVP_MD_CTX* MD5HashSta - #define MD5_PROCESS(s, p, l) EVP_DigestUpdate(*(s), p, l) - #define MD5_DONE(s, k) evpDigestFinalAndFree(s, k) - --#endif // OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) -+#endif // OPENSSL_VERSION_NUMBER < 0x10100000L || (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x30500000L) - - typedef DES_key_schedule DESCBCType; - #define DES_CBC_START_ENCRYPT(c, iv, k, kl, r, s) \ diff --git a/package/snmppp/0001-fix-build-without-v3.patch b/package/snmppp/0001-fix-build-without-v3.patch new file mode 100644 index 000000000000..4e81f7bfc157 --- /dev/null +++ b/package/snmppp/0001-fix-build-without-v3.patch @@ -0,0 +1,43 @@ +fix build without v3 + +Fix the following build failure without version3 raised since version +3.5.0: + +msgqueue.cpp: In member function 'int Snmp_pp::CSNMPMessage::ResendMessage()': +msgqueue.cpp:263:34: error: 'version3' was not declared in this scope; did you mean 'version1'? + 263 | if (m_target->get_version() == version3) { + | ^~~~~~~~ + | version1 + +Fixes: + - http://autobuild.buildroot.org/results/8ef3e4407a51c53c15e530606227338761dd905b + +Signed-off-by: Fabrice Fontaine +[Upstream status: sent to katz.agentpp.com@magenta.de] + +diff -Nura snmp++-3.5.0.orig/src/msgqueue.cpp snmp++-3.5.0/src/msgqueue.cpp +--- snmp++-3.5.0.orig/src/msgqueue.cpp 2023-03-20 10:49:30.629000853 +0100 ++++ snmp++-3.5.0/src/msgqueue.cpp 2023-03-20 10:51:36.880664304 +0100 +@@ -260,18 +260,20 @@ + m_target->set_retry(m_target->get_retry() - 1); + SetSendTime(); + int status; +- if (m_target->get_version() == version3) { + #ifdef _SNMPv3 ++ if (m_target->get_version() == version3) { + // delete entry in cache + if (m_snmp->get_mpv3()) + m_snmp->get_mpv3()->delete_from_cache(m_pdu.get_request_id()); +-#endif + status = m_snmp->snmp_engine(m_pdu, m_pdu.get_error_status(), m_pdu.get_error_index(), + *m_target, m_callBack, m_callData, m_socket, 0, this); + } + else { ++#endif + status = send_snmp_request(m_socket, m_rawPdu, m_rawPduLen, *m_address); ++#ifdef _SNMPv3 + } ++#endif + if (status != 0) + return SNMP_CLASS_TL_FAILED; + diff --git a/package/snmppp/snmppp.hash b/package/snmppp/snmppp.hash index 6dc3d39ced1a..74c6a3e98f2b 100644 --- a/package/snmppp/snmppp.hash +++ b/package/snmppp/snmppp.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 d7a77fd05ecd99b25c51cbab08dfeef22a5edf2677875695c213631af59d5bae snmp++-3.4.10.tar.gz +sha256 43a433bd5f6fd67add5a26add6521ca664c41aead438405658ed57483664b4bf snmp++-3.5.0.tar.gz sha256 61337e799c8274e596e5783b22607beea8073ee296c6b27fc5c7487296e56851 src/v3.cpp diff --git a/package/snmppp/snmppp.mk b/package/snmppp/snmppp.mk index 005a5a9f3526..9f1916dd662b 100644 --- a/package/snmppp/snmppp.mk +++ b/package/snmppp/snmppp.mk @@ -4,7 +4,7 @@ # ################################################################################ -SNMPPP_VERSION = 3.4.10 +SNMPPP_VERSION = 3.5.0 SNMPPP_SOURCE = snmp++-$(SNMPPP_VERSION).tar.gz SNMPPP_SITE = http://www.agentpp.com/download SNMPPP_DEPENDENCIES = host-pkgconf diff --git a/package/snort3/0001-Pull-request-3925-build-fix-cstdint-related-clearlinux-errors.patch b/package/snort3/0001-Pull-request-3925-build-fix-cstdint-related-clearlinux-errors.patch new file mode 100644 index 000000000000..4f24ee72d4eb --- /dev/null +++ b/package/snort3/0001-Pull-request-3925-build-fix-cstdint-related-clearlinux-errors.patch @@ -0,0 +1,60 @@ +From 154cf0312b3652bdfdf241e6883d7c6de9b85e01 Mon Sep 17 00:00:00 2001 +From: "Maya Dagon (mdagon)" +Date: Mon, 24 Jul 2023 08:06:50 +0000 +Subject: [PATCH] Pull request #3925: build: fix cstdint related clearlinux + errors + +Merge in SNORT/snort3 from ~MDAGON/snort3:clearlinux to master + +Squashed commit of the following: + +commit 7ef2bc13851ffa2bf7908964242859a8c05ddd96 +Author: maya dagon +Date: Thu Jul 20 14:34:01 2023 -0400 + + build: fix cstdint related clearlinux errors + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/snort3/snort3/commit/154cf0312b3652bdfdf241e6883d7c6de9b85e01 +--- + src/js_norm/js_identifier_ctx.h | 1 + + src/packet_io/sfdaq_config.h | 1 + + src/service_inspectors/wizard/magic.h | 1 + + 3 files changed, 3 insertions(+) + +diff --git a/src/utils/js_identifier_ctx.h b/src/utils/js_identifier_ctx.h +index b8d5121a2c..6ef1ce2b23 100644 +--- a/src/utils/js_identifier_ctx.h ++++ b/src/utils/js_identifier_ctx.h +@@ -20,6 +20,7 @@ + #ifndef JS_IDENTIFIER_CTX + #define JS_IDENTIFIER_CTX + ++#include + #include + #include + #include +diff --git a/src/packet_io/sfdaq_config.h b/src/packet_io/sfdaq_config.h +index 990c45785b..f4c1042bc3 100644 +--- a/src/packet_io/sfdaq_config.h ++++ b/src/packet_io/sfdaq_config.h +@@ -21,6 +21,7 @@ + #ifndef SFDAQ_CONFIG_H + #define SFDAQ_CONFIG_H + ++#include + #include + #include + +diff --git a/src/service_inspectors/wizard/magic.h b/src/service_inspectors/wizard/magic.h +index fa24d0b5a4..b9477eb95c 100644 +--- a/src/service_inspectors/wizard/magic.h ++++ b/src/service_inspectors/wizard/magic.h +@@ -21,6 +21,7 @@ + #define MAGIC_H + + #include ++#include + #include + #include + diff --git a/package/sofia-sip/sofia-sip.hash b/package/sofia-sip/sofia-sip.hash index 4617725571ad..6799a941beb5 100644 --- a/package/sofia-sip/sofia-sip.hash +++ b/package/sofia-sip/sofia-sip.hash @@ -1,4 +1,4 @@ # Locally computed -sha256 03dda8653367501b7b1188a6b6513416902372e27475553de9318ee89ac390ff sofia-sip-1.13.12.tar.gz +sha256 125a9653bea1fc1cb275e4aec3445aa2deadf1fe3f1adffae9559d2349bfab36 sofia-sip-1.13.16.tar.gz sha256 e1c0890440efe31b6cd2ee2abf895eb917c787799f079133f5809414d90d5d60 COPYING sha256 b402ae58cf355b33be8fa023f704a039e3d41ecaccd2bbcda43ca31d703e4556 COPYRIGHTS diff --git a/package/sofia-sip/sofia-sip.mk b/package/sofia-sip/sofia-sip.mk index 59c365365be9..c829625cb0c6 100644 --- a/package/sofia-sip/sofia-sip.mk +++ b/package/sofia-sip/sofia-sip.mk @@ -4,7 +4,7 @@ # ################################################################################ -SOFIA_SIP_VERSION = 1.13.12 +SOFIA_SIP_VERSION = 1.13.16 SOFIA_SIP_SITE = $(call github,freeswitch,sofia-sip,v$(SOFIA_SIP_VERSION)) SOFIA_SIP_INSTALL_STAGING = YES # Fetched from github, no pre-generated configure script provided diff --git a/package/spdlog/spdlog.hash b/package/spdlog/spdlog.hash index af89ba4e84b7..a943abba2c91 100644 --- a/package/spdlog/spdlog.hash +++ b/package/spdlog/spdlog.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 ca5cae8d6cac15dae0ec63b21d6ad3530070650f68076f3a4a862ca293a858bb spdlog-1.11.0.tar.gz +sha256 4dccf2d10f410c1e2feaff89966bfc49a1abb29ef6f08246335b110e001e09a9 spdlog-1.12.0.tar.gz sha256 a7241a379cb98d37788f82c2fc2e484c3ae85dae881fd3406f0637644850926f LICENSE diff --git a/package/spdlog/spdlog.mk b/package/spdlog/spdlog.mk index 32a0265484fa..15a80edbd06f 100644 --- a/package/spdlog/spdlog.mk +++ b/package/spdlog/spdlog.mk @@ -4,7 +4,7 @@ # ################################################################################ -SPDLOG_VERSION = 1.11.0 +SPDLOG_VERSION = 1.12.0 SPDLOG_SITE = $(call github,gabime,spdlog,v$(SPDLOG_VERSION)) SPDLOG_LICENSE = MIT SPDLOG_LICENSE_FILES = LICENSE diff --git a/package/speechd/0001-add-disable-doc.patch b/package/speechd/0001-add-disable-doc.patch deleted file mode 100644 index dd17b10e4fea..000000000000 --- a/package/speechd/0001-add-disable-doc.patch +++ /dev/null @@ -1,78 +0,0 @@ -From d88557d3c29c33f76af20cb7a6eb798f6f598c23 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Sun, 19 Feb 2023 15:18:35 +0100 -Subject: [PATCH] add --disable-doc - -Allow the user to disable documentation through --disable-doc to avoid -the following build failure without makeinfo: - -make[3]: Entering directory '/home/buildroot/autobuild/instance-2/output-1/build/speechd-0.11.4/doc' - MAKEINFO ssip.info - MAKEINFO spd-say.info -/home/buildroot/autobuild/instance-2/output-1/build/speechd-0.11.4/missing: line 81: makeinfo: command not found -/home/buildroot/autobuild/instance-2/output-1/build/speechd-0.11.4/missing: line 81: makeinfo: command not found -WARNING: 'makeinfo' is missing on your system. - You should only need it if you modified a '.texi' file, or - any other file indirectly affecting the aspect of the manual. - You might want to install the Texinfo package: - - The spurious makeinfo call might also be the consequence of - using a buggy 'make' (AIX, DU, IRIX), in which case you might - want to install GNU make: - -WARNING: 'makeinfo' is missing on your system. - You should only need it if you modified a '.texi' file, or - any other file indirectly affecting the aspect of the manual. - You might want to install the Texinfo package: - - The spurious makeinfo call might also be the consequence of - using a buggy 'make' (AIX, DU, IRIX), in which case you might - want to install GNU make: - -make[3]: *** [Makefile:492: ssip.info] Error 127 - -Fixes: - - http://autobuild.buildroot.org/results/d4f193545eb31864a9bac5a9d05bba39d3c7ff3e - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/brailcom/speechd/pull/810] ---- - Makefile.am | 6 +++++- - configure.ac | 4 ++++ - 2 files changed, 9 insertions(+), 1 deletion(-) - -diff --git a/Makefile.am b/Makefile.am -index 26617c78..480eb50e 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -22,7 +22,11 @@ pkgconfig_DATA = speech-dispatcher.pc - - BUILT_SOURCES = $(top_srcdir)/.version - --SUBDIRS= include locale src config doc po -+SUBDIRS= include locale src config po -+ -+if ENABLE_DOC -+SUBDIRS += doc -+endif - - EXTRA_DIST= config.rpath COPYING.LGPL COPYING.GPL-2 COPYING.GPL-3 ANNOUNCE BUGS FAQ README.md README.packagers README.translators README.overview.md README.style.md build.sh speech-dispatcherd.service.in speech-dispatcher.socket speech-dispatcher.service.in po/Makevars.in po/README - -diff --git a/configure.ac b/configure.ac -index faaa8629..4f2af908 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -168,6 +168,10 @@ AC_SUBST([EXTRA_SOCKET_LIBS]) - AC_SUBST([ERROR_CFLAGS]) - AC_SUBST([RDYNAMIC]) - -+AC_ARG_ENABLE([doc], -+ [AC_HELP_STRING([--disable-doc], [turn off documentation])]) -+AM_CONDITIONAL(ENABLE_DOC, test "$enable_doc" != "no") -+ - # Check for python support. - # Python 3 or greater required - AC_ARG_ENABLE([python], --- -2.39.0 - diff --git a/package/speechd/speechd.hash b/package/speechd/speechd.hash index 4eb4cd09d2ca..0b02a357921b 100644 --- a/package/speechd/speechd.hash +++ b/package/speechd/speechd.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 628d4446894b47f0df099123924c1070180b5b5b09c5b637ebe80d8578fba92f speechd-0.11.4.tar.gz +sha256 cc4b388fce40681eaff3545e9cc0642216c13c420d5676a4d28c957ddcb916de speechd-0.11.5.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING.GPL-2 sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING.GPL-3 sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LGPL diff --git a/package/speechd/speechd.mk b/package/speechd/speechd.mk index 5944ea3a2869..7d50f88c1db6 100644 --- a/package/speechd/speechd.mk +++ b/package/speechd/speechd.mk @@ -4,16 +4,19 @@ # ################################################################################ -SPEECHD_VERSION = 0.11.4 +SPEECHD_VERSION = 0.11.5 SPEECHD_SITE = $(call github,brailcom,speechd,$(SPEECHD_VERSION)) SPEECHD_LICENSE = GPL-2.0+, GPL-3.0+ (buildsystem), LGPL-2.1+ SPEECHD_LICENSE_FILES = COPYING.GPL-2 COPYING.GPL-3 COPYING.LGPL SPEECHD_INSTALL_STAGING = YES # speechd source code is released without configure script SPEECHD_AUTORECONF = YES -SPEECHD_GETTEXTIZE = YES -SPEECHD_DEPENDENCIES = host-pkgconf dotconf libglib2 libsndfile -SPEECHD_CONF_ENV = ac_cv_prog_HELP2MAN="" +SPEECHD_AUTOPOINT = YES +SPEECHD_DEPENDENCIES = \ + host-pkgconf dotconf libglib2 libsndfile $(TARGET_NLS_DEPENDENCIES) +SPEECHD_CONF_ENV = \ + ac_cv_prog_HELP2MAN="" \ + LIBS=$(TARGET_NLS_LIBS) SPEECHD_CONF_OPTS = \ --disable-python \ --without-espeak \ diff --git a/package/speex/speex.mk b/package/speex/speex.mk index 6d61e93833dc..0bbcb2bde2f6 100644 --- a/package/speex/speex.mk +++ b/package/speex/speex.mk @@ -26,6 +26,10 @@ ifeq ($(BR2_PACKAGE_SPEEX_ARM5E),y) SPEEX_CONF_OPTS += --enable-arm5e-asm endif +ifeq ($(BR2_ARM_INSTRUCTIONS_THUMB),y) +SPEEX_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -marm" +endif + define SPEEX_LIBTOOL_FIXUP $(SED) 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' $(@D)/libtool $(SED) 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' $(@D)/libtool diff --git a/package/spirv-headers/Config.in b/package/spirv-headers/Config.in new file mode 100644 index 000000000000..e03a6ca1eee8 --- /dev/null +++ b/package/spirv-headers/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_SPIRV_HEADERS + bool "spirv-headers" + depends on BR2_INSTALL_LIBSTDCPP + help + Machine-readable files for the SPIR-V Registry + + https://www.khronos.org/registry/spir-v + +comment "spirv-headers needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/spirv-headers/spirv-headers.hash b/package/spirv-headers/spirv-headers.hash new file mode 100644 index 000000000000..136f3df73366 --- /dev/null +++ b/package/spirv-headers/spirv-headers.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 32b4c6ae6a2fa9b56c2c17233c8056da47e331f76e117729925825ea3e77a739 spirv-headers-1.3.261.1.tar.gz +sha256 9b243f6f0bf44e295ff411a0f7b7642d1d0dff7cdc42507e9f7206f439e51b5a LICENSE diff --git a/package/spirv-headers/spirv-headers.mk b/package/spirv-headers/spirv-headers.mk new file mode 100644 index 000000000000..9f84c42b2dc6 --- /dev/null +++ b/package/spirv-headers/spirv-headers.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# spirv-headers +# +################################################################################ + +# Keep in sync with spirv-tools version +SPIRV_HEADERS_VERSION = 1.3.261.1 +SPIRV_HEADERS_SITE = $(call github,KhronosGroup,SPIRV-Headers,sdk-$(SPIRV_HEADERS_VERSION)) +SPIRV_HEADERS_LICENSE = MIT +SPIRV_HEADERS_LICENSE_FILES = LICENSE + +SPIRV_HEADERS_INSTALL_STAGING = YES +SPIRV_HEADERS_INSTALL_TARGET = NO + +$(eval $(cmake-package)) +$(eval $(host-cmake-package)) diff --git a/package/spirv-llvm-translator/spirv-llvm-translator.hash b/package/spirv-llvm-translator/spirv-llvm-translator.hash index edfca1ea0263..4500fc4f62fd 100644 --- a/package/spirv-llvm-translator/spirv-llvm-translator.hash +++ b/package/spirv-llvm-translator/spirv-llvm-translator.hash @@ -1,3 +1,3 @@ # locally calculated -sha256 bdd7cb677b9fcaaff1cce2153de9d69298f136edecaef3631915614bb5db09a1 spirv-llvm-translator-v11.0.0-297-ga619b34bce55360d79fea9058a93ded04919f2b2.tar.gz +sha256 0a00a72a5b004eeb73f9c96c9c6ba2d6de232cbf3c22a7b322047604d24402ba spirv-llvm-translator-v15.0.0-46-ge82ecc2bd7295604fcf1824e47c95fa6a09c6e63.tar.gz sha256 e3bc36440fc927c62d5cc24efeefe225a14d4e34ffeb0c92e430625cce9ee444 LICENSE.TXT diff --git a/package/spirv-llvm-translator/spirv-llvm-translator.mk b/package/spirv-llvm-translator/spirv-llvm-translator.mk index 159f7d3b5247..523890a986e3 100644 --- a/package/spirv-llvm-translator/spirv-llvm-translator.mk +++ b/package/spirv-llvm-translator/spirv-llvm-translator.mk @@ -5,16 +5,18 @@ ################################################################################ # Generate version string using: -# git describe --tags --match 'v11*' --abbrev=40 origin/llvm_release_110 -SPIRV_LLVM_TRANSLATOR_VERSION = v11.0.0-297-ga619b34bce55360d79fea9058a93ded04919f2b2 +# git describe --tags --match 'v15*' --abbrev=40 origin/llvm_release_150 +SPIRV_LLVM_TRANSLATOR_VERSION = v15.0.0-46-ge82ecc2bd7295604fcf1824e47c95fa6a09c6e63 SPIRV_LLVM_TRANSLATOR_SITE = $(call github,KhronosGroup,SPIRV-LLVM-Translator,$(SPIRV_LLVM_TRANSLATOR_VERSION)) SPIRV_LLVM_TRANSLATOR_LICENSE = NCSA SPIRV_LLVM_TRANSLATOR_LICENSE_FILES = LICENSE.TXT -HOST_SPIRV_LLVM_TRANSLATOR_DEPENDENCIES = host-clang host-llvm +HOST_SPIRV_LLVM_TRANSLATOR_DEPENDENCIES = host-clang host-llvm host-spirv-headers HOST_SPIRV_LLVM_TRANSLATOR_CONF_OPTS = \ -DLLVM_BUILD_TOOLS=ON \ -DLLVM_DIR=$(HOST_DIR)/lib/cmake/llvm \ -DLLVM_SPIRV_BUILD_EXTERNAL=YES \ - -DLLVM_SPIRV_INCLUDE_TESTS=OFF + -DLLVM_SPIRV_INCLUDE_TESTS=OFF \ + -DLLVM_EXTERNAL_PROJECTS="SPIRV-Headers" \ + -DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR=$(HOST_DIR)/include $(eval $(host-cmake-package)) diff --git a/package/spirv-tools/Config.in b/package/spirv-tools/Config.in new file mode 100644 index 000000000000..39fdb80b865c --- /dev/null +++ b/package/spirv-tools/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_SPIRV_TOOLS + bool "spirv-tools" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 # C++17 + select BR2_PACKAGE_SPIRV_HEADERS + help + The SPIR-V Tools project provides an API and commands for + processing SPIR-V modules. + + https://github.com/KhronosGroup/SPIRV-Tools + +comment "spirv-tools needs a toolchain w/ C++, gcc >= 7" + depends on !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_7 diff --git a/package/spirv-tools/spirv-tools.hash b/package/spirv-tools/spirv-tools.hash new file mode 100644 index 000000000000..65cb9c619b94 --- /dev/null +++ b/package/spirv-tools/spirv-tools.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 ead95c626ad482882a141d1aa0ce47b9453871f72c42c0b28d39c82f60a52008 spirv-tools-1.3.261.1.tar.gz +sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE diff --git a/package/spirv-tools/spirv-tools.mk b/package/spirv-tools/spirv-tools.mk new file mode 100644 index 000000000000..e863911b035b --- /dev/null +++ b/package/spirv-tools/spirv-tools.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# spirv-tools +# +################################################################################ + +# Keep in sync with spirv-headers version +SPIRV_TOOLS_VERSION = 1.3.261.1 +SPIRV_TOOLS_SITE = $(call github,KhronosGroup,SPIRV-Tools,sdk-$(SPIRV_TOOLS_VERSION)) +SPIRV_TOOLS_LICENSE = Apache-2.0 +SPIRV_TOOLS_LICENSE_FILES = LICENSE +SPIRV_TOOLS_DEPENDENCIES = spirv-headers +SPIRV_TOOLS_INSTALL_STAGING = YES + +SPIRV_TOOLS_CONF_OPTS = \ + -DSPIRV-Headers_SOURCE_DIR=$(STAGING_DIR)/usr \ + -DSPIRV_TOOLS_BUILD_STATIC=OFF \ + -DSPIRV_SKIP_TESTS=ON \ + -DSPIRV_WERROR=OFF + +$(eval $(cmake-package)) diff --git a/package/sqlite/sqlite.hash b/package/sqlite/sqlite.hash index 36f6907fbc42..ffeb1ff89c91 100644 --- a/package/sqlite/sqlite.hash +++ b/package/sqlite/sqlite.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 2c5dea207fa508d765af1ef620b637dcb06572afa6f01f0815bd5bbf864b33d9 sqlite-autoconf-3400100.tar.gz +sha256 39116c94e76630f22d54cd82c3cea308565f1715f716d1b2527f1c9c969ba4d9 sqlite-autoconf-3430100.tar.gz sha256 66e056b6e8687f32af30d5187611b98b12a8f46f07aaf62f43585f276e8f0ac9 tea/license.terms diff --git a/package/sqlite/sqlite.mk b/package/sqlite/sqlite.mk index 789eddfa0aa2..f69097f3b7ba 100644 --- a/package/sqlite/sqlite.mk +++ b/package/sqlite/sqlite.mk @@ -4,10 +4,10 @@ # ################################################################################ -SQLITE_VERSION = 3.40.1 -SQLITE_TAR_VERSION = 3400100 +SQLITE_VERSION = 3.43.1 +SQLITE_TAR_VERSION = 3430100 SQLITE_SOURCE = sqlite-autoconf-$(SQLITE_TAR_VERSION).tar.gz -SQLITE_SITE = https://www.sqlite.org/2022 +SQLITE_SITE = https://www.sqlite.org/2023 SQLITE_LICENSE = Public domain SQLITE_LICENSE_FILES = tea/license.terms SQLITE_CPE_ID_VENDOR = sqlite diff --git a/package/squashfs/squashfs.hash b/package/squashfs/squashfs.hash index 13d5aed71f90..bc45b4ab5e65 100644 --- a/package/squashfs/squashfs.hash +++ b/package/squashfs/squashfs.hash @@ -1,5 +1,5 @@ # Locally computed -sha256 277b6e7f75a4a57f72191295ae62766a10d627a4f5e5f19eadfbc861378deea7 squashfs-4.5.1.tar.gz +sha256 94201754b36121a9f022a190c75f718441df15402df32c2b520ca331a107511c squashfs-4.6.1.tar.gz # License files sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/squashfs/squashfs.mk b/package/squashfs/squashfs.mk index 323908d94e67..082104b6d46f 100644 --- a/package/squashfs/squashfs.mk +++ b/package/squashfs/squashfs.mk @@ -4,7 +4,7 @@ # ################################################################################ -SQUASHFS_VERSION = 4.5.1 +SQUASHFS_VERSION = 4.6.1 SQUASHFS_SITE = $(call github,plougher,squashfs-tools,$(SQUASHFS_VERSION)) SQUASHFS_LICENSE = GPL-2.0+ SQUASHFS_LICENSE_FILES = COPYING diff --git a/package/squid/squid.hash b/package/squid/squid.hash index b00d14011e18..a163bd9ad3d2 100644 --- a/package/squid/squid.hash +++ b/package/squid/squid.hash @@ -1,6 +1,6 @@ -# From http://www.squid-cache.org/Versions/v5/squid-5.7.tar.xz.asc -md5 7a3764a3c5833631a779d7827901cda7 squid-5.7.tar.xz -sha1 141e8007d6b1cfee34654127a9ca025125b37b58 squid-5.7.tar.xz +# From http://www.squid-cache.org/Versions/v6/squid-6.5.tar.xz.asc +md5 da2797d899cf538fab7f504fdf3c18bf squid-6.5.tar.xz +sha1 07a08394625948750264778c82e19cf24ea7cb1f squid-6.5.tar.xz # Locally calculated -sha256 6b0753aaba4c9c4efd333e67124caecf7ad6cc2d38581f19d2f0321f5b7ecd81 squid-5.7.tar.xz +sha256 5070f8a3ae6666870c8fc716326befb0a1abe8b5ff3a6f3932cbc5543d7c8549 squid-6.5.tar.xz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/squid/squid.mk b/package/squid/squid.mk index 355af0b9027d..c1477b1adff6 100644 --- a/package/squid/squid.mk +++ b/package/squid/squid.mk @@ -4,9 +4,9 @@ # ################################################################################ -SQUID_VERSION = 5.7 +SQUID_VERSION = 6.5 SQUID_SOURCE = squid-$(SQUID_VERSION).tar.xz -SQUID_SITE = http://www.squid-cache.org/Versions/v5 +SQUID_SITE = http://www.squid-cache.org/Versions/v6 SQUID_LICENSE = GPL-2.0+ SQUID_LICENSE_FILES = COPYING SQUID_CPE_ID_VENDOR = squid-cache diff --git a/package/ssdp-responder/ssdp-responder.hash b/package/ssdp-responder/ssdp-responder.hash index 425ad86e08a9..7794c666439b 100644 --- a/package/ssdp-responder/ssdp-responder.hash +++ b/package/ssdp-responder/ssdp-responder.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 974c244abd4ba8c87532867a84756182a1460c99072ffb1eb91c5a1f73311d89 ssdp-responder-1.9.tar.gz -sha256 68d6fdc22e337f725fe719bf9ae6d92b1d8d0ca4cff8219b303ab76706670a8d LICENSE +sha256 75787cd9c0a88329dd39437eb28a188b54a3a0cab8472968e2713d90076f321f ssdp-responder-2.1.tar.gz +sha256 b66025f1e568a8d80264550d7bd7683780ac248f2baa1e85b4da4b15e28d55a7 LICENSE diff --git a/package/ssdp-responder/ssdp-responder.mk b/package/ssdp-responder/ssdp-responder.mk index 519396690818..bb17641a9fbd 100644 --- a/package/ssdp-responder/ssdp-responder.mk +++ b/package/ssdp-responder/ssdp-responder.mk @@ -4,7 +4,7 @@ # ################################################################################ -SSDP_RESPONDER_VERSION = 1.9 +SSDP_RESPONDER_VERSION = 2.1 SSDP_RESPONDER_SITE = https://github.com/troglobit/ssdp-responder/releases/download/v$(SSDP_RESPONDER_VERSION) SSDP_RESPONDER_LICENSE = ISC SSDP_RESPONDER_LICENSE_FILES = LICENSE @@ -25,4 +25,8 @@ define SSDP_RESPONDER_INSTALL_INIT_SYSV $(TARGET_DIR)/etc/init.d/S50ssdpd endef +define SSDP_RESPONDER_INSTALL_INIT_SYSTEMD + mkdir -p $(TARGET_DIR)/var/lib/misc/ +endef + $(eval $(autotools-package)) diff --git a/package/sshguard/sshguard.hash b/package/sshguard/sshguard.hash index b1752f1c68ce..d018428d1905 100644 --- a/package/sshguard/sshguard.hash +++ b/package/sshguard/sshguard.hash @@ -1,4 +1,4 @@ -# sha256 from https://sourceforge.net/projects/sshguard/files/sshguard/2.4.2/sshguard-2.4.2.sha256 -sha256 2770b776e5ea70a9bedfec4fd84d57400afa927f0f7522870d2dcbbe1ace37e8 sshguard-2.4.2.tar.gz +# sha256 from https://sourceforge.net/projects/sshguard/files/sshguard/2.4.3/sshguard-2.4.3.sha256 +sha256 64029deff6de90fdeefb1f497d414f0e4045076693a91da1a70eb7595e97efeb sshguard-2.4.3.tar.gz # Locally calculated sha256 c3ae64f12153a1bc55bc234d09f40a08ab0e0149fffc972c0b7f02d5a12c1a5c COPYING diff --git a/package/sshguard/sshguard.mk b/package/sshguard/sshguard.mk index d27c76e63f51..8d036357438d 100644 --- a/package/sshguard/sshguard.mk +++ b/package/sshguard/sshguard.mk @@ -4,7 +4,7 @@ # ################################################################################ -SSHGUARD_VERSION = 2.4.2 +SSHGUARD_VERSION = 2.4.3 SSHGUARD_SITE = https://sourceforge.net/projects/sshguard/files/sshguard/$(SSHGUARD_VERSION) SSHGUARD_LICENSE = ISC, Public Domain (fnv hash), BSD-3-Clause (SimCList) SSHGUARD_LICENSE_FILES = COPYING diff --git a/package/sshpass/sshpass.hash b/package/sshpass/sshpass.hash index cb8968bca474..3fe95c8b0fc5 100644 --- a/package/sshpass/sshpass.hash +++ b/package/sshpass/sshpass.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 71746e5e057ffe9b00b44ac40453bf47091930cba96bbea8dc48717dedc49fb7 sshpass-1.09.tar.gz +sha256 ad1106c203cbb56185ca3bad8c6ccafca3b4064696194da879f81c8d7bdfeeda sshpass-1.10.tar.gz sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING diff --git a/package/sshpass/sshpass.mk b/package/sshpass/sshpass.mk index 21e10397b6bd..beb0a63911d0 100644 --- a/package/sshpass/sshpass.mk +++ b/package/sshpass/sshpass.mk @@ -4,7 +4,7 @@ # ################################################################################ -SSHPASS_VERSION = 1.09 +SSHPASS_VERSION = 1.10 SSHPASS_SITE = http://downloads.sourceforge.net/project/sshpass/sshpass/$(SSHPASS_VERSION) SSHPASS_LICENSE = GPL-2.0+ SSHPASS_LICENSE_FILES = COPYING diff --git a/package/sslh/0001-Makefile-add-USE_LIBEV.patch b/package/sslh/0001-Makefile-add-USE_LIBEV.patch new file mode 100644 index 000000000000..858d30fa150b --- /dev/null +++ b/package/sslh/0001-Makefile-add-USE_LIBEV.patch @@ -0,0 +1,59 @@ +From 3e93c1d43de8a662e402127462f28ef0bebf8997 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sun, 1 Oct 2023 18:45:53 +0200 +Subject: [PATCH] Makefile: add USE_LIBEV + +Add USE_LIBEV to avoid the following build failure without libev raised +since version 2.0 and +https://github.com/yrutschle/sslh/commit/711c11c820f8be4f1399024bcaa1d7072de33217: + +sslh-ev.c:24:10: fatal error: ev.h: Aucun fichier ou dossier de ce type + 24 | #include + | ^~~~~~ + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/yrutschle/sslh/commit/3e93c1d43de8a662e402127462f28ef0bebf8997 +--- + Makefile | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index a4425c3..aa2689e 100644 +--- a/Makefile ++++ b/Makefile +@@ -6,6 +6,7 @@ VERSION=$(shell ./genver.sh -r) + ENABLE_SANITIZER= # Enable ASAN/LSAN/UBSAN + ENABLE_REGEX=1 # Enable regex probes + USELIBCONFIG=1 # Use libconfig? (necessary to use configuration files) ++USELIBEV=1 # Use libev? + USELIBWRAP?= # Use libwrap? + USELIBCAP= # Use libcap? + USESYSTEMD= # Make use of systemd socket activation +@@ -72,6 +73,9 @@ ifneq ($(strip $(USELIBBSD)),) + CPPFLAGS+=-DLIBBSD + endif + ++ifneq ($(strip $(USELIBEV)),) ++ CONDITIONAL_TARGETS+=sslh-ev ++endif + + all: sslh $(MAN) echosrv $(CONDITIONAL_TARGETS) + +@@ -84,7 +88,7 @@ $(OBJS_A): $(OBJS) + version.h: + ./genver.sh >version.h + +-sslh: sslh-fork sslh-select sslh-ev ++sslh: sslh-fork sslh-select + + $(OBJS) $(FORK_OBJS) $(SELECT_OBJS) $(EV_OBJS): argtable3.h collection.h common.h gap.h hash.h log.h probe.h processes.h sslh-conf.h tcp-listener.h tcp-probe.h tls.h udp-listener.h version.h + +@@ -153,7 +157,7 @@ distclean: clean + rm -f tags sslh-conf.[ch] echosrv-conf.[ch] cscope.* + + clean: +- rm -f sslh-fork sslh-select sslh-ev echosrv version.h $(MAN) systemd-sslh-generator *.o *.gcov *.gcno *.gcda *.png *.html *.css *.info ++ rm -f sslh-fork sslh-select $(CONDITIONAL_TARGETS) echosrv version.h $(MAN) systemd-sslh-generator *.o *.gcov *.gcno *.gcda *.png *.html *.css *.info + + tags: + ctags --globals -T *.[ch] diff --git a/package/sslh/sslh.hash b/package/sslh/sslh.hash index ae678563dafb..839e7b7f1c3c 100644 --- a/package/sslh/sslh.hash +++ b/package/sslh/sslh.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 8e3742d14edf4119350cfdc7bb96b89134d9218eb6d2a6e1f70891ca18a649b1 sslh-v1.22c.tar.gz +sha256 d88d43ee11cf1324983c196c894b41766c33d957b6af53b62c8479703bbbd26c sslh-v2.0.1.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/sslh/sslh.mk b/package/sslh/sslh.mk index 897b3b6505d1..5dad6aafc2f2 100644 --- a/package/sslh/sslh.mk +++ b/package/sslh/sslh.mk @@ -4,11 +4,12 @@ # ################################################################################ -SSLH_VERSION = 1.22c +SSLH_VERSION = 2.0.1 SSLH_SOURCE = sslh-v$(SSLH_VERSION).tar.gz SSLH_SITE = http://www.rutschle.net/tech/sslh SSLH_LICENSE = GPL-2.0+ SSLH_LICENSE_FILES = COPYING +SSLH_CPE_ID_VENDOR = sslh_project SSLH_DEPENDENCIES = pcre2 SSLH_MAKE_OPTS = $(TARGET_CONFIGURE_OPTS) CFLAGS="$(TARGET_CFLAGS) -std=gnu99" @@ -34,6 +35,13 @@ else SSLH_MAKE_OPTS += USELIBCONFIG= endif +ifeq ($(BR2_PACKAGE_LIBEV),y) +SSLH_DEPENDENCIES += libev +SSLH_MAKE_OPTS += USELIBEV=1 +else +SSLH_MAKE_OPTS += USELIBEV= +endif + ifeq ($(BR2_PACKAGE_SYSTEMD),y) SSLH_DEPENDENCIES += systemd SSLH_MAKE_OPTS += USESYSTEMD=1 diff --git a/package/stellarium/0001-add-missing-include.patch b/package/stellarium/0001-add-missing-include.patch deleted file mode 100644 index 822fc50367a6..000000000000 --- a/package/stellarium/0001-add-missing-include.patch +++ /dev/null @@ -1,32 +0,0 @@ -From f36ce55e7a0fbba11fb7e1d4107ef61a79dc95d3 Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -Date: Sun, 25 Dec 2022 20:38:17 +0100 -Subject: [PATCH] add missing include - -Fixes build error: - -stellarium-1.2/plugins/MeteorShowers/src/MeteorShowersMgr.hpp:331:12: - error: field 'm_lastUpdate' has incomplete type 'QDateTime' - -Patch sent upstream: https://github.com/Stellarium/stellarium/pull/2933 - -Signed-off-by: Bernd Kuhls ---- - plugins/MeteorShowers/src/MeteorShowersMgr.hpp | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/plugins/MeteorShowers/src/MeteorShowersMgr.hpp b/plugins/MeteorShowers/src/MeteorShowersMgr.hpp -index 8096856b6d..17716a68b0 100644 ---- a/plugins/MeteorShowers/src/MeteorShowersMgr.hpp -+++ b/plugins/MeteorShowers/src/MeteorShowersMgr.hpp -@@ -20,6 +20,7 @@ - #ifndef METEORSHOWERSMGR_HPP - #define METEORSHOWERSMGR_HPP - -+#include - #include - #include - --- -2.34.1 - diff --git a/package/stellarium/stellarium.hash b/package/stellarium/stellarium.hash index 2488b611a45b..a2f511a283d8 100644 --- a/package/stellarium/stellarium.hash +++ b/package/stellarium/stellarium.hash @@ -1,4 +1,4 @@ # From https://github.com/Stellarium/stellarium/releases -sha256 802a0e8231cae41ec04f697f70105c291d9719aa6e7fd8cbe1f15068c3324e09 stellarium-1.2.tar.xz +sha256 179420e9e9f11278b78dc54e14458452c92055cc8923538748c8a0f961714fc2 stellarium-23.3.tar.xz # Locally computed sha256 3aeeb5bb98bf7041ab82cffe15efa28ac58ee2bdf162b71301f5c192be631259 COPYING diff --git a/package/stellarium/stellarium.mk b/package/stellarium/stellarium.mk index a62488907f8c..94ad4e135205 100644 --- a/package/stellarium/stellarium.mk +++ b/package/stellarium/stellarium.mk @@ -4,7 +4,7 @@ # ################################################################################ -STELLARIUM_VERSION = 1.2 +STELLARIUM_VERSION = 23.3 STELLARIUM_SOURCE = stellarium-$(STELLARIUM_VERSION).tar.xz STELLARIUM_SITE = https://github.com/Stellarium/stellarium/releases/download/v$(STELLARIUM_VERSION) STELLARIUM_LICENSE = GPL-2.0+ @@ -18,8 +18,11 @@ STELLARIUM_DEPENDENCIES = \ STELLARIUM_CONF_OPTS = \ -DENABLE_MEDIA=ON \ -DENABLE_NLS=OFF \ + -DENABLE_SHOWMYSKY=OFF \ -DENABLE_QTWEBENGINE=OFF \ -DENABLE_QT6=OFF \ + -DENABLE_XLSX=OFF \ + -DUSE_PLUGIN_TELESCOPECONTROL=OFF \ -DUSE_SYSTEM_ZLIB=ON ifeq ($(BR2_PACKAGE_QT5SCRIPT),y) @@ -34,13 +37,9 @@ STELLARIUM_DEPENDENCIES += qt5serialport ifeq ($(BR2_PACKAGE_GPSD),y) STELLARIUM_DEPENDENCIES += gpsd endif -STELLARIUM_CONF_OPTS += \ - -DENABLE_GPS=ON \ - -DUSE_PLUGIN_TELESCOPECONTROL=ON +STELLARIUM_CONF_OPTS += -DENABLE_GPS=ON else -STELLARIUM_CONF_OPTS += \ - -DENABLE_GPS=OFF \ - -DUSE_PLUGIN_TELESCOPECONTROL=OFF +STELLARIUM_CONF_OPTS += -DENABLE_GPS=OFF endif $(eval $(cmake-package)) diff --git a/package/strace/strace.hash b/package/strace/strace.hash index 9478fbd45974..75a35d7cf450 100644 --- a/package/strace/strace.hash +++ b/package/strace/strace.hash @@ -1,5 +1,5 @@ # Locally calculated after checking signature with RSA key 0xA8041FA839E16E36 -# https://strace.io/files/6.1/strace-6.1.tar.xz.asc -sha256 2579e9cec37dbb786f6ea0bebd15f40dd561ef2bde2a2a2ecdce5963b01859fd strace-6.1.tar.xz -sha256 d92f973d08c8466993efff1e500453add0c038c20b4d2cbce3297938a296aea9 COPYING +# https://strace.io/files/6.6/strace-6.6.tar.xz.asc +sha256 421b4186c06b705163e64dc85f271ebdcf67660af8667283147d5e859fc8a96c strace-6.6.tar.xz +sha256 6e5648c0ed522b163f9df1dc500c73491b1743495bd78388e99685cecfa79707 COPYING sha256 7c379436436a562834aa7d2f5dcae1f80a25230fa74201046ca1fba4367d39aa LGPL-2.1-or-later diff --git a/package/strace/strace.mk b/package/strace/strace.mk index cbb574559e67..6279622fdbbd 100644 --- a/package/strace/strace.mk +++ b/package/strace/strace.mk @@ -4,7 +4,7 @@ # ################################################################################ -STRACE_VERSION = 6.1 +STRACE_VERSION = 6.6 STRACE_SOURCE = strace-$(STRACE_VERSION).tar.xz STRACE_SITE = https://github.com/strace/strace/releases/download/v$(STRACE_VERSION) STRACE_LICENSE = LGPL-2.1+ diff --git a/package/stress-ng/0001-Makefile-fix-build-with-kernel-5.6.patch b/package/stress-ng/0001-Makefile-fix-build-with-kernel-5.6.patch deleted file mode 100644 index 4c62da32413e..000000000000 --- a/package/stress-ng/0001-Makefile-fix-build-with-kernel-5.6.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 5d419c790e648c7a2f96f34ed1b93b326f725545 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Sat, 13 Aug 2022 17:17:05 +0200 -Subject: [PATCH] Makefile: fix build with kernel < 5.6 - -Fix the following build failure with kernel >= 5.1 and < 5.5 (i.e. -before -https://github.com/torvalds/linux/commit/9e3aa61ae3e01ce1ce6361a41ef725e1f4d1d2bf) -raised since version 0.11.21 and -https://github.com/ColinIanKing/stress-ng/commit/3d6fccdbe53d0cbcb75dd4b91571aaaae7ee1ad4: - -In file included from stress-io-uring.c:26: -io-uring.h:1:9: error: macro names must be identifiers - 1 | #define #define HAVE_IORING_OP_NOP 0 - | ^ - -Moreover, IORING_OP_FALLOCATE is not available before kernel 5.6 and -https://github.com/torvalds/linux/commit/d63d1b5edb7b832210bfde587ba9e7549fa064eb - -Fixes: - - http://autobuild.buildroot.org/results/1bf3f2bbc849bdce531d56b1024fa87f0c1ae667 - -Signed-off-by: Fabrice Fontaine -[Retrieved (and backported) from -https://github.com/ColinIanKing/stress-ng/commit/5d419c790e648c7a2f96f34ed1b93b326f725545] ---- - Makefile | 2 +- - stress-io-uring.c | 6 +++++- - 2 files changed, 6 insertions(+), 2 deletions(-) - -diff --git a/Makefile b/Makefile -index 2f9cc9918..ee17ae08b 100644 ---- a/Makefile -+++ b/Makefile -@@ -528,7 +528,7 @@ stress-personality.c: personality.h - # - io-uring.h: - $(V)$(CPP) $(CFLAGS) core-io-uring.c | $(GREP) IORING_OP | sed 's/,//' | \ -- sed 's/IORING_OP_/#define HAVE_IORING_OP_/' > io-uring.h -+ sed 's/.*\(IORING_OP_.*\)/#define HAVE_\1/' > io-uring.h - $(Q)echo "MK io-uring.h" - - stress-io-uring.c: io-uring.h -diff --git a/stress-io-uring.c b/stress-io-uring.c -index ab9fd0749..84f463611 100644 ---- a/stress-io-uring.c -+++ b/stress-io-uring.c -@@ -311,7 +311,11 @@ static inline int stress_io_uring_complete( - break; - - cqe = &cring->cqes[head & *submit->cq_ring.ring_mask]; -- if ((cqe->res < 0) && (opcode != IORING_OP_FALLOCATE)) { -+ if ((cqe->res < 0) -+#ifdef HAVE_IORING_OP_FALLOCATE -+ && (opcode != IORING_OP_FALLOCATE) -+#endif -+ ) { - const int err = abs(cqe->res); - - /* Silently ignore EOPNOTSUPP completion errors */ diff --git a/package/stress-ng/Config.in b/package/stress-ng/Config.in index 839cbb1cc034..918c3db19478 100644 --- a/package/stress-ng/Config.in +++ b/package/stress-ng/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_STRESS_NG bool "stress-ng" depends on BR2_USE_MMU # fork() # perf.c needs PERF_COUNT_HW_REF_CPU_CYCLES + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3 # fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW on nios2 and ARC depends on !BR2_nios2 @@ -16,5 +17,6 @@ config BR2_PACKAGE_STRESS_NG comment "stress-ng needs a toolchain w/ headers >= 3.3" depends on !BR2_nios2 && !BR2_arc + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_USE_MMU depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3 diff --git a/package/stress-ng/stress-ng.hash b/package/stress-ng/stress-ng.hash index 2e3f9987693b..a02b65c9920e 100644 --- a/package/stress-ng/stress-ng.hash +++ b/package/stress-ng/stress-ng.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 3de49e1100866634f549e99c1644283d0cde817b844a69dcf7f80afa2227d350 stress-ng-0.13.05.tar.gz +sha256 7ad1f30237011149e7f83451ea7cb49e88c0a79bed55e29b556c6a72b9f1d79d stress-ng-0.15.07.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/stress-ng/stress-ng.mk b/package/stress-ng/stress-ng.mk index 0b2287c7fbca..24ec4cb51576 100644 --- a/package/stress-ng/stress-ng.mk +++ b/package/stress-ng/stress-ng.mk @@ -4,11 +4,14 @@ # ################################################################################ -STRESS_NG_VERSION = 0.13.05 +STRESS_NG_VERSION = 0.15.07 STRESS_NG_SITE = $(call github,ColinIanKing,stress-ng,V$(STRESS_NG_VERSION)) STRESS_NG_LICENSE = GPL-2.0+ STRESS_NG_LICENSE_FILES = COPYING +STRESS_NG_MAKE_FLAGS = \ + PRESERVE_CFLAGS=1 + ifeq ($(BR2_PACKAGE_LIBBSD),y) STRESS_NG_DEPENDENCIES += libbsd endif @@ -17,8 +20,12 @@ ifeq ($(BR2_PACKAGE_KEYUTILS),y) STRESS_NG_DEPENDENCIES += keyutils endif +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +STRESS_NG_MAKE_FLAGS += LDFLAGS="$(TARGET_LDFLAGS) -latomic" +endif + define STRESS_NG_BUILD_CMDS - $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) $(STRESS_NG_MAKE_FLAGS) endef # Don't use make install otherwise stress-ng will be rebuild without diff --git a/package/strongswan/strongswan.hash b/package/strongswan/strongswan.hash index 4822f9152fd1..de8f18747a02 100644 --- a/package/strongswan/strongswan.hash +++ b/package/strongswan/strongswan.hash @@ -1,7 +1,7 @@ -# From http://download.strongswan.org/strongswan-5.9.8.tar.bz2.md5 -md5 f46b0d3e7aed88824650d0721c887443 strongswan-5.9.8.tar.bz2 +# From http://download.strongswan.org/strongswan-5.9.11.tar.bz2.md5 +md5 673e194cd256af77b46928179f2c81ad strongswan-5.9.11.tar.bz2 # Calculated based on the hash above -sha256 d3303a43c0bd7b75a12b64855e8edcb53696f06190364f26d1533bde1f2e453c strongswan-5.9.8.tar.bz2 +sha256 ddf53f1f26ad26979d5f55e8da95bd389552f5de3682e35593f9a70b2584ed2d strongswan-5.9.11.tar.bz2 # Locally calculated sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING sha256 2292e21797754548dccdef9eef6aee7584e552fbd890fa914e1de8d3577d23f0 LICENSE diff --git a/package/strongswan/strongswan.mk b/package/strongswan/strongswan.mk index cae1433e3922..605863169605 100644 --- a/package/strongswan/strongswan.mk +++ b/package/strongswan/strongswan.mk @@ -4,7 +4,7 @@ # ################################################################################ -STRONGSWAN_VERSION = 5.9.8 +STRONGSWAN_VERSION = 5.9.11 STRONGSWAN_SOURCE = strongswan-$(STRONGSWAN_VERSION).tar.bz2 STRONGSWAN_SITE = http://download.strongswan.org STRONGSWAN_LICENSE = GPL-2.0+ diff --git a/package/sudo/0001-configure.ac-fix-openssl-static-build.patch b/package/sudo/0001-configure.ac-fix-openssl-static-build.patch index 32edd148a0ca..dc91af611919 100644 --- a/package/sudo/0001-configure.ac-fix-openssl-static-build.patch +++ b/package/sudo/0001-configure.ac-fix-openssl-static-build.patch @@ -1,6 +1,6 @@ -From 5cfc7e277d0b262a1d12e867c47a36301fb7edb7 Mon Sep 17 00:00:00 2001 +From 1fed5adc166d5f2190a6b6ad048ec2d803316327 Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine -Date: Wed, 22 Feb 2023 10:01:25 +0100 +Date: Wed, 22 Feb 2023 10:13:30 +0100 Subject: [PATCH] configure.ac: fix openssl static build Do not use AX_APPEND_FLAG as it will break static builds by removing @@ -24,26 +24,24 @@ Fixes: - http://autobuild.buildroot.org/results/8be59dd94e4916f9457cb435104e36e62a28373b Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/sudo-project/sudo/pull/244] +[Retrieved from: +https://github.com/sudo-project/sudo/commit/1fed5adc166d5f2190a6b6ad048ec2d803316327] --- - configure.ac | 4 +++- + m4/openssl.m4 | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) -diff --git a/configure.ac b/configure.ac -index 8eccad7e4..523d8e56b 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -3082,7 +3082,9 @@ if test "${enable_openssl-no}" != no; then - SUDO_APPEND_LIBPATH([LIBTLS], [$f]) - ;; - *) -- AX_APPEND_FLAG([$f], [LIBTLS]) -+ # Do not use AX_APPEND_FLAG as it will break static builds by removing -+ # duplicates such as -lz or -latomic which are needed by -lssl and -lcrypto -+ LIBTLS="$LIBTLS $f" - ;; - esac - done --- -2.39.0 - +diff --git a/m4/openssl.m4 b/m4/openssl.m4 +index a2e4941ae8..b4cbd821db 100644 +--- a/m4/openssl.m4 ++++ b/m4/openssl.m4 +@@ -44,7 +44,9 @@ AC_DEFUN([SUDO_CHECK_OPENSSL], [ + SUDO_APPEND_LIBPATH([LIBTLS], [$f]) + ;; + *) +- AX_APPEND_FLAG([$f], [LIBTLS]) ++ # Do not use AX_APPEND_FLAG as it will break static builds by removing ++ # duplicates such as -lz or -latomic which are needed by -lssl and -lcrypto ++ LIBTLS="$LIBTLS $f" + ;; + esac + done diff --git a/package/sudo/sudo.hash b/package/sudo/sudo.hash index c920b9fe7449..720b21d849c9 100644 --- a/package/sudo/sudo.hash +++ b/package/sudo/sudo.hash @@ -1,4 +1,4 @@ # From: https://www.sudo.ws/getting/download/ -sha256 b9a0b1ae0f1ddd9be7f3eafe70be05ee81f572f6f536632c44cd4101bb2a8539 sudo-1.9.12p2.tar.gz +sha256 92334a12bb93e0c056b09f53e255ccb7d6f67c6350e2813cd9593ceeca78560b sudo-1.9.13p3.tar.gz # Locally calculated -sha256 d2f93a3b17ed5586fddd07be33ad767146c1a81a22682baa68bb4360a31d020a LICENSE.md +sha256 ea33b3971e8e4d9657cd6794a952aaa71b22bd16745f1645455b6ead010e0a28 LICENSE.md diff --git a/package/sudo/sudo.mk b/package/sudo/sudo.mk index 3b5c8989175d..e70e8bd31f08 100644 --- a/package/sudo/sudo.mk +++ b/package/sudo/sudo.mk @@ -4,8 +4,8 @@ # ################################################################################ -SUDO_VERSION_MAJOR = 1.9.12 -SUDO_VERSION_MINOR = p2 +SUDO_VERSION_MAJOR = 1.9.13 +SUDO_VERSION_MINOR = p3 SUDO_VERSION = $(SUDO_VERSION_MAJOR)$(SUDO_VERSION_MINOR) SUDO_SITE = https://www.sudo.ws/sudo/dist SUDO_LICENSE = ISC, BSD-3-Clause @@ -13,7 +13,7 @@ SUDO_LICENSE_FILES = LICENSE.md SUDO_CPE_ID_VERSION = $(SUDO_VERSION_MAJOR) SUDO_CPE_ID_UPDATE = $(SUDO_VERSION_MINOR) SUDO_SELINUX_MODULES = sudo -# We're patching configure.ac +# We're patching m4/openssl.m4 SUDO_AUTORECONF = YES # This is to avoid sudo's make install from chown()ing files which fails SUDO_INSTALL_TARGET_OPTS = INSTALL_OWNER="" DESTDIR="$(TARGET_DIR)" install diff --git a/package/sunxi-mali-utgard-driver/sunxi-mali-utgard-driver.hash b/package/sunxi-mali-utgard-driver/sunxi-mali-utgard-driver.hash index fd874f1f0a19..be27a85970c5 100644 --- a/package/sunxi-mali-utgard-driver/sunxi-mali-utgard-driver.hash +++ b/package/sunxi-mali-utgard-driver/sunxi-mali-utgard-driver.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 4b66f20272c63ce8ea769bf1c95f9923ed6facabe0c14a8c7644b302b9f23b58 sunxi-mali-utgard-driver-73a80d550f2f181b5fc7fc2d859e15d077d845e4.tar.gz +sha256 f2e5e671575d9488fd19b821d70e59952b6dbbb5b2036ea5462f811eec819370 sunxi-mali-utgard-driver-c4bc3e229c0e5f30c24c20ff1fb8db0e4a450c0f.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE diff --git a/package/sunxi-mali-utgard-driver/sunxi-mali-utgard-driver.mk b/package/sunxi-mali-utgard-driver/sunxi-mali-utgard-driver.mk index 15d660e49dde..72fade58ed6f 100644 --- a/package/sunxi-mali-utgard-driver/sunxi-mali-utgard-driver.mk +++ b/package/sunxi-mali-utgard-driver/sunxi-mali-utgard-driver.mk @@ -4,7 +4,7 @@ # ################################################################################ -SUNXI_MALI_UTGARD_DRIVER_VERSION = 73a80d550f2f181b5fc7fc2d859e15d077d845e4 +SUNXI_MALI_UTGARD_DRIVER_VERSION = c4bc3e229c0e5f30c24c20ff1fb8db0e4a450c0f SUNXI_MALI_UTGARD_DRIVER_SITE = $(call github,giuliobenetti,sunxi-mali,$(SUNXI_MALI_UTGARD_DRIVER_VERSION)) SUNXI_MALI_UTGARD_DRIVER_DEPENDENCIES = linux SUNXI_MALI_UTGARD_DRIVER_LICENSE = GPL-2.0 diff --git a/package/sunxi-tools/0001-meminfo-Access-to-io-memory-via-pointers.patch b/package/sunxi-tools/0001-meminfo-Access-to-io-memory-via-pointers.patch deleted file mode 100644 index 997c413f232d..000000000000 --- a/package/sunxi-tools/0001-meminfo-Access-to-io-memory-via-pointers.patch +++ /dev/null @@ -1,59 +0,0 @@ -From 5c0a443ba336f10a8db6a99c769aa84ad37ed4d2 Mon Sep 17 00:00:00 2001 -From: Vadim Kochan -Date: Wed, 20 Feb 2019 02:48:43 +0200 -Subject: [PATCH] meminfo: Access to io memory via pointers - -The main reason for this is to be able compile with musl library, -because there is no support of inx/outx functions for ARM platform. - -Signed-off-by: Vadim Kochan ---- - meminfo.c | 11 ++++++----- - 1 file changed, 6 insertions(+), 5 deletions(-) - -diff --git a/meminfo.c b/meminfo.c -index 0b0ff23..7d9f10f 100644 ---- a/meminfo.c -+++ b/meminfo.c -@@ -22,7 +22,6 @@ - #include - #include - #include --#include - #include - - #include "common.h" -@@ -74,24 +73,26 @@ static enum sunxi_soc_version soc_version; - unsigned int - sunxi_io_read(void *base, int offset) - { -- return inl((unsigned long) (base + offset)); -+ unsigned long port = (unsigned long) (base + offset); -+ return *((volatile unsigned long *) port); - } - - void - sunxi_io_write(void *base, int offset, unsigned int value) - { -- outl(value, (unsigned long) (base + offset)); -+ unsigned long port = (unsigned long) (base + offset); -+ *((volatile unsigned long *) port) = value; - } - - void - sunxi_io_mask(void *base, int offset, unsigned int value, unsigned int mask) - { -- unsigned int tmp = inl((unsigned long) (base + offset)); -+ unsigned int tmp = sunxi_io_read(base, offset); - - tmp &= ~mask; - tmp |= value & mask; - -- outl(tmp, (unsigned long) (base + offset)); -+ sunxi_io_write(base, offset, tmp); - } - - --- -2.14.1 - diff --git a/package/sunxi-tools/Config.in b/package/sunxi-tools/Config.in index 5f72667284e0..14f7da5bf207 100644 --- a/package/sunxi-tools/Config.in +++ b/package/sunxi-tools/Config.in @@ -25,7 +25,9 @@ config BR2_PACKAGE_SUNXI_TOOLS_FEL bool "sunxi-fel" depends on BR2_TOOLCHAIN_HAS_THREADS # libusb depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb + select BR2_PACKAGE_DTC select BR2_PACKAGE_LIBUSB + select BR2_PACKAGE_ZLIB help The sunxi-fel command can interact with a sunxi device in fel mode. This allows do download code to memory and execute diff --git a/package/sunxi-tools/Config.in.host b/package/sunxi-tools/Config.in.host index 51f13cf623d5..f7c60b37a9c4 100644 --- a/package/sunxi-tools/Config.in.host +++ b/package/sunxi-tools/Config.in.host @@ -2,6 +2,7 @@ config BR2_PACKAGE_HOST_SUNXI_TOOLS bool "host sunxi-tools" depends on BR2_arm depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-libusb + select BR2_PACKAGE_HOST_DTC help Tools for Allwinner A10 (aka sun4i) and A13 (aka sun5i) based devices. This includes fex2bin which can be used to diff --git a/package/sunxi-tools/sunxi-tools.hash b/package/sunxi-tools/sunxi-tools.hash index 84acc2c76c81..42d81144a336 100644 --- a/package/sunxi-tools/sunxi-tools.hash +++ b/package/sunxi-tools/sunxi-tools.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 81f48014a520cb83cac4e17f5ae627a637c4d6a422b60c693c5a705c92e43822 sunxi-tools-1.4.2.tar.gz +sha256 6589f32e9c2a5991cc49928e83aceea675f0165ce6f13cdd2dd784139a8d4efd sunxi-tools-1.4.2-168-ged3039cdbeeb28fc0011c3585d8f7dfb91038292.tar.gz sha256 2b0d4dda4bf8034e1506507a67f80f982131137afe62bf144d248f9faea31da4 LICENSE.md diff --git a/package/sunxi-tools/sunxi-tools.mk b/package/sunxi-tools/sunxi-tools.mk index 59d1f3b5a015..97863efc13e1 100644 --- a/package/sunxi-tools/sunxi-tools.mk +++ b/package/sunxi-tools/sunxi-tools.mk @@ -4,11 +4,11 @@ # ################################################################################ -SUNXI_TOOLS_VERSION = 1.4.2 +SUNXI_TOOLS_VERSION = 1.4.2-168-ged3039cdbeeb28fc0011c3585d8f7dfb91038292 SUNXI_TOOLS_SITE = $(call github,linux-sunxi,sunxi-tools,v$(SUNXI_TOOLS_VERSION)) SUNXI_TOOLS_LICENSE = GPL-2.0+ SUNXI_TOOLS_LICENSE_FILES = LICENSE.md -HOST_SUNXI_TOOLS_DEPENDENCIES = host-libusb host-pkgconf +HOST_SUNXI_TOOLS_DEPENDENCIES = host-dtc host-libzlib host-libusb host-pkgconf FEX2BIN = $(HOST_DIR)/bin/fex2bin SUNXI_TOOLS_TARGETS_$(BR2_PACKAGE_SUNXI_TOOLS_FEXC) += sunxi-fexc @@ -26,13 +26,14 @@ SUNXI_TOOLS_FEXC_LINKS += fex2bin bin2fex endif ifeq ($(BR2_PACKAGE_SUNXI_TOOLS_FEL),y) -SUNXI_TOOLS_DEPENDENCIES += libusb host-pkgconf +SUNXI_TOOLS_DEPENDENCIES += dtc libusb zlib host-pkgconf endif define HOST_SUNXI_TOOLS_BUILD_CMDS $(HOST_MAKE_ENV) $(MAKE) CROSS_COMPILE="" CC="$(HOSTCC)" \ PREFIX=$(HOST_DIR) EXTRA_CFLAGS="$(HOST_CFLAGS)" \ - LDFLAGS="$(HOST_LDFLAGS)" -C $(@D) tools misc + LDFLAGS="$(HOST_LDFLAGS) -I$(HOST_DIR)/include/libfdt" \ + -C $(@D) tools misc endef define HOST_SUNXI_TOOLS_INSTALL_CMDS diff --git a/package/supertuxkart/supertuxkart.mk b/package/supertuxkart/supertuxkart.mk index 1f9ad4102bbf..6bdd512eac04 100644 --- a/package/supertuxkart/supertuxkart.mk +++ b/package/supertuxkart/supertuxkart.mk @@ -44,6 +44,7 @@ SUPERTUXKART_CONF_OPTS = -DBUILD_SHARED_LIBS=OFF \ ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS),y) SUPERTUXKART_DEPENDENCIES += bluez5_utils SUPERTUXKART_CONF_OPTS += -DUSE_WIIUSE=ON -DUSE_SYSTEM_WIIUSE=ON +SUPERTUXKART_SUPPORTS_IN_SOURCE_BUILD = NO else # Wiimote support relies on bluez5. SUPERTUXKART_CONF_OPTS += -DUSE_WIIUSE=OFF diff --git a/package/suricata/0002-configure.ac-allow-the-user-to-override-RUST_TARGET.patch b/package/suricata/0001-configure.ac-allow-the-user-to-override-RUST_TARGET.patch similarity index 100% rename from package/suricata/0002-configure.ac-allow-the-user-to-override-RUST_TARGET.patch rename to package/suricata/0001-configure.ac-allow-the-user-to-override-RUST_TARGET.patch diff --git a/package/suricata/0001-python-ensure-proper-shabang-on-python-scripts.patch b/package/suricata/0001-python-ensure-proper-shabang-on-python-scripts.patch deleted file mode 100644 index 424b30d317f8..000000000000 --- a/package/suricata/0001-python-ensure-proper-shabang-on-python-scripts.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 44fe2328b715db25134ee095526d2fa47e6cd834 Mon Sep 17 00:00:00 2001 -From: "Yann E. MORIN" -Date: Wed, 1 Jan 2020 15:25:57 +0100 -Subject: [PATCH] python: ensure proper shabang on python scripts - -When instlling python scripts, distutils would use the python used to -run setup.py as shabang for the scripts it installs. - -However, when cross-compiling, this is most often not correct. - -Instead, using '/usr/bin/env python' is guaranteed to find the proper -python in the PATH, so we need to instruct setyup.py to use that as the -executable. - -[yann.morin.1998@free.fr: - - author did not provide their SoB, but it's simple enough to - not require it for once - - provide proper commit log -] -Signed-off-by: Yann E. MORIN -[Fabrice: update for 6.0.0] -Signed-off-by: Fabrice Fontaine ---- - python/Makefile.am | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/python/Makefile.am b/python/Makefile.am -index 59d195f29..a41604f72 100644 ---- a/python/Makefile.am -+++ b/python/Makefile.am -@@ -6,11 +6,11 @@ EXTRA_DIST = setup.py \ - if HAVE_PYTHON_DISTUTILS - all-local: - cd $(srcdir) && \ -- $(HAVE_PYTHON) setup.py build --build-base "$(abs_builddir)" -+ $(HAVE_PYTHON) setup.py build -e "/usr/bin/env python" --build-base "$(abs_builddir)" - - install-exec-local: - cd $(srcdir) && \ -- $(HAVE_PYTHON) setup.py build --build-base "$(abs_builddir)" \ -+ $(HAVE_PYTHON) setup.py build -e "/usr/bin/env python" --build-base "$(abs_builddir)" \ - install --prefix $(DESTDIR)$(prefix) - - uninstall-local: --- -2.20.1 - diff --git a/package/suricata/suricata.hash b/package/suricata/suricata.hash index 38ab5e9cd3e3..41befa61b96b 100644 --- a/package/suricata/suricata.hash +++ b/package/suricata/suricata.hash @@ -1,5 +1,5 @@ # Locally computed: -sha256 00173634fa76aee636e38a90b1c02616c903e42173107d47b4114960b5fbe839 suricata-6.0.6.tar.gz +sha256 1bd546149ac6671c2476d520a38eab7755e10c3080fd2ec2dc8624b0cf89ee75 suricata-6.0.15.tar.gz # Hash for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/suricata/suricata.mk b/package/suricata/suricata.mk index 72b72cc94dc5..5b5263532845 100644 --- a/package/suricata/suricata.mk +++ b/package/suricata/suricata.mk @@ -4,13 +4,12 @@ # ################################################################################ -SURICATA_VERSION = 6.0.6 +SURICATA_VERSION = 6.0.15 SURICATA_SITE = https://www.openinfosecfoundation.org/download SURICATA_LICENSE = GPL-2.0 SURICATA_LICENSE_FILES = COPYING LICENSE SURICATA_CPE_ID_VENDOR = oisf -# 0001-python-ensure-proper-shabang-on-python-scripts.patch -# 0002-configure.ac-allow-the-user-to-override-RUST_TARGET.patch +# 0001-configure.ac-allow-the-user-to-override-RUST_TARGET.patch SURICATA_AUTORECONF = YES SURICATA_DEPENDENCIES = \ diff --git a/package/sway/sway.hash b/package/sway/sway.hash index 6dfa71730f9b..86b6581f1c53 100644 --- a/package/sway/sway.hash +++ b/package/sway/sway.hash @@ -1,3 +1,3 @@ # Locally computed, tarball verified with GPG signature -sha256 0c64536fb2883ec518e75cfb119f9300115fb49b084e3fde62b794fe2c6c8d84 sway-1.7.tar.gz +sha256 73f08fd2cf7948e8af900709efe44eae412ae11c5773960e25c9aa09f73bad41 sway-1.8.1.tar.gz sha256 bd35722bff46327f5eded1d211207277bbe043d2a22048b282c42ef801593b8b LICENSE diff --git a/package/sway/sway.mk b/package/sway/sway.mk index 802371c82721..19f90b8b0055 100644 --- a/package/sway/sway.mk +++ b/package/sway/sway.mk @@ -4,8 +4,8 @@ # ################################################################################ -SWAY_VERSION = 1.7 -SWAY_SITE = $(call github,swaywm,sway,v$(SWAY_VERSION)) +SWAY_VERSION = 1.8.1 +SWAY_SITE = https://github.com/swaywm/sway/releases/download/$(SWAY_VERSION) SWAY_LICENSE = MIT SWAY_LICENSE_FILES = LICENSE SWAY_DEPENDENCIES = systemd host-pkgconf wlroots json-c pcre cairo pango diff --git a/package/swaybg/Config.in b/package/swaybg/Config.in new file mode 100644 index 000000000000..63aa8cdb6a7f --- /dev/null +++ b/package/swaybg/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_SWAYBG + bool "swaybg" + default y if BR2_PACKAGE_SWAY + depends on !BR2_STATIC_LIBS # wayland -> dlfcn.h + depends on BR2_TOOLCHAIN_HAS_THREADS # wayland + select BR2_PACKAGE_CAIRO + select BR2_PACKAGE_CAIRO_PNG + select BR2_PACKAGE_WAYLAND + select BR2_PACKAGE_WAYLAND_PROTOCOLS + help + Wallpaper tool for Wayland compositors. + + https://github.com/swaywm/swaybg diff --git a/package/swaybg/swaybg.hash b/package/swaybg/swaybg.hash new file mode 100644 index 000000000000..62bf048d6125 --- /dev/null +++ b/package/swaybg/swaybg.hash @@ -0,0 +1,3 @@ +# Locally computed, tarball verified with GPG signature +sha256 c0205b34f1fad94553b6cb2c2b983cc33186018026058cad0b841a00bc3087e3 swaybg-1.2.0.tar.gz +sha256 95224d118a325daf31828afcca98cd958d53f0a7cdd856b50b1be8ac44832faf LICENSE diff --git a/package/swaybg/swaybg.mk b/package/swaybg/swaybg.mk new file mode 100644 index 000000000000..90a8cb5d809a --- /dev/null +++ b/package/swaybg/swaybg.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# swaybg +# +################################################################################ + +SWAYBG_VERSION = 1.2.0 +SWAYBG_SITE = https://github.com/swaywm/swaybg/releases/download/v$(SWAYBG_VERSION) +SWAYBG_LICENSE = MIT +SWAYBG_LICENSE_FILES = LICENSE + +SWAYBG_DEPENDENCIES = \ + cairo \ + wayland \ + wayland-protocols + +SWAYBG_CONF_OPTS = \ + -Dman-pages=disabled \ + -Dwerror=false + +ifeq ($(BR2_PACKAGE_GDK_PIXBUF),y) +SWAYBG_CONF_OPTS += -Dgdk-pixbuf=enabled +SWAYBG_DEPENDENCIES += gdk-pixbuf +else +SWAYBG_CONF_OPTS += -Dgdk-pixbuf=disabled +endif + +$(eval $(meson-package)) diff --git a/package/swugenerator/Config.in.host b/package/swugenerator/Config.in.host new file mode 100644 index 000000000000..df0e9a517091 --- /dev/null +++ b/package/swugenerator/Config.in.host @@ -0,0 +1,6 @@ +config BR2_PACKAGE_HOST_SWUGENERATOR + bool "host swugenerator" + help + A host tool to generate SWU update package for SWUpdate. + + https://github.com/sbabic/swugenerator diff --git a/package/swugenerator/swugenerator.hash b/package/swugenerator/swugenerator.hash new file mode 100644 index 000000000000..2125be3d1cf3 --- /dev/null +++ b/package/swugenerator/swugenerator.hash @@ -0,0 +1,4 @@ +# Locally calculated +sha256 b5c47c47be0df4df476d2bf596f58a7296a4b0cebe6c8de42251605475b37d25 swugenerator-0.2.tar.gz +# Locally computed sha256 checksums +sha256 3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986 LICENSE diff --git a/package/swugenerator/swugenerator.mk b/package/swugenerator/swugenerator.mk new file mode 100644 index 000000000000..f4ead1d2296c --- /dev/null +++ b/package/swugenerator/swugenerator.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# swugenerator +# +################################################################################ + +SWUGENERATOR_VERSION = 0.2 +SWUGENERATOR_SITE = $(call github,sbabic,swugenerator,v$(SWUGENERATOR_VERSION)) +SWUGENERATOR_LICENSE = GPL-3.0 +SWUGENERATOR_LICENSE_FILES = LICENSE +HOST_SWUGENERATOR_SETUP_TYPE = setuptools +HOST_SWUGENERATOR_DEPENDENCIES = host-python-libconf + +$(eval $(host-python-package)) diff --git a/package/swupdate/0001-include-util-h-fix-build-on-musl.patch b/package/swupdate/0001-include-util-h-fix-build-on-musl.patch new file mode 100644 index 000000000000..d1e0db6b56cf --- /dev/null +++ b/package/swupdate/0001-include-util-h-fix-build-on-musl.patch @@ -0,0 +1,41 @@ +From 1999685830d6e9b57014666b9e53e46de17a471c Mon Sep 17 00:00:00 2001 +From: Dominique Martinet +Date: Fri, 15 Sep 2023 18:14:57 +0900 +Subject: [PATCH] include/util.h: fix build on musl + +Building on musl 1.2.4 fails with the following error/warnings: + +include/util.h:211:23: error: unknown type name 'mode_t' + 211 | int mkpath(char *dir, mode_t mode); +include/util.h:269:36: warning: 'struct timeval' declared inside parameter list will not be visible outside of this definition or declaration + 269 | char *swupdate_time_iso8601(struct timeval *tv); + +These were caused by a recent reorganization of the headers and glibc +appears more tolerant here. + +Fixes: 8228b1390632 ("Reorganize includes to have smaller files") +Signed-off-by: Dominique Martinet +Upstream: https://github.com/sbabic/swupdate/commit/1999685830d6e9b57014666b9e53e46de17a471c +Signed-off-by: Fabrice Fontaine +--- + include/util.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/include/util.h b/include/util.h +index 2f5c7adc..5f4cdc01 100644 +--- a/include/util.h ++++ b/include/util.h +@@ -8,11 +8,13 @@ + #ifndef _UTIL_H + #define _UTIL_H + ++#include + #include + #include + #include + #include + #include ++#include + #if defined(__linux__) + #include + #endif diff --git a/package/swupdate/swupdate-usb@.service b/package/swupdate/swupdate-usb@.service index df1a40842170..28d805f8ec99 100644 --- a/package/swupdate/swupdate-usb@.service +++ b/package/swupdate/swupdate-usb@.service @@ -1,9 +1,11 @@ [Unit] Description=usb media swupdate service Requires=swupdate.service -Requires=swupdate-progress.service +Wants=swupdate-progress.service [Service] -ExecStartPre=/bin/mount /dev/%I /mnt -ExecStart=/bin/sh -c "swupdate-client -v /mnt/*.swu" -ExecStopPost=/bin/umount /mnt +ExecStartPre=/bin/mkdir -p /tmp/%I +ExecStartPre=/bin/mount /dev/%I /tmp/%I +ExecStart=/bin/sh -c "swupdate-client -v /tmp/%I/*.swu" +ExecStopPost=/bin/umount /tmp/%I +ExecStopPost=/bin/rmdir /tmp/%I diff --git a/package/swupdate/swupdate.hash b/package/swupdate/swupdate.hash index 1b26f9e5e224..72b71ce12d82 100644 --- a/package/swupdate/swupdate.hash +++ b/package/swupdate/swupdate.hash @@ -1,12 +1,12 @@ # Locally calculated -sha256 e6335e87812a98a87f1c55df03c9f4e4ef042789570002c5db120b09f64b0d86 swupdate-2022.12.tar.gz +sha256 888df5050035e4fbe14e3a964885646fa3163e727f78c423c3d24c28f7a50b66 swupdate-2023.05.tar.gz sha256 4cf04ed34ff0ebbf5c71345b56e6af5093fc17206364cca0ebbae92ef3940683 LICENSES/BSD-1-Clause.txt sha256 e27a3e87706b3aa5ff2e50eaafe2e6ed5397fbf2d7679eaf444a6d000518a3a6 LICENSES/BSD-3-Clause.txt sha256 0558101984550fa84d1d13c2af11d116c20079d2be58711e8d99cadce7009192 LICENSES/CC0-1.0.txt sha256 cde7883b9050a1104f4ac19a1572aafd6e5d7323b68351aaf51fbf4beba54966 LICENSES/CC-BY-SA-4.0.txt sha256 5d51b52a40391a26cbb2accf5dc5d1c165de49a022d9d5efb50b22204d2682ec LICENSES/GPL-2.0-only.txt sha256 43fd695e9b198a9a4997cc2d02e10d26cae937e2c4930b9eff9c6d349c85cd32 LICENSES/GPL-2.0-or-later.txt -sha256 492e801f1b0632185431472f148885a4fe8e990b10da57b4986a8bcf140a5374 LICENSES/ISC.txt +sha256 f8f41f38133176a6db6c1bd8d7bd1a9c910e3563f1cb7bbe32b05e8b8d3a9c61 LICENSES/ISC.txt sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 LICENSES/LGPL-2.1-or-later.txt sha256 89807acf2309bd285f033404ee78581602f3cd9b819a16ac2f0e5f60ff4a473e LICENSES/MIT.txt sha256 8f2368a292194be10b1223a8875815240a9208bb30785cb13d8849eb6a750fe9 LICENSES/OFL-1.1.txt diff --git a/package/swupdate/swupdate.mk b/package/swupdate/swupdate.mk index 11a394675314..ea4a5a62e5ef 100644 --- a/package/swupdate/swupdate.mk +++ b/package/swupdate/swupdate.mk @@ -4,7 +4,7 @@ # ################################################################################ -SWUPDATE_VERSION = 2022.12 +SWUPDATE_VERSION = 2023.05 SWUPDATE_SITE = $(call github,sbabic,swupdate,$(SWUPDATE_VERSION)) SWUPDATE_LICENSE = GPL-2.0, GPL-2.0+, LGPL-2.1+, MIT, ISC, BSD-1-Clause, BSD-3-Clause, CC0-1.0, CC-BY-SA-4.0, OFL-1.1 SWUPDATE_LICENSE_FILES = LICENSES/BSD-1-Clause.txt \ @@ -24,6 +24,9 @@ SWUPDATE_INSTALL_STAGING = YES # TARGET_CC is used for both. SWUPDATE_MAKE_ENV = CC="$(TARGET_CC)" LD="$(TARGET_CC)" SKIP_STRIP=y +# we don't package EFI Boot Guard/libebgenv +SWUPDATE_MAKE_ENV += HAVE_LIBEBGENV=n + # swupdate bundles its own version of mongoose (version 6.16) ifeq ($(BR2_PACKAGE_E2FSPROGS),y) @@ -84,6 +87,9 @@ endif ifeq ($(BR2_PACKAGE_LIBUBOOTENV),y) SWUPDATE_DEPENDENCIES += libubootenv +SWUPDATE_MAKE_ENV += HAVE_LIBUBOOTENV=y +else +SWUPDATE_MAKE_ENV += HAVE_LIBUBOOTENV=n endif ifeq ($(BR2_PACKAGE_LIBURIPARSER),y) @@ -230,7 +236,7 @@ endef define SWUPDATE_INSTALL_STAGING_CMDS $(TARGET_MAKE_ENV) $(SWUPDATE_MAKE_ENV) $(MAKE) -C $(@D) \ $(SWUPDATE_MAKE_OPTS) DESTDIR=$(STAGING_DIR) \ - INCLUDEDIR=/usr/include/swupdate install + install endef define SWUPDATE_INSTALL_TARGET_CMDS diff --git a/package/sysdig/0001-cmake-Check-USE_BUNDLED_DEPS-before-getting-nlohmann.patch b/package/sysdig/0001-cmake-Check-USE_BUNDLED_DEPS-before-getting-nlohmann.patch deleted file mode 100644 index 3521bd3f8dfe..000000000000 --- a/package/sysdig/0001-cmake-Check-USE_BUNDLED_DEPS-before-getting-nlohmann.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 0dbebd008c04d266dc41c4bec8280a0744fd5130 Mon Sep 17 00:00:00 2001 -From: Francis Laniel -Date: Wed, 13 Apr 2022 18:01:11 +0100 -Subject: [PATCH] cmake: Check USE_BUNDLED_DEPS before getting - nlohmann-json. - -Upstream: https://github.com/draios/sysdig/pull/1869 -Signed-off-by: Francis Laniel ---- - cmake/modules/nlohmann-json.cmake | 29 +++++++++++++++++++---------- - 1 file changed, 19 insertions(+), 10 deletions(-) - -diff --git a/cmake/modules/nlohmann-json.cmake b/cmake/modules/nlohmann-json.cmake -index bb1279d7..feb0f071 100644 ---- a/cmake/modules/nlohmann-json.cmake -+++ b/cmake/modules/nlohmann-json.cmake -@@ -16,13 +16,22 @@ - # limitations under the License. - # - --set(NJSON_SRC "${PROJECT_BINARY_DIR}/njson-prefix/src/njson") --message(STATUS "Using bundled nlohmann-json in '${NJSON_SRC}'") --set(NJSON_INCLUDE_DIR "${NJSON_SRC}/single_include") --ExternalProject_Add( -- njson -- URL "https://github.com/nlohmann/json/archive/v3.3.0.tar.gz" -- URL_HASH "SHA256=2fd1d207b4669a7843296c41d3b6ac5b23d00dec48dba507ba051d14564aa801" -- CONFIGURE_COMMAND "" -- BUILD_COMMAND "" -- INSTALL_COMMAND "") -+if(NOT USE_BUNDLED_DEPS) -+ find_path(NJSON_INCLUDE_DIR NAMES nlohmann/json.hpp) -+ if(NJSON_INCLUDE_DIR) -+ message(STATUS "Found njson: include: ${NJSON_INCLUDE_DIR}") -+ else() -+ message(FATAL_ERROR "Couldn't find system njson") -+ endif() -+else() -+ set(NJSON_SRC "${PROJECT_BINARY_DIR}/njson-prefix/src/njson") -+ message(STATUS "Using bundled nlohmann-json in '${NJSON_SRC}'") -+ set(NJSON_INCLUDE_DIR "${NJSON_SRC}/single_include") -+ ExternalProject_Add( -+ njson -+ URL "https://github.com/nlohmann/json/archive/v3.3.0.tar.gz" -+ URL_HASH "SHA256=2fd1d207b4669a7843296c41d3b6ac5b23d00dec48dba507ba051d14564aa801" -+ CONFIGURE_COMMAND "" -+ BUILD_COMMAND "" -+ INSTALL_COMMAND "") -+endif() --- -2.25.1 - diff --git a/package/sysklogd/sysklogd.hash b/package/sysklogd/sysklogd.hash index e370716bd93b..7e0099017431 100644 --- a/package/sysklogd/sysklogd.hash +++ b/package/sysklogd/sysklogd.hash @@ -1,5 +1,5 @@ # Upstream .sha256 from GitHub -sha256 01f25931d1508c3e6be4e182f49356c993abc7d035d5835db35f9b61d5085549 sysklogd-2.4.4.tar.gz +sha256 9da4444285772ce2bfc9c687be8f978b7a9fe7d3937347cd4938eda0c4545e05 sysklogd-2.5.2.tar.gz # Locally calculated sha256 7a71d7603a7c4456df441463e54da35acf151c1be0879246de63544f1f34f477 LICENSE diff --git a/package/sysklogd/sysklogd.mk b/package/sysklogd/sysklogd.mk index 68023c9ae20b..7a46d759d30e 100644 --- a/package/sysklogd/sysklogd.mk +++ b/package/sysklogd/sysklogd.mk @@ -4,7 +4,7 @@ # ################################################################################ -SYSKLOGD_VERSION = 2.4.4 +SYSKLOGD_VERSION = 2.5.2 SYSKLOGD_SITE = https://github.com/troglobit/sysklogd/releases/download/v$(SYSKLOGD_VERSION) SYSKLOGD_LICENSE = BSD-3-Clause SYSKLOGD_LICENSE_FILES = LICENSE diff --git a/package/syslog-ng/0001-fix-build-on-uclibc.patch b/package/syslog-ng/0001-fix-build-on-uclibc.patch index dbb9b66b5c9d..07c3f0721c63 100644 --- a/package/syslog-ng/0001-fix-build-on-uclibc.patch +++ b/package/syslog-ng/0001-fix-build-on-uclibc.patch @@ -9,8 +9,9 @@ pthread_spin_trylock so check for this function before using it Fixes: - http://autobuild.buildroot.org/results/0a6de11c030a4f39e402917809fc6d33fb463d1b +Upstream: https://github.com/buytenh/ivykis/pull/22 + Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/buytenh/ivykis/pull/17] --- configure.ac | 3 +++ src/spinlock.h | 4 ++++ diff --git a/package/syslog-ng/0002-lib-transport-tls-context.c-fix-libressl-build.patch b/package/syslog-ng/0002-lib-transport-tls-context.c-fix-libressl-build.patch new file mode 100644 index 000000000000..17cc72b9832a --- /dev/null +++ b/package/syslog-ng/0002-lib-transport-tls-context.c-fix-libressl-build.patch @@ -0,0 +1,97 @@ +From ede106afd7d70a8f962acf10a4e3f4a50a70cb15 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sun, 1 Oct 2023 11:27:09 +0200 +Subject: [PATCH] lib/transport/tls-context.c: fix libressl build + +Fix the following build failure with libressl raised since version 4.0.0 +and +https://github.com/syslog-ng/syslog-ng/commit/bc05f28a4b511ac9090195280163a7f822712ceb: + +lib/transport/tls-context.c: In function 'tls_context_setup_cmd_context': +lib/transport/tls-context.c:320:3: error: unknown type name 'SSL_CONF_CTX'; did you mean 'SSL_AEAD_CTX'? + 320 | SSL_CONF_CTX *ssl_conf_ctx = SSL_CONF_CTX_new(); + | ^~~~~~~~~~~~ + | SSL_AEAD_CTX + +Fixes: + - http://autobuild.buildroot.org/results/dc4d60d752e579ef054915eee3d7e3e73c25929b + +Signed-off-by: Fabrice Fontaine +Upstream: https://github.com/syslog-ng/syslog-ng/pull/4655 +--- + cmake/openssl_functions.cmake | 1 + + configure.ac | 1 + + lib/transport/tls-context.c | 4 ++++ + syslog-ng-config.h.in | 1 + + 4 files changed, 7 insertions(+) + +diff --git a/cmake/openssl_functions.cmake b/cmake/openssl_functions.cmake +index 5afbd7f12..da06ca59a 100644 +--- a/cmake/openssl_functions.cmake ++++ b/cmake/openssl_functions.cmake +@@ -41,6 +41,7 @@ function (openssl_set_defines) + X509_get_extension_flags + DH_set0_pqg + BN_get_rfc3526_prime_2048 ++ SSL_CONF_CTX_new + SSL_CTX_set_num_tickets + SSL_CTX_set_ciphersuites + SSL_CTX_set1_sigalgs_list +diff --git a/configure.ac b/configure.ac +index d636bbefa..46e43db7b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1136,6 +1136,7 @@ AC_CHECK_DECLS([EVP_MD_CTX_reset], [], [], [[#include ]]) + AC_CHECK_DECLS([ASN1_STRING_get0_data], [], [], [[#include ]]) + AC_CHECK_DECLS([DH_set0_pqg], [], [], [[#include ]]) + AC_CHECK_DECLS([BN_get_rfc3526_prime_2048], [], [], [[#include ]]) ++AC_CHECK_DECLS([SSL_CONF_CTX_new],[], [], [[#include ]]) + AC_CHECK_DECLS([SSL_CTX_set_num_tickets],[], [], [[#include ]]) + AC_CHECK_DECLS([SSL_CTX_set1_sigalgs_list],[], [], [[#include ]]) + AC_CHECK_DECLS([SSL_CTX_set1_client_sigalgs_list],[], [], [[#include ]]) +diff --git a/lib/transport/tls-context.c b/lib/transport/tls-context.c +index be2fea68d..713b63f31 100644 +--- a/lib/transport/tls-context.c ++++ b/lib/transport/tls-context.c +@@ -314,6 +314,7 @@ tls_context_setup_sigalgs(TLSContext *self) + return TRUE; + } + ++#if SYSLOG_NG_HAVE_DECL_SSL_CONF_CTX_new + static gboolean + tls_context_setup_cmd_context(TLSContext *self) + { +@@ -347,6 +348,7 @@ tls_context_setup_cmd_context(TLSContext *self) + SSL_CONF_CTX_free(ssl_conf_ctx); + return result; + } ++#endif + + static PKCS12 * + _load_pkcs12_file(TLSContext *self, const gchar *pkcs12_file) +@@ -593,8 +595,10 @@ tls_context_setup_context(TLSContext *self) + if (!tls_context_setup_sigalgs(self)) + goto error; + ++#if SYSLOG_NG_HAVE_DECL_SSL_CONF_CTX_new + if (!tls_context_setup_cmd_context(self)) + goto error; ++#endif + + return TLS_CONTEXT_SETUP_OK; + +diff --git a/syslog-ng-config.h.in b/syslog-ng-config.h.in +index 412294d2a..6d01b84a0 100644 +--- a/syslog-ng-config.h.in ++++ b/syslog-ng-config.h.in +@@ -60,6 +60,7 @@ + #cmakedefine ENV_LD_LIBRARY_PATH @ENV_LD_LIBRARY_PATH@ + #cmakedefine01 SYSLOG_NG_HAVE_DECL_EVP_MD_CTX_RESET + #cmakedefine01 SYSLOG_NG_HAVE_DECL_ASN1_STRING_GET0_DATA ++#cmakedefine01 SYSLOG_NG_HAVE_DECL_SSL_CONF_CTX_new + #cmakedefine01 SYSLOG_NG_HAVE_DECL_SSL_CTX_GET0_PARAM + #cmakedefine01 SYSLOG_NG_HAVE_DECL_SSL_CTX_SET_CIPHERSUITES + #cmakedefine01 SYSLOG_NG_HAVE_DECL_SSL_CTX_SET1_SIGALGS_LIST +-- +2.40.1 + diff --git a/package/syslog-ng/syslog-ng.conf b/package/syslog-ng/syslog-ng.conf index 69db9b4b78bc..06e48cdd5033 100644 --- a/package/syslog-ng/syslog-ng.conf +++ b/package/syslog-ng/syslog-ng.conf @@ -1,4 +1,4 @@ -@version: 3.38 +@version: 4.3 source s_sys { file("/proc/kmsg" program_override("kernel")); diff --git a/package/syslog-ng/syslog-ng.hash b/package/syslog-ng/syslog-ng.hash index 6fce7be9969b..6841ed5eb11a 100644 --- a/package/syslog-ng/syslog-ng.hash +++ b/package/syslog-ng/syslog-ng.hash @@ -1,5 +1,5 @@ # Locally computed -sha256 5491f686d0b829b69b2e0fc0d66a62f51991aafaee005475bfa38fab399441f7 syslog-ng-3.38.1.tar.gz +sha256 999dbab62982c3cffba02c0be22c596ee1ce81d6954689dc9b3a6afeb513cce3 syslog-ng-4.3.1.tar.gz sha256 c75dcbfc17ccf742f12042a370f825a40951085d2352dfc9d07e715dae3ca9bd COPYING sha256 ce3324c9f22299cfc7c281e5a6ab40fbe9c2ea1a67cee87226cb8cd39db1e1d2 GPL.txt sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 LGPL.txt diff --git a/package/syslog-ng/syslog-ng.mk b/package/syslog-ng/syslog-ng.mk index a7176ad1295b..ff5aaee429b1 100644 --- a/package/syslog-ng/syslog-ng.mk +++ b/package/syslog-ng/syslog-ng.mk @@ -6,7 +6,7 @@ # When updating the version, please check at runtime if the version in # syslog-ng.conf header needs to be updated -SYSLOG_NG_VERSION = 3.38.1 +SYSLOG_NG_VERSION = 4.3.1 SYSLOG_NG_SITE = https://github.com/balabit/syslog-ng/releases/download/syslog-ng-$(SYSLOG_NG_VERSION) SYSLOG_NG_LICENSE = LGPL-2.1+ (syslog-ng core), GPL-2.0+ (modules) SYSLOG_NG_LICENSE_FILES = COPYING GPL.txt LGPL.txt @@ -16,7 +16,8 @@ SYSLOG_NG_DEPENDENCIES = host-bison host-flex host-pkgconf \ # We're patching configure.ac SYSLOG_NG_AUTORECONF = YES SYSLOG_NG_CONF_OPTS = --disable-manpages --localstatedir=/var/run \ - --disable-java --disable-java-modules --disable-mongodb + --disable-java --disable-java-modules --disable-mongodb \ + --disable-python SYSLOG_NG_CFLAGS = $(TARGET_CFLAGS) ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_101915),y) @@ -39,15 +40,6 @@ else SYSLOG_NG_CONF_OPTS += --disable-linux-caps endif -ifeq ($(BR2_PACKAGE_PYTHON3),y) -SYSLOG_NG_DEPENDENCIES += python3 -SYSLOG_NG_CONF_OPTS += \ - --enable-python \ - --with-python=$(PYTHON3_VERSION_MAJOR) -else -SYSLOG_NG_CONF_OPTS += --disable-python -endif - ifeq ($(BR2_PACKAGE_LIBESMTP),y) SYSLOG_NG_DEPENDENCIES += libesmtp SYSLOG_NG_CONF_OPTS += --enable-smtp diff --git a/package/sysstat/sysstat.mk b/package/sysstat/sysstat.mk index eaf505dc493d..377396d986bf 100644 --- a/package/sysstat/sysstat.mk +++ b/package/sysstat/sysstat.mk @@ -14,9 +14,6 @@ SYSSTAT_LICENSE_FILES = COPYING SYSSTAT_CPE_ID_VENDOR = sysstat_project SYSSTAT_SELINUX_MODULES = sysstat -# NVD is not up-to-date; 12.6.1 includes c1e631eddc50, which fixes the issue -SYSSTAT_IGNORE_CVES += CVE-2022-39377 - ifeq ($(BR2_PACKAGE_LM_SENSORS),y) SYSSTAT_DEPENDENCIES += lm-sensors SYSSTAT_CONF_OPTS += --enable-sensors diff --git a/package/system-config-printer/0001-Add-option-to-disable-xmlto-manual-generation.patch b/package/system-config-printer/0001-Add-option-to-disable-xmlto-manual-generation.patch deleted file mode 100644 index e2cf395811a7..000000000000 --- a/package/system-config-printer/0001-Add-option-to-disable-xmlto-manual-generation.patch +++ /dev/null @@ -1,73 +0,0 @@ -From 731c8d7e1f9edb527785d61f74031a5e5846554b Mon Sep 17 00:00:00 2001 -From: James Hilliard -Date: Sun, 25 Jul 2021 16:30:59 -0600 -Subject: [PATCH] Add option to disable xmlto manual generation. - -Signed-off-by: James Hilliard -[james.hilliard1@gmail.com: backport from upstream commit -95e0b461f5a46c74b00287aca65732ea2fc9d69b] ---- - Makefile.am | 7 ++++++- - configure.ac | 5 +++++ - 2 files changed, 11 insertions(+), 1 deletion(-) - -diff --git a/Makefile.am b/Makefile.am -index 843ba30d..7facab94 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -209,9 +209,11 @@ else - systemd_CLEANFILES= - endif - -+if XMLTO - man_MANS= \ - man/system-config-printer.1 \ - man/system-config-printer-applet.1 -+endif - - dbus_DATA = \ - dbus/com.redhat.NewPrinterNotification.conf \ -@@ -274,7 +276,6 @@ EXTRA_DIST=\ - $(bin_SCRIPTS) \ - setup.py \ - $(EXPORT_MODULES) \ -- man/system-config-printer.xml \ - $(dbus_DATA) \ - $(dbusinterfaces_DATA) \ - $(dbusservices_DATA) \ -@@ -297,12 +298,16 @@ EXTRA_DIST=\ - test_PhysicalDevice.py \ - $(appdata_in_files) - -+if XMLTO -+EXTRA_DIST+=man/system-config-printer.xml -+ - # The man pages are generated from DocBook XML. - .stamp-man-pages-built: $(top_srcdir)/man/system-config-printer.xml - xmlto man -o man $< - touch .stamp-man-pages-built - - $(man_MANS): .stamp-man-pages-built -+endif - - html: $(EXPORT_MODULES) $(EXPORT_MODULES_GEN) - rm -rf html -diff --git a/configure.ac b/configure.ac -index 811f897a..a2a66889 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -75,6 +75,11 @@ if test "x$with_systemdsystemunitdir" != xno; then - fi - AM_CONDITIONAL(HAVE_SYSTEMD, [test -n "$with_systemdsystemunitdir" -a "x$with_systemdsystemunitdir" != xno ]) - -+AC_ARG_WITH(xmlto, -+ [AC_HELP_STRING([--with-xmlto], -+ [Enable xmlto manual generation @<:@default=yes@:>@])]) -+AM_CONDITIONAL([XMLTO], [test x$with_xmlto != xno]) -+ - ALL_LINGUAS="ar as ast bg bn_IN bn br bs ca cs cy da de el en_GB es et fa fi fr fur gu he hi hr hu id is it ja kn ko lt lv mai ml mr ms nb nds nl nn oc or pa pl pt_BR pt ro ru si sk sl sr@latin sr sv ta te th tr uk vi zh_CN zh_TW" - AC_CONFIG_FILES([ - Makefile --- -2.25.1 - diff --git a/package/system-config-printer/0002-configure-accept-non-system-cups-config.patch b/package/system-config-printer/0002-configure-accept-non-system-cups-config.patch deleted file mode 100644 index 9661115bf048..000000000000 --- a/package/system-config-printer/0002-configure-accept-non-system-cups-config.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 75db995dda74696123cde2869e4e9b3315b91abd Mon Sep 17 00:00:00 2001 -From: "Yann E. MORIN" -Date: Sun, 1 Aug 2021 13:40:28 +0200 -Subject: [PATCH] configure: accept non-system cups-config - -In cross-compilation setups, cups.config might not be installed, and -might not be in the PATH. - -Allow a user to specify the full path to cups-config. - -Signed-off-by: Yann E. MORIN ---- - configure.ac | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index dd013b4a..9f033d18 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -33,7 +33,11 @@ fi - AC_SUBST(DESKTOPVENDOR) - AC_SUBST(DESKTOPPREFIX) - --cupsserverbindir="`cups-config --serverbin`" -+AC_ARG_WITH([cups-config], -+ [AC_HELP_STRING([--with-cups-config], [Specify the path of cups-config])],, -+ [with_cups_config=cups-config]) -+ -+cupsserverbindir="`${with_cups_config} --serverbin`" - AC_SUBST(cupsserverbindir) - - PKG_CHECK_MODULES(GLIB, glib-2.0, has_glib=yes, has_glib=no) --- -2.25.1 - diff --git a/package/system-config-printer/system-config-printer.hash b/package/system-config-printer/system-config-printer.hash index 56b7e4765002..3bbc87078055 100644 --- a/package/system-config-printer/system-config-printer.hash +++ b/package/system-config-printer/system-config-printer.hash @@ -1,3 +1,3 @@ # Locally calculated: -sha256 fbd226ce215bf014213dded81b43b9d4d90470524f5bf7cd21ecc71d4aefa689 system-config-printer-1.5.15.tar.xz +sha256 b1a69e1b4ec2add569a87aeca811a37c5361ee6ae327ec852b79e64223e34bee system-config-printer-1.5.18.tar.xz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/system-config-printer/system-config-printer.mk b/package/system-config-printer/system-config-printer.mk index e27574302604..6b101e840009 100644 --- a/package/system-config-printer/system-config-printer.mk +++ b/package/system-config-printer/system-config-printer.mk @@ -4,18 +4,13 @@ # ################################################################################ -SYSTEM_CONFIG_PRINTER_VERSION = 1.5.15 +SYSTEM_CONFIG_PRINTER_VERSION = 1.5.18 SYSTEM_CONFIG_PRINTER_SOURCE = system-config-printer-$(SYSTEM_CONFIG_PRINTER_VERSION).tar.xz SYSTEM_CONFIG_PRINTER_SITE = https://github.com/OpenPrinting/system-config-printer/releases/download/v$(SYSTEM_CONFIG_PRINTER_VERSION) SYSTEM_CONFIG_PRINTER_LICENSE = GPL-2.0+ SYSTEM_CONFIG_PRINTER_LICENSE_FILES = COPYING -SYSTEM_CONFIG_PRINTER_DEPENDENCIES = cups host-desktop-file-utils host-intltool host-pkgconf - -# 0001-Add-option-to-disable-xmlto-manual-generation.patch -# 0002-configure-accept-non-system-cups-config.patch -SYSTEM_CONFIG_PRINTER_AUTORECONF = YES - -SYSTEM_CONFIG_PRINTER_CONF_OPTS = --with-cups-config=$(STAGING_DIR)/usr/bin/cups-config +SYSTEM_CONFIG_PRINTER_DEPENDENCIES = \ + cups host-desktop-file-utils $(TARGET_NLS_DEPENDENCIES) host-pkgconf ifeq ($(BR2_PACKAGE_LIBGLIB2),y) SYSTEM_CONFIG_PRINTER_DEPENDENCIES += libglib2 diff --git a/package/systemd/Config.in b/package/systemd/Config.in index 9f4d933779e8..859332d9e47b 100644 --- a/package/systemd/Config.in +++ b/package/systemd/Config.in @@ -22,7 +22,7 @@ menuconfig BR2_PACKAGE_SYSTEMD depends on !BR2_STATIC_LIBS # kmod depends on BR2_TOOLCHAIN_USES_GLIBC depends on BR2_TOOLCHAIN_HAS_SSP - depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15 + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 # LOOP_SET_BLOCK_SIZE depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 depends on BR2_HOST_GCC_AT_LEAST_5 # host-systemd select BR2_PACKAGE_HAS_UDEV @@ -100,7 +100,7 @@ menuconfig BR2_PACKAGE_SYSTEMD the apropriate ones (e.g. e2fsck, from the e2fsprogs package) according to the system configuration. - http://freedesktop.org/wiki/Software/systemd + https://freedesktop.org/wiki/Software/systemd/ if BR2_PACKAGE_SYSTEMD @@ -185,7 +185,7 @@ config BR2_PACKAGE_SYSTEMD_BACKLIGHT systemd-backlight is a service that restores the display backlight brightness at early boot and saves it at shutdown. - http://www.freedesktop.org/software/systemd/man/systemd-backlight@.service.html + https://www.freedesktop.org/software/systemd/man/systemd-backlight@.service.html config BR2_PACKAGE_SYSTEMD_BINFMT bool "enable binfmt tool" @@ -202,7 +202,7 @@ config BR2_PACKAGE_SYSTEMD_COREDUMP kernel when a user space program receives a fatal signal and dumps core. - http://www.freedesktop.org/software/systemd/man/systemd-coredump.html + https://www.freedesktop.org/software/systemd/man/systemd-coredump.html config BR2_PACKAGE_SYSTEMD_PSTORE bool "enable pstore support" @@ -220,7 +220,7 @@ config BR2_PACKAGE_SYSTEMD_FIRSTBOOT systemd-firstboot initializes the most basic system settings interactively on the first boot. - http://www.freedesktop.org/software/systemd/man/systemd-firstboot.html + https://www.freedesktop.org/software/systemd/man/systemd-firstboot.html config BR2_PACKAGE_SYSTEMD_HIBERNATE bool "enable hibernation support" @@ -229,7 +229,7 @@ config BR2_PACKAGE_SYSTEMD_HIBERNATE When this features is enabled, additional tools and services are built to support suspending and resuming the system. - http://www.freedesktop.org/software/systemd/man/systemd-sleep.html + https://www.freedesktop.org/software/systemd/man/systemd-sleep.html config BR2_PACKAGE_SYSTEMD_HOMED bool "enable home daemon" @@ -237,7 +237,6 @@ config BR2_PACKAGE_SYSTEMD_HOMED depends on BR2_USE_MMU # cryptsetup -> lvm2 depends on !BR2_STATIC_LIBS # cryptsetup -> lvm2 depends on BR2_TOOLCHAIN_HAS_SYNC_4 # cryptsetup -> json-c - depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12 # fscrypt_key select BR2_PACKAGE_CRYPTSETUP select BR2_PACKAGE_OPENSSL select BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL @@ -248,11 +247,11 @@ config BR2_PACKAGE_SYSTEMD_HOMED https://www.freedesktop.org/software/systemd/man/systemd-homed.service.html -comment "homed support needs a toolchain w/ threads, dynamic library, kernel headers >= 4.12" +comment "homed support needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_TOOLCHAIN_HAS_THREADS || \ - BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12 + BR2_STATIC_LIBS config BR2_PACKAGE_SYSTEMD_HOSTNAMED bool "enable hostname daemon" @@ -261,7 +260,7 @@ config BR2_PACKAGE_SYSTEMD_HOSTNAMED systemd-hostnamed is a system service that may be used as a mechanism to change the system's hostname. - http://www.freedesktop.org/software/systemd/man/systemd-hostnamed.service.html + https://www.freedesktop.org/software/systemd/man/systemd-hostnamed.service.html config BR2_PACKAGE_SYSTEMD_HWDB bool "enable hwdb installation" @@ -286,7 +285,7 @@ config BR2_PACKAGE_SYSTEMD_IMPORTD machine and container images for systemd-machined and machinectl. - http://www.freedesktop.org/software/systemd/man/machinectl.html#Image%20Transfer%20Commands + https://www.freedesktop.org/software/systemd/man/machinectl.html#Image%20Transfer%20Commands config BR2_PACKAGE_SYSTEMD_CATALOGDB bool "enable journal catalog database installation" @@ -309,14 +308,14 @@ config BR2_PACKAGE_SYSTEMD_LOCALED mechanism to change the system locale settings, as well as the console key mapping and default X11 key mapping. - http://www.freedesktop.org/software/systemd/man/systemd-localed.service.html + https://www.freedesktop.org/software/systemd/man/systemd-localed.service.html config BR2_PACKAGE_SYSTEMD_LOGIND bool "enable login daemon" help systemd-logind is a system service that manages user logins. - http://www.freedesktop.org/software/systemd/man/systemd-logind.service.html + https://www.freedesktop.org/software/systemd/man/systemd-logind.service.html config BR2_PACKAGE_SYSTEMD_MACHINED bool "enable machine daemon" @@ -325,7 +324,7 @@ config BR2_PACKAGE_SYSTEMD_MACHINED virtual machines and containers, and processes belonging to them. - http://www.freedesktop.org/software/systemd/man/systemd-machined.service.html + https://www.freedesktop.org/software/systemd/man/systemd-machined.service.html config BR2_PACKAGE_SYSTEMD_MYHOSTNAME bool "enable myhostname NSS plugin" @@ -336,7 +335,7 @@ config BR2_PACKAGE_SYSTEMD_MYHOSTNAME primarily providing hostname resolution for the locally configured system hostname as returned by gethostname(2). - http://www.freedesktop.org/software/systemd/man/nss-myhostname.html + https://www.freedesktop.org/software/systemd/man/nss-myhostname.html config BR2_PACKAGE_SYSTEMD_NETWORKD bool "enable network manager" @@ -349,7 +348,7 @@ config BR2_PACKAGE_SYSTEMD_NETWORKD This simple network configuration solution is an alternative to dhcpcd or ISC dhcp. - http://www.freedesktop.org/software/systemd/man/systemd-networkd.html + https://www.freedesktop.org/software/systemd/man/systemd-networkd.html config BR2_PACKAGE_SYSTEMD_OOMD bool "enable out-of-memory killer" @@ -373,7 +372,7 @@ config BR2_PACKAGE_SYSTEMD_POLKIT useful for allowing unprivileged processes to speak to systemd's many privileged processes. - http://wiki.freedesktop.org/www/Software/polkit/ + https://wiki.freedesktop.org/www/Software/polkit/ comment "polkit support needs a toolchain with threads, wchar, gcc >= 7" depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_GCC_AT_LEAST_7 || \ @@ -408,7 +407,7 @@ config BR2_PACKAGE_SYSTEMD_QUOTACHECK file systems are mounted. It is pulled in only if at least one file system has quotas enabled. - http://www.freedesktop.org/software/systemd/man/systemd-quotacheck.service.html + https://www.freedesktop.org/software/systemd/man/systemd-quotacheck.service.html config BR2_PACKAGE_SYSTEMD_RANDOMSEED bool "enable random-seed support" @@ -418,7 +417,7 @@ config BR2_PACKAGE_SYSTEMD_RANDOMSEED shutdown. Saving/restoring the random seed across boots increases the amount of available entropy early at boot. - http://www.freedesktop.org/software/systemd/man/systemd-random-seed.service.html + https://www.freedesktop.org/software/systemd/man/systemd-random-seed.service.html config BR2_PACKAGE_SYSTEMD_REPART bool "enable repart support" @@ -440,7 +439,7 @@ config BR2_PACKAGE_SYSTEMD_RESOLVED caching and validating DNS/DNSSEC stub resolver, as well as an LLMNR resolver and responder. - http://www.freedesktop.org/software/systemd/man/systemd-resolved.html + https://www.freedesktop.org/software/systemd/man/systemd-resolved.html config BR2_PACKAGE_SYSTEMD_RFKILL bool "enable rfkill tools" @@ -448,7 +447,7 @@ config BR2_PACKAGE_SYSTEMD_RFKILL systemd-rfkill is a service that restores the RF kill switch state at early boot and saves it at shutdown. - http://www.freedesktop.org/software/systemd/man/systemd-rfkill@.service.html + https://www.freedesktop.org/software/systemd/man/systemd-rfkill.service.html config BR2_PACKAGE_SYSTEMD_SMACK_SUPPORT bool "enable SMACK support" @@ -503,7 +502,7 @@ config BR2_PACKAGE_SYSTEMD_SYSUSERS systemd-sysusers creates system users and groups, based on the file format and location specified in sysusers.d(5). - http://www.freedesktop.org/software/systemd/man/systemd-sysusers.html + https://www.freedesktop.org/software/systemd/man/systemd-sysusers.html config BR2_PACKAGE_SYSTEMD_TIMEDATED bool "enable timedate daemon" @@ -513,7 +512,7 @@ config BR2_PACKAGE_SYSTEMD_TIMEDATED mechanism to change the system clock and timezone, as well as to enable/disable NTP time synchronization. - http://www.freedesktop.org/software/systemd/man/systemd-timedated.service.html + https://www.freedesktop.org/software/systemd/man/systemd-timedated.service.html config BR2_PACKAGE_SYSTEMD_TIMESYNCD bool "enable timesync daemon" @@ -526,7 +525,7 @@ config BR2_PACKAGE_SYSTEMD_TIMESYNCD This simple NTP solution is an alternative to sntp/ntpd from the ntp package. - http://www.freedesktop.org/software/systemd/man/systemd-timesyncd.html + https://www.freedesktop.org/software/systemd/man/systemd-timesyncd.html config BR2_PACKAGE_SYSTEMD_USERDB bool "enable userdb daemon" @@ -563,10 +562,19 @@ config BR2_PACKAGE_SYSTEMD_UTMP config BR2_PACKAGE_SYSTEMD_VCONSOLE bool "enable vconsole tool" default y + select BR2_PACKAGE_KBD if BR2_PACKAGE_SYSTEMD_VCONSOLE_DEFAULT_KEYMAP != "" help systemd-vconsole-setup is an early boot service that configures the virtual console font and console keymap. - http://www.freedesktop.org/software/systemd/man/systemd-vconsole-setup.service.html + https://www.freedesktop.org/software/systemd/man/systemd-vconsole-setup.service.html + +config BR2_PACKAGE_SYSTEMD_VCONSOLE_DEFAULT_KEYMAP + string "default keymap" + default "us" + depends on BR2_PACKAGE_SYSTEMD_VCONSOLE + help + Default keymap for the system. Leave empty to not set a + default keymap. endif diff --git a/package/systemd/systemd.hash b/package/systemd/systemd.hash index 00c08edcd96b..f0c3db60e7d4 100644 --- a/package/systemd/systemd.hash +++ b/package/systemd/systemd.hash @@ -1,5 +1,5 @@ # sha256 locally computed -sha256 cf2d27e67663d599a045101c7178cf0ec63d9df2962a54adf7de0d0357724f00 systemd-252.4.tar.gz +sha256 41873783aa1c680e10d2f2626797a1c2fef8018d69b68c8c77639e140ee7846d systemd-254.5.tar.gz sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 LICENSE.GPL2 sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 LICENSE.LGPL2.1 sha256 e5a8645ad94aab24e312dd0c6be2aa54236eb9374480b1b14ea5c61598874fd5 LICENSES/BSD-2-Clause.txt @@ -12,4 +12,4 @@ sha256 8a6fc0879cecc0b96bf4c08159b9d733bf0f15fcf32879aec98c4ffd05424554 LICENS sha256 b85dcd3e453d05982552c52b5fc9e0bdd6d23c6f8e844b984a88af32570b0cc0 LICENSES/MIT.txt sha256 2a98749f6bec00dfaed86fa9c1edea871aaae4f11ee4d100b671aaf4ce353a73 LICENSES/murmurhash2-public-domain.txt sha256 1a7adaa2c86cedfd6c7f5c0c7c72fd6d3e02cd0c9593f21fdb53c89bb2b130ec LICENSES/OFL-1.1.txt -sha256 da9b2c7b8cd10516fd2c4279b82496ea61787148f13e899c62fc8988c5fac34f LICENSES/README.md +sha256 8ccb649d1fc1103e5726612cf303f05d4eb86b7ab46d9f630009dd32e87612e2 LICENSES/README.md diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk index 63467171ed8f..ccc0e14874d3 100644 --- a/package/systemd/systemd.mk +++ b/package/systemd/systemd.mk @@ -19,7 +19,7 @@ # - Diff sysusers.d with the previous version # - Diff factory/etc/nsswitch.conf with the previous version # (details are often sprinkled around in README and manpages) -SYSTEMD_VERSION = 252.4 +SYSTEMD_VERSION = 254.5 SYSTEMD_SITE = $(call github,systemd,systemd-stable,v$(SYSTEMD_VERSION)) SYSTEMD_LICENSE = \ LGPL-2.1+, \ @@ -63,6 +63,7 @@ SYSTEMD_SELINUX_MODULES = systemd udev xdg SYSTEMD_PROVIDES = udev SYSTEMD_CONF_OPTS += \ + -Dcreate-log-dirs=false \ -Ddbus=false \ -Ddbus-interfaces-dir=no \ -Ddefault-compression='auto' \ @@ -82,6 +83,7 @@ SYSTEMD_CONF_OPTS += \ -Dmode=release \ -Dnspawn-locale='C.UTF-8' \ -Dnss-systemd=true \ + -Dpasswdqc=false \ -Dquotacheck-path=/usr/sbin/quotacheck \ -Dquotaon-path=/usr/sbin/quotaon \ -Drootlibdir='/usr/lib' \ @@ -96,7 +98,9 @@ SYSTEMD_CONF_OPTS += \ -Dtelinit-path= \ -Dtests=false \ -Dtmpfiles=true \ - -Dumount-path=/usr/bin/umount + -Dukify=false \ + -Dumount-path=/usr/bin/umount \ + -Dxenctrl=false SYSTEMD_CFLAGS = $(TARGET_CFLAGS) ifeq ($(BR2_OPTIMIZE_FAST),y) @@ -108,6 +112,10 @@ ifeq ($(BR2_nios2),y) SYSTEMD_LDFLAGS = $(TARGET_LDFLAGS) -Wl,--no-fatal-warnings endif +ifeq ($(BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW),y) +SYSTEMD_JOURNALD_PERMISSIONS = /var/log/journal d 2755 root systemd-journal - - - - - +endif + ifeq ($(BR2_PACKAGE_ACL),y) SYSTEMD_DEPENDENCIES += acl SYSTEMD_CONF_OPTS += -Dacl=true @@ -215,13 +223,6 @@ else SYSTEMD_CONF_OPTS += -Dfdisk=false endif -ifeq ($(BR2_PACKAGE_VALGRIND),y) -SYSTEMD_DEPENDENCIES += valgrind -SYSTEMD_CONF_OPTS += -Dvalgrind=true -else -SYSTEMD_CONF_OPTS += -Dvalgrind=false -endif - ifeq ($(BR2_PACKAGE_XZ),y) SYSTEMD_DEPENDENCIES += xz SYSTEMD_CONF_OPTS += -Dxz=true @@ -352,7 +353,9 @@ SYSTEMD_CONF_OPTS += -Dutmp=false endif ifeq ($(BR2_PACKAGE_SYSTEMD_VCONSOLE),y) -SYSTEMD_CONF_OPTS += -Dvconsole=true +SYSTEMD_CONF_OPTS += \ + -Dvconsole=true \ + -Ddefault-keymap=$(call qstrip,$(BR2_PACKAGE_SYSTEMD_VCONSOLE_DEFAULT_KEYMAP)) else SYSTEMD_CONF_OPTS += -Dvconsole=false endif @@ -575,13 +578,8 @@ endif ifeq ($(BR2_PACKAGE_SYSTEMD_BOOT),y) SYSTEMD_INSTALL_IMAGES = YES -SYSTEMD_DEPENDENCIES += gnu-efi -SYSTEMD_CONF_OPTS += \ - -Defi=true \ - -Dgnu-efi=true \ - -Defi-ld=bfd \ - -Defi-libdir=$(STAGING_DIR)/usr/lib \ - -Defi-includedir=$(STAGING_DIR)/usr/include/efi +SYSTEMD_DEPENDENCIES += gnu-efi host-python-pyelftools +SYSTEMD_CONF_OPTS += -Defi=true -Dbootloader=true SYSTEMD_BOOT_EFI_ARCH = $(call qstrip,$(BR2_PACKAGE_SYSTEMD_BOOT_EFI_ARCH)) define SYSTEMD_INSTALL_BOOT_FILES @@ -594,7 +592,7 @@ define SYSTEMD_INSTALL_BOOT_FILES endef else -SYSTEMD_CONF_OPTS += -Defi=false -Dgnu-efi=false +SYSTEMD_CONF_OPTS += -Defi=false -Dbootloader=false endif # BR2_PACKAGE_SYSTEMD_BOOT == y SYSTEMD_FALLBACK_HOSTNAME = $(call qstrip,$(BR2_TARGET_GENERIC_HOSTNAME)) @@ -623,11 +621,13 @@ define SYSTEMD_INSTALL_IMAGES_CMDS endef define SYSTEMD_PERMISSIONS + /boot d 700 0 0 - - - - - /var/spool d 755 0 0 - - - - - /var/lib d 755 0 0 - - - - - /var/lib/private d 700 0 0 - - - - - /var/log/private d 700 0 0 - - - - - /var/cache/private d 700 0 0 - - - - - + $(SYSTEMD_JOURNALD_PERMISSIONS) $(SYSTEMD_LOGIND_PERMISSIONS) $(SYSTEMD_MACHINED_PERMISSIONS) $(SYSTEMD_HOMED_PERMISSIONS) @@ -670,9 +670,9 @@ SYSTEMD_TARGET_FINALIZE_HOOKS += \ SYSTEMD_INSTALL_RESOLVCONF_HOOK ifneq ($(call qstrip,$(BR2_TARGET_GENERIC_GETTY_PORT)),) -# systemd provides multiple units to autospawn getty as neede +# systemd provides multiple units to autospawn getty as needed # * getty@.service to start a getty on normal TTY -# * sertial-getty@.service to start a getty on serial lines +# * serial-getty@.service to start a getty on serial lines # * console-getty.service for generic /dev/console # * container-getty@.service for a getty on /dev/pts/* # @@ -680,18 +680,18 @@ ifneq ($(call qstrip,$(BR2_TARGET_GENERIC_GETTY_PORT)),) # * read the console= kernel command line parameter # * enable one of the above units depending on what it finds # -# Systemd defaults to enablinb getty@tty1.service +# Systemd defaults to enabling getty@tty1.service # # What we want to do -# * Enable a getty on $BR2_TARGET_GENERIC_TTY_PATH +# * Enable a getty on $BR2_TARGET_GENERIC_GETTY_PORT # * Set the baudrate for all units according to BR2_TARGET_GENERIC_GETTY_BAUDRATE # * Always enable a getty on the console using systemd-getty-generator # (backward compatibility with previous releases of buildroot) # # What we do # * disable getty@tty1 (enabled by upstream systemd) -# * enable getty@xxx if $BR2_TARGET_GENERIC_TTY_PATH is a tty -# * enable serial-getty@xxx for other $BR2_TARGET_GENERIC_TTY_PATH +# * enable getty@xxx if $BR2_TARGET_GENERIC_GETTY_PORT is a tty +# * enable serial-getty@xxx for other $BR2_TARGET_GENERIC_GETTY_PORT # * rewrite baudrates if a baudrate is provided define SYSTEMD_INSTALL_SERVICE_TTY mkdir -p $(TARGET_DIR)/usr/lib/systemd/system/getty@.service.d; \ @@ -807,11 +807,13 @@ HOST_SYSTEMD_CONF_OPTS = \ --libdir=lib \ --sysconfdir=/etc \ --localstatedir=/var \ + -Dcreate-log-dirs=false \ -Dmode=release \ -Dutmp=false \ -Dhibernate=false \ -Dldconfig=false \ -Dresolve=false \ + -Dbootloader=false \ -Defi=false \ -Dtpm=false \ -Denvironment-d=false \ @@ -826,6 +828,7 @@ HOST_SYSTEMD_CONF_OPTS = \ -Dhostnamed=false \ -Dlocaled=false \ -Dmachined=false \ + -Dpasswdqc=false \ -Dportabled=false \ -Dsysext=false \ -Dsysupdate=false \ @@ -868,9 +871,11 @@ HOST_SYSTEMD_CONF_OPTS = \ -Dinitrd=false \ -Dxdg-autostart=false \ -Dkernel-install=false \ + -Dukify=false \ -Danalyze=false \ -Dlibcryptsetup=false \ -Daudit=false \ + -Dxenctrl=false \ -Dzstd=false HOST_SYSTEMD_DEPENDENCIES = \ diff --git a/package/sysvinit/sysvinit.hash b/package/sysvinit/sysvinit.hash index f81e55fc4467..67b0ab38f04a 100644 --- a/package/sysvinit/sysvinit.hash +++ b/package/sysvinit/sysvinit.hash @@ -1,5 +1,5 @@ # Locally computed: -sha256 b05c3677bb698afe64c997968b00c49b2a9bd320ce963523230ee7ea41197757 sysvinit-2.99.tar.xz +sha256 2a621fe6e4528bc91308b74867ddaaebbdf7753f02395c0c5bae817bd2b7e3a5 sysvinit-3.04.tar.xz # Hash for license files: sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/sysvinit/sysvinit.mk b/package/sysvinit/sysvinit.mk index 1bf10deb635b..b7fe39ca4316 100644 --- a/package/sysvinit/sysvinit.mk +++ b/package/sysvinit/sysvinit.mk @@ -4,7 +4,7 @@ # ################################################################################ -SYSVINIT_VERSION = 2.99 +SYSVINIT_VERSION = 3.04 SYSVINIT_SOURCE = sysvinit-$(SYSVINIT_VERSION).tar.xz SYSVINIT_SITE = http://download.savannah.nongnu.org/releases/sysvinit SYSVINIT_LICENSE = GPL-2.0+ diff --git a/package/taglib/taglib.hash b/package/taglib/taglib.hash index 7d1b2e8422c5..e83aa451f337 100644 --- a/package/taglib/taglib.hash +++ b/package/taglib/taglib.hash @@ -1,4 +1,4 @@ # Locally calculated -sha256 58f08b4db3dc31ed152c04896ee9172d22052bc7ef12888028c01d8b1d60ade0 taglib-1.13.tar.gz +sha256 c8da2b10f1bfec2cd7dbfcd33f4a2338db0765d851a50583d410bacf055cfd0b taglib-1.13.1.tar.gz sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LGPL sha256 53692a2ed6c6a2c6ec9b32dd0b820dfae91e0a1fcdf625ca9ed0bdf8705fcc4f COPYING.MPL diff --git a/package/taglib/taglib.mk b/package/taglib/taglib.mk index c68789100261..9bdf05b85d41 100644 --- a/package/taglib/taglib.mk +++ b/package/taglib/taglib.mk @@ -4,7 +4,7 @@ # ################################################################################ -TAGLIB_VERSION = 1.13 +TAGLIB_VERSION = 1.13.1 TAGLIB_SITE = http://taglib.github.io/releases TAGLIB_INSTALL_STAGING = YES TAGLIB_LICENSE = LGPL-2.1 or MPL-1.1 diff --git a/package/tar/0002-Fix-boundary-checking-in-base-256-decoder.patch b/package/tar/0002-Fix-boundary-checking-in-base-256-decoder.patch new file mode 100644 index 000000000000..7bad339fe0d5 --- /dev/null +++ b/package/tar/0002-Fix-boundary-checking-in-base-256-decoder.patch @@ -0,0 +1,33 @@ +From 3da78400eafcccb97e2f2fd4b227ea40d794ede8 Mon Sep 17 00:00:00 2001 +From: Sergey Poznyakoff +Date: Sat, 11 Feb 2023 11:57:39 +0200 +Subject: [PATCH] Fix boundary checking in base-256 decoder + +* src/list.c (from_header): Base-256 encoding is at least 2 bytes +long. + +Signed-off-by: Peter Korsgaard +Upstream: https://git.savannah.gnu.org/cgit/tar.git/commit/?id=3da78400eafcccb97e2f2fd4b227ea40d794ede8 +--- + src/list.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/src/list.c b/src/list.c +index 9fafc425..86bcfdd1 100644 +--- a/src/list.c ++++ b/src/list.c +@@ -881,8 +881,9 @@ from_header (char const *where0, size_t digs, char const *type, + where++; + } + } +- else if (*where == '\200' /* positive base-256 */ +- || *where == '\377' /* negative base-256 */) ++ else if (where <= lim - 2 ++ && (*where == '\200' /* positive base-256 */ ++ || *where == '\377' /* negative base-256 */)) + { + /* Parse base-256 output. A nonnegative number N is + represented as (256**DIGS)/2 + N; a negative number -N is +-- +2.39.2 + diff --git a/package/tar/tar.mk b/package/tar/tar.mk index 80d7495b005d..dc17647b2c92 100644 --- a/package/tar/tar.mk +++ b/package/tar/tar.mk @@ -13,8 +13,9 @@ TAR_CONF_OPTS = --exec-prefix=/ TAR_LICENSE = GPL-3.0+ TAR_LICENSE_FILES = COPYING TAR_CPE_ID_VENDOR = gnu -# only tar <= 1.16 -TAR_IGNORE_CVES += CVE-2007-4476 + +# 0002-Fix-boundary-checking-in-base-256-decoder.patch +TAR_IGNORE_CVES += CVE-2022-48303 ifeq ($(BR2_PACKAGE_ACL),y) TAR_DEPENDENCIES += acl diff --git a/package/tbb/0001-Musl-linux-can-not-use-RTLD_DEEPBIND.patch b/package/tbb/0001-Musl-linux-can-not-use-RTLD_DEEPBIND.patch deleted file mode 100644 index 82182ce10900..000000000000 --- a/package/tbb/0001-Musl-linux-can-not-use-RTLD_DEEPBIND.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 883c2e5245c39624b3b5d6d56d5b203cf09eac38 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Wed, 15 Dec 2021 08:08:07 -0800 -Subject: [PATCH] Musl/linux can not use RTLD_DEEPBIND (#684) - -Exclude non-glibc linux systems along with android -Fixes -src/tbb/dynamic_link.cpp:417:29: error: use - of undeclared identifier 'RTLD_DEEPBIND' | flags = flags | RTLD_DEEPBIND; -| ^ - -Signed-off-by: Khem Raj - -[Retrieved from: -https://github.com/oneapi-src/oneTBB/commit/883c2e5245c39624b3b5d6d56d5b203cf09eac38] -Signed-off-by: Fabrice Fontaine ---- - src/tbb/dynamic_link.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/tbb/dynamic_link.cpp b/src/tbb/dynamic_link.cpp -index 3f1342503..5330d7107 100644 ---- a/src/tbb/dynamic_link.cpp -+++ b/src/tbb/dynamic_link.cpp -@@ -413,7 +413,7 @@ namespace r1 { - int flags = RTLD_NOW; - if (local_binding) { - flags = flags | RTLD_LOCAL; --#if __linux__ && !__ANDROID__ && !__TBB_USE_SANITIZERS -+#if (__linux__ && __GLIBC__) && !__TBB_USE_SANITIZERS - flags = flags | RTLD_DEEPBIND; - #endif - } else { diff --git a/package/tbb/0002-mallinfo-is-only-defined-on-glibc-and-android.patch b/package/tbb/0002-mallinfo-is-only-defined-on-glibc-and-android.patch deleted file mode 100644 index 9b397cac4167..000000000000 --- a/package/tbb/0002-mallinfo-is-only-defined-on-glibc-and-android.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 3a7f96db56cc9821055cbc769d3065db86b8b4c9 Mon Sep 17 00:00:00 2001 -From: Julien Voisin -Date: Mon, 7 Feb 2022 07:56:15 +0100 -Subject: [PATCH] mallinfo is only defined on glibc and android (#764) - -It currently prevents compilation under musl: - -``` -[ 90%] Building CXX object src/tbbmalloc_proxy/CMakeFiles/tbbmalloc_proxy.dir/proxy.cpp.o -/__w/mimalloc-bench/mimalloc-bench/extern/tbb/src/tbbmalloc_proxy/proxy.cpp:263:26: error: return type 'struct mallinfo' is incomplete - 263 | struct mallinfo mallinfo() __THROW - | ^ -compilation terminated due to -Wfatal-errors. -`` - -[Retrieved from: -https://github.com/oneapi-src/oneTBB/commit/3a7f96db56cc9821055cbc769d3065db86b8b4c9] -Signed-off-by: Fabrice Fontaine ---- - src/tbbmalloc_proxy/proxy.cpp | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/tbbmalloc_proxy/proxy.cpp b/src/tbbmalloc_proxy/proxy.cpp -index e58e55e0b..23b9c19c1 100644 ---- a/src/tbbmalloc_proxy/proxy.cpp -+++ b/src/tbbmalloc_proxy/proxy.cpp -@@ -260,6 +260,7 @@ int mallopt(int /*param*/, int /*value*/) __THROW - return 1; - } - -+#if defined(__GLIBC__) || defined(__ANDROID__) - struct mallinfo mallinfo() __THROW - { - struct mallinfo m; -@@ -267,6 +268,7 @@ struct mallinfo mallinfo() __THROW - - return m; - } -+#endif - - #if __ANDROID__ - // Android doesn't have malloc_usable_size, provide it to be compatible diff --git a/package/tbb/0003-Define-ITT_ARCH_IA64-when-undefiend.patch b/package/tbb/0003-Define-ITT_ARCH_IA64-when-undefiend.patch deleted file mode 100644 index 5b7f0024995c..000000000000 --- a/package/tbb/0003-Define-ITT_ARCH_IA64-when-undefiend.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 6fad69889da67bc4d4baff4afa94f77da45e006d Mon Sep 17 00:00:00 2001 -From: Felix Yan -Date: Thu, 7 Oct 2021 14:16:16 +0800 -Subject: [PATCH] Define ITT_ARCH_IA64 when undefiend (#550) - -[Retrieved from: -https://github.com/oneapi-src/oneTBB/commit/6fad69889da67bc4d4baff4afa94f77da45e006d] -Signed-off-by: Fabrice Fontaine ---- - src/tbb/tools_api/ittnotify_config.h | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/src/tbb/tools_api/ittnotify_config.h b/src/tbb/tools_api/ittnotify_config.h -index 8ecc23781..f904a8e9d 100644 ---- a/src/tbb/tools_api/ittnotify_config.h -+++ b/src/tbb/tools_api/ittnotify_config.h -@@ -147,6 +147,10 @@ - # define ITT_ARCH_IA32E 2 - #endif /* ITT_ARCH_IA32E */ - -+#ifndef ITT_ARCH_IA64 -+# define ITT_ARCH_IA64 3 -+#endif /* ITT_ARCH_IA64 */ -+ - #ifndef ITT_ARCH_ARM - # define ITT_ARCH_ARM 4 - #endif /* ITT_ARCH_ARM */ diff --git a/package/tbb/tbb.hash b/package/tbb/tbb.hash index 9992fb3c4f74..085d54109af6 100644 --- a/package/tbb/tbb.hash +++ b/package/tbb/tbb.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 e5b57537c741400cf6134b428fc1689a649d7d38d9bb9c1b6d64f092ea28178a tbb-2021.5.0.tar.gz +sha256 487023a955e5a3cc6d3a0d5f89179f9b6c0ae7222613a7185b0227ba0c83700b tbb-2021.10.0.tar.gz sha256 c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 LICENSE.txt diff --git a/package/tbb/tbb.mk b/package/tbb/tbb.mk index fc720fd2f5c3..75cca5e99d1a 100644 --- a/package/tbb/tbb.mk +++ b/package/tbb/tbb.mk @@ -4,7 +4,7 @@ # ################################################################################ -TBB_VERSION = 2021.5.0 +TBB_VERSION = 2021.10.0 TBB_SITE = $(call github,01org,tbb,v$(TBB_VERSION)) TBB_INSTALL_STAGING = YES TBB_LICENSE = Apache-2.0 diff --git a/package/tcl/0001-Disable-tcl-compatibility-layers.patch b/package/tcl/0001-Disable-tcl-compatibility-layers.patch new file mode 100644 index 000000000000..b7b776ad5ddf --- /dev/null +++ b/package/tcl/0001-Disable-tcl-compatibility-layers.patch @@ -0,0 +1,35 @@ +From c829552921f0c7c8e522f911135ee100742b441b Mon Sep 17 00:00:00 2001 +From: Andrew Ruder +Date: Tue, 8 Apr 2014 15:54:04 -0500 +Subject: [PATCH] Disable tcl compatibility layers + +Turn off building compatibility layers for old/broken versions of +standard functions (strstr, strtoul, strtod) with the assumption that +anything buildroot is using as a standard C library will be good enough +to not have broken behavior. + +Signed-off-by: Andrew Ruder +[Fabrice: Update for 8.6.12] +Signed-off-by: Fabrice Fontaine +[Julien: Update for 8.6.13] +Signed-off-by: Julien Olivain +--- + unix/tcl.m4 | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/unix/tcl.m4 b/unix/tcl.m4 +index ca94abd4ad..42eb58d384 100644 +--- a/unix/tcl.m4 ++++ b/unix/tcl.m4 +@@ -2646,7 +2646,7 @@ AC_DEFUN([SC_TCL_CHECK_BROKEN_FUNC],[ + #include + #include + int main() {]$2[}]]])],[tcl_cv_$1_unbroken=ok], +- [tcl_cv_$1_unbroken=broken],[tcl_cv_$1_unbroken=unknown])) ++ [tcl_cv_$1_unbroken=broken],[tcl_cv_$1_unbroken=ok])) + if test ["$tcl_cv_]$1[_unbroken"] = "ok"; then + tcl_ok=1 + else +-- +2.41.0 + diff --git a/package/tcl/0001-dont-build-compat.patch b/package/tcl/0001-dont-build-compat.patch deleted file mode 100644 index 7a7d959cd254..000000000000 --- a/package/tcl/0001-dont-build-compat.patch +++ /dev/null @@ -1,25 +0,0 @@ -From: Andrew Ruder -Subject: [PATCH] Disable tcl compatibility layers - -Turn off building compatibility layers for old/broken versions of -standard functions (strstr, strtoul, strtod) with the assumption that -anything buildroot is using as a standard C library will be good enough -to not have broken behavior. - -Signed-off-by: Andrew Ruder -[Fabrice: Update for 8.6.12] -Signed-off-by: Fabrice Fontaine ---- - -diff --git a/unix/tcl.m4 b/unix/tcl.m4 ---- a/unix/tcl.m4 -+++ b/unix/tcl.m4 -@@ -2725,7 +2725,7 @@ AC_DEFUN([SC_TCL_CHECK_BROKEN_FUNC],[ - #include - #include - int main() {]$2[}]]])],[tcl_cv_$1_unbroken=ok], -- [tcl_cv_$1_unbroken=broken],[tcl_cv_$1_unbroken=unknown])) -+ [tcl_cv_$1_unbroken=broken],[tcl_cv_$1_unbroken=unknown])) - if test ["$tcl_cv_]$1[_unbroken"] = "ok"; then - tcl_ok=1 - else diff --git a/package/tcl/Config.in b/package/tcl/Config.in index f1fa0541a1b3..adb9f224883a 100644 --- a/package/tcl/Config.in +++ b/package/tcl/Config.in @@ -10,6 +10,7 @@ config BR2_PACKAGE_TCL # See this mailing list thread: # http://lists.busybox.net/pipermail/buildroot/2015-March/121198.html depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_ZLIB help TCL (Tool Command Language) is a simple textual language. diff --git a/package/tcl/tcl.hash b/package/tcl/tcl.hash index 2b82a1938b6d..109ea3d79c9b 100644 --- a/package/tcl/tcl.hash +++ b/package/tcl/tcl.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 26c995dd0f167e48b11961d891ee555f680c175f7173ff8cb829f4ebcde4c1a6 tcl8.6.12-src.tar.gz +sha256 43a1fae7412f61ff11de2cfd05d28cfc3a73762f354a417c62370a54e2caf066 tcl8.6.13-src.tar.gz sha256 c0a69a2bfd757361ec7e6143973b103c90409316b49e9c88db26ad6388e79f16 license.terms diff --git a/package/tcl/tcl.mk b/package/tcl/tcl.mk index 97754b63d02b..1943bc7b27ee 100644 --- a/package/tcl/tcl.mk +++ b/package/tcl/tcl.mk @@ -5,7 +5,7 @@ ################################################################################ TCL_VERSION_MAJOR = 8.6 -TCL_VERSION = $(TCL_VERSION_MAJOR).12 +TCL_VERSION = $(TCL_VERSION_MAJOR).13 TCL_SOURCE = tcl$(TCL_VERSION)-src.tar.gz TCL_SITE = http://downloads.sourceforge.net/project/tcl/Tcl/$(TCL_VERSION) TCL_LICENSE = TCL @@ -75,7 +75,8 @@ TCL_POST_INSTALL_TARGET_HOOKS += TCL_REMOVE_EXTRA TCL_DEPENDENCIES = $(if $(BR2_PACKAGE_SQLITE),sqlite) \ $(if $(BR2_PACKAGE_MYSQL),mysql) \ - $(if $(BR2_PACKAGE_POSTGRESQL),postgresql) + $(if $(BR2_PACKAGE_POSTGRESQL),postgresql) \ + zlib $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/tcllib/tcllib.hash b/package/tcllib/tcllib.hash index fb80841998ec..fe0ece238e53 100644 --- a/package/tcllib/tcllib.hash +++ b/package/tcllib/tcllib.hash @@ -1,5 +1,5 @@ -# From https://core.tcl-lang.org/tcllib/uv/tcllib-1.20.SHA256 -sha256 199e8ec7ee26220e8463bc84dd55c44965fc8ef4d4ac6e4684b2b1c03b1bd5b9 tcllib-1.20.tar.xz +# From https://core.tcl-lang.org/tcllib/uv/tcllib-1.21.SHA256 +sha256 10c7749e30fdd6092251930e8a1aa289b193a3b7f1abf17fee1d4fa89814762f tcllib-1.21.tar.xz # Locally computed: sha256 38e1f556213f4008cfd280457af57c76a1fe043dc026ece1c704c09b5f6e865c license.terms diff --git a/package/tcllib/tcllib.mk b/package/tcllib/tcllib.mk index 0f60eb8acaa7..1f2b575b2963 100644 --- a/package/tcllib/tcllib.mk +++ b/package/tcllib/tcllib.mk @@ -4,7 +4,7 @@ # ################################################################################ -TCLLIB_VERSION = 1.20 +TCLLIB_VERSION = 1.21 TCLLIB_SOURCE = tcllib-$(TCLLIB_VERSION).tar.xz TCLLIB_SITE = http://downloads.sourceforge.net/project/tcllib/tcllib/$(TCLLIB_VERSION) TCLLIB_LICENSE = TCL diff --git a/package/tcpdump/tcpdump.hash b/package/tcpdump/tcpdump.hash index e548e3262698..1a22889851c3 100644 --- a/package/tcpdump/tcpdump.hash +++ b/package/tcpdump/tcpdump.hash @@ -1,5 +1,5 @@ # Locally calculated after checking pgp signature at # https://www.tcpdump.org/release/tcpdump-4.99.3.tar.gz.sig # using key 1F166A5742ABB9E0249A8D30E089DEF1D9C15D0D -sha256 ad75a6ed3dc0d9732945b2e5483cb41dc8b4b528a169315e499c6861952e73b3 tcpdump-4.99.3.tar.gz +sha256 0232231bb2f29d6bf2426e70a08a7e0c63a0d59a9b44863b7f5e2357a6e49fea tcpdump-4.99.4.tar.gz sha256 8a54594d257e14a5260ac770f1633516cb51e3fc28c40136ce2697014eda7afd LICENSE diff --git a/package/tcpdump/tcpdump.mk b/package/tcpdump/tcpdump.mk index 7a679ce4bfd6..91643e7beaa6 100644 --- a/package/tcpdump/tcpdump.mk +++ b/package/tcpdump/tcpdump.mk @@ -4,7 +4,7 @@ # ################################################################################ -TCPDUMP_VERSION = 4.99.3 +TCPDUMP_VERSION = 4.99.4 TCPDUMP_SITE = https://www.tcpdump.org/release TCPDUMP_LICENSE = BSD-3-Clause TCPDUMP_LICENSE_FILES = LICENSE diff --git a/package/tiff/0001-tiffcrop-Correct-simple-copy-paste-error-Fix-488.patch b/package/tiff/0001-tiffcrop-Correct-simple-copy-paste-error-Fix-488.patch deleted file mode 100644 index 73c0d10ffc49..000000000000 --- a/package/tiff/0001-tiffcrop-Correct-simple-copy-paste-error-Fix-488.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 97d65859bc29ee334012e9c73022d8a8e55ed586 Mon Sep 17 00:00:00 2001 -From: Su Laus -Date: Sat, 21 Jan 2023 15:58:10 +0000 -Subject: [PATCH] tiffcrop: Correct simple copy paste error. Fix #488. - -[Retrieved from: -https://gitlab.com/libtiff/libtiff/-/commit/97d65859bc29ee334012e9c73022d8a8e55ed586] -Signed-off-by: Fabrice Fontaine ---- - tools/tiffcrop.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tools/tiffcrop.c b/tools/tiffcrop.c -index 14fa18da..7db69883 100644 ---- a/tools/tiffcrop.c -+++ b/tools/tiffcrop.c -@@ -8591,7 +8591,7 @@ static int processCropSelections(struct image_data *image, - cropsize + NUM_BUFF_OVERSIZE_BYTES); - else - { -- prev_cropsize = seg_buffs[0].size; -+ prev_cropsize = seg_buffs[i].size; - if (prev_cropsize < cropsize) - { - next_buff = _TIFFrealloc( --- -GitLab - diff --git a/package/tiff/tiff.hash b/package/tiff/tiff.hash index 73732892a54c..3aae7dc4d5f7 100644 --- a/package/tiff/tiff.hash +++ b/package/tiff/tiff.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 c7a1d9296649233979fa3eacffef3fa024d73d05d589cb622727b5b08c423464 tiff-4.5.0.tar.gz +sha256 88b3979e6d5c7e32b50d7ec72fb15af724f6ab2cbf7e10880c360a77e4b5d99a tiff-4.6.0.tar.gz sha256 0780558a8bfba0af1160ec1ff11ade4f41c0d7deafd6ecfc796b492a788e380d LICENSE.md diff --git a/package/tiff/tiff.mk b/package/tiff/tiff.mk index f9754a4b4906..e384e8b81411 100644 --- a/package/tiff/tiff.mk +++ b/package/tiff/tiff.mk @@ -4,7 +4,7 @@ # ################################################################################ -TIFF_VERSION = 4.5.0 +TIFF_VERSION = 4.6.0 TIFF_SITE = http://download.osgeo.org/libtiff TIFF_LICENSE = tiff license TIFF_LICENSE_FILES = LICENSE.md @@ -12,22 +12,17 @@ TIFF_CPE_ID_VENDOR = libtiff TIFF_CPE_ID_PRODUCT = libtiff TIFF_INSTALL_STAGING = YES -# 0001-tiffcrop-Correct-simple-copy-paste-error-Fix-488.patch -TIFF_IGNORE_CVES += CVE-2022-48281 - # webp has a (optional) dependency on tiff, so we can't have webp # support in tiff, or that would create a circular dependency. TIFF_CONF_OPTS = \ --disable-contrib \ --disable-tests \ - --disable-webp \ - --without-x + --disable-webp TIFF_DEPENDENCIES = host-pkgconf HOST_TIFF_CONF_OPTS = \ --disable-cxx \ - --without-x \ --disable-zlib \ --disable-libdeflate \ --disable-lzma \ diff --git a/package/timescaledb/timescaledb.hash b/package/timescaledb/timescaledb.hash index 2fd14e6c1a11..0f2269986e70 100644 --- a/package/timescaledb/timescaledb.hash +++ b/package/timescaledb/timescaledb.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 ff0820891646a772aceab19ee0f7da0a5343dc53b9a72c965ab70f723d231d5c timescaledb-2.9.3.tar.gz +sha256 acca5f6ec5684722374eece92f73d7763bd171075074fd2e6bd0244bda9fbc25 timescaledb-2.11.2.tar.gz sha256 0378e0948feefd85f579319c74d6e2b671194037f550c7176ef26649d94c895b LICENSE diff --git a/package/timescaledb/timescaledb.mk b/package/timescaledb/timescaledb.mk index e3c94ed2fe25..fe7bcbc36e0c 100644 --- a/package/timescaledb/timescaledb.mk +++ b/package/timescaledb/timescaledb.mk @@ -4,7 +4,7 @@ # ################################################################################ -TIMESCALEDB_VERSION = 2.9.3 +TIMESCALEDB_VERSION = 2.11.2 TIMESCALEDB_SITE = $(call github,timescale,timescaledb,$(TIMESCALEDB_VERSION)) TIMESCALEDB_LICENSE = Apache-2.0 TIMESCALEDB_LICENSE_FILES = LICENSE diff --git a/package/tini/tini.mk b/package/tini/tini.mk index 9da54f8a2502..aa8e259db220 100644 --- a/package/tini/tini.mk +++ b/package/tini/tini.mk @@ -31,7 +31,8 @@ endef define TINI_INSTALL_TARGET_CMDS $(INSTALL) -D -m 0755 $(@D)/bin/tini $(TARGET_DIR)/usr/bin/tini - ln -sf tini $(TARGET_DIR)/usr/bin/docker-init + mkdir -p $(TARGET_DIR)/usr/libexec/docker + ln -sf ../../bin/tini $(TARGET_DIR)/usr/libexec/docker/docker-init endef # Tini's CMakeLists.txt is not suitable for Buildroot. diff --git a/package/tinyalsa/Config.in b/package/tinyalsa/Config.in index d9ce22c8a7fd..b4d4aeb276d9 100644 --- a/package/tinyalsa/Config.in +++ b/package/tinyalsa/Config.in @@ -13,5 +13,14 @@ config BR2_PACKAGE_TINYALSA https://github.com/tinyalsa/tinyalsa +if BR2_PACKAGE_TINYALSA + +config BR2_PACKAGE_TINYALSA_TOOLS + bool "tinyalsa tools" + help + Build utility tools (tinyplay, tinycap, tinymix, tinypcminfo) + +endif #BR2_PACKAGE_TINYALSA + comment "tinyalsa needs a toolchain w/ dynamic library" depends on BR2_STATIC_LIBS diff --git a/package/tinyalsa/tinyalsa.mk b/package/tinyalsa/tinyalsa.mk index b5c39e35d665..fe6d373ec81a 100644 --- a/package/tinyalsa/tinyalsa.mk +++ b/package/tinyalsa/tinyalsa.mk @@ -9,6 +9,12 @@ TINYALSA_SITE = $(call github,tinyalsa,tinyalsa,v$(TINYALSA_VERSION)) TINYALSA_LICENSE = BSD-3-Clause TINYALSA_LICENSE_FILES = NOTICE TINYALSA_INSTALL_STAGING = YES -TINYALSA_CONF_OPTS = -Ddocs=disabled -Dexamples=disabled -Dutils=disabled +TINYALSA_CONF_OPTS = -Ddocs=disabled -Dexamples=disabled + +ifeq ($(BR2_PACKAGE_TINYALSA_TOOLS),y) +TINYALSA_CONF_OPTS += -Dutils=enabled +else +TINYALSA_CONF_OPTS += -Dutils=disabled +endif $(eval $(meson-package)) diff --git a/package/tk/tk.hash b/package/tk/tk.hash index acf5e451571c..968b351b41df 100644 --- a/package/tk/tk.hash +++ b/package/tk/tk.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 12395c1f3fcb6bed2938689f797ea3cdf41ed5cb6c4766eec8ac949560310630 tk8.6.12-src.tar.gz +sha256 2e65fa069a23365440a3c56c556b8673b5e32a283800d8d9b257e3f584ce0675 tk8.6.13-src.tar.gz sha256 2cde822b93ca16ae535c954b7dfe658b4ad10df2a193628d1b358f1765e8b198 license.terms diff --git a/package/tk/tk.mk b/package/tk/tk.mk index 830b241f74da..dfa7a7c694cd 100644 --- a/package/tk/tk.mk +++ b/package/tk/tk.mk @@ -5,7 +5,7 @@ ################################################################################ TK_VERSION_MAJOR = 8.6 -TK_VERSION = $(TK_VERSION_MAJOR).12 +TK_VERSION = $(TK_VERSION_MAJOR).13 TK_SOURCE = tk$(TK_VERSION)-src.tar.gz TK_SITE = http://downloads.sourceforge.net/project/tcl/Tcl/$(TK_VERSION) TK_LICENSE = TCL diff --git a/package/tor/0001-patch-src_lib_crypt_ops_crypto_dh_openssl_c.patch b/package/tor/0001-patch-src_lib_crypt_ops_crypto_dh_openssl_c.patch deleted file mode 100644 index 2df7c6b6a784..000000000000 --- a/package/tor/0001-patch-src_lib_crypt_ops_crypto_dh_openssl_c.patch +++ /dev/null @@ -1,67 +0,0 @@ -Fix build with opaque structs in LibreSSL 3.5 - -Downloaded from OpenBSD ports: -http://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/net/tor/patches/patch-src_lib_crypt_ops_crypto_dh_openssl_c?rev=1.2&content-type=text/x-cvsweb-markup - -Patch series was sent upstream: -https://forum.torproject.net/t/tor-relays-openbsd-stable-net-tor-and-0-4-7-7/3244 - -Signed-off-by: Bernd Kuhls - -Index: src/lib/crypt_ops/crypto_dh_openssl.c ---- a/src/lib/crypt_ops/crypto_dh_openssl.c.orig -+++ b/src/lib/crypt_ops/crypto_dh_openssl.c -@@ -60,7 +60,7 @@ crypto_validate_dh_params(const BIGNUM *p, const BIGNU - /* Copy into a temporary DH object, just so that DH_check() can be called. */ - if (!(dh = DH_new())) - goto out; --#ifdef OPENSSL_1_1_API -+#if defined(OPENSSL_1_1_API) || defined(LIBRESSL_VERSION_NUMBER) - BIGNUM *dh_p, *dh_g; - if (!(dh_p = BN_dup(p))) - goto out; -@@ -223,7 +223,7 @@ new_openssl_dh_from_params(BIGNUM *p, BIGNUM *g) - goto err; - } - --#ifdef OPENSSL_1_1_API -+#if defined(OPENSSL_1_1_API) || defined(LIBRESSL_VERSION_NUMBER) - - if (!DH_set0_pqg(res_dh, dh_p, NULL, dh_g)) { - goto err; -@@ -276,7 +276,7 @@ crypto_dh_get_bytes(crypto_dh_t *dh) - int - crypto_dh_generate_public(crypto_dh_t *dh) - { --#ifndef OPENSSL_1_1_API -+#if !defined(OPENSSL_1_1_API) && !defined(LIBRESSL_VERSION_NUMBER) - again: - #endif - if (!DH_generate_key(dh->dh)) { -@@ -286,7 +286,7 @@ crypto_dh_generate_public(crypto_dh_t *dh) - return -1; - /* LCOV_EXCL_STOP */ - } --#ifdef OPENSSL_1_1_API -+#if defined(OPENSSL_1_1_API) || defined(LIBRESSL_VERSION_NUMBER) - /* OpenSSL 1.1.x doesn't appear to let you regenerate a DH key, without - * recreating the DH object. I have no idea what sort of aliasing madness - * can occur here, so do the check, and just bail on failure. -@@ -327,7 +327,7 @@ crypto_dh_get_public(crypto_dh_t *dh, char *pubkey, si - - const BIGNUM *dh_pub; - --#ifdef OPENSSL_1_1_API -+#if defined(OPENSSL_1_1_API) || defined(LIBRESSL_VERSION_NUMBER) - const BIGNUM *dh_priv; - DH_get0_key(dh->dh, &dh_pub, &dh_priv); - #else -@@ -338,7 +338,7 @@ crypto_dh_get_public(crypto_dh_t *dh, char *pubkey, si - if (crypto_dh_generate_public(dh)<0) - return -1; - else { --#ifdef OPENSSL_1_1_API -+#if defined(OPENSSL_1_1_API) || defined(LIBRESSL_VERSION_NUMBER) - DH_get0_key(dh->dh, &dh_pub, &dh_priv); - #else - dh_pub = dh->dh->pub_key; diff --git a/package/tor/0002-patch-src_lib_crypt_ops_crypto_rsa_openssl_c.patch b/package/tor/0002-patch-src_lib_crypt_ops_crypto_rsa_openssl_c.patch deleted file mode 100644 index 1354a4221e0d..000000000000 --- a/package/tor/0002-patch-src_lib_crypt_ops_crypto_rsa_openssl_c.patch +++ /dev/null @@ -1,58 +0,0 @@ -Fix build with opaque structs in LibreSSL 3.5 - -Downloaded from OpenBSD ports: -http://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/net/tor/patches/patch-src_lib_crypt_ops_crypto_rsa_openssl_c?rev=1.2&content-type=text/x-cvsweb-markup - -Patch series was sent upstream: -https://forum.torproject.net/t/tor-relays-openbsd-stable-net-tor-and-0-4-7-7/3244 - -Signed-off-by: Bernd Kuhls - -Index: src/lib/crypt_ops/crypto_rsa_openssl.c ---- a/src/lib/crypt_ops/crypto_rsa_openssl.c.orig -+++ b/src/lib/crypt_ops/crypto_rsa_openssl.c -@@ -47,7 +47,7 @@ struct crypto_pk_t - int - crypto_pk_key_is_private(const crypto_pk_t *k) - { --#ifdef OPENSSL_1_1_API -+#if defined(OPENSSL_1_1_API) || defined(LIBRESSL_VERSION_NUMBER) - if (!k || !k->key) - return 0; - -@@ -212,7 +212,7 @@ crypto_pk_public_exponent_ok(const crypto_pk_t *env) - - const BIGNUM *e; - --#ifdef OPENSSL_1_1_API -+#if defined(OPENSSL_1_1_API) || defined(LIBRESSL_VERSION_NUMBER) - const BIGNUM *n, *d; - RSA_get0_key(env->key, &n, &e, &d); - #else -@@ -242,7 +242,7 @@ crypto_pk_cmp_keys(const crypto_pk_t *a, const crypto_ - const BIGNUM *a_n, *a_e; - const BIGNUM *b_n, *b_e; - --#ifdef OPENSSL_1_1_API -+#if defined(OPENSSL_1_1_API) || defined(LIBRESSL_VERSION_NUMBER) - const BIGNUM *a_d, *b_d; - RSA_get0_key(a->key, &a_n, &a_e, &a_d); - RSA_get0_key(b->key, &b_n, &b_e, &b_d); -@@ -279,7 +279,7 @@ crypto_pk_num_bits(crypto_pk_t *env) - tor_assert(env); - tor_assert(env->key); - --#ifdef OPENSSL_1_1_API -+#if defined(OPENSSL_1_1_API) || defined(LIBRESSL_VERSION_NUMBER) - /* It's so stupid that there's no other way to check that n is valid - * before calling RSA_bits(). - */ -@@ -572,7 +572,7 @@ static bool - rsa_private_key_too_long(RSA *rsa, int max_bits) - { - const BIGNUM *n, *e, *p, *q, *d, *dmp1, *dmq1, *iqmp; --#ifdef OPENSSL_1_1_API -+#if defined(OPENSSL_1_1_API) || defined(LIBRESSL_VERSION_NUMBER) - - #if OPENSSL_VERSION_NUMBER >= OPENSSL_V_SERIES(1,1,1) - n = RSA_get0_n(rsa); diff --git a/package/tor/0003-patch-src_lib_tls_x509_openssl_c.patch b/package/tor/0003-patch-src_lib_tls_x509_openssl_c.patch deleted file mode 100644 index fe8586357a65..000000000000 --- a/package/tor/0003-patch-src_lib_tls_x509_openssl_c.patch +++ /dev/null @@ -1,22 +0,0 @@ -Fix build with opaque structs in LibreSSL 3.5 - -Downloaded from OpenBSD ports: -http://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/net/tor/patches/patch-src_lib_tls_x509_openssl_c?rev=1.2&content-type=text/x-cvsweb-markup - -Patch series was sent upstream: -https://forum.torproject.net/t/tor-relays-openbsd-stable-net-tor-and-0-4-7-7/3244 - -Signed-off-by: Bernd Kuhls - -Index: src/lib/tls/x509_openssl.c ---- a/src/lib/tls/x509_openssl.c.orig -+++ b/src/lib/tls/x509_openssl.c -@@ -329,7 +329,7 @@ tor_tls_cert_is_valid(int severity, - cert_key = X509_get_pubkey(cert->cert); - if (check_rsa_1024 && cert_key) { - RSA *rsa = EVP_PKEY_get1_RSA(cert_key); --#ifdef OPENSSL_1_1_API -+#if defined(OPENSSL_1_1_API) || defined(LIBRESSL_VERSION_NUMBER) - if (rsa && RSA_bits(rsa) == 1024) { - #else - if (rsa && BN_num_bits(rsa->n) == 1024) { diff --git a/package/tor/tor.hash b/package/tor/tor.hash index 51892f15c3d8..dafa6d43d8f9 100644 --- a/package/tor/tor.hash +++ b/package/tor/tor.hash @@ -1,4 +1,4 @@ -# From https://dist.torproject.org/tor-0.4.7.13.tar.gz.sha256sum -sha256 2079172cce034556f110048e26083ce9bea751f3154b0ad2809751815b11ea9d tor-0.4.7.13.tar.gz +# From https://dist.torproject.org/tor-0.4.8.9.tar.gz.sha256sum +sha256 59bb7d8890f6131b4ce5344f3dcea5deb2182b7f4f10ff0cb4e4d81f11b2cf65 tor-0.4.8.9.tar.gz # Locally computed sha256 47b54ed17e8fdcab3c44729a1789a09b208f9a63a845a7e50def9df729eebad0 LICENSE diff --git a/package/tor/tor.mk b/package/tor/tor.mk index 03bd99870859..455ba2b551f5 100644 --- a/package/tor/tor.mk +++ b/package/tor/tor.mk @@ -4,7 +4,7 @@ # ################################################################################ -TOR_VERSION = 0.4.7.13 +TOR_VERSION = 0.4.8.9 TOR_SITE = https://dist.torproject.org TOR_LICENSE = BSD-3-Clause TOR_LICENSE_FILES = LICENSE diff --git a/package/tovid/0001-manpage.patch b/package/tovid/0001-manpage.patch deleted file mode 100644 index 21669c9d5518..000000000000 --- a/package/tovid/0001-manpage.patch +++ /dev/null @@ -1,25 +0,0 @@ -setup.py: disable man page to kill txt2tags SVN checkout dependency - -Signed-off-by: Steve Kenton - -+diff -pruN tovid-3534.ori/setup.py tovid-3534/setup.py ---- tovid-3534.ori/setup.py 2013-04-14 09:52:08.000000000 -0500 -+++ tovid-3534/setup.py 2015-03-21 09:39:14.880173176 -0500 -@@ -186,7 +186,7 @@ class BuildTovidInit (Command): - - # Build tovid-init with regular 'build' command - build.sub_commands.append(('build_tovid_init', None)) --build.sub_commands.append(('build_docs', None)) -+#build.sub_commands.append(('build_docs', None)) - - # The actual setup - setup( -@@ -244,8 +244,6 @@ setup( - 'src/tovid.ini', - ]), - # Manual page -- ('share/man/man1', -- ['docs/man/tovid.1']), - # Desktop shortcut - ('share/applications', - ['tovidgui.desktop', diff --git a/package/tovid/Config.in b/package/tovid/Config.in deleted file mode 100644 index c263acdd62b1..000000000000 --- a/package/tovid/Config.in +++ /dev/null @@ -1,50 +0,0 @@ -config BR2_PACKAGE_TOVID - bool "tovid" - depends on BR2_USE_MMU # fork() - depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # mpv - depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_USE_WCHAR - depends on BR2_PACKAGE_PYTHON3 - depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # mpv - depends on BR2_TOOLCHAIN_HAS_ATOMIC # mpv - depends on BR2_TOOLCHAIN_HAS_SYNC_4 # mpv - depends on !BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC # mpv - # The below dependencies are runtime dependencies only - select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # procps_ng - select BR2_PACKAGE_DVDAUTHOR - select BR2_PACKAGE_DVDRW_TOOLS - select BR2_PACKAGE_FFMPEG - select BR2_PACKAGE_IMAGEMAGICK - select BR2_PACKAGE_JPEG - select BR2_PACKAGE_MJPEGTOOLS - select BR2_PACKAGE_MPV - select BR2_PACKAGE_PROCPS_NG # pgrep and pkill - select BR2_PACKAGE_SOX - help - The tovid suite, also known simply as tovid, is a collection - of shell and Python scripts for creating DVDs and - (S)VCDs. It is pronounced "to vid" (because it converts to - video disc formats). - - http://tovid.wikia.com/wiki/Installing_tovid - -comment "tovid needs a toolchain w/ NPTL, C++, wchar, gcc >= 4.9" - depends on BR2_USE_MMU - depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS - depends on BR2_TOOLCHAIN_HAS_ATOMIC - depends on BR2_TOOLCHAIN_HAS_SYNC_4 - depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL \ - || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 \ - || !BR2_INSTALL_LIBSTDCPP \ - || !BR2_USE_WCHAR - depends on !BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC - -comment "tovid depends on python3" - depends on !BR2_PACKAGE_PYTHON3 - depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS - depends on BR2_TOOLCHAIN_HAS_ATOMIC - depends on BR2_TOOLCHAIN_HAS_SYNC_4 - depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ - !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 - depends on !BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC diff --git a/package/tovid/tovid.hash b/package/tovid/tovid.hash deleted file mode 100644 index 430ea52c1baf..000000000000 --- a/package/tovid/tovid.hash +++ /dev/null @@ -1,3 +0,0 @@ -# Locally calculated -sha256 c03a746a3592a656bab0be4045da114a4231eb0f858d6c18503dac64049fbe48 tovid-87c676f4aadb7303d2cd921380b054bafa4b85bb.tar.gz -sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/tovid/tovid.mk b/package/tovid/tovid.mk deleted file mode 100644 index 4c5c60aa7fc7..000000000000 --- a/package/tovid/tovid.mk +++ /dev/null @@ -1,13 +0,0 @@ -################################################################################ -# -# tovid -# -################################################################################ - -TOVID_VERSION = 87c676f4aadb7303d2cd921380b054bafa4b85bb -TOVID_SITE = $(call github,tovid-suite,tovid,$(TOVID_VERSION)) -TOVID_LICENSE = GPL-2.0+ -TOVID_LICENSE_FILES = COPYING -TOVID_SETUP_TYPE = distutils - -$(eval $(python-package)) diff --git a/package/tpm2-pkcs11/tpm2-pkcs11.hash b/package/tpm2-pkcs11/tpm2-pkcs11.hash index b027bad72aa9..797955a69b8c 100644 --- a/package/tpm2-pkcs11/tpm2-pkcs11.hash +++ b/package/tpm2-pkcs11/tpm2-pkcs11.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 79f28899047defd6b4b72b7268dd56abf27774954022315f818c239af33e05bd tpm2-pkcs11-1.8.0.tar.gz +sha256 35bf06c30cfa76fc0eba2c5f503cf7dd0d34a66afb2d292fee896b90362f633b tpm2-pkcs11-1.9.0.tar.gz sha256 793aa007f793458434d7cc60b1c827053a399308658b32fcaa6023802adc22e1 LICENSE diff --git a/package/tpm2-pkcs11/tpm2-pkcs11.mk b/package/tpm2-pkcs11/tpm2-pkcs11.mk index 9d613407754c..18f04157e307 100644 --- a/package/tpm2-pkcs11/tpm2-pkcs11.mk +++ b/package/tpm2-pkcs11/tpm2-pkcs11.mk @@ -4,7 +4,7 @@ # ################################################################################ -TPM2_PKCS11_VERSION = 1.8.0 +TPM2_PKCS11_VERSION = 1.9.0 TPM2_PKCS11_SITE = https://github.com/tpm2-software/tpm2-pkcs11/releases/download/$(TPM2_PKCS11_VERSION) TPM2_PKCS11_LICENSE = BSD-2-Clause TPM2_PKCS11_LICENSE_FILES = LICENSE diff --git a/package/tpm2-tss/tpm2-tss.hash b/package/tpm2-tss/tpm2-tss.hash index b6eb3c1f9768..c9fa4e6ae0f2 100644 --- a/package/tpm2-tss/tpm2-tss.hash +++ b/package/tpm2-tss/tpm2-tss.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 8900a6603f74310b749b65f23c3461cde6e2a23a5f61058b21004c25f9cf19e8 tpm2-tss-3.1.0.tar.gz +sha256 ba9e52117f254f357ff502e7d60fce652b3bfb26327d236bbf5ab634235e40f1 tpm2-tss-3.2.2.tar.gz sha256 18c1bf4b1ba1fb2c4ffa7398c234d83c0d55475298e470ae1e5e3a8a8bd2e448 LICENSE diff --git a/package/tpm2-tss/tpm2-tss.mk b/package/tpm2-tss/tpm2-tss.mk index 060883c377e8..10d605fc65c7 100644 --- a/package/tpm2-tss/tpm2-tss.mk +++ b/package/tpm2-tss/tpm2-tss.mk @@ -4,7 +4,7 @@ # ################################################################################ -TPM2_TSS_VERSION = 3.1.0 +TPM2_TSS_VERSION = 3.2.2 TPM2_TSS_SITE = https://github.com/tpm2-software/tpm2-tss/releases/download/$(TPM2_TSS_VERSION) TPM2_TSS_LICENSE = BSD-2-Clause TPM2_TSS_LICENSE_FILES = LICENSE @@ -26,7 +26,8 @@ TPM2_TSS_CONF_OPTS = \ ac_cv_prog_result_setfacl=yes \ ac_cv_prog_systemd_sysusers=no \ ac_cv_prog_systemd_tmpfiles=no \ - ac_cv_prog_result_useradd=yes \ + ac_cv_prog_useradd=yes \ + ac_cv_prog_groupadd=yes \ --with-crypto=ossl \ --disable-doxygen-doc \ --disable-defaultflags diff --git a/package/traceroute/traceroute.hash b/package/traceroute/traceroute.hash index 83791c18a43b..cf2eb127a21c 100644 --- a/package/traceroute/traceroute.hash +++ b/package/traceroute/traceroute.hash @@ -1,5 +1,5 @@ # Locally computed: -sha256 3669d22a34d3f38ed50caba18cd525ba55c5c00d5465f2d20d7472e5d81603b6 traceroute-2.1.0.tar.gz +sha256 05ebc7aba28a9100f9bbae54ceecbf75c82ccf46bdfce8b5d64806459a7e0412 traceroute-2.1.3.tar.gz # Hash for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/traceroute/traceroute.mk b/package/traceroute/traceroute.mk index a02982a6b5f0..133f8d3c3ee4 100644 --- a/package/traceroute/traceroute.mk +++ b/package/traceroute/traceroute.mk @@ -4,11 +4,12 @@ # ################################################################################ -TRACEROUTE_VERSION = 2.1.0 +TRACEROUTE_VERSION = 2.1.3 TRACEROUTE_SITE = http://downloads.sourceforge.net/traceroute/traceroute/traceroute-$(TRACEROUTE_VERSION) TRACEROUTE_LICENSE = GPL-2.0+, LGPL-2.1+ TRACEROUTE_LICENSE_FILES = COPYING COPYING.LIB +TRACEROUTE_CPE_ID_VENDOR = buc define TRACEROUTE_BUILD_CMDS $(TARGET_MAKE_ENV) VPATH=$(STAGING_DIR)/usr/lib $(MAKE) $(TARGET_CONFIGURE_OPTS) \ diff --git a/package/transmission/0001-fix-utypes.patch b/package/transmission/0001-fix-utypes.patch deleted file mode 100644 index 81efa884a797..000000000000 --- a/package/transmission/0001-fix-utypes.patch +++ /dev/null @@ -1,30 +0,0 @@ -Fix build error "conflicting types for 'UTP_Write'" - -Fetch from: http://www.adminsehow.com/2012/10/how-to-install-transmission-2-71-on-debian-6-0-squeeze/ - -The corresponding upstream bug report (unfixed) can be found here: -https://trac.transmissionbt.com/ticket/5232 - -Signed-off-by: Bernd Kuhls -[Fabrice: adapt to 3.00, which always uses stdbool.h] -Signed-off-by: Fabrice Fontaine -[yann.morin.1998@free.fr: - - don't comment-out dropped code, just drop it - - use CR-LF in replacement code, as used by upstream -] -Signed-off-by: Yann E. MORIN - ---- transmission-2.82.org/third-party/libutp/utypes.h 2013-08-09 04:47:43.000000000 +0200 -+++ transmission-2.82/third-party/libutp/utypes.h 2014-01-02 20:17:18.000000000 +0100 -@@ -35,8 +35,8 @@ - typedef const char * cstr; - typedef char * str; - --#ifndef __cplusplus --typedef uint8 bool; --#endif -+#ifndef __cplusplus -+#include -+#endif - - #endif //__UTYPES_H__ diff --git a/package/transmission/0002-fix-utp-include.patch b/package/transmission/0002-fix-utp-include.patch deleted file mode 100644 index db8b5ab39b3c..000000000000 --- a/package/transmission/0002-fix-utp-include.patch +++ /dev/null @@ -1,46 +0,0 @@ -Fix compilation when using system libminiupnpc with libutp disabled - -If transmission uses its own copy of libminiupnpc in third-party/ then -the configure script adds that path to CFLAGS: -https://trac.transmissionbt.com/browser/trunk/configure.ac#L455 - -This path is also added if transmission uses its own copy of libutp: -https://trac.transmissionbt.com/browser/trunk/configure.ac#L349 - -But if a system-provided libminiupnpc is used and utp-support is -disabled using --disable-utp the result is a build error, detected by -buildroot autobuilders: -http://autobuild.buildroot.net/results/b79/b79e51140cb0320554a58ce59dcb33f53cd9211a/build-end.log - -net.c:40:24: fatal error: libutp/utp.h: No such file or directory - -Patch proposed by Yann E. MORIN: -http://lists.busybox.net/pipermail/buildroot/2016-July/167896.html - -Patch sent upstream: https://trac.transmissionbt.com/ticket/6163 - -Signed-off-by: Bernd Kuhls - -diff -uNr transmission-2.92.org/configure.ac transmission-2.92/configure.ac ---- transmission-2.92.org/configure.ac 2016-03-06 21:23:45.336198393 +0100 -+++ transmission-2.92/configure.ac 2016-07-31 12:13:40.921660078 +0200 -@@ -358,6 +358,10 @@ - else - AC_MSG_ERROR("Unable to build uTP support -- C++ compiler not found") - fi -+else -+ # For the system libminiupnpc with UTC disabled, -+ # point to our bundled UTP headers -+ LIBUTP_CFLAGS="-I\$(top_srcdir)/third-party/" - fi - AC_SUBST(LIBUTP_CFLAGS) - AC_SUBST(LIBUTP_LIBS) -@@ -457,7 +461,7 @@ - LIBUPNP_LIBS_QT="\$\${TRANSMISSION_TOP}/third-party/miniupnp/libminiupnp.a" - else - AC_DEFINE([SYSTEM_MINIUPNP]) -- LIBUPNP_CFLAGS="" -+ LIBUPNP_CFLAGS="${LIBUTP_CFLAGS}" - LIBUPNP_LIBS="-lminiupnpc" - LIBUPNP_LIBS_QT="-lminiupnpc" - fi diff --git a/package/transmission/0003-configure.ac-fix-autoreconf-with-autoconf-2.70.patch b/package/transmission/0003-configure.ac-fix-autoreconf-with-autoconf-2.70.patch deleted file mode 100644 index bfb0084bc439..000000000000 --- a/package/transmission/0003-configure.ac-fix-autoreconf-with-autoconf-2.70.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 857ac91a03a096601f62b358fc61355d4cc25b9b Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Sat, 9 Oct 2021 18:51:13 +0200 -Subject: [PATCH] configure.ac: fix autoreconf with autoconf >= 2.70 - -Remove the whitespace before IT_PROG_INTLTOOL as suggested in -https://www.mail-archive.com/bug-autoconf@gnu.org/msg04851.html -to avoid the following build failure with autoconf >= 2.70: - -ERROR: 'IT_PROG_INTLTOOL' must appear in configure.ac for intltool to work. - -The problem has been introduced by upstream autoconf commit -http://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commit;h=b3b3af821a0b9e82ebe56b77b1731d2fe58f52de - -Fixes: - - http://autobuild.buildroot.org/results/e8bea26f6b12adf16335b24836a7c5c31911af6a - -Signed-off-by: Fabrice Fontaine -[Upstream status: not upstreamable as upstream swicthed to cmake ( -https://github.com/transmission/transmission/issues/1573)] ---- - configure.ac | 4 +--- - 1 file changed, 1 insertion(+), 3 deletions(-) - -diff --git a/configure.ac b/configure.ac -index fd1132fda..04e0e19bb 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -555,9 +555,7 @@ dnl it should be safe to re-edit 0.40 back down to 0.23 - use_nls=no - if test "x$enable_nls" = "xyes" ; then - use_nls=yes -- m4_ifdef([IT_PROG_INTLTOOL], -- [IT_PROG_INTLTOOL([0.35.0],[no-xml])], -- [AC_MSG_ERROR("--enable-nls requires intltool to be installed.")]) -+IT_PROG_INTLTOOL([0.35.0],[no-xml]) - AC_CHECK_HEADERS([libintl.h]) - GETTEXT_PACKAGE=transmission-gtk - AC_SUBST(GETTEXT_PACKAGE) --- -2.33.0 - diff --git a/package/transmission/Config.in b/package/transmission/Config.in index 980b042e335a..eeaa7890fbe2 100644 --- a/package/transmission/Config.in +++ b/package/transmission/Config.in @@ -1,12 +1,23 @@ config BR2_PACKAGE_TRANSMISSION bool "transmission" + depends on !BR2_BINFMT_FLAT # libnatpmp + depends on BR2_INSTALL_LIBSTDCPP # libutp + depends on !BR2_STATIC_LIBS # libnatpmp + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 # C++17 depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # fork() - select BR2_PACKAGE_ZLIB - select BR2_PACKAGE_OPENSSL - select BR2_PACKAGE_LIBOPENSSL_ENABLE_RC4 if BR2_PACKAGE_LIBOPENSSL + depends on BR2_USE_WCHAR # libpsl + select BR2_PACKAGE_DHT + select BR2_PACKAGE_LIBB64 select BR2_PACKAGE_LIBCURL + select BR2_PACKAGE_LIBDEFLATE select BR2_PACKAGE_LIBEVENT + select BR2_PACKAGE_LIBMINIUPNPC + select BR2_PACKAGE_LIBNATPMP + select BR2_PACKAGE_LIBPSL + select BR2_PACKAGE_LIBUTP + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_ZLIB help Transmission is a cross-platform BitTorrent client. @@ -14,15 +25,6 @@ config BR2_PACKAGE_TRANSMISSION if BR2_PACKAGE_TRANSMISSION -config BR2_PACKAGE_TRANSMISSION_UTP - bool "Transmission uTP support" - depends on BR2_INSTALL_LIBSTDCPP - help - Install support for uTorrent Transport Protocol - -comment "uTP needs a toolchain w/ C++" - depends on !BR2_INSTALL_LIBSTDCPP - config BR2_PACKAGE_TRANSMISSION_CLI bool "transmission-cli" help @@ -35,14 +37,21 @@ config BR2_PACKAGE_TRANSMISSION_DAEMON config BR2_PACKAGE_TRANSMISSION_GTK bool "transmission-gtk" + depends on !BR2_nios2 # gtkmm3 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pangomm, libgtk3 -> pango -> harfbuzz -> gtkmm3 depends on BR2_PACKAGE_LIBGTK3 && BR2_SYSTEM_ENABLE_NLS + select BR2_PACKAGE_GTKMM3 help Install transmission GTK-based GUI interface. -comment "transmission-gtk needs NLS enabled" +comment "transmission-gtk needs libgtk3 and a toolchain with NLS enabled" + depends on !BR2_nios2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_PACKAGE_LIBGTK3 && !BR2_SYSTEM_ENABLE_NLS endif -comment "transmission needs a toolchain w/ threads" +comment "transmission needs a toolchain w/ dynamic library, threads, C++, gcc >= 7" depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_BINFMT_FLAT + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_7 || BR2_STATIC_LIBS diff --git a/package/transmission/transmission.hash b/package/transmission/transmission.hash index 13cbc969d349..74b3a654b555 100644 --- a/package/transmission/transmission.hash +++ b/package/transmission/transmission.hash @@ -1,3 +1,4 @@ +# From https://transmissionbt.com/download +sha256 15f7b4318fdfbffb19aa8d9a6b0fd89348e6ef1e86baa21a0806ffd1893bd5a6 transmission-4.0.4.tar.xz # Locally calculated -sha256 9144652fe742f7f7dd6657716e378da60b751aaeda8bef8344b3eefc4db255f2 transmission-3.00.tar.xz -sha256 2b16da5bd02790d1e4d332cfd42b9dfd7d1b0ed3a16a75dc7e76b6ed239fdba9 COPYING +sha256 f56732960a61ecf3b9637404eef1a39221d2006336a98792b7b65a79f155449c COPYING diff --git a/package/transmission/transmission.mk b/package/transmission/transmission.mk index 1660d2c2b984..efb46c0feb1a 100644 --- a/package/transmission/transmission.mk +++ b/package/transmission/transmission.mk @@ -4,55 +4,54 @@ # ################################################################################ -TRANSMISSION_VERSION = 3.00 -TRANSMISSION_SITE = https://github.com/transmission/transmission-releases/raw/master +TRANSMISSION_VERSION = 4.0.4 TRANSMISSION_SOURCE = transmission-$(TRANSMISSION_VERSION).tar.xz +TRANSMISSION_SITE = https://github.com/transmission/transmission/releases/download/$(TRANSMISSION_VERSION) TRANSMISSION_DEPENDENCIES = \ host-pkgconf \ - host-intltool \ + dht \ + libb64 \ libcurl \ + libdeflate \ libevent \ + libminiupnpc \ + libnatpmp \ + libpsl \ + libutp \ openssl \ zlib -TRANSMISSION_AUTORECONF = YES TRANSMISSION_CONF_OPTS = \ - --without-inotify \ - --enable-lightweight + -DENABLE_TESTS=OFF \ + -DRUN_CLANG_TIDY=OFF \ + -DUSE_SYSTEM_B64=ON \ + -DUSE_SYSTEM_DEFLATE=ON \ + -DUSE_SYSTEM_DHT=ON \ + -DUSE_SYSTEM_NATPMP=ON \ + -DUSE_SYSTEM_PSL=ON \ + -DWITH_INOTIFY=OFF TRANSMISSION_LICENSE = GPL-2.0 or GPL-3.0 with OpenSSL exception TRANSMISSION_LICENSE_FILES = COPYING TRANSMISSION_CPE_ID_VENDOR = transmissionbt -ifeq ($(BR2_PACKAGE_LIBMINIUPNPC),y) -TRANSMISSION_DEPENDENCIES += libminiupnpc -endif - -ifeq ($(BR2_PACKAGE_LIBNATPMP),y) -TRANSMISSION_DEPENDENCIES += libnatpmp -TRANSMISSION_CONF_OPTS += --enable-external-natpmp -else -TRANSMISSION_CONF_OPTS += --disable-external-natpmp -endif - -ifeq ($(BR2_PACKAGE_TRANSMISSION_UTP),y) -TRANSMISSION_CONF_OPTS += --enable-utp -else -TRANSMISSION_CONF_OPTS += --disable-utp +# Uses __atomic_load_8 +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +TRANSMISSION_CONF_OPTS += -DCMAKE_EXE_LINKER_FLAGS=-latomic endif ifeq ($(BR2_PACKAGE_TRANSMISSION_CLI),y) -TRANSMISSION_CONF_OPTS += --enable-cli +TRANSMISSION_CONF_OPTS += -DENABLE_CLI=ON else -TRANSMISSION_CONF_OPTS += --disable-cli +TRANSMISSION_CONF_OPTS += -DENABLE_CLI=OFF endif ifeq ($(BR2_PACKAGE_TRANSMISSION_DAEMON),y) -TRANSMISSION_CONF_OPTS += --enable-daemon +TRANSMISSION_CONF_OPTS += -DENABLE_DAEMON=ON ifeq ($(BR2_PACKAGE_SYSTEMD),y) TRANSMISSION_DEPENDENCIES += systemd -TRANSMISSION_CONF_OPTS += --with-systemd +TRANSMISSION_CONF_OPTS += -DWITH_SYSTEMD=ON else -TRANSMISSION_CONF_OPTS += --without-systemd +TRANSMISSION_CONF_OPTS += -DWITH_SYSTEMD=OFF endif define TRANSMISSION_USERS @@ -70,14 +69,14 @@ define TRANSMISSION_INSTALL_INIT_SYSTEMD endef else -TRANSMISSION_CONF_OPTS += --disable-daemon +TRANSMISSION_CONF_OPTS += -DENABLE_DAEMON=OFF endif ifeq ($(BR2_PACKAGE_TRANSMISSION_GTK),y) -TRANSMISSION_CONF_OPTS += --with-gtk -TRANSMISSION_DEPENDENCIES += libgtk3 +TRANSMISSION_CONF_OPTS += -DENABLE_GTK=ON +TRANSMISSION_DEPENDENCIES += gtkmm3 libgtk3 else -TRANSMISSION_CONF_OPTS += --without-gtk +TRANSMISSION_CONF_OPTS += -DENABLE_GTK=OFF endif -$(eval $(autotools-package)) +$(eval $(cmake-package)) diff --git a/package/tree/tree.hash b/package/tree/tree.hash index 298153c89c51..9ef48b1e7759 100644 --- a/package/tree/tree.hash +++ b/package/tree/tree.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 7d693a1d88d3c4e70a73e03b8dbbdc12c2945d482647494f2f5bd83a479eeeaf tree-2.0.2.tgz +sha256 d3c3d55f403af7c76556546325aa1eca90b918cbaaf6d3ab60a49d8367ab90d5 tree-2.1.1.tgz sha256 204d8eff92f95aac4df6c8122bc1505f468f3a901e5a4cc08940e0ede1938994 LICENSE diff --git a/package/tree/tree.mk b/package/tree/tree.mk index da0acbae49b8..83a427b74d37 100644 --- a/package/tree/tree.mk +++ b/package/tree/tree.mk @@ -4,7 +4,7 @@ # ################################################################################ -TREE_VERSION = 2.0.2 +TREE_VERSION = 2.1.1 TREE_SOURCE = tree-$(TREE_VERSION).tgz TREE_SITE = http://mama.indstate.edu/users/ice/tree/src TREE_LICENSE = GPL-2.0+ diff --git a/package/trinity/0005-ioctls-drm-check-i810-mga-r128-and-savage-support-44.patch b/package/trinity/0005-ioctls-drm-check-i810-mga-r128-and-savage-support-44.patch new file mode 100644 index 000000000000..b91fddb20b3b --- /dev/null +++ b/package/trinity/0005-ioctls-drm-check-i810-mga-r128-and-savage-support-44.patch @@ -0,0 +1,113 @@ +From 6823bacb3c2564bff5da3175c574fd6a6af4d8b2 Mon Sep 17 00:00:00 2001 +From: chuhu +Date: Sat, 1 Jul 2023 01:02:37 +0800 +Subject: [PATCH] ioctls/drm: check i810,mga,r128 and savage support (#44) + +kernel v6.3-rc1 removed some drm drivers, so add the extra check to make +the compile succeed. + +7872bc2cb13e drm: Remove the obsolete driver-savage +28483b8666bf drm: Remove the obsolete driver-r128 +96ed7db55bef drm: Remove the obsolete driver-mga +cab18866fead drm: Remove the obsolete driver-i810 + +Signed-off-by: Chunyu Hu +Signed-off-by: Waldemar Brodkorb +Upstream: https://github.com/kernelslacker/trinity/commit/6823bacb3c2564bff5da3175c574fd6a6af4d8b2 +--- + configure | 4 ++++ + ioctls/drm.c | 14 ++++++++++++++ + 2 files changed, 18 insertions(+) + +diff --git a/configure b/configure +index 944c8cf7..bbaf9afc 100755 +--- a/configure ++++ b/configure +@@ -320,6 +320,10 @@ check_header linux/irda.h USE_IRDA + check_header linux/rds.h USE_RDS + check_header linux/vfio.h USE_VFIO + check_header drm/drm.h USE_DRM ++check_header drm/i810_drm.h USE_DRM_I810 ++check_header drm/mga_drm.h USE_DRM_MGA ++check_header drm/r128_drm.h USE_DRM_R128 ++check_header drm/savage_drm.h USE_DRM_SAVAGE + check_header drm/exynos_drm.h USE_DRM_EXYNOS + check_header sound/compress_offload.h USE_SNDDRV_COMPRESS_OFFLOAD + check_header linux/kvm.h USE_KVM +diff --git a/ioctls/drm.c b/ioctls/drm.c +index 81ed3682..a07a8436 100644 +--- a/ioctls/drm.c ++++ b/ioctls/drm.c +@@ -8,13 +8,21 @@ + #ifdef USE_DRM_EXYNOS + #include + #endif ++#ifdef USE_DRM_I810 + #include ++#endif + #include ++#ifdef USE_DRM_MGA + #include ++#endif + #include ++#ifdef USE_DRM_R128 + #include ++#endif + #include ++#ifdef USE_DRM_SAVAGE + #include ++#endif + + #include "ioctls.h" + #include "utils.h" +@@ -293,6 +301,7 @@ static const struct ioctl drm_ioctls[] = { + #endif + #endif + ++#ifdef USE_DRM_I810 + /* i810_drm.h */ + IOCTL(DRM_IOCTL_I810_INIT), + IOCTL(DRM_IOCTL_I810_VERTEX), +@@ -309,6 +318,7 @@ static const struct ioctl drm_ioctls[] = { + IOCTL(DRM_IOCTL_I810_MC), + IOCTL(DRM_IOCTL_I810_RSTATUS), + IOCTL(DRM_IOCTL_I810_FLIP), ++#endif + + /* i915_drm.h */ + IOCTL(DRM_IOCTL_I915_INIT), +@@ -378,6 +388,7 @@ static const struct ioctl drm_ioctls[] = { + IOCTL(DRM_IOCTL_I915_REG_READ), + #endif + ++#ifdef USE_DRM_MGA + /* mga_drm.h */ + IOCTL(DRM_IOCTL_MGA_INIT), + IOCTL(DRM_IOCTL_MGA_FLUSH), +@@ -401,6 +412,7 @@ static const struct ioctl drm_ioctls[] = { + IOCTL(DRM_IOCTL_NOUVEAU_GROBJ_ALLOC), + IOCTL(DRM_IOCTL_NOUVEAU_NOTIFIEROBJ_ALLOC), + IOCTL(DRM_IOCTL_NOUVEAU_GPUOBJ_FREE), ++#endif + #ifdef DRM_IOCTL_NOUVEAU_GEM_NEW + IOCTL(DRM_IOCTL_NOUVEAU_GEM_NEW), + #endif +@@ -417,6 +429,7 @@ static const struct ioctl drm_ioctls[] = { + IOCTL(DRM_IOCTL_NOUVEAU_GEM_INFO), + #endif + ++#ifdef USE_DRM_R128 + /* r128_drm.h */ + IOCTL(DRM_IOCTL_R128_INIT), + IOCTL(DRM_IOCTL_R128_CCE_START), +@@ -435,6 +448,7 @@ static const struct ioctl drm_ioctls[] = { + IOCTL(DRM_IOCTL_R128_FULLSCREEN), + IOCTL(DRM_IOCTL_R128_GETPARAM), + IOCTL(DRM_IOCTL_R128_FLIP), ++#endif + + /* radeon_drm.h */ + IOCTL(DRM_IOCTL_RADEON_CP_INIT), +-- +2.39.2 + diff --git a/package/trinity/0006-kvm-drop-KVM_SET_MEMORY_REGION-42.patch b/package/trinity/0006-kvm-drop-KVM_SET_MEMORY_REGION-42.patch new file mode 100644 index 000000000000..427798369498 --- /dev/null +++ b/package/trinity/0006-kvm-drop-KVM_SET_MEMORY_REGION-42.patch @@ -0,0 +1,30 @@ +From ca07c86b2aeeb91213922eaf481c9e224679a7fd Mon Sep 17 00:00:00 2001 +From: Jiri Slaby +Date: Fri, 17 Mar 2023 20:28:24 +0100 +Subject: [PATCH] kvm: drop KVM_SET_MEMORY_REGION (#42) + +It was dropped in upstream in commit 61e15f871241 (KVM: Delete all +references to removed KVM_SET_MEMORY_REGION ioctl). + +Co-authored-by: Jiri Slaby +Signed-off-by: Waldemar Brodkorb +Upstream: https://github.com/kernelslacker/trinity/commit/ca07c86b2aeeb91213922eaf481c9e224679a7fd +--- + ioctls/kvm.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/ioctls/kvm.c b/ioctls/kvm.c +index 14c55ef1..30aeed7a 100644 +--- a/ioctls/kvm.c ++++ b/ioctls/kvm.c +@@ -8,7 +8,6 @@ + #include "utils.h" + + static const struct ioctl kvm_ioctls[] = { +- IOCTL(KVM_SET_MEMORY_REGION), + IOCTL(KVM_CREATE_VCPU), + IOCTL(KVM_GET_DIRTY_LOG), + IOCTL(KVM_SET_NR_MMU_PAGES), +-- +2.39.2 + diff --git a/package/ttyd/Config.in b/package/ttyd/Config.in index ecc705b17e94..103a4ac4aa88 100644 --- a/package/ttyd/Config.in +++ b/package/ttyd/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_TTYD depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv, json-c depends on BR2_USE_MMU # libuv + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libuv select BR2_PACKAGE_JSON_C select BR2_PACKAGE_LIBUV select BR2_PACKAGE_LIBWEBSOCKETS @@ -15,7 +16,8 @@ config BR2_PACKAGE_TTYD https://github.com/tsl0922/ttyd -comment "ttyd needs a toolchain w/ NPTL, dynamic library" - depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS +comment "ttyd needs a toolchain w/ NPTL, dynamic library, gcc >= 4.9" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/tvheadend/0001-no-check_config.patch b/package/tvheadend/0001-no-check_config.patch index 9261e5fff6d3..45c862d30076 100644 --- a/package/tvheadend/0001-no-check_config.patch +++ b/package/tvheadend/0001-no-check_config.patch @@ -12,7 +12,7 @@ Signed-off-by: "Yann E. MORIN" diff -durN tvheadend-c84bc2b72b462ef2dbed305f3fd0bb3fa5046fc3.orig/Makefile tvheadend-c84bc2b72b462ef2dbed305f3fd0bb3fa5046fc3/Makefile --- tvheadend-c84bc2b72b462ef2dbed305f3fd0bb3fa5046fc3.orig/Makefile 2014-03-09 14:47:43.780025330 +0100 +++ tvheadend-c84bc2b72b462ef2dbed305f3fd0bb3fa5046fc3/Makefile 2014-03-09 14:48:40.836539093 +0100 -@@ -708,7 +708,7 @@ +@@ -710,7 +710,7 @@ $(ROOTDIR)/configure $(CONFIGURE_ARGS) # Binary diff --git a/package/tvheadend/Config.in b/package/tvheadend/Config.in index 99a24ec01103..fa06f345e9d7 100644 --- a/package/tvheadend/Config.in +++ b/package/tvheadend/Config.in @@ -1,14 +1,14 @@ comment "tvheadend needs a toolchain w/ NPTL, headers >= 3.2, dynamic library" depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 || BR2_STATIC_LIBS - depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on BR2_TOOLCHAIN_HAS_SYNC_8 menuconfig BR2_PACKAGE_TVHEADEND bool "tvheadend" depends on !BR2_STATIC_LIBS # dladdr() depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 - depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on BR2_TOOLCHAIN_HAS_SYNC_8 select BR2_PACKAGE_DTV_SCAN_TABLES select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE select BR2_PACKAGE_OPENSSL @@ -63,7 +63,6 @@ config BR2_PACKAGE_TVHEADEND_TRANSCODING bool "transcoding support" depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS select BR2_PACKAGE_FFMPEG - select BR2_PACKAGE_FFMPEG_AVRESAMPLE select BR2_PACKAGE_FFMPEG_GPL # needed for x264 support select BR2_PACKAGE_FFMPEG_SWSCALE # vp8 encoder needs c++ diff --git a/package/tvheadend/tvheadend.hash b/package/tvheadend/tvheadend.hash index 45c8bd62b0fd..5a9ec3df23b1 100644 --- a/package/tvheadend/tvheadend.hash +++ b/package/tvheadend/tvheadend.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 06c6d33a8e9d1d645cea9c63a06f6bddb309e5546177966d7b9285f68313bf5b tvheadend-c9a156a25a07f1f84c2f48a1b03b481430c8257d.tar.gz +sha256 98a27a6a5ce2fc800df6d154534f494582418f6b24b3a1c30267785d191e50df tvheadend-62adbebfd062d7b97829268274aad92df2033784.tar.gz sha256 54dc3cbc00bf126bcba43e2af7f3ad1dc00f335985da1409fa943c7b7256d942 LICENSE.md diff --git a/package/tvheadend/tvheadend.mk b/package/tvheadend/tvheadend.mk index 0ca8f46dc542..1d4e6ee30cb4 100644 --- a/package/tvheadend/tvheadend.mk +++ b/package/tvheadend/tvheadend.mk @@ -4,7 +4,7 @@ # ################################################################################ -TVHEADEND_VERSION = c9a156a25a07f1f84c2f48a1b03b481430c8257d +TVHEADEND_VERSION = 62adbebfd062d7b97829268274aad92df2033784 TVHEADEND_SITE = $(call github,tvheadend,tvheadend,$(TVHEADEND_VERSION)) TVHEADEND_LICENSE = GPL-3.0+ TVHEADEND_LICENSE_FILES = LICENSE.md diff --git a/package/tzdata/tzdata.hash b/package/tzdata/tzdata.hash index aadd320063dd..5488625ddd29 100644 --- a/package/tzdata/tzdata.hash +++ b/package/tzdata/tzdata.hash @@ -1,4 +1,4 @@ -# From https://mm.icann.org/pipermail/tz-announce/2022-October/000075.html -sha512 72d05d05be999075cdf57b896c0f4238b1b862d4d0ed92cc611736592a4ada14d47bd7f0fc8be39e7938a7f5940a903c8af41e87859482bcfab787d889d429f6 tzdata2022f.tar.gz +# From https://mm.icann.org/pipermail/tz-announce/2023-March/000079.html +sha512 608bd286ebcbd0004cfdc1da183273f08aff61f90c8867661154453d77a05d421e4c46ad6d066a1fe2e87d5c82ec0f1c0224667a3b35f3180a3eb7f6ff84cbf5 tzdata2023c.tar.gz # Locally computed: sha256 0613408568889f5739e5ae252b722a2659c02002839ad970a63dc5e9174b27cf LICENSE diff --git a/package/tzdata/tzdata.mk b/package/tzdata/tzdata.mk index 45bd7cf6e6d9..33e296d7d740 100644 --- a/package/tzdata/tzdata.mk +++ b/package/tzdata/tzdata.mk @@ -4,9 +4,10 @@ # ################################################################################ -TZDATA_VERSION = 2022f +TZDATA_VERSION = 2023c TZDATA_SOURCE = tzdata$(TZDATA_VERSION).tar.gz TZDATA_SITE = https://www.iana.org/time-zones/repository/releases +TZDATA_SELINUX_MODULES = tzdata TZDATA_STRIP_COMPONENTS = 0 TZDATA_DEPENDENCIES = host-tzdata HOST_TZDATA_DEPENDENCIES = host-zic diff --git a/package/uacme/uacme.mk b/package/uacme/uacme.mk index 9b2360937b37..b260bd85eed1 100644 --- a/package/uacme/uacme.mk +++ b/package/uacme/uacme.mk @@ -13,12 +13,15 @@ UACME_LICENSE = GPL-3.0+ UACME_LICENSE_FILES = COPYING UACME_DEPENDENCIES = libcurl -UACME_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99' +UACME_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99' LIBS="$(UACME_LIBS)" ifeq ($(BR2_PACKAGE_GNUTLS),y) UACME_CONF_OPTS += --with-gnutls UACME_DEPENDENCIES += gnutls else ifeq ($(BR2_PACKAGE_MBEDTLS),y) +ifeq ($(BR2_PACKAGE_MBEDTLS_COMPRESSION),y) + UACME_LIBS += -lz +endif UACME_CONF_OPTS += --with-mbedtls UACME_DEPENDENCIES += mbedtls else ifeq ($(BR2_PACKAGE_OPENSSL),y) diff --git a/package/ubus/ubus.hash b/package/ubus/ubus.hash index 2b7181e5d235..faa2e2626e22 100644 --- a/package/ubus/ubus.hash +++ b/package/ubus/ubus.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 275d184006f2f60c9b0172d8fd0ccc8952f182960c0d3d0945be640873c1bef6 ubus-a72457b61df045d3c499a6211362b751710590d7-br1.tar.gz +sha256 e3022aa3cf6c38a4d3c0d798d9a9c7069ada063a0a5fe6894b466b71b17ce9cc ubus-f787c97b34894a38b15599886cacbca01271684f-br1.tar.gz sha256 a3caa6c0e90c87b7c97c2ac3d0c0d416082ef777215faec2e9b24ea6e68f6988 ubusd_acl.h diff --git a/package/ubus/ubus.mk b/package/ubus/ubus.mk index fa856fb36acf..1f9891411ac0 100644 --- a/package/ubus/ubus.mk +++ b/package/ubus/ubus.mk @@ -4,7 +4,7 @@ # ################################################################################ -UBUS_VERSION = a72457b61df045d3c499a6211362b751710590d7 +UBUS_VERSION = f787c97b34894a38b15599886cacbca01271684f UBUS_SITE = https://git.openwrt.org/project/ubus.git UBUS_SITE_METHOD = git diff --git a/package/uclibc-ng-test/uclibc-ng-test.hash b/package/uclibc-ng-test/uclibc-ng-test.hash index 4028bada4c05..c4db6ebf832c 100644 --- a/package/uclibc-ng-test/uclibc-ng-test.hash +++ b/package/uclibc-ng-test/uclibc-ng-test.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 655c9d9732cf24d8230defac7ef4d6bd92ad05c070ab02fe99c1fb47c7a40039 uclibc-ng-test-6790eafe897b3a8c19a2caf50a5ecccf06647adf-br1.tar.gz +sha256 f261229c43c026e39178aca48f4f3caacd0bbe373ccd06d27954e7a5fa768fe8 uclibc-ng-test-0f303c63fab7f4038515ced6f2659242cf60ac19-br1.tar.gz sha256 6095e9ffa777dd22839f7801aa845b31c9ed07f3d6bf8a26dc5d2dec8ccc0ef3 COPYING.LIB diff --git a/package/uclibc-ng-test/uclibc-ng-test.mk b/package/uclibc-ng-test/uclibc-ng-test.mk index a678bcf7f007..7d624012449b 100644 --- a/package/uclibc-ng-test/uclibc-ng-test.mk +++ b/package/uclibc-ng-test/uclibc-ng-test.mk @@ -4,8 +4,9 @@ # ################################################################################ -UCLIBC_NG_TEST_VERSION = 6790eafe897b3a8c19a2caf50a5ecccf06647adf -UCLIBC_NG_TEST_SITE = git://uclibc-ng.org/git/uclibc-ng-test +UCLIBC_NG_TEST_VERSION = 0f303c63fab7f4038515ced6f2659242cf60ac19 +UCLIBC_NG_TEST_SITE = https://git.uclibc-ng.org/git/uclibc-ng-test.git +UCLIBC_NG_TEST_SITE_METHOD = git UCLIBC_NG_TEST_LICENSE = LGPL-2.1+ UCLIBC_NG_TEST_LICENSE_FILES = COPYING.LIB diff --git a/package/uclibc/0001-aarch64-add-hwcap-header-file.patch b/package/uclibc/0001-aarch64-add-hwcap-header-file.patch new file mode 100644 index 000000000000..058e3242f94e --- /dev/null +++ b/package/uclibc/0001-aarch64-add-hwcap-header-file.patch @@ -0,0 +1,163 @@ +From becd0cbc4168534e311f47dda6f67450ad0006b5 Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb +Date: Tue, 8 Aug 2023 13:47:27 +0200 +Subject: [PATCH] aarch64: add hwcap header file + +Signed-off-by: Waldemar Brodkorb +Upstream: https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=becd0cbc4168534e311f47dda6f67450ad0006b5 +--- + include/sys/auxv.h | 1 + + libc/sysdeps/linux/aarch64/bits/hwcap.h | 99 +++++++++++++++++++++++++ + libc/sysdeps/linux/common/bits/hwcap.h | 22 ++++++ + 3 files changed, 122 insertions(+) + create mode 100644 libc/sysdeps/linux/aarch64/bits/hwcap.h + create mode 100644 libc/sysdeps/linux/common/bits/hwcap.h + +diff --git a/include/sys/auxv.h b/include/sys/auxv.h +index f35196423..b07026457 100644 +--- a/include/sys/auxv.h ++++ b/include/sys/auxv.h +@@ -20,6 +20,7 @@ + + #include + #include ++#include + + __BEGIN_DECLS + +diff --git a/libc/sysdeps/linux/aarch64/bits/hwcap.h b/libc/sysdeps/linux/aarch64/bits/hwcap.h +new file mode 100644 +index 000000000..20061f5d1 +--- /dev/null ++++ b/libc/sysdeps/linux/aarch64/bits/hwcap.h +@@ -0,0 +1,99 @@ ++/* Defines for bits in AT_HWCAP. AArch64 Linux version. ++ Copyright (C) 2016-2023 Free Software Foundation, Inc. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++#if !defined (_SYS_AUXV_H) ++# error "Never include directly; use instead." ++#endif ++ ++/* The following must match the kernel's and update the ++ list together with sysdeps/unix/sysv/linux/aarch64/dl-procinfo.c. */ ++#define HWCAP_FP (1 << 0) ++#define HWCAP_ASIMD (1 << 1) ++#define HWCAP_EVTSTRM (1 << 2) ++#define HWCAP_AES (1 << 3) ++#define HWCAP_PMULL (1 << 4) ++#define HWCAP_SHA1 (1 << 5) ++#define HWCAP_SHA2 (1 << 6) ++#define HWCAP_CRC32 (1 << 7) ++#define HWCAP_ATOMICS (1 << 8) ++#define HWCAP_FPHP (1 << 9) ++#define HWCAP_ASIMDHP (1 << 10) ++#define HWCAP_CPUID (1 << 11) ++#define HWCAP_ASIMDRDM (1 << 12) ++#define HWCAP_JSCVT (1 << 13) ++#define HWCAP_FCMA (1 << 14) ++#define HWCAP_LRCPC (1 << 15) ++#define HWCAP_DCPOP (1 << 16) ++#define HWCAP_SHA3 (1 << 17) ++#define HWCAP_SM3 (1 << 18) ++#define HWCAP_SM4 (1 << 19) ++#define HWCAP_ASIMDDP (1 << 20) ++#define HWCAP_SHA512 (1 << 21) ++#define HWCAP_SVE (1 << 22) ++#define HWCAP_ASIMDFHM (1 << 23) ++#define HWCAP_DIT (1 << 24) ++#define HWCAP_USCAT (1 << 25) ++#define HWCAP_ILRCPC (1 << 26) ++#define HWCAP_FLAGM (1 << 27) ++#define HWCAP_SSBS (1 << 28) ++#define HWCAP_SB (1 << 29) ++#define HWCAP_PACA (1 << 30) ++#define HWCAP_PACG (1UL << 31) ++ ++#define HWCAP2_DCPODP (1 << 0) ++#define HWCAP2_SVE2 (1 << 1) ++#define HWCAP2_SVEAES (1 << 2) ++#define HWCAP2_SVEPMULL (1 << 3) ++#define HWCAP2_SVEBITPERM (1 << 4) ++#define HWCAP2_SVESHA3 (1 << 5) ++#define HWCAP2_SVESM4 (1 << 6) ++#define HWCAP2_FLAGM2 (1 << 7) ++#define HWCAP2_FRINT (1 << 8) ++#define HWCAP2_SVEI8MM (1 << 9) ++#define HWCAP2_SVEF32MM (1 << 10) ++#define HWCAP2_SVEF64MM (1 << 11) ++#define HWCAP2_SVEBF16 (1 << 12) ++#define HWCAP2_I8MM (1 << 13) ++#define HWCAP2_BF16 (1 << 14) ++#define HWCAP2_DGH (1 << 15) ++#define HWCAP2_RNG (1 << 16) ++#define HWCAP2_BTI (1 << 17) ++#define HWCAP2_MTE (1 << 18) ++#define HWCAP2_ECV (1 << 19) ++#define HWCAP2_AFP (1 << 20) ++#define HWCAP2_RPRES (1 << 21) ++#define HWCAP2_MTE3 (1 << 22) ++#define HWCAP2_SME (1 << 23) ++#define HWCAP2_SME_I16I64 (1 << 24) ++#define HWCAP2_SME_F64F64 (1 << 25) ++#define HWCAP2_SME_I8I32 (1 << 26) ++#define HWCAP2_SME_F16F32 (1 << 27) ++#define HWCAP2_SME_B16F32 (1 << 28) ++#define HWCAP2_SME_F32F32 (1 << 29) ++#define HWCAP2_SME_FA64 (1 << 30) ++#define HWCAP2_WFXT (1UL << 31) ++#define HWCAP2_EBF16 (1UL << 32) ++#define HWCAP2_SVE_EBF16 (1UL << 33) ++#define HWCAP2_CSSC (1UL << 34) ++#define HWCAP2_RPRFM (1UL << 35) ++#define HWCAP2_SVE2P1 (1UL << 36) ++#define HWCAP2_SME2 (1UL << 37) ++#define HWCAP2_SME2P1 (1UL << 38) ++#define HWCAP2_SME_I16I32 (1UL << 39) ++#define HWCAP2_SME_BI32I32 (1UL << 40) ++#define HWCAP2_SME_B16B16 (1UL << 41) ++#define HWCAP2_SME_F16F16 (1UL << 42) +diff --git a/libc/sysdeps/linux/common/bits/hwcap.h b/libc/sysdeps/linux/common/bits/hwcap.h +new file mode 100644 +index 000000000..e7b899df0 +--- /dev/null ++++ b/libc/sysdeps/linux/common/bits/hwcap.h +@@ -0,0 +1,22 @@ ++/* Defines for bits in AT_HWCAP. ++ Copyright (C) 2012-2023 Free Software Foundation, Inc. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++#ifndef _SYS_AUXV_H ++# error "Never include directly; use instead." ++#endif ++ ++/* No bits defined for this architecture. */ +-- +2.30.2 + diff --git a/package/uclibc/0002-fcntl.h-declare-f_owner_ex-for-all-architectures.patch b/package/uclibc/0002-fcntl.h-declare-f_owner_ex-for-all-architectures.patch new file mode 100644 index 000000000000..da0135a5e30c --- /dev/null +++ b/package/uclibc/0002-fcntl.h-declare-f_owner_ex-for-all-architectures.patch @@ -0,0 +1,85 @@ +From 98576ab8de710507419b016fbcfc82ed7c57f9c3 Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb +Date: Wed, 9 Aug 2023 10:31:28 +0200 +Subject: [PATCH] fcntl.h: declare f_owner_ex for all architectures + +Signed-off-by: Waldemar Brodkorb +Upstream: https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=98576ab8de710507419b016fbcfc82ed7c57f9c3 +--- + include/fcntl.h | 20 ++++++++++++++++++++ + libc/sysdeps/linux/aarch64/bits/fcntl.h | 21 --------------------- + 2 files changed, 20 insertions(+), 21 deletions(-) + +diff --git a/include/fcntl.h b/include/fcntl.h +index 136f64d70..ce15ceaf6 100644 +--- a/include/fcntl.h ++++ b/include/fcntl.h +@@ -296,6 +296,26 @@ int name_to_handle_at(int dirfd, const char *pathname, + int open_by_handle_at(int mount_fd, struct file_handle *handle, int flags); + #endif + ++#ifdef __USE_GNU ++# define F_SETOWN_EX 15 /* Get owner (thread receiving SIGIO). */ ++# define F_GETOWN_EX 16 /* Set owner (thread receiving SIGIO). */ ++/* Owner types. */ ++enum __pid_type ++ { ++ F_OWNER_TID = 0, /* Kernel thread. */ ++ F_OWNER_PID, /* Process. */ ++ F_OWNER_PGRP, /* Process group. */ ++ F_OWNER_GID = F_OWNER_PGRP /* Alternative, obsolete name. */ ++ }; ++ ++/* Structure to use with F_GETOWN_EX and F_SETOWN_EX. */ ++struct f_owner_ex ++ { ++ enum __pid_type type; /* Owner type of ID. */ ++ __pid_t pid; /* ID of owner. */ ++ }; ++#endif ++ + __END_DECLS + + #endif /* fcntl.h */ +diff --git a/libc/sysdeps/linux/aarch64/bits/fcntl.h b/libc/sysdeps/linux/aarch64/bits/fcntl.h +index c143ba9c9..dbe929351 100644 +--- a/libc/sysdeps/linux/aarch64/bits/fcntl.h ++++ b/libc/sysdeps/linux/aarch64/bits/fcntl.h +@@ -94,8 +94,6 @@ + #ifdef __USE_GNU + # define F_SETSIG 10 /* Set number of signal to be sent. */ + # define F_GETSIG 11 /* Get number of signal to be sent. */ +-# define F_SETOWN_EX 15 /* Get owner (thread receiving SIGIO). */ +-# define F_GETOWN_EX 16 /* Set owner (thread receiving SIGIO). */ + #endif + + +@@ -170,25 +168,6 @@ struct flock64 + }; + #endif + +- +-#ifdef __USE_GNU +-/* Owner types. */ +-enum __pid_type +- { +- F_OWNER_TID = 0, /* Kernel thread. */ +- F_OWNER_PID, /* Process. */ +- F_OWNER_PGRP, /* Process group. */ +- F_OWNER_GID = F_OWNER_PGRP /* Alternative, obsolete name. */ +- }; +- +-/* Structure to use with F_GETOWN_EX and F_SETOWN_EX. */ +-struct f_owner_ex +- { +- enum __pid_type type; /* Owner type of ID. */ +- __pid_t pid; /* ID of owner. */ +- }; +-#endif +- + /* Define some more compatibility macros to be backward compatible with + BSD systems which did not managed to hide these kernel macros. */ + #ifdef __USE_BSD +-- +2.30.2 + diff --git a/package/uclibc/uclibc.hash b/package/uclibc/uclibc.hash index 0122d08789e9..8d87c0438367 100644 --- a/package/uclibc/uclibc.hash +++ b/package/uclibc/uclibc.hash @@ -1,4 +1,4 @@ -# From https://downloads.uclibc-ng.org/releases/1.0.42/uClibc-ng-1.0.42.tar.xz.sha256 -sha256 ec6dae44ce86558885e56bc3bef6bd4d082397114e6e1fc15795f71e804d7016 uClibc-ng-1.0.42.tar.xz +# From https://downloads.uclibc-ng.org/releases/1.0.44/uClibc-ng-1.0.44.tar.xz.sha256 +sha256 7df9d987955827382f1c2400da513456becbb6f868bdfd37737265f1cbeec994 uClibc-ng-1.0.44.tar.xz # Locally calculated sha256 6095e9ffa777dd22839f7801aa845b31c9ed07f3d6bf8a26dc5d2dec8ccc0ef3 COPYING.LIB diff --git a/package/uclibc/uclibc.mk b/package/uclibc/uclibc.mk index 4c05d36ab342..4e7d8de64381 100644 --- a/package/uclibc/uclibc.mk +++ b/package/uclibc/uclibc.mk @@ -4,7 +4,7 @@ # ################################################################################ -UCLIBC_VERSION = 1.0.42 +UCLIBC_VERSION = 1.0.44 UCLIBC_SOURCE = uClibc-ng-$(UCLIBC_VERSION).tar.xz UCLIBC_SITE = https://downloads.uclibc-ng.org/releases/$(UCLIBC_VERSION) UCLIBC_LICENSE = LGPL-2.1+ diff --git a/package/udisks/Config.in b/package/udisks/Config.in index b1d02a31b2cc..23eec1d79e27 100644 --- a/package/udisks/Config.in +++ b/package/udisks/Config.in @@ -16,6 +16,7 @@ config BR2_PACKAGE_UDISKS select BR2_PACKAGE_LIBBLOCKDEV_FS select BR2_PACKAGE_LIBBLOCKDEV_LOOP select BR2_PACKAGE_LIBBLOCKDEV_MDRAID + select BR2_PACKAGE_LIBBLOCKDEV_NVME select BR2_PACKAGE_LIBBLOCKDEV_PART select BR2_PACKAGE_LIBBLOCKDEV_SWAP select BR2_PACKAGE_LIBGUDEV diff --git a/package/udisks/udisks.hash b/package/udisks/udisks.hash index ade4982a0b2f..66f4be5e1f5e 100644 --- a/package/udisks/udisks.hash +++ b/package/udisks/udisks.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 b6b60ebab0d5e09624120c5d158882e87d8c2473db60783b63deeba74cb18d1c udisks-2.9.4.tar.bz2 +sha256 b75734ccf602540dedb4068bec206adcb508a4c003725e117ae8f994d92d8ece udisks-2.10.1.tar.bz2 sha256 98046e932dc6c739001e79d7079a3bd958fc55475dcd917d27f884c0c93525cc COPYING diff --git a/package/udisks/udisks.mk b/package/udisks/udisks.mk index 840f552b0457..0d63532d8a6f 100644 --- a/package/udisks/udisks.mk +++ b/package/udisks/udisks.mk @@ -4,7 +4,7 @@ # ################################################################################ -UDISKS_VERSION = 2.9.4 +UDISKS_VERSION = 2.10.1 UDISKS_SOURCE = udisks-$(UDISKS_VERSION).tar.bz2 UDISKS_SITE = https://github.com/storaged-project/udisks/releases/download/udisks-$(UDISKS_VERSION) UDISKS_LICENSE = GPL-2.0+ diff --git a/package/udpcast/udpcast.hash b/package/udpcast/udpcast.hash index 9ce91330fd8b..aca098d982f2 100644 --- a/package/udpcast/udpcast.hash +++ b/package/udpcast/udpcast.hash @@ -1,3 +1,3 @@ # locally computed hash -sha256 a3cebee7a87ecf1bca0645f125be78fbd7b37846a4da82fecef96b92cc64d050 udpcast-20211207.tar.gz +sha256 17b5cd8b1e54f7e2e53357ac02ee86e4198bf704096987a03a3b5c402a0ecea1 udpcast-20230924.tar.gz sha256 422befd3503b1f39a6027017f639874c1f274e37ec60ba3174894646b584ccbc COPYING diff --git a/package/udpcast/udpcast.mk b/package/udpcast/udpcast.mk index 4ea73e20c75e..64a0bfbd371d 100644 --- a/package/udpcast/udpcast.mk +++ b/package/udpcast/udpcast.mk @@ -4,7 +4,7 @@ # ################################################################################ -UDPCAST_VERSION = 20211207 +UDPCAST_VERSION = 20230924 UDPCAST_SITE = http://www.udpcast.linux.lu/download UDPCAST_DEPENDENCIES = host-m4 UDPCAST_LICENSE = BSD-2-Clause, GPL-2.0+ diff --git a/package/uftrace/0001-cmds-records-replace-ADDR_NO_RANDOMIZE-by-its-value.patch b/package/uftrace/0001-cmds-records-replace-ADDR_NO_RANDOMIZE-by-its-value.patch index 6913012c3b4b..2855be0d9edb 100644 --- a/package/uftrace/0001-cmds-records-replace-ADDR_NO_RANDOMIZE-by-its-value.patch +++ b/package/uftrace/0001-cmds-records-replace-ADDR_NO_RANDOMIZE-by-its-value.patch @@ -11,6 +11,7 @@ Using a #ifdef ... #endif test doesn't work as this value is defined through an enum in glibc. Signed-off-by: Thomas Petazzoni +Upstream: https://github.com/namhyung/uftrace/pull/1389 --- cmds/record.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/uftrace/uftrace.hash b/package/uftrace/uftrace.hash index 195f0605c8bd..c4aad39016ba 100644 --- a/package/uftrace/uftrace.hash +++ b/package/uftrace/uftrace.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 2aad01f27d4f18717b681824c7a28ac3e1efd5e7bbed3ec888a3ea5af60e3700 uftrace-0.12.tar.gz +sha256 b81255bc288e79e96a5b158d4875fa6425ad51c85f4c4c8523c1defb9366ad12 uftrace-0.14.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/uftrace/uftrace.mk b/package/uftrace/uftrace.mk index d36c3bd8f53d..c005a32b7601 100644 --- a/package/uftrace/uftrace.mk +++ b/package/uftrace/uftrace.mk @@ -4,7 +4,7 @@ # ################################################################################ -UFTRACE_VERSION = 0.12 +UFTRACE_VERSION = 0.14 UFTRACE_SITE = $(call github,namhyung,uftrace,v$(UFTRACE_VERSION)) UFTRACE_LICENSE = GPL-2.0 UFTRACE_LICENSE_FILES = COPYING diff --git a/package/uhd/Config.in b/package/uhd/Config.in index 75554259d0e5..2ccfe3ccb883 100644 --- a/package/uhd/Config.in +++ b/package/uhd/Config.in @@ -1,8 +1,9 @@ -comment "uhd needs a toolchain w/ C++, NPTL, wchar, dynamic library" +comment "uhd needs a toolchain w/ C++, NPTL, wchar, dynamic library, gcc >= 5" depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ - !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS + !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_5 comment "uhd needs a toolchain not affected by GCC bug 64735" depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735 @@ -16,6 +17,7 @@ config BR2_PACKAGE_UHD depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL depends on BR2_USE_MMU # use fork() depends on BR2_USE_WCHAR # boost + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 # boost-math select BR2_PACKAGE_BOOST select BR2_PACKAGE_BOOST_ATOMIC select BR2_PACKAGE_BOOST_CHRONO @@ -92,16 +94,20 @@ config BR2_PACKAGE_UHD_OCTOCLOCK help enable OctoClock support -comment "uhd python API needs python3 and a toolchain w/ glibc or musl" +comment "uhd python API needs python3 and a glibc or musl toolchain w/ gcc >= 9, host gcc >= 9" depends on !BR2_PACKAGE_PYTHON3 depends on !BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS - depends on !(BR2_TOOLCHAIN_USES_GLIBC && BR2_TOOLCHAIN_USES_MUSL) # python-numpy + depends on !BR2_HOST_GCC_AT_LEAST_9 || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_9 || \ + !(BR2_TOOLCHAIN_USES_GLIBC && BR2_TOOLCHAIN_USES_MUSL) # python-numpy config BR2_PACKAGE_UHD_PYTHON bool "python API support" depends on BR2_PACKAGE_PYTHON3 depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL # python-numpy + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_9 # python-numpy + depends on BR2_HOST_GCC_AT_LEAST_9 # host-python-numpy select BR2_PACKAGE_PYTHON_NUMPY select BR2_PACKAGE_PYTHON_REQUESTS help diff --git a/package/unifdef/Config.in b/package/unifdef/Config.in new file mode 100644 index 000000000000..a1a44d9f5a39 --- /dev/null +++ b/package/unifdef/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_UNIFDEF + bool "unifdef" + help + The unifdef utility selectively processes conditional C + preprocessor #if and #ifdef directives. It removes from a file + both the #directives and the additional text that they + delimit, while otherwise leaving the file alone. + + http://dotat.at/prog/unifdef/ diff --git a/package/unifdef/unifdef.mk b/package/unifdef/unifdef.mk index 7d10595d1b72..6761e32b6949 100644 --- a/package/unifdef/unifdef.mk +++ b/package/unifdef/unifdef.mk @@ -6,9 +6,17 @@ UNIFDEF_VERSION = 2.12 UNIFDEF_SITE = https://dotat.at/prog/unifdef -UNIFDEF_LICENSE = BSD-2-Clause +UNIFDEF_LICENSE = BSD-2-Clause, BSD-3-Clause UNIFDEF_LICENSE_FILES = COPYING +define UNIFDEF_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) +endef + +define UNIFDEF_INSTALL_TARGET_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) prefix=$(TARGET_DIR) install +endef + define HOST_UNIFDEF_BUILD_CMDS $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) endef @@ -17,4 +25,5 @@ define HOST_UNIFDEF_INSTALL_CMDS $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) prefix=$(HOST_DIR) install endef +$(eval $(generic-package)) $(eval $(host-generic-package)) diff --git a/package/unixodbc/0001-DriverManager-drivermanager.h-fix-build-without-thre.patch b/package/unixodbc/0001-DriverManager-drivermanager.h-fix-build-without-thre.patch deleted file mode 100644 index 9d54bbf5efda..000000000000 --- a/package/unixodbc/0001-DriverManager-drivermanager.h-fix-build-without-thre.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 119cab666646cd9210439d4696a4bfa18343a2c6 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Tue, 12 Jul 2022 00:29:28 +0200 -Subject: [PATCH] DriverManager/drivermanager.h: fix build without threads - -Fix the following build failure without threads raised since version -2.3.10 and commit 6df155fb213896b9507b421c58856e4376647ae1: - -/home/buildroot/autobuild/run/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabihf/9.3.0/../../../../arm-buildroot-linux-uclibcgnueabihf/bin/ld: ../DriverManager/.libs/libodbc.so: undefined reference to `pool_timedwait' -/home/buildroot/autobuild/run/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabihf/9.3.0/../../../../arm-buildroot-linux-uclibcgnueabihf/bin/ld: ../DriverManager/.libs/libodbc.so: undefined reference to `pool_signal' - -Fixes: - - http://autobuild.buildroot.org/results/131eafaddfc956c7d54c81ed72a31baf28ab1ab6 - -Signed-off-by: Fabrice Fontaine -[Retrieved from: -https://github.com/lurcher/unixODBC/commit/119cab666646cd9210439d4696a4bfa18343a2c6] ---- - DriverManager/drivermanager.h | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/DriverManager/drivermanager.h b/DriverManager/drivermanager.h -index 9528fae..abd324b 100644 ---- a/DriverManager/drivermanager.h -+++ b/DriverManager/drivermanager.h -@@ -808,6 +808,8 @@ void pool_signal(); - - #define thread_protect(a,b) - #define thread_release(a,b) -+#define pool_timedwait(a) -+#define pool_signal() - - #endif - diff --git a/package/unixodbc/unixodbc.hash b/package/unixodbc/unixodbc.hash index 9e5401c2b38d..6262dab5aec2 100644 --- a/package/unixodbc/unixodbc.hash +++ b/package/unixodbc/unixodbc.hash @@ -1,4 +1,4 @@ # Locally computed -sha256 d9e55c8e7118347e3c66c87338856dad1516b490fb7c756c1562a2c267c73b5c unixODBC-2.3.11.tar.gz +sha256 f210501445ce21bf607ba51ef8c125e10e22dffdffec377646462df5f01915ec unixODBC-2.3.12.tar.gz sha256 a6b9aa1e9bfade121164c06fd975e9b913a8e38bf33d25ff967dfa3ed07d12f8 COPYING sha256 1e594f4c7fd6d099eca4bd1340b39d871ce0298331d8ebd4b68935548ee45cf4 exe/COPYING diff --git a/package/unixodbc/unixodbc.mk b/package/unixodbc/unixodbc.mk index 650e3b3b366d..28f1e5bc94fc 100644 --- a/package/unixodbc/unixodbc.mk +++ b/package/unixodbc/unixodbc.mk @@ -4,7 +4,7 @@ # ################################################################################ -UNIXODBC_VERSION = 2.3.11 +UNIXODBC_VERSION = 2.3.12 UNIXODBC_SOURCE = unixODBC-$(UNIXODBC_VERSION).tar.gz UNIXODBC_SITE = http://www.unixodbc.org UNIXODBC_INSTALL_STAGING = YES diff --git a/package/unrar/Config.in b/package/unrar/Config.in index 29696c35aa95..8a3def699b55 100644 --- a/package/unrar/Config.in +++ b/package/unrar/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_UNRAR bool "unrar" depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_WCHAR help @@ -8,6 +9,7 @@ config BR2_PACKAGE_UNRAR http://www.rarlab.com/rar_add.htm -comment "unrar needs a toolchain w/ C++, wchar, threads" +comment "unrar needs a toolchain w/ C++, wchar, threads, gcc >= 4.8" depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 \ || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/unrar/unrar.hash b/package/unrar/unrar.hash index 40e05a1a320c..f0600af771f7 100644 --- a/package/unrar/unrar.hash +++ b/package/unrar/unrar.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 de75b6136958173fdfc530d38a0145b72342cf0d3842bf7bb120d336602d88ed unrarsrc-6.1.7.tar.gz +sha256 55fe6ebd5e48d6655bfda3fd19b55438ca05e13c7e69772420caad9fdb68ef42 unrarsrc-6.2.10.tar.gz sha256 6ecc1687808b7d66b24f874755abfed7464d9751ed0001cd4e8e5d9bf397ff8a license.txt diff --git a/package/unrar/unrar.mk b/package/unrar/unrar.mk index fee9fb753bbb..ac19225937ab 100644 --- a/package/unrar/unrar.mk +++ b/package/unrar/unrar.mk @@ -4,7 +4,7 @@ # ################################################################################ -UNRAR_VERSION = 6.1.7 +UNRAR_VERSION = 6.2.10 UNRAR_SOURCE = unrarsrc-$(UNRAR_VERSION).tar.gz UNRAR_SITE = https://www.rarlab.com/rar UNRAR_LICENSE = unrar @@ -13,7 +13,7 @@ UNRAR_CPE_ID_VENDOR = rarlab define UNRAR_BUILD_CMDS $(TARGET_MAKE_ENV) $(MAKE) CXX="$(TARGET_CXX)" STRIP="/bin/true" \ - CXXFLAGS="$(TARGET_CXXFLAGS) -pthread" \ + CXXFLAGS="$(TARGET_CXXFLAGS) -pthread -std=c++11" \ LDFLAGS="$(TARGET_LDFLAGS) -pthread" -C $(@D) endef diff --git a/package/unzip/unzip.mk b/package/unzip/unzip.mk index 44cc2013fbcb..14ccedd48fd2 100644 --- a/package/unzip/unzip.mk +++ b/package/unzip/unzip.mk @@ -28,4 +28,18 @@ UNZIP_IGNORE_CVES = \ CVE-2022-0529 \ CVE-2022-0530 +# unzip already defines _LARGEFILE_SOURCE and _LARGEFILE64_SOURCE when +# necessary, redefining it on the command line causes some warnings. +UNZIP_TARGET_CFLAGS = \ + $(filter-out -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE,$(TARGET_CFLAGS)) + +# unzip already defines _LARGEFILE_SOURCE and _LARGEFILE64_SOURCE when +# necessary, redefining it on the command line causes some warnings. +UNZIP_TARGET_CXXFLAGS = \ + $(filter-out -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE,$(TARGET_CXXFLAGS)) + +UNZIP_CONF_OPTS += \ + -DCMAKE_C_FLAGS="$(UNZIP_TARGET_CFLAGS) -DLARGE_FILE_SUPPORT" \ + -DCMAKE_CXX_FLAGS="$(UNZIP_TARGET_CXXFLAGS) -DLARGE_FILE_SUPPORT" + $(eval $(cmake-package)) diff --git a/package/upx/upx.hash b/package/upx/upx.hash index 7c2490615248..072bc0656edd 100644 --- a/package/upx/upx.hash +++ b/package/upx/upx.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 1221e725b1a89e06739df27fae394d6bc88aedbe12f137c630ec772522cbc76f upx-4.0.2-src.tar.xz +sha256 0582f78b517ea87ba1caa6e8c111474f58edd167e5f01f074d7d9ca2f81d47d0 upx-4.1.0-src.tar.xz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/upx/upx.mk b/package/upx/upx.mk index 6018b0a63d39..0a0e9086e5b2 100644 --- a/package/upx/upx.mk +++ b/package/upx/upx.mk @@ -4,7 +4,7 @@ # ################################################################################ -UPX_VERSION = 4.0.2 +UPX_VERSION = 4.1.0 UPX_SITE = https://github.com/upx/upx/releases/download/v$(UPX_VERSION) UPX_SOURCE = upx-$(UPX_VERSION)-src.tar.xz UPX_LICENSE = GPL-2.0+ diff --git a/package/urandom-scripts/S20seedrng b/package/urandom-scripts/S01seedrng similarity index 100% rename from package/urandom-scripts/S20seedrng rename to package/urandom-scripts/S01seedrng diff --git a/package/urandom-scripts/urandom-scripts.mk b/package/urandom-scripts/urandom-scripts.mk index 32f3e09343da..89abdfff7271 100644 --- a/package/urandom-scripts/urandom-scripts.mk +++ b/package/urandom-scripts/urandom-scripts.mk @@ -5,8 +5,8 @@ ################################################################################ define URANDOM_SCRIPTS_INSTALL_INIT_SYSV - $(INSTALL) -D -m 0755 $(URANDOM_SCRIPTS_PKGDIR)/S20seedrng \ - $(TARGET_DIR)/etc/init.d/S20seedrng + $(INSTALL) -D -m 0755 $(URANDOM_SCRIPTS_PKGDIR)/S01seedrng \ + $(TARGET_DIR)/etc/init.d/S01seedrng endef $(eval $(generic-package)) diff --git a/package/usbguard/0001-Fix-build-for-GCC-13-make-GitHub-Actions-cover-build-with-GCC-13.patch b/package/usbguard/0001-Fix-build-for-GCC-13-make-GitHub-Actions-cover-build-with-GCC-13.patch new file mode 100644 index 000000000000..415b8e1dd1f4 --- /dev/null +++ b/package/usbguard/0001-Fix-build-for-GCC-13-make-GitHub-Actions-cover-build-with-GCC-13.patch @@ -0,0 +1,114 @@ +From 22b1e0897af977cc96af926c730ff948bd120bb5 Mon Sep 17 00:00:00 2001 +From: Sebastian Pipping +Date: Fri, 31 Mar 2023 09:39:49 +0200 +Subject: [PATCH] Fix build for GCC 13 + make GitHub Actions cover build with + GCC 13 (#586) + +* include missing + +gcc 13 moved some includes around and as a result is no +longer transitively included [1]. Explicitly include it for +uint8_t. + +[1] https://gcc.gnu.org/gcc-13/porting_to.html#header-dep-changes + +Signed-off-by: Khem Raj + +* docker.yml: Cover openSUSE Tumbleweed with GCC 13+ + +Based on scripts/docker/build_on_centos_8_2.Dockerfile . + +--------- + +Signed-off-by: Khem Raj +Co-authored-by: Khem Raj +Upstream: https://github.com/USBGuard/usbguard/commit/22b1e0897af977cc96af926c730ff948bd120bb5 +Signed-off-by: Fabrice Fontaine +--- + .github/workflows/docker.yml | 1 + + .../build_on_opensuse_tumbleweed.Dockerfile | 50 +++++++++++++++++++ + src/Library/Base64.cpp | 1 - + src/Library/Base64.hpp | 1 + + 4 files changed, 52 insertions(+), 1 deletion(-) + create mode 100644 scripts/docker/build_on_opensuse_tumbleweed.Dockerfile + +diff --git a/scripts/docker/build_on_opensuse_tumbleweed.Dockerfile b/scripts/docker/build_on_opensuse_tumbleweed.Dockerfile +new file mode 100644 +index 00000000..d0993d8c +--- /dev/null ++++ b/scripts/docker/build_on_opensuse_tumbleweed.Dockerfile +@@ -0,0 +1,50 @@ ++## ++## Copyright (c) 2023 Sebastian Pipping ++## ++## This program is free software; you can redistribute it and/or modify ++## it under the terms of the GNU General Public License as published by ++## the Free Software Foundation; either version 2 of the License, or ++## (at your option) any later version. ++## ++## This program is distributed in the hope that it will be useful, ++## but WITHOUT ANY WARRANTY; without even the implied warranty of ++## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++## GNU General Public License for more details. ++## ++## You should have received a copy of the GNU General Public License ++## along with this program. If not, see . ++ ++FROM opensuse/tumbleweed:latest ++RUN zypper --non-interactive install dnf rpm-repos-openSUSE-Tumbleweed \ ++ && \ ++ dnf install -y \ ++ asciidoc \ ++ autoconf \ ++ automake \ ++ dbus-1-glib-devel \ ++ diffutils \ ++ file \ ++ gcc-c++ \ ++ git \ ++ libgcrypt-devel \ ++ libqb-devel \ ++ libsodium-devel \ ++ libtool \ ++ libxslt \ ++ make \ ++ polkit-devel \ ++ protobuf-devel ++ADD usbguard.tar usbguard/ ++ADD catch.tar usbguard/src/ThirdParty/Catch/ ++ADD pegtl.tar usbguard/src/ThirdParty/PEGTL/ ++WORKDIR usbguard ++RUN git init &>/dev/null && ./autogen.sh ++RUN ./configure --with-bundled-catch --with-bundled-pegtl || ! cat config.log ++RUN make dist ++RUN tar xf usbguard-*.tar.gz ++RUN mv -v usbguard-*.*.*/ usbguard-release/ ++RUN mkdir usbguard-release/build/ ++WORKDIR usbguard-release/build/ ++RUN ../configure --with-bundled-catch --with-bundled-pegtl || ! cat config.log ++RUN bash -c 'set -o pipefail; make V=1 "-j$(nproc)" |& tee build.log' ++RUN ! grep -F 'include file not found' build.log +diff --git a/src/Library/Base64.cpp b/src/Library/Base64.cpp +index ddb28dce..0246a134 100644 +--- a/src/Library/Base64.cpp ++++ b/src/Library/Base64.cpp +@@ -22,7 +22,6 @@ + + #include "Base64.hpp" + #include +-#include + + namespace usbguard + { +diff --git a/src/Library/Base64.hpp b/src/Library/Base64.hpp +index 0947f214..e0c745cb 100644 +--- a/src/Library/Base64.hpp ++++ b/src/Library/Base64.hpp +@@ -23,6 +23,7 @@ + #endif + + #include ++#include + #include + + namespace usbguard diff --git a/package/util-linux/0001-lsns-improve-dependence-on-NS_GET_-ioctls.patch b/package/util-linux/0001-lsns-improve-dependence-on-NS_GET_-ioctls.patch deleted file mode 100644 index 8e79b8d4d39c..000000000000 --- a/package/util-linux/0001-lsns-improve-dependence-on-NS_GET_-ioctls.patch +++ /dev/null @@ -1,34 +0,0 @@ -From fc686823b008bc95e2ebe904c706a117a03e2754 Mon Sep 17 00:00:00 2001 -From: Karel Zak -Date: Wed, 6 Apr 2022 10:38:43 +0200 -Subject: lsns: improve dependence on NS_GET_ ioctls - -Fixes: http://autobuild.buildroot.org/results/572ecf8e37ac733a4e4265f4f78f35230337278e -Reported-by: Fabrice Fontaine -Signed-off-by: Karel Zak - -[Retrieved from: -https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git/commit/?id=fc686823b008bc95e2ebe904c706a117a03e2754] -Signed-off-by: Fabrice Fontaine ---- - sys-utils/lsns.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/sys-utils/lsns.c b/sys-utils/lsns.c -index 1a7e9f333..75625b3a6 100644 ---- a/sys-utils/lsns.c -+++ b/sys-utils/lsns.c -@@ -40,7 +40,9 @@ - - #ifdef HAVE_LINUX_NSFS_H - # include --# define USE_NS_GET_API 1 -+# if defined(NS_GET_NSTYPE) && defined(NS_GET_OWNER_UID) -+# define USE_NS_GET_API 1 -+# endif - #endif - - #include "pathnames.h" --- -cgit - diff --git a/package/util-linux/Config.in b/package/util-linux/Config.in index b5d8cad15bde..be87494b35cf 100644 --- a/package/util-linux/Config.in +++ b/package/util-linux/Config.in @@ -436,6 +436,17 @@ config BR2_PACKAGE_UTIL_LINUX_VIPW help Edit the password, group, shadow-password or shadow-group file +config BR2_PACKAGE_UTIL_LINUX_WAITPID + bool "waitpid" + depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_3 # pidfd_open + help + Utility to wait for arbitrary processes + +comment "waitpid needs a toolchain w/ headers >= 5.3" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_3 + config BR2_PACKAGE_UTIL_LINUX_WALL bool "wall" depends on BR2_USE_MMU # fork() diff --git a/package/util-linux/util-linux-libs/util-linux-libs.mk b/package/util-linux/util-linux-libs/util-linux-libs.mk index 20566345c63d..e1fe1ec19126 100644 --- a/package/util-linux/util-linux-libs/util-linux-libs.mk +++ b/package/util-linux/util-linux-libs/util-linux-libs.mk @@ -52,6 +52,9 @@ UTIL_LINUX_LIBS_CONF_OPTS += --disable-widechar # No libs use ncurses UTIL_LINUX_LIBS_CONF_OPTS += --without-ncursesw --without-ncurses +# workaround for static_assert on uclibc-ng < 1.0.42 +UTIL_LINUX_LIBS_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -Dstatic_assert=_Static_assert" + # Unfortunately, the util-linux does LIBS="" at the end of its # configure script. So we have to pass the proper LIBS value when # calling the configure script to make configure tests pass properly, diff --git a/package/util-linux/util-linux.hash b/package/util-linux/util-linux.hash index 6f1bb74ecbb8..1638cd9967b1 100644 --- a/package/util-linux/util-linux.hash +++ b/package/util-linux/util-linux.hash @@ -1,7 +1,7 @@ -# From https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.38/sha256sums.asc -sha256 6d111cbe4d55b336db2f1fbeffbc65b89908704c01136371d32aa9bec373eb64 util-linux-2.38.tar.xz +# From https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.39/sha256sums.asc +sha256 87abdfaa8e490f8be6dde976f7c80b9b5ff9f301e1b67e3899e1f05a59a1531f util-linux-2.39.2.tar.xz # License files, locally calculated -sha256 869660b5269f4f40a8a679da7f403ea3a6e71d46087aab5e14871b09bcb55955 README.licensing +sha256 64dfeae1519bf0e27563d905a71264310fb6a8fa74e5cf99bb36e4d30d7ef455 README.licensing sha256 9b718a9460fed5952466421235bc79eb49d4e9eacc920d7a9dd6285ab8fd6c6d Documentation/licenses/COPYING.BSD-3-Clause sha256 ba7640f00d93e72e92b94b9d71f25ec53bac2f1682f5c4adcccb0018359f60f8 Documentation/licenses/COPYING.BSD-4-Clause-UC sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 Documentation/licenses/COPYING.GPL-2.0-or-later diff --git a/package/util-linux/util-linux.mk b/package/util-linux/util-linux.mk index 87ec3c19d734..72126adb005f 100644 --- a/package/util-linux/util-linux.mk +++ b/package/util-linux/util-linux.mk @@ -7,15 +7,21 @@ # When making changes to this file, please check if # util-linux-libs/util-linux-libs.mk needs to be updated accordingly as well. -UTIL_LINUX_VERSION_MAJOR = 2.38 -UTIL_LINUX_VERSION = $(UTIL_LINUX_VERSION_MAJOR) +UTIL_LINUX_VERSION_MAJOR = 2.39 +UTIL_LINUX_VERSION = $(UTIL_LINUX_VERSION_MAJOR).2 UTIL_LINUX_SOURCE = util-linux-$(UTIL_LINUX_VERSION).tar.xz UTIL_LINUX_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/util-linux/v$(UTIL_LINUX_VERSION_MAJOR) # README.licensing claims that some files are GPL-2.0 only, but this is not # true. Some files are GPL-3.0+ but only in tests and optionally in hwclock # (but we disable that option). rfkill uses an ISC-style license. -UTIL_LINUX_LICENSE = GPL-2.0+, BSD-4-Clause, LGPL-2.1+ (libblkid, libfdisk, libmount), BSD-3-Clause (libuuid), ISC (rfkill) +UTIL_LINUX_LICENSE = \ + GPL-2.0+, \ + BSD-4-Clause, \ + LGPL-2.1+ (libblkid, libfdisk, libmount), \ + BSD-3-Clause (libuuid), \ + BSD-2-Clause (xxhash), \ + ISC (rfkill) UTIL_LINUX_LICENSE_FILES = README.licensing \ Documentation/licenses/COPYING.BSD-3-Clause \ Documentation/licenses/COPYING.BSD-4-Clause-UC \ @@ -24,6 +30,10 @@ UTIL_LINUX_LICENSE_FILES = README.licensing \ Documentation/licenses/COPYING.LGPL-2.1-or-later UTIL_LINUX_CPE_ID_VENDOR = kernel + +# 0001-libmount-ifdef-statx-call.patch +UTIL_LINUX_AUTORECONF = YES + UTIL_LINUX_INSTALL_STAGING = YES UTIL_LINUX_DEPENDENCIES = \ host-pkgconf \ @@ -86,6 +96,9 @@ endif UTIL_LINUX_CONF_OPTS += --without-ncursesw --without-ncurses endif +# workaround for static_assert on uclibc-ng < 1.0.42 +UTIL_LINUX_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -Dstatic_assert=_Static_assert" + # Unfortunately, the util-linux does LIBS="" at the end of its # configure script. So we have to pass the proper LIBS value when # calling the configure script to make configure tests pass properly, @@ -178,6 +191,7 @@ UTIL_LINUX_CONF_OPTS += \ $(if $(BR2_PACKAGE_UTIL_LINUX_UTMPDUMP),--enable-utmpdump,--disable-utmpdump) \ $(if $(BR2_PACKAGE_UTIL_LINUX_UUIDD),--enable-uuidd,--disable-uuidd) \ $(if $(BR2_PACKAGE_UTIL_LINUX_VIPW),--enable-vipw,--disable-vipw) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_WAITPID),--enable-waitpid,--disable-waitpid) \ $(if $(BR2_PACKAGE_UTIL_LINUX_WALL),--enable-wall,--disable-wall) \ $(if $(BR2_PACKAGE_UTIL_LINUX_WDCTL),--enable-wdctl,--disable-wdctl) \ $(if $(BR2_PACKAGE_UTIL_LINUX_WIPEFS),--enable-wipefs,--disable-wipefs) \ diff --git a/package/uuu/uuu.hash b/package/uuu/uuu.hash index a5b665620c64..20816b5081db 100644 --- a/package/uuu/uuu.hash +++ b/package/uuu/uuu.hash @@ -1,4 +1,4 @@ # locally computed -sha256 e89d3665af499ab71360d948176cf64619b082f8272a994d1fbfc000e67c0f14 uuu_source-1.5.21.tar.gz +sha256 6972c7a1e76d60a22212913a8867b737104410c2a47ad88c8af460bd4885ec09 uuu_source-uuu_1.5.141.tar.gz sha256 cc8d47f7b9260f6669ecd41c24554c552f17581d81ee8fc602c6d23edb8bf495 LICENSE -sha256 584bfbb18b4c08b872d48b80419dd453307212a144134fb516bd6ddc0700c2e8 README.md +sha256 2d872c6e5aaea15ec1932bfb378fb62e24ee7ec399fe7f998f03d9b728215335 README.md diff --git a/package/uuu/uuu.mk b/package/uuu/uuu.mk index 1a5f84ce4d7d..93c748ee46d8 100644 --- a/package/uuu/uuu.mk +++ b/package/uuu/uuu.mk @@ -4,8 +4,8 @@ # ################################################################################ -UUU_VERSION = 1.5.21 -UUU_SOURCE = uuu_source-$(UUU_VERSION).tar.gz +UUU_VERSION = 1.5.141 +UUU_SOURCE = uuu_source-uuu_$(UUU_VERSION).tar.gz UUU_SITE = https://github.com/NXPmicro/mfgtools/releases/download/uuu_$(UUU_VERSION) UUU_LICENSE = BSD 3-Clause "New" or "Revised" License UUU_LICENSE_FILES = LICENSE README.md diff --git a/package/uvw/uvw.hash b/package/uvw/uvw.hash index a0c74bbe052d..2dc6e879e1fe 100644 --- a/package/uvw/uvw.hash +++ b/package/uvw/uvw.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 3460842778e91e7d2fae4201e49e4521e9d94fbbf3891ae6c52d3c9fc0673598 uvw-2.12.1_libuv_v1.44.tar.gz -sha256 1e3b8fb895c0396aaa2138ff82c02968524e220645b21b0a4ac765858a898732 LICENSE +sha256 bd5aed741765950074b1ea2507291dce81e528abdf56c406991ad4a27d8d1714 uvw-3.2.0_libuv_v1.46.tar.gz +sha256 e2a4062818ab05e2a0908737ad49b7c01202247364e900167ac81105de8713f3 LICENSE diff --git a/package/uvw/uvw.mk b/package/uvw/uvw.mk index b6c2135d6f0e..12149d43ca56 100644 --- a/package/uvw/uvw.mk +++ b/package/uvw/uvw.mk @@ -4,7 +4,7 @@ # ################################################################################ -UVW_VERSION = 2.12.1_libuv_v1.44 +UVW_VERSION = 3.2.0_libuv_v1.46 UVW_SITE = $(call github,skypjack,uvw,v$(UVW_VERSION)) UVW_INSTALL_STAGING = YES UVW_INSTALL_TARGET = NO diff --git a/package/valgrind/0003-coregrind-fix-compilation-for-uclibc.patch b/package/valgrind/0003-coregrind-fix-compilation-for-uclibc.patch deleted file mode 100644 index ff8dc974d83a..000000000000 --- a/package/valgrind/0003-coregrind-fix-compilation-for-uclibc.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 9c9fd9ae24b45f915f0759d32f662835c26d37c3 Mon Sep 17 00:00:00 2001 -From: Dario Binacchi -Date: Fri, 8 Apr 2022 12:36:33 +0200 -Subject: [PATCH] coregrind: fix compilation for uclibc - -It fixes a known iusse whose details are described at [1] and more -generally it guarantees that Valgrind is properly compiled for ulibc. - -[1] https://www.mail-archive.com/valgrind-users@lists.sourceforge.net/msg05295.html - -Suggested-by Michael Trimarchi -Co-developed-by: Michael Trimarchi -Signed-off-by: Dario Binacchi ---- - configure.ac | 2 ++ - coregrind/m_debuginfo/minilzo-inl.c | 4 ++++ - coregrind/vg_preloaded.c | 4 ++++ - 3 files changed, 10 insertions(+) - -diff --git a/configure.ac b/configure.ac -index 6f51dfd9f8fb..c627a9c17a4a 100755 ---- a/configure.ac -+++ b/configure.ac -@@ -1204,6 +1204,8 @@ AC_SUBST(DEFAULT_SUPP) - AC_CHECK_HEADER([features.h]) - - if test x$ac_cv_header_features_h = xyes; then -+ AC_DEFINE([HAVE_HEADER_FEATURES_H], 1, -+ [Define to 1 if you have the `features.h' header.]) - rm -f conftest.$ac_ext - cat <<_ACEOF >conftest.$ac_ext - #include -diff --git a/coregrind/m_debuginfo/minilzo-inl.c b/coregrind/m_debuginfo/minilzo-inl.c -index 153d008fd44f..b45ec92eaa85 100644 ---- a/coregrind/m_debuginfo/minilzo-inl.c -+++ b/coregrind/m_debuginfo/minilzo-inl.c -@@ -1875,6 +1875,10 @@ extern "C" { - - #endif - -+#ifdef HAVE_HEADER_FEATURES_H -+#include -+#endif -+ - #undef LZO_HAVE_CONFIG_H - #include "minilzo.h" - -diff --git a/coregrind/vg_preloaded.c b/coregrind/vg_preloaded.c -index 5e2098390847..3809811aede7 100644 ---- a/coregrind/vg_preloaded.c -+++ b/coregrind/vg_preloaded.c -@@ -45,6 +45,10 @@ - #include "pub_core_debuginfo.h" // Needed for pub_core_redir.h - #include "pub_core_redir.h" // For VG_NOTIFY_ON_LOAD - -+#ifdef HAVE_HEADER_FEATURES_H -+#include -+#endif -+ - #if defined(VGO_linux) || defined(VGO_solaris) || defined(VGO_freebsd) - - /* --------------------------------------------------------------------- --- -2.32.0 - diff --git a/package/valgrind/valgrind.hash b/package/valgrind/valgrind.hash index 8487c07e42cd..d236c7b4a0f6 100644 --- a/package/valgrind/valgrind.hash +++ b/package/valgrind/valgrind.hash @@ -1,7 +1,7 @@ # From https://valgrind.org/downloads/current.html -md5 4687a4990585a038c52f842448ef4e63 valgrind-3.19.0.tar.bz2 +sha1 60894cbf59d480c1794674da24a8406518a8df59 valgrind-3.22.0.tar.bz2 # locally computed -sha256 dd5e34486f1a483ff7be7300cc16b4d6b24690987877c3278d797534d6738f02 valgrind-3.19.0.tar.bz2 +sha256 c811db5add2c5f729944caf47c4e7a65dcaabb9461e472b578765dd7bf6d2d4c valgrind-3.22.0.tar.bz2 # License files sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/valgrind/valgrind.mk b/package/valgrind/valgrind.mk index 17b131c3ec66..97a955bd3bd9 100644 --- a/package/valgrind/valgrind.mk +++ b/package/valgrind/valgrind.mk @@ -4,7 +4,7 @@ # ################################################################################ -VALGRIND_VERSION = 3.19.0 +VALGRIND_VERSION = 3.22.0 VALGRIND_SITE = https://sourceware.org/pub/valgrind VALGRIND_SOURCE = valgrind-$(VALGRIND_VERSION).tar.bz2 VALGRIND_LICENSE = GPL-2.0, GFDL-1.2 @@ -14,8 +14,6 @@ VALGRIND_CONF_OPTS = \ --disable-ubsan \ --without-mpicc VALGRIND_INSTALL_STAGING = YES -# 0003-coregrind-fix-compilation-for-uclibc.patch -VALGRIND_AUTORECONF=YES # Valgrind must be compiled with no stack protection, so forcefully # pass -fno-stack-protector to override what Buildroot may have in diff --git a/package/vde2/0001-no-cxx.patch b/package/vde2/0001-no-cxx.patch deleted file mode 100644 index 67cefa2bb8fd..000000000000 --- a/package/vde2/0001-no-cxx.patch +++ /dev/null @@ -1,22 +0,0 @@ -configure: do not test for CXX, it's not needed - -There is no C++ source file, so no reason to require a C++ compiler. - -Reported-by: Peter Korsgaard -Signed-off-by: "Yann E. MORIN" - ---- -Patch sent upstream -( not yet in archives, awaits moderator approval... :-/ ) - -diff -durN vde2-2.3.2.orig/configure.ac vde2-2.3.2/configure.ac ---- vde2-2.3.2.orig/configure.ac 2011-11-23 17:41:19.000000000 +0100 -+++ vde2-2.3.2/configure.ac 2012-12-14 21:56:47.146319686 +0100 -@@ -11,7 +11,6 @@ - AC_CONFIG_LIBOBJ_DIR(src/common) - - # Checks for programs. --AC_PROG_CXX - AC_PROG_CC - AC_PROG_INSTALL - AC_PROG_LN_S diff --git a/package/vde2/0002-fstp-Add-static-to-inline-functions.patch b/package/vde2/0002-fstp-Add-static-to-inline-functions.patch deleted file mode 100644 index 0dbe083d0681..000000000000 --- a/package/vde2/0002-fstp-Add-static-to-inline-functions.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 67bc8443ac7e8144a78d84dee30a5cac3b5c99a4 Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Sun, 27 Aug 2017 23:56:05 +0200 -Subject: [PATCH] fstp: Add static to inline functions - -From [1] -"This is needed to avoid a link error where the inline functions appear -missing at link time. -From c99 standard inline function should either be declared static or -have an extern instance in a c file for linking. -This fix is necessary to build with gcc 7; for some reason it was not -trigerred before." - -[1] https://git.buildroot.net/buildroot/commit/?id=21133ada326c87627f7bdee4493d8086587c3cca - -Signed-off-by: Romain Naour ---- - src/vde_switch/fstp.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/vde_switch/fstp.c b/src/vde_switch/fstp.c -index aab7324..b1e7ee8 100644 ---- a/src/vde_switch/fstp.c -+++ b/src/vde_switch/fstp.c -@@ -30,14 +30,14 @@ static int numports; - #ifdef FSTP - #include - /*********************** sending macro used by FSTP & Core ******************/ --void inline ltonstring(unsigned long l,unsigned char *s) { -+static void inline ltonstring(unsigned long l,unsigned char *s) { - s[3]=l; l>>=8; - s[2]=l; l>>=8; - s[1]=l; l>>=8; - s[0]=l; - } - --unsigned long inline nstringtol(unsigned char *s) { -+static unsigned long inline nstringtol(unsigned char *s) { - return (s[0]<<24)+(s[1]<<16)+(s[2]<<8)+s[3]; - } - --- -2.9.5 - diff --git a/package/vde2/0003-vde_l3-Add-static-to-inline-functions.patch b/package/vde2/0003-vde_l3-Add-static-to-inline-functions.patch deleted file mode 100644 index 7f771dfc7eb6..000000000000 --- a/package/vde2/0003-vde_l3-Add-static-to-inline-functions.patch +++ /dev/null @@ -1,37 +0,0 @@ -vde_l3: Add static to inline functions - -Add static to inline functions to avoid the following build failure -with BR2_OPTIMIZE_0: - -/home/autobuild/autobuild/instance-11/output-1/host/lib/gcc/mips64-buildroot-linux-uclibc/10.3.0/../../../../mips64-buildroot-linux-uclibc/bin/ld: vde_l3.o: in function `ip_output_ready': -vde_l3.c:(.text+0xb30): undefined reference to `iphead' - -Fixes: - - http://autobuild.buildroot.org/results/5eeefcdac0b8974a424a885fdc2e82f7cb4b617d - -Signed-off-by: Fabrice Fontaine - -diff -Nura vde2-2.3.2.orig/src/vde_l3/vde_l3.c vde2-2.3.2/src/vde_l3/vde_l3.c ---- vde2-2.3.2.orig/src/vde_l3/vde_l3.c 2022-04-21 11:05:17.393452698 +0200 -+++ vde2-2.3.2/src/vde_l3/vde_l3.c 2022-04-21 11:10:36.509804404 +0200 -@@ -100,17 +100,17 @@ - }; - - --inline struct vde_ethernet_header *ethhead(struct vde_buff *vdb) -+static inline struct vde_ethernet_header *ethhead(struct vde_buff *vdb) - { - return (struct vde_ethernet_header*)(vdb->data); - } - --inline struct iphdr *iphead(struct vde_buff *vdb) -+static inline struct iphdr *iphead(struct vde_buff *vdb) - { - return (struct iphdr*)(vdb->data + 14); - } - --inline void *payload(struct vde_buff *vdb) -+static inline void *payload(struct vde_buff *vdb) - { - return (uint8_t*)(vdb->data + 14 + sizeof(struct iphdr)); - } diff --git a/package/vde2/Config.in b/package/vde2/Config.in index f640a4ae2a90..44bdf50de0c0 100644 --- a/package/vde2/Config.in +++ b/package/vde2/Config.in @@ -7,7 +7,7 @@ config BR2_PACKAGE_VDE2 spawned over a set of physical computers over the Internet. VDE is part of the virtualsquare project. - http://vde.sourceforge.net/ + https://github.com/virtualsquare/vde-2/ comment "vde2 needs a toolchain w/ dynamic library" depends on BR2_USE_MMU diff --git a/package/vde2/vde2.hash b/package/vde2/vde2.hash index a9e1ea22630d..11d6a2827921 100644 --- a/package/vde2/vde2.hash +++ b/package/vde2/vde2.hash @@ -1,5 +1,4 @@ # Locally computed: -sha256 cbea9b7e03097f87a6b5e98b07890d2275848f1fe4b9fcda77b8994148bc9542 vde2-2.3.2.tar.bz2 +sha256 a7d2cc4c3d0c0ffe6aff7eb0029212f2b098313029126dcd12dc542723972379 vde2-2.3.3.tar.gz sha256 fb295d0c24b8ef4b39017ac68e772e8e6e839612ce10da12b9f48d1e8e512e2e COPYING sha256 5df07007198989c622f5d41de8d703e7bef3d0e79d62e24332ee739a452af62a COPYING.libvdeplug -sha256 d5ac74315b2d2f9c53f5839e311484f4646a9401b68d02d36f3dab386352e74d COPYING.slirpvde diff --git a/package/vde2/vde2.mk b/package/vde2/vde2.mk index 76d6f352b7b3..ab4c32143d08 100644 --- a/package/vde2/vde2.mk +++ b/package/vde2/vde2.mk @@ -4,24 +4,21 @@ # ################################################################################ -VDE2_VERSION = 2.3.2 -VDE2_SOURCE = vde2-$(VDE2_VERSION).tar.bz2 -VDE2_SITE = http://downloads.sourceforge.net/project/vde/vde2/$(VDE2_VERSION) -VDE2_LICENSE = GPL-2.0+, LGPL-2.1+, BSD-3-Clause -VDE2_LICENSE_FILES = COPYING COPYING.libvdeplug COPYING.slirpvde +VDE2_VERSION = 2.3.3 +VDE2_SITE = $(call github,virtualsquare,vde-2,v$(VDE2_VERSION)) +VDE2_LICENSE = GPL-2.0+, LGPL-2.1+ +VDE2_LICENSE_FILES = COPYING COPYING.libvdeplug VDE2_CPE_ID_VENDOR = vde_project VDE2_CPE_ID_PRODUCT = vde VDE2_INSTALL_STAGING = YES -# We touch configure.ac, so we need to autoreconf +# From git VDE2_AUTORECONF = YES # Reasons for enabling/disabling stuff: # - tuntap is enabled in the hope we're using a recent-enough toolchain # that does have if_tun.h (virtually everything these days) -# - kvde_switch is disabled because it requires a patched kernel -# - cryptcab is disabled to not depend on openSSL -# - python is disabled to not depend on Python +# - cryptcab is disabled to not depend on wolfssl # - pcap is disabled to not depend on libpcap # - profiling is disabled because we do not want to debug/profile # @@ -30,25 +27,16 @@ VDE2_AUTORECONF = YES VDE2_CONF_OPTS = \ --disable-cryptcab \ --disable-experimental \ - --disable-kernel-switch \ --disable-pcap \ --disable-profile \ - --disable-python \ --enable-tuntap -# Package does not build in parallel due to improper make rules -VDE2_MAKE = $(MAKE1) - HOST_VDE2_CONF_OPTS = \ --disable-cryptcab \ --disable-experimental \ - --disable-kernel-switch \ --disable-pcap \ --disable-profile \ - --disable-python \ --enable-tuntap -HOST_VDE2_MAKE = $(MAKE1) - $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/vdr/0001-getloadavg.patch b/package/vdr/0001-getloadavg.patch index 9e6316e28425..f6ba84c9e51e 100644 --- a/package/vdr/0001-getloadavg.patch +++ b/package/vdr/0001-getloadavg.patch @@ -14,7 +14,7 @@ diff -uwNr vdr-2.3.1.org/skinlcars.c vdr-2.3.1/skinlcars.c +/* uclibc and dietlibc do not have this junk -ReneR */ +#if defined (__UCLIBC__) || defined (__dietlibc__) -+static int getloadavg (double loadavg[], int nelem) ++int getloadavg (double loadavg[], int nelem) +{ + int fd; + diff --git a/package/vdr/0002-Fix-musl-build.patch b/package/vdr/0002-Fix-musl-build.patch new file mode 100644 index 000000000000..8c0b8d663bc5 --- /dev/null +++ b/package/vdr/0002-Fix-musl-build.patch @@ -0,0 +1,159 @@ +From fb44386acc2497ac250364bc08cebc26ded816cf Mon Sep 17 00:00:00 2001 +From: Carlo Landmeter +Date: Tue, 16 May 2023 19:57:39 +0200 +Subject: [PATCH] Fix musl build + +Downloaded from +https://git.alpinelinux.org/aports/tree/community/vdr/musl-compat.patch + +Initial commit: +https://git.alpinelinux.org/aports/commit/?id=140248605cee4a0160f80b47ce77a823be2f740a + +Upstream: https://www.linuxtv.org/pipermail/vdr/2023-May/029744.html + +Signed-off-by: Bernd Kuhls +--- + i18n.h | 2 +- + osd.c | 2 +- + thread.c | 4 +++- + tools.c | 4 ++-- + tools.h | 14 ++++++++++++-- + vdr.c | 6 ++++++ + 6 files changed, 25 insertions(+), 7 deletions(-) + +diff --git a/i18n.h b/i18n.h +index 03deb6f2..85ce4077 100644 +--- a/i18n.h ++++ b/i18n.h +@@ -46,7 +46,7 @@ const cStringList *I18nLanguages(void); + ///< have an actual locale installed. The rest are just dummy entries + ///< to allow having three letter language codes for other languages + ///< that have no actual locale on this system. +-const char *I18nTranslate(const char *s, const char *Plugin = NULL) __attribute_format_arg__(1); ++const char *I18nTranslate(const char *s, const char *Plugin = NULL) __attribute__((__format_arg__ (1))); + ///< Translates the given string (with optional Plugin context) into + ///< the current language. If no translation is available, the original + ///< string will be returned. +diff --git a/osd.c b/osd.c +index 47bda686..0d360c81 100644 +--- a/osd.c ++++ b/osd.c +@@ -12,7 +12,7 @@ + #include + #include + #include +-#include ++#include + #include "device.h" + #include "tools.h" + +diff --git a/thread.c b/thread.c +index 93eb8c0d..6e854541 100644 +--- a/thread.c ++++ b/thread.c +@@ -160,7 +160,9 @@ cRwLock::cRwLock(bool PreferWriter) + writeLockThreadId = 0; + pthread_rwlockattr_t attr; + pthread_rwlockattr_init(&attr); ++#if defined(__GLIBC__) + pthread_rwlockattr_setkind_np(&attr, PreferWriter ? PTHREAD_RWLOCK_PREFER_WRITER_NP : PTHREAD_RWLOCK_PREFER_READER_NP); ++#endif + pthread_rwlock_init(&rwlock, &attr); + } + +@@ -210,7 +212,7 @@ cMutex::cMutex(void) + locked = 0; + pthread_mutexattr_t attr; + pthread_mutexattr_init(&attr); +- pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_ERRORCHECK_NP); ++ pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_ERRORCHECK); + pthread_mutex_init(&mutex, &attr); + } + +diff --git a/tools.c b/tools.c +index d04033b1..8b161eec 100644 +--- a/tools.c ++++ b/tools.c +@@ -672,7 +672,7 @@ char *ReadLink(const char *FileName) + { + if (!FileName) + return NULL; +- char *TargetName = canonicalize_file_name(FileName); ++ char *TargetName = realpath(FileName, NULL); + if (!TargetName) { + if (errno == ENOENT) // file doesn't exist + TargetName = strdup(FileName); +@@ -1562,7 +1562,7 @@ cReadDir::~cReadDir() + struct dirent *cReadDir::Next(void) + { + if (directory) { +-#if !__GLIBC_PREREQ(2, 24) // readdir_r() is deprecated as of GLIBC 2.24 ++#if __GLIBC__ + while (readdir_r(directory, &u.d, &result) == 0 && result) { + #else + while ((result = readdir(directory)) != NULL) { +diff --git a/tools.h b/tools.h +index ff6169ee..60eda179 100644 +--- a/tools.h ++++ b/tools.h +@@ -28,6 +28,16 @@ + #include + #include "thread.h" + ++#ifndef ACCESSPERMS ++# define ACCESSPERMS (S_IRWXU|S_IRWXG|S_IRWXO) /* 0777 */ ++#endif ++#ifndef ALLPERMS ++# define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO)/* 07777 */ ++#endif ++#ifndef DEFFILEMODE ++# define DEFFILEMODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH)/* 0666*/ ++#endif ++ + typedef unsigned char uchar; + + extern int SysLogLevel; +@@ -444,7 +454,7 @@ class cReadDir { + private: + DIR *directory; + struct dirent *result; +-#if !__GLIBC_PREREQ(2, 24) // readdir_r() is deprecated as of GLIBC 2.24 ++#if __GLIBC__ + union { // according to "The GNU C Library Reference Manual" + struct dirent d; + char b[offsetof(struct dirent, d_name) + NAME_MAX + 1]; +@@ -818,7 +828,7 @@ public: + data[i] = T(0); + size = 0; + } +- void Sort(__compar_fn_t Compare) ++ void Sort(int (*Compare)(const void *, const void *)) + { + qsort(data, size, sizeof(T), Compare); + } +diff --git a/vdr.c b/vdr.c +index 1bdc51ab..0f426e61 100644 +--- a/vdr.c ++++ b/vdr.c +@@ -661,12 +661,18 @@ int main(int argc, char *argv[]) + } + } + else if (Terminal) { ++#ifdef __GLIBC__ + // Claim new controlling terminal + stdin = freopen(Terminal, "r", stdin); + stdout = freopen(Terminal, "w", stdout); + stderr = freopen(Terminal, "w", stderr); + HasStdin = true; + tcgetattr(STDIN_FILENO, &savedTm); ++#else ++ // stdin, stdout, stderr are declared FILE const* by musl C library ++ fprintf(stderr, "Option '-t' is only supported if VDR has been built against glibc.\n"); ++ return 2; ++#endif + } + + // Set user id in case we were started as root: +-- +2.39.2 + diff --git a/package/vdr/0002-musl-compat.patch b/package/vdr/0002-musl-compat.patch deleted file mode 100644 index b6f8f414a965..000000000000 --- a/package/vdr/0002-musl-compat.patch +++ /dev/null @@ -1,140 +0,0 @@ -Fix musl build - -Downloaded from -https://git.alpinelinux.org/aports/tree/community/vdr/musl-compat.patch - -Signed-off-by: Bernd Kuhls - -diff --git a/i18n.h b/i18n.h -index f8ad9de..b002bbf 100644 ---- a/i18n.h -+++ b/i18n.h -@@ -46,7 +46,7 @@ const cStringList *I18nLanguages(void); - ///< have an actual locale installed. The rest are just dummy entries - ///< to allow having three letter language codes for other languages - ///< that have no actual locale on this system. --const char *I18nTranslate(const char *s, const char *Plugin = NULL) __attribute_format_arg__(1); -+const char *I18nTranslate(const char *s, const char *Plugin = NULL) __attribute__((__format_arg__ (1))); - ///< Translates the given string (with optional Plugin context) into - ///< the current language. If no translation is available, the original - ///< string will be returned. -diff --git a/osd.c b/osd.c -index 524700a..ef975f5 100644 ---- a/osd.c -+++ b/osd.c -@@ -12,7 +12,7 @@ - #include - #include - #include --#include -+#include - #include "device.h" - #include "tools.h" - -diff --git a/thread.c b/thread.c -index 47eb977..58dba43 100644 ---- a/thread.c -+++ b/thread.c -@@ -155,7 +155,9 @@ cRwLock::cRwLock(bool PreferWriter) - writeLockThreadId = 0; - pthread_rwlockattr_t attr; - pthread_rwlockattr_init(&attr); -+#if defined(__GLIBC__) - pthread_rwlockattr_setkind_np(&attr, PreferWriter ? PTHREAD_RWLOCK_PREFER_WRITER_NP : PTHREAD_RWLOCK_PREFER_READER_NP); -+#endif - pthread_rwlock_init(&rwlock, &attr); - } - -@@ -205,7 +207,7 @@ cMutex::cMutex(void) - locked = 0; - pthread_mutexattr_t attr; - pthread_mutexattr_init(&attr); -- pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_ERRORCHECK_NP); -+ pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_ERRORCHECK); - pthread_mutex_init(&mutex, &attr); - } - -diff --git a/tools.c b/tools.c -index 754673d..fef9d2d 100644 ---- a/tools.c -+++ b/tools.c -@@ -640,7 +640,7 @@ char *ReadLink(const char *FileName) - { - if (!FileName) - return NULL; -- char *TargetName = canonicalize_file_name(FileName); -+ char *TargetName = realpath(FileName, NULL); - if (!TargetName) { - if (errno == ENOENT) // file doesn't exist - TargetName = strdup(FileName); -@@ -1528,7 +1528,7 @@ - struct dirent *cReadDir::Next(void) - { - if (directory) { --#if !__GLIBC_PREREQ(2, 24) // readdir_r() is deprecated as of GLIBC 2.24 -+#if __GLIBC__ - while (readdir_r(directory, &u.d, &result) == 0 && result) { - #else - while ((result = readdir(directory)) != NULL) { -diff --git a/tools.h b/tools.h -index 73cca5a..03f5fd1 100644 ---- a/tools.h -+++ b/tools.h -@@ -28,6 +28,16 @@ - #include - #include "thread.h" - -+#ifndef ACCESSPERMS -+# define ACCESSPERMS (S_IRWXU|S_IRWXG|S_IRWXO) /* 0777 */ -+#endif -+#ifndef ALLPERMS -+# define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO)/* 07777 */ -+#endif -+#ifndef DEFFILEMODE -+# define DEFFILEMODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH)/* 0666*/ -+#endif -+ - typedef unsigned char uchar; - - extern int SysLogLevel; -@@ -400,7 +410,7 @@ - private: - DIR *directory; - struct dirent *result; --#if !__GLIBC_PREREQ(2, 24) // readdir_r() is deprecated as of GLIBC 2.24 -+#if __GLIBC__ - union { // according to "The GNU C Library Reference Manual" - struct dirent d; - char b[offsetof(struct dirent, d_name) + NAME_MAX + 1]; -@@ -738,7 +748,7 @@ public: - data[i] = T(0); - size = 0; - } -- void Sort(__compar_fn_t Compare) -+ void Sort(int (*Compare)(const void *, const void *)) - { - qsort(data, size, sizeof(T), Compare); - } -diff --git a/vdr.c b/vdr.c -index 8a49471..c2a82aa 100644 ---- a/vdr.c -+++ b/vdr.c -@@ -670,12 +670,18 @@ int main(int argc, char *argv[]) - } - } - else if (Terminal) { -+#ifdef __GLIBC__ - // Claim new controlling terminal - stdin = freopen(Terminal, "r", stdin); - stdout = freopen(Terminal, "w", stdout); - stderr = freopen(Terminal, "w", stderr); - HasStdin = true; - tcgetattr(STDIN_FILENO, &savedTm); -+#else -+ // stdin, stdout, stderr are declared FILE const* by musl C library -+ fprintf(stderr, "Option '-t' is only supported if VDR has been built against glibc.\n"); -+ return 2; -+#endif - } - - isyslog("VDR version %s started", VDRVERSION); diff --git a/package/vdr/0003-Include-limits.h.patch b/package/vdr/0003-Include-limits.h.patch new file mode 100644 index 000000000000..7ddfd1703c53 --- /dev/null +++ b/package/vdr/0003-Include-limits.h.patch @@ -0,0 +1,51 @@ +From a4a3d9b012c12cd8aaa2526f0eacdcffcdd9f8f1 Mon Sep 17 00:00:00 2001 +From: Roberto Oliveira +Date: Tue, 16 May 2023 20:01:18 +0200 +Subject: [PATCH] Include limits.h + +vdr package uses some macros like HOST_NAME_MAX, NAME_MAX, which are defined +in limits.h. +Needs to be explicitly included on ppc64le and for all archs for debug build. + +Downloaded from +https://git.alpinelinux.org/aports/tree/community/vdr/include-missing-limits.patch + +Initial commits: +https://git.alpinelinux.org/aports/commit/?id=c9d8942ccf4825fd734b5f37157a49fc4f0b4339 +https://git.alpinelinux.org/aports/commit/?id=47965644c390b1be1117769b1e08b31858267e9a + +Upstream: https://www.linuxtv.org/pipermail/vdr/2023-May/029743.html + +Signed-off-by: Bernd Kuhls +--- + config.h | 1 + + tools.c | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/config.h b/config.h +index 72dd3d2a..b9ea769f 100644 +--- a/config.h ++++ b/config.h +@@ -19,6 +19,7 @@ + #include "i18n.h" + #include "font.h" + #include "tools.h" ++#include + + // VDR's own version number: + +diff --git a/tools.c b/tools.c +index 8b161eec..56a2e0dd 100644 +--- a/tools.c ++++ b/tools.c +@@ -27,6 +27,7 @@ extern "C" { + #include + #include "i18n.h" + #include "thread.h" ++#include + + int SysLogLevel = 3; + +-- +2.39.2 + diff --git a/package/vdr/0003-include-missing-limits.patch b/package/vdr/0003-include-missing-limits.patch deleted file mode 100644 index c2efe291e6a4..000000000000 --- a/package/vdr/0003-include-missing-limits.patch +++ /dev/null @@ -1,30 +0,0 @@ -vdr package uses some macros like HOST_NAME_MAX, NAME_MAX, which are defined -in limits.h. -Needs to be explicitly included on ppc64le and for all archs for debug build. - -Downloaded from -https://git.alpinelinux.org/aports/tree/community/vdr/include-missing-limits.patch - -Signed-off-by: Bernd Kuhls ----- - ---- a/config.h -+++ b/config.h -@@ -19,6 +19,7 @@ - #include "i18n.h" - #include "font.h" - #include "tools.h" -+#include - - // VDR's own version number: - ---- a/tools.c -+++ b/tools.c -@@ -27,6 +27,7 @@ - #include - #include "i18n.h" - #include "thread.h" -+#include - - int SysLogLevel = 3; - diff --git a/package/vdr/0004-i18n.c-_nl_msg_cat_cntr-is-an-internal-symbol-of-som.patch b/package/vdr/0004-i18n.c-_nl_msg_cat_cntr-is-an-internal-symbol-of-som.patch index 9cc45a96c16f..7b1a4c2c05e5 100644 --- a/package/vdr/0004-i18n.c-_nl_msg_cat_cntr-is-an-internal-symbol-of-som.patch +++ b/package/vdr/0004-i18n.c-_nl_msg_cat_cntr-is-an-internal-symbol-of-som.patch @@ -10,6 +10,8 @@ anything because musl has a basic NLS implementation. Even gettext-tiny defines _nl_msg_cat_cntr as a dummy symbol in its stub libintl-musl implementation. +Upstream: https://www.linuxtv.org/pipermail/vdr/2023-May/029745.html + Signed-off-by: Thomas Petazzoni --- i18n.c | 2 ++ diff --git a/package/vdr/0005-Fix-musl-build.patch b/package/vdr/0005-Fix-musl-build.patch new file mode 100644 index 000000000000..390e78eab56f --- /dev/null +++ b/package/vdr/0005-Fix-musl-build.patch @@ -0,0 +1,37 @@ +From 075472ec580e03cc89971f0c118cb363776a304d Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Tue, 16 May 2023 20:22:12 +0200 +Subject: [PATCH] Fix musl build + +malloc_trim is a GNU extension and therefore not present in non-glibc C +libraries such as musl. Wrapping this in an ifdef fixes musl builds. + +Upstream: https://www.linuxtv.org/pipermail/vdr/2023-May/029742.html + +Signed-off-by: Bernd Kuhls +--- + vdr.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/vdr.c b/vdr.c +index 0f426e61..bc4902de 100644 +--- a/vdr.c ++++ b/vdr.c +@@ -1588,12 +1588,14 @@ int main(int argc, char *argv[]) + cSchedules::Cleanup(); + // Plugins housekeeping: + PluginManager.Housekeeping(); ++#if defined(__GLIBC__) + // Memory cleanup: + static time_t LastMemoryCleanup = 0; + if ((Now - LastMemoryCleanup) > MEMCLEANUPDELTA) { + malloc_trim(0); + LastMemoryCleanup = Now; + } ++#endif + } + } + +-- +2.39.2 + diff --git a/package/versal-firmware/Config.in b/package/versal-firmware/Config.in index b4b63282d84f..01daefd20403 100644 --- a/package/versal-firmware/Config.in +++ b/package/versal-firmware/Config.in @@ -4,13 +4,13 @@ config BR2_PACKAGE_VERSAL_FIRMWARE help Pre-built firmware files for Xilinx Versal boards. - https://github.com/nealfrager/buildroot-firmware + https://github.com/Xilinx/soc-prebuilt-firmware if BR2_PACKAGE_VERSAL_FIRMWARE config BR2_PACKAGE_VERSAL_FIRMWARE_VERSION string "firmware version" - default "2022.2_br_1" + default "xilinx_v2023.1" help Release version of Versal firmware. diff --git a/package/versal-firmware/versal-firmware.mk b/package/versal-firmware/versal-firmware.mk index 0bc5a00bc66f..1ced259be106 100644 --- a/package/versal-firmware/versal-firmware.mk +++ b/package/versal-firmware/versal-firmware.mk @@ -5,16 +5,16 @@ ################################################################################ VERSAL_FIRMWARE_VERSION = $(call qstrip,$(BR2_PACKAGE_VERSAL_FIRMWARE_VERSION)) -VERSAL_FIRMWARE_SITE = $(call github,Xilinx,ubuntu-firmware,$(VERSAL_FIRMWARE_VERSION)) -VERSAL_FIRMWARE_LICENSE = Xilinx-Binary-Only +VERSAL_FIRMWARE_SITE = $(call github,Xilinx,soc-prebuilt-firmware,$(VERSAL_FIRMWARE_VERSION)) +VERSAL_FIRMWARE_LICENSE = MIT VERSAL_FIRMWARE_LICENSE_FILES = LICENSE VERSAL_FIRMWARE_INSTALL_TARGET = NO VERSAL_FIRMWARE_INSTALL_IMAGES = YES define VERSAL_FIRMWARE_INSTALL_IMAGES_CMDS $(foreach f,plm.elf psmfw.elf vpl_gen_fixed.pdi,\ - $(INSTALL) -D -m 0755 $(@D)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)_$(f) \ - $(BINARIES_DIR)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)_$(f) + $(INSTALL) -D -m 0755 $(@D)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)-versal/$(f) \ + $(BINARIES_DIR)/$(f) ) endef diff --git a/package/vim/vim.hash b/package/vim/vim.hash index 4000beedc180..4ff64bada2ec 100644 --- a/package/vim/vim.hash +++ b/package/vim/vim.hash @@ -1,4 +1,4 @@ # Locally computed -sha256 bcaf9b21ab00ab49de4f3bdfda1bcda82533ec16c412824226544a3fce6506ff vim-9.0.1260.tar.gz -sha256 0bcab3b635dd39208c42b496568d1e8171dad247cf3da5bab3d750c9d5883499 LICENSE -sha256 d187aff219161f37138479257f82d687ea10b2cdd17d58b53a3ec9b79d6dc870 README.txt +sha256 d826682fb839c0b99f80b9189af549d46dc087ef2cfc617ce161609ba5da4dc7 vim-9.0.2136.tar.gz +sha256 0b3f1f330cb1b179bb17c7c687d4cec601e0aa3462bc7f890ad4c3888d37d720 LICENSE +sha256 b475d5d3f8c855dc1a84813bbe45c44054d7f7aee20c800950bf89d5958873de README.txt diff --git a/package/vim/vim.mk b/package/vim/vim.mk index e3648bfab911..b0b4ffe344db 100644 --- a/package/vim/vim.mk +++ b/package/vim/vim.mk @@ -4,7 +4,7 @@ # ################################################################################ -VIM_VERSION = 9.0.1260 +VIM_VERSION = 9.0.2136 VIM_SITE = $(call github,vim,vim,v$(VIM_VERSION)) VIM_DEPENDENCIES = ncurses $(TARGET_NLS_DEPENDENCIES) VIM_SUBDIR = src diff --git a/package/vlc/0006-posix-remove-ancient-run-time-fallback-to-real-time-.patch b/package/vlc/0006-posix-remove-ancient-run-time-fallback-to-real-time-.patch index 4fc639e2229c..5211ef882b68 100644 --- a/package/vlc/0006-posix-remove-ancient-run-time-fallback-to-real-time-.patch +++ b/package/vlc/0006-posix-remove-ancient-run-time-fallback-to-real-time-.patch @@ -23,6 +23,7 @@ posix/thread.c: In function ‘vlc_clock_setup_once’: posix/thread.c:88:18: error: lvalue required as left operand of assignment vlc_clock_id = (val < 0) ? CLOCK_REALTIME : CLOCK_MONOTONIC; +[Bernd: rebased for 3.0.19] Signed-off-by: Bernd Kuhls --- src/posix/thread.c | 96 +++++++----------------------------------------------- @@ -93,7 +94,7 @@ index dab8b71f97..8878941913 100644 -# warning Monotonic clock not available. Expect timing issues. -#endif /* _POSIX_TIMERS */ - - static struct timespec mtime_to_ts (mtime_t date) + static struct timespec mtime_to_ts (vlc_tick_t date) { lldiv_t d = lldiv (date, CLOCK_FREQ); @@ -233,14 +187,11 @@ void vlc_cond_init (vlc_cond_t *p_condvar) @@ -117,7 +118,7 @@ index dab8b71f97..8878941913 100644 @@ -625,44 +576,27 @@ void vlc_control_cancel (int cmd, ...) - mtime_t mdate (void) + vlc_tick_t mdate (void) { -#if (_POSIX_TIMERS > 0) struct timespec ts; @@ -140,7 +141,7 @@ index dab8b71f97..8878941913 100644 } #undef mwait - void mwait (mtime_t deadline) + void mwait (vlc_tick_t deadline) { -#if (_POSIX_CLOCK_SELECTION > 0) - vlc_clock_setup (); @@ -165,7 +166,7 @@ index dab8b71f97..8878941913 100644 } #undef msleep -@@ -670,15 +604,7 @@ void msleep (mtime_t delay) +@@ -670,15 +604,7 @@ void msleep (vlc_tick_t delay) { struct timespec ts = mtime_to_ts (delay); diff --git a/package/vlc/vlc.hash b/package/vlc/vlc.hash index 4b9940df33fd..40529bd6648d 100644 --- a/package/vlc/vlc.hash +++ b/package/vlc/vlc.hash @@ -1,7 +1,7 @@ -# From https://get.videolan.org/vlc/3.0.18/vlc-3.0.18.tar.xz.sha256 -sha256 57094439c365d8aa8b9b41fa3080cc0eef2befe6025bb5cef722accc625aedec vlc-3.0.18.tar.xz -# From https://get.videolan.org/vlc/3.0.18/vlc-3.0.18.tar.xz.sha1 -sha1 b11ccaa0f5ee15a550564817d60458eb0946f80e vlc-3.0.18.tar.xz +# From https://get.videolan.org/vlc/3.0.20/vlc-3.0.20.tar.xz.sha256 +sha256 adc7285b4d2721cddf40eb5270cada2aaa10a334cb546fd55a06353447ba29b5 vlc-3.0.20.tar.xz +# From https://get.videolan.org/vlc/3.0.20/vlc-3.0.20.tar.xz.sha1 +sha1 b834516ab701bf6311980ed5d67b77c834fdebe7 vlc-3.0.20.tar.xz # Locally computed sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB diff --git a/package/vlc/vlc.mk b/package/vlc/vlc.mk index c6ae46f46940..d0fc1744c018 100644 --- a/package/vlc/vlc.mk +++ b/package/vlc/vlc.mk @@ -4,7 +4,7 @@ # ################################################################################ -VLC_VERSION = 3.0.18 +VLC_VERSION = 3.0.20 VLC_SITE = https://get.videolan.org/vlc/$(VLC_VERSION) VLC_SOURCE = vlc-$(VLC_VERSION).tar.xz VLC_LICENSE = GPL-2.0+, LGPL-2.1+ diff --git a/package/volk/volk.hash b/package/volk/volk.hash index 4c62c6d31519..8047a68bab2b 100644 --- a/package/volk/volk.hash +++ b/package/volk/volk.hash @@ -1,4 +1,3 @@ # Locally computed -sha256 eff53206cd1ec3314755e0b2bde3c7aaea21dd0f0ad8d753bff07d98e93ddee2 volk-2.5.2.tar.xz -sha256 6dcdafa9e750545f5f65c2e6f53820184822db728ac2b8bfe1d4a47da09ec0d6 COPYING -sha256 258f450f060a161fb9f9e2e7c07c6b1ee73e5142297e6792dc1ee76b028cf0ca COPYING-LGPL +sha256 88fd80638a3683f23a8cae6c551a8cfe9ea55735c701846f3eeeeeea8a14f6a3 volk-3.0.0.tar.xz +sha256 e3a994d82e644b03a792a930f574002658412f62407f5fee083f2555c5f23118 COPYING diff --git a/package/volk/volk.mk b/package/volk/volk.mk index af5bd4306b58..67475d5c9070 100644 --- a/package/volk/volk.mk +++ b/package/volk/volk.mk @@ -4,13 +4,11 @@ # ################################################################################ -VOLK_VERSION = 2.5.2 +VOLK_VERSION = 3.0.0 VOLK_SITE = https://github.com/gnuradio/volk/releases/download/v$(VOLK_VERSION) VOLK_SOURCE = volk-$(VOLK_VERSION).tar.xz -# See https://github.com/gnuradio/volk/tree/v2.5.1#license for some -# details on the licensing. -VOLK_LICENSE = GPL-3.0+, LGPL-3.0+ -VOLK_LICENSE_FILES = COPYING COPYING-LGPL +VOLK_LICENSE = LGPL-3.0+ +VOLK_LICENSE_FILES = COPYING VOLK_SUPPORTS_IN_SOURCE_BUILD = NO diff --git a/package/vuejs-router/vuejs-router.hash b/package/vuejs-router/vuejs-router.hash index b48e59ef48bb..f87d18f7ed93 100644 --- a/package/vuejs-router/vuejs-router.hash +++ b/package/vuejs-router/vuejs-router.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 437558a84b99d0d89743d4897ec16a90a96a1d3a6786e697a8808a044bcb9b8f vue-router-4.1.6.tgz +sha256 61dc033860c42a2f3af046d461ef14348b1fe9094b27d107f7be6d1420d39b11 vue-router-4.2.5.tgz sha256 91a2845c4db44e7497b514b98634a674c737986ad0db81599307cf733bf850b2 LICENSE diff --git a/package/vuejs-router/vuejs-router.mk b/package/vuejs-router/vuejs-router.mk index de7e9c30c51f..7f73fed5d528 100644 --- a/package/vuejs-router/vuejs-router.mk +++ b/package/vuejs-router/vuejs-router.mk @@ -4,7 +4,7 @@ # ################################################################################ -VUEJS_ROUTER_VERSION = 4.1.6 +VUEJS_ROUTER_VERSION = 4.2.5 VUEJS_ROUTER_SOURCE = vue-router-$(VUEJS_ROUTER_VERSION).tgz VUEJS_ROUTER_SITE = https://registry.npmjs.org/vue-router/- VUEJS_ROUTER_LICENSE = MIT diff --git a/package/vuejs/vuejs.hash b/package/vuejs/vuejs.hash index e66bee06d3fc..d3bca468034b 100644 --- a/package/vuejs/vuejs.hash +++ b/package/vuejs/vuejs.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 968e71a707a4a1961faa6e513b6bba162ef04c3413d7edaba0abc1a5996ae71b vue-3.2.45.tgz +sha256 5d3ab0144d5b8eaf28ccfbf27500669a91463226c4767041c7293ce76065171a vue-3.3.4.tgz sha256 1bb85cc9b13b81ef41c81c51866172fc345e0503c86726a6755b796590b70175 LICENSE diff --git a/package/vuejs/vuejs.mk b/package/vuejs/vuejs.mk index 8f7d0cd3d411..29bf3bc66bcd 100644 --- a/package/vuejs/vuejs.mk +++ b/package/vuejs/vuejs.mk @@ -4,7 +4,7 @@ # ################################################################################ -VUEJS_VERSION = 3.2.45 +VUEJS_VERSION = 3.3.4 VUEJS_SOURCE = vue-$(VUEJS_VERSION).tgz VUEJS_SITE = https://registry.npmjs.org/vue/- VUEJS_LICENSE = MIT diff --git a/package/vulkan-headers/vulkan-headers.hash b/package/vulkan-headers/vulkan-headers.hash index c43736405cbb..b38bfcff47aa 100644 --- a/package/vulkan-headers/vulkan-headers.hash +++ b/package/vulkan-headers/vulkan-headers.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 7239108c372f1fbe365bd8d1610ca2bb4e72b73b2151f2551bf9df54dd539639 vulkan-headers-1.2.203.tar.gz -sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.txt +sha256 317e467a5fb2eaa6a18b984ec70fdbfaccd93595a3e6f4bcceca7d3fab280505 vulkan-headers-1.3.262.tar.gz +sha256 ac24e5ea920e4318e4d02c4086ae51f53cfb03feed06c18df1019e7ada1ec7bc LICENSE.md diff --git a/package/vulkan-headers/vulkan-headers.mk b/package/vulkan-headers/vulkan-headers.mk index 13cae1e6855f..20b248364d5c 100644 --- a/package/vulkan-headers/vulkan-headers.mk +++ b/package/vulkan-headers/vulkan-headers.mk @@ -4,10 +4,12 @@ # ################################################################################ -VULKAN_HEADERS_VERSION = 1.2.203 +# Note: changing this version will also affect vulkan-loader and +# vulkan-tools, so please update those packages as well. +VULKAN_HEADERS_VERSION = 1.3.262 VULKAN_HEADERS_SITE = $(call github,KhronosGroup,Vulkan-Headers,v$(VULKAN_HEADERS_VERSION)) -VULKAN_HEADERS_LICENSE = Apache-2.0 -VULKAN_HEADERS_LICENSE_FILES = LICENSE.txt +VULKAN_HEADERS_LICENSE = Apache-2.0, MIT +VULKAN_HEADERS_LICENSE_FILES = LICENSE.md VULKAN_HEADERS_INSTALL_STAGING = YES $(eval $(cmake-package)) diff --git a/package/vulkan-loader/Config.in b/package/vulkan-loader/Config.in new file mode 100644 index 000000000000..9c215dc9ce82 --- /dev/null +++ b/package/vulkan-loader/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_VULKAN_LOADER + bool "vulkan-loader" + depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_STATIC_LIBS # dlfcn.h + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_VULKAN_HEADERS + help + The Khronos official Vulkan ICD desktop loader. + + https://github.com/KhronosGroup/Vulkan-Loader + +comment "vulkan-loader needs a toolchain w/ C++, dynamic library, threads" + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/vulkan-loader/vulkan-loader.hash b/package/vulkan-loader/vulkan-loader.hash new file mode 100644 index 000000000000..e09ecda8a9da --- /dev/null +++ b/package/vulkan-loader/vulkan-loader.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 3bbaa5ee64058a89949eb777de66ce94bfe3141892514172cfc9451c756802d5 vulkan-loader-1.3.262.tar.gz +sha256 43c0a37e6a0fa7ff3c843b3ec5a4fac84b712558ddac103fbd4c1649662a9ece LICENSE.txt diff --git a/package/vulkan-loader/vulkan-loader.mk b/package/vulkan-loader/vulkan-loader.mk new file mode 100644 index 000000000000..f6dd9d0ac3dc --- /dev/null +++ b/package/vulkan-loader/vulkan-loader.mk @@ -0,0 +1,45 @@ +################################################################################ +# +# vulkan-loader +# +################################################################################ + +VULKAN_LOADER_VERSION = $(VULKAN_HEADERS_VERSION) +VULKAN_LOADER_SITE = $(call github,KhronosGroup,Vulkan-Loader,v$(VULKAN_LOADER_VERSION)) +VULKAN_LOADER_LICENSE = Apache-2.0 +VULKAN_LOADER_LICENSE_FILES = LICENSE.txt +VULKAN_LOADER_INSTALL_STAGING = YES + +VULKAN_LOADER_DEPENDENCIES = host-pkgconf vulkan-headers + +VULKAN_LOADER_CONF_OPTS += \ + -DASSEMBLER_WORKS=FALSE \ + -DBUILD_WSI_SCREEN_QNX_SUPPORT=OFF \ + -DLOADER_CODEGEN=OFF + +ifeq ($(BR2_PACKAGE_DIRECTFB),y) +VULKAN_LOADER_DEPENDENCIES += directfb +VULKAN_LOADER_CONF_OPTS += -DBUILD_WSI_DIRECTFB_SUPPORT=ON +else +VULKAN_LOADER_CONF_OPTS += -DBUILD_WSI_DIRECTFB_SUPPORT=OFF +endif + +ifeq ($(BR2_PACKAGE_LIBXCB),y) +VULKAN_LOADER_DEPENDENCIES += libxcb +VULKAN_LOADER_CONF_OPTS += \ + -DBUILD_WSI_XCB_SUPPORT=ON \ + -DBUILD_WSI_XLIB_SUPPORT=ON +else +VULKAN_LOADER_CONF_OPTS += \ + -DBUILD_WSI_XCB_SUPPORT=OFF \ + -DBUILD_WSI_XLIB_SUPPORT=OFF +endif + +ifeq ($(BR2_PACKAGE_WAYLAND),y) +VULKAN_LOADER_DEPENDENCIES += wayland +VULKAN_LOADER_CONF_OPTS += -DBUILD_WSI_WAYLAND_SUPPORT=ON +else +VULKAN_LOADER_CONF_OPTS += -DBUILD_WSI_WAYLAND_SUPPORT=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/vulkan-tools/Config.in b/package/vulkan-tools/Config.in new file mode 100644 index 000000000000..54fa539dabf9 --- /dev/null +++ b/package/vulkan-tools/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_VULKAN_TOOLS + bool "vulkan-tools" + depends on BR2_INSTALL_LIBSTDCPP # vulkan-loader + depends on !BR2_STATIC_LIBS # vullan-loader + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++11 + depends on BR2_TOOLCHAIN_HAS_THREADS # vulkan-loader + select BR2_PACKAGE_VULKAN_HEADERS + select BR2_PACKAGE_VULKAN_LOADER + + help + The Khronos official Vulkan Tools and Utilities. + + https://github.com/KhronosGroup/Vulkan-Tools + +comment "vulkan-tools needs a toolchain w/ C++, dynamic library, threads, gcc >= 4.9" + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 diff --git a/package/vulkan-tools/vulkan-tools.hash b/package/vulkan-tools/vulkan-tools.hash new file mode 100644 index 000000000000..24c06977840b --- /dev/null +++ b/package/vulkan-tools/vulkan-tools.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 8c77d02694d0516ae2ba3f3718745647e87e788ef93faabb2e3674ff32608010 vulkan-tools-1.3.262.tar.gz +sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE.txt diff --git a/package/vulkan-tools/vulkan-tools.mk b/package/vulkan-tools/vulkan-tools.mk new file mode 100644 index 000000000000..68f7c1c04d91 --- /dev/null +++ b/package/vulkan-tools/vulkan-tools.mk @@ -0,0 +1,47 @@ +################################################################################ +# +# vulkan-tools +# +################################################################################ + +VULKAN_TOOLS_VERSION = $(VULKAN_HEADERS_VERSION) +VULKAN_TOOLS_SITE = $(call github,KhronosGroup,Vulkan-Tools,v$(VULKAN_TOOLS_VERSION)) +VULKAN_TOOLS_LICENSE = Apache-2.0 +VULKAN_TOOLS_LICENSE_FILES = LICENSE.txt + +VULKAN_TOOLS_DEPENDENCIES = \ + vulkan-headers \ + vulkan-loader + +VULKAN_TOOLS_CONF_OPTS += \ + -DBUILD_CUBE=OFF \ + -DBUILD_ICD=OFF \ + -DBUILD_VULKANINFO=ON \ + -DINSTALL_ICD=OFF + +ifeq ($(BR2_PACKAGE_DIRECTFB),y) +VULKAN_TOOLS_DEPENDENCIES += directfb +VULKAN_TOOLS_CONF_OPTS += -DBUILD_WSI_DIRECTFB_SUPPORT=ON +else +VULKAN_TOOLS_CONF_OPTS += -DBUILD_WSI_DIRECTFB_SUPPORT=OFF +endif + +ifeq ($(BR2_PACKAGE_LIBXCB),y) +VULKAN_TOOLS_DEPENDENCIES += libxcb +VULKAN_TOOLS_CONF_OPTS += \ + -DBUILD_WSI_XCB_SUPPORT=ON \ + -DBUILD_WSI_XLIB_SUPPORT=ON +else +VULKAN_TOOLS_CONF_OPTS += \ + -DBUILD_WSI_XCB_SUPPORT=OFF \ + -DBUILD_WSI_XLIB_SUPPORT=OFF +endif + +ifeq ($(BR2_PACKAGE_WAYLAND),y) +VULKAN_TOOLS_DEPENDENCIES += wayland +VULKAN_TOOLS_CONF_OPTS += -DBUILD_WSI_WAYLAND_SUPPORT=ON +else +VULKAN_TOOLS_CONF_OPTS += -DBUILD_WSI_WAYLAND_SUPPORT=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/waf/waf.hash b/package/waf/waf.hash index c8d464ebfbfe..1ad535febb45 100644 --- a/package/waf/waf.hash +++ b/package/waf/waf.hash @@ -1,7 +1,7 @@ # Locally computed -sha1 9cc6db88ecda57067024f368722ecbf48a3bba1a waf-2.0.24 -sha256 93909bca823a675f9f40af7c65b24887c3a3c0efdf411ff1978ba827194bdeb0 waf-2.0.24 +sha1 e310e29a44f23f80591f2aa6c2d4c30e5f1a26a8 waf-2.0.26 +sha256 dcec3e179f9c33a66544f1b3d7d91f20f6373530510fa6a858cddb6bfdcde14b waf-2.0.26 # The waf script also contains its license, but is renamed `waf` in the extract # step, so this is a synonym for the above, to check WAF_LICENSE -sha256 93909bca823a675f9f40af7c65b24887c3a3c0efdf411ff1978ba827194bdeb0 waf +sha256 dcec3e179f9c33a66544f1b3d7d91f20f6373530510fa6a858cddb6bfdcde14b waf diff --git a/package/waf/waf.mk b/package/waf/waf.mk index d98ab489ca53..bffa27a926ca 100644 --- a/package/waf/waf.mk +++ b/package/waf/waf.mk @@ -4,7 +4,7 @@ # ################################################################################ -WAF_VERSION = 2.0.24 +WAF_VERSION = 2.0.26 WAF_SOURCE = waf-$(WAF_VERSION) WAF_SITE = https://waf.io WAF_LICENSE = BSD-3-Clause diff --git a/package/wampcc/Config.in b/package/wampcc/Config.in index 92abc9cb25ab..41919361136e 100644 --- a/package/wampcc/Config.in +++ b/package/wampcc/Config.in @@ -6,6 +6,7 @@ config BR2_PACKAGE_WAMPCC depends on !BR2_STATIC_LIBS # libuv depends on BR2_TOOLCHAIN_HAS_ATOMIC depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libuv depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # std::shared_future select BR2_PACKAGE_LIBUV select BR2_PACKAGE_JANSSON @@ -16,12 +17,13 @@ config BR2_PACKAGE_WAMPCC https://github.com/darrenjs/wampcc -comment "wampcc needs a toolchain w/ C++, NPTL, dynamic library" +comment "wampcc needs a toolchain w/ C++, NPTL, dynamic library, gcc >= 4.9" depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_ATOMIC depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_INSTALL_LIBSTDCPP || \ - !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS + !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 comment "wampcc needs a toolchain not affected by GCC bug 64735" depends on BR2_USE_MMU diff --git a/package/watchdog/watchdog.mk b/package/watchdog/watchdog.mk index 2699fb474f76..c5066ad5b1c7 100644 --- a/package/watchdog/watchdog.mk +++ b/package/watchdog/watchdog.mk @@ -6,6 +6,7 @@ WATCHDOG_VERSION = 5.16 WATCHDOG_SITE = http://downloads.sourceforge.net/sourceforge/watchdog +WATCHDOG_SELINUX_MODULES = watchdog WATCHDOG_LICENSE = GPL-2.0+ WATCHDOG_LICENSE_FILES = COPYING # By default installs binaries in /usr/sbin/, but we want them in diff --git a/package/wavemon/0001-iw_if.h-don-t-include-linux-if.h.patch b/package/wavemon/0001-iw_if.h-don-t-include-linux-if.h.patch deleted file mode 100644 index 95f54e4b7ff8..000000000000 --- a/package/wavemon/0001-iw_if.h-don-t-include-linux-if.h.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 4ac1482bb40376e47805c3737dfed60abb1dd3b4 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Wed, 22 Dec 2021 00:39:35 +0100 -Subject: [PATCH] iw_if.h: don't include linux/if.h (#109) - -Don't include linux/if.h to avoid the following build failure: - -In file included from iw_if.h:31:0, - from conf.c:19: -/home/buildroot/autobuild/instance-3/output-1/host/arm-buildroot-linux-gnueabi/sysroot/usr/include/linux/if.h: At top level: -/home/buildroot/autobuild/instance-3/output-1/host/arm-buildroot-linux-gnueabi/sysroot/usr/include/linux/if.h:143:8: error: redefinition of 'struct ifmap' - struct ifmap { - ^ -In file included from iw_if.h:26:0, - from conf.c:19: -/home/buildroot/autobuild/instance-3/output-1/host/arm-buildroot-linux-gnueabi/sysroot/usr/include/net/if.h:111:8: note: originally defined here - struct ifmap - ^ - -Fixes: - - http://autobuild.buildroot.org/results/a6ee162cf04b70b144b54e1ca4b7b2421071c50c - -Signed-off-by: Fabrice Fontaine -[Retrieved from: -https://github.com/uoaerg/wavemon/commit/4ac1482bb40376e47805c3737dfed60abb1dd3b4] ---- - iw_if.h | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/iw_if.h b/iw_if.h -index 9e7fa89..6607e0b 100644 ---- a/iw_if.h -+++ b/iw_if.h -@@ -28,7 +28,6 @@ - #include - #include - #include --#include - - /* Definitions from linux/ieee80211.h (not necessarily part of distro headers) */ - #define WLAN_CAPABILITY_ESS (1<<0) diff --git a/package/wavemon/wavemon.hash b/package/wavemon/wavemon.hash index 7c685f650091..342f2f7d9102 100644 --- a/package/wavemon/wavemon.hash +++ b/package/wavemon/wavemon.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 e7e4167292136ca7ff12ddeb880904c10f33e97620ea6aa5f7838e859fdb40ed wavemon-0.9.4.tar.gz +sha256 f84c55a40b470f2b98908d20cd0b38ffef6f587daed23b50281c9592df3331c6 wavemon-0.9.5.tar.gz sha256 3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986 LICENSE diff --git a/package/wavemon/wavemon.mk b/package/wavemon/wavemon.mk index 50e3fd275e4f..74917e8392ce 100644 --- a/package/wavemon/wavemon.mk +++ b/package/wavemon/wavemon.mk @@ -4,7 +4,7 @@ # ################################################################################ -WAVEMON_VERSION = 0.9.4 +WAVEMON_VERSION = 0.9.5 WAVEMON_SITE = $(call github,uoaerg,wavemon,v$(WAVEMON_VERSION)) WAVEMON_LICENSE = GPL-3.0+ WAVEMON_LICENSE_FILES = LICENSE diff --git a/package/wayland-protocols/wayland-protocols.hash b/package/wayland-protocols/wayland-protocols.hash index 45c62a396b77..d039cd6fba23 100644 --- a/package/wayland-protocols/wayland-protocols.hash +++ b/package/wayland-protocols/wayland-protocols.hash @@ -1,4 +1,4 @@ -# From https://lists.freedesktop.org/archives/wayland-devel/2022-November/042524.html -sha256 a07fa722ed87676ec020d867714bc9a2f24c464da73912f39706eeef5219e238 wayland-protocols-1.31.tar.xz -sha512 402ce1915300e29afe554d77965ee0a28a5f22fdb5b901c4c640e59b9f3a9c11094e1edae87eea1e76eea557f6faf0c34a0c28ee7f6babb4dc3719329c4e25bf wayland-protocols-1.31.tar.xz +# From https://lists.freedesktop.org/archives/wayland-devel/2023-July/042836.html +sha256 7459799d340c8296b695ef857c07ddef24c5a09b09ab6a74f7b92640d2b1ba11 wayland-protocols-1.32.tar.xz +sha512 90bbd52daf342b98823ddeed04e349ae242d2eaf925ab8d603cceb36c980c83b5681bb890961e0d49584cb5c2e60a33abf8821770c6ab87956383630bd5b7966 wayland-protocols-1.32.tar.xz sha256 f1a2b233e8a9a71c40f4aa885be08a0842ac85bb8588703c1dd7e6e6502e3124 COPYING diff --git a/package/wayland-protocols/wayland-protocols.mk b/package/wayland-protocols/wayland-protocols.mk index 54f9ed8a3a60..2cfaa830e58d 100644 --- a/package/wayland-protocols/wayland-protocols.mk +++ b/package/wayland-protocols/wayland-protocols.mk @@ -4,7 +4,7 @@ # ################################################################################ -WAYLAND_PROTOCOLS_VERSION = 1.31 +WAYLAND_PROTOCOLS_VERSION = 1.32 WAYLAND_PROTOCOLS_SITE = https://gitlab.freedesktop.org/wayland/wayland-protocols/-/releases/$(WAYLAND_PROTOCOLS_VERSION)/downloads WAYLAND_PROTOCOLS_SOURCE = wayland-protocols-$(WAYLAND_PROTOCOLS_VERSION).tar.xz WAYLAND_PROTOCOLS_LICENSE = MIT diff --git a/package/wayland-utils/0001-wayland-info-Fix-build-without-libdrm.patch b/package/wayland-utils/0001-wayland-info-Fix-build-without-libdrm.patch deleted file mode 100644 index 2d4591f785a3..000000000000 --- a/package/wayland-utils/0001-wayland-info-Fix-build-without-libdrm.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 3657a11d45f133776b50c716d99f37965eb07ed1 Mon Sep 17 00:00:00 2001 -From: Olivier Fourdan -Date: Wed, 14 Sep 2022 09:07:10 +0200 -Subject: [PATCH] wayland-info: Fix build without libdrm - -wayland-info can optionally use libdrm to provide a description of the -dmabuf format modifiers. - -When not using libdrm however, the build fails because "dev_t" is not -defined. - -The definition of "dev_t" comes from which is included -from , which is not included without libdrm support, hence the -build failure. - -Simply include unconditionally to make sure "dev_t" is -defined regardless of libdrm support, to fix the build failure. - -Closes: https://gitlab.freedesktop.org/wayland/wayland-utils/-/issues/6 -Signed-off-by: Olivier Fourdan -Fixes: 240cb739 - "Add support for linux_dmabuf version 4" -Reviewed-by: Simon Ser -Reviewed-by: Pekka Paalanen -(cherry picked from commit baa65ba9f62e6a05c32b9202b524158a21f24245) -Signed-off-by: James Hilliard -[james.hilliard1@gmail.com: backport from upstream commit -3657a11d45f133776b50c716d99f37965eb07ed1] ---- - wayland-info/wayland-info.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/wayland-info/wayland-info.c b/wayland-info/wayland-info.c -index 53cd04b..98ff205 100644 ---- a/wayland-info/wayland-info.c -+++ b/wayland-info/wayland-info.c -@@ -34,6 +34,7 @@ - #include - #include - #include -+#include - - #include - #if HAVE_HUMAN_FORMAT_MODIFIER --- -2.34.1 - diff --git a/package/wayland-utils/wayland-utils.hash b/package/wayland-utils/wayland-utils.hash index c9b16e05350b..fd14b986bc99 100644 --- a/package/wayland-utils/wayland-utils.hash +++ b/package/wayland-utils/wayland-utils.hash @@ -1,6 +1,4 @@ -# From https://lists.freedesktop.org/archives/wayland-devel/2022-September/042399.html -md5 1a398cbb75c3ac1ac231b2a8f84bd6d6 wayland-utils-1.1.0.tar.xz -sha1 38e5c37f5b35b86a84289659b4b0796811eb66cd wayland-utils-1.1.0.tar.xz -sha256 9e685863025b4feade36d53bbc8e31b43e26498be743dea84c7a84912959410a wayland-utils-1.1.0.tar.xz -sha512 5b841ecb9b534a9b353e104dda9410961495495380fa65e32ef40855750609b03942a87c2fd66339aab57c05b3b8699e2bee055cfd44151f9609a5f6c53349df wayland-utils-1.1.0.tar.xz +# From https://lists.freedesktop.org/archives/wayland-devel/2023-June/042736.html +sha256 d9278c22554586881802540751bcc42569262bf80cd9ac9b0fd12ff4bd09a9e4 wayland-utils-1.2.0.tar.xz +sha512 dc69a2d88215b54486954bd9f6e91cd158b0c0b94dccd2c863477cf6b1e83a83db4466f0718aa7d2be4de8d06484c0672c79318bc5c2b1f082f893fe795c2c00 wayland-utils-1.2.0.tar.xz sha256 1eba39c11640014a5841dd3017e5245fc31f47e1cf43a3287a286dd6a8de8a1a COPYING diff --git a/package/wayland-utils/wayland-utils.mk b/package/wayland-utils/wayland-utils.mk index bc648a690406..efeb7e57a827 100644 --- a/package/wayland-utils/wayland-utils.mk +++ b/package/wayland-utils/wayland-utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -WAYLAND_UTILS_VERSION = 1.1.0 +WAYLAND_UTILS_VERSION = 1.2.0 WAYLAND_UTILS_SITE = https://gitlab.freedesktop.org/wayland/wayland-utils/-/releases/$(WAYLAND_UTILS_VERSION)/downloads WAYLAND_UTILS_SOURCE = wayland-utils-$(WAYLAND_UTILS_VERSION).tar.xz WAYLAND_UTILS_LICENSE = MIT diff --git a/package/wayland/wayland.hash b/package/wayland/wayland.hash index 1c7fe705e167..5da527e3188a 100644 --- a/package/wayland/wayland.hash +++ b/package/wayland/wayland.hash @@ -1,6 +1,6 @@ -# From https://lists.freedesktop.org/archives/wayland-devel/2022-June/042268.html -sha256 6dc64d7fc16837a693a51cfdb2e568db538bfdc9f457d4656285bb9594ef11ac wayland-1.21.0.tar.xz -sha512 5575216d30fdf5c63caa6bcad071e15f2a4f3acb12df776806073f65db37a50b5b5b3cc7957c5497636f4ac01893e2eaab26e453ded44b287acde01762f5fdc3 wayland-1.21.0.tar.xz +# From https://lists.freedesktop.org/archives/wayland-devel/2023-April/042647.html +sha256 1540af1ea698a471c2d8e9d288332c7e0fd360c8f1d12936ebb7e7cbc2425842 wayland-1.22.0.tar.xz +sha512 fb1974efc8433e97254eb83fe28974198f2b4d8246418eb3d34ce657055461e0c97bc06dd52e5066ae91bbe05bac611dc49a0937ba226ac6388d5a47241efb12 wayland-1.22.0.tar.xz # Locally calculated sha256 6eefcb023622a463168a5c20add95fd24a38c7482622a9254a23b99b7c153061 COPYING diff --git a/package/wayland/wayland.mk b/package/wayland/wayland.mk index 0a6e5e9ec776..1a764d558022 100644 --- a/package/wayland/wayland.mk +++ b/package/wayland/wayland.mk @@ -4,7 +4,7 @@ # ################################################################################ -WAYLAND_VERSION = 1.21.0 +WAYLAND_VERSION = 1.22.0 WAYLAND_SITE = https://gitlab.freedesktop.org/wayland/wayland/-/releases/$(WAYLAND_VERSION)/downloads WAYLAND_SOURCE = wayland-$(WAYLAND_VERSION).tar.xz WAYLAND_LICENSE = MIT diff --git a/package/waylandpp/0001-add-missing-cstdint-include.patch b/package/waylandpp/0001-add-missing-cstdint-include.patch new file mode 100644 index 000000000000..13b0ce49ad49 --- /dev/null +++ b/package/waylandpp/0001-add-missing-cstdint-include.patch @@ -0,0 +1,61 @@ +From 3c441910aa25f57df2a4db55f75f5d99cea86620 Mon Sep 17 00:00:00 2001 +From: Sergei Trofimovich +Date: Sun, 8 Jan 2023 18:24:53 +0000 +Subject: [PATCH] add missing include + +Upcoming `gcc-13` made `` leaner and does not include `` +implicitly anymore. As a result build fails without the change as: + + [ 2%] Building CXX object CMakeFiles/wayland-scanner++.dir/scanner/scanner.cpp.o + scanner/scanner.cpp:378:3: error: 'uint32_t' does not name a type + 378 | uint32_t width = 0; + | ^~~~~~~~ + +Upstream: https://github.com/NilsBrause/waylandpp/pull/71 + +Signed-off-by: Bernd Kuhls +--- + include/wayland-client.hpp | 1 + + scanner/scanner.cpp | 3 +++ + 2 files changed, 4 insertions(+) + +diff --git a/include/wayland-client.hpp b/include/wayland-client.hpp +index a3f782b..4598a0e 100644 +--- a/include/wayland-client.hpp ++++ b/include/wayland-client.hpp +@@ -29,6 +29,7 @@ + /** \file */ + + #include ++#include + #include + #include + #include +diff --git a/scanner/scanner.cpp b/scanner/scanner.cpp +index bebd71e..37cf7ff 100644 +--- a/scanner/scanner.cpp ++++ b/scanner/scanner.cpp +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + #include + + #include "pugixml.hpp" +@@ -1106,6 +1107,7 @@ int main(int argc, char *argv[]) + wayland_hpp << "#pragma once" << std::endl + << std::endl + << "#include " << std::endl ++ << "#include " << std::endl + << "#include " << std::endl + << "#include " << std::endl + << "#include " << std::endl +@@ -1125,6 +1127,7 @@ int main(int argc, char *argv[]) + wayland_server_hpp << "#pragma once" << std::endl + << std::endl + << "#include " << std::endl ++ << "#include " << std::endl + << "#include " << std::endl + << "#include " << std::endl + << "#include " << std::endl diff --git a/package/waylandpp/waylandpp.hash b/package/waylandpp/waylandpp.hash index 1b806af9b02c..a3eb5379afbf 100644 --- a/package/waylandpp/waylandpp.hash +++ b/package/waylandpp/waylandpp.hash @@ -1,4 +1,4 @@ # Locally computed -sha256 e7f486165d3568c3558b5c7099133aea4a285b82820eeafad329fc10271c654d waylandpp-0.2.8.tar.gz -sha256 8ff91f682a38f8a603b173222a60e8dc71754a79a522a316fb6b76ce138c542c LICENSE +sha256 b20b45917382c6b87e9380130c9a1a1c563da2f498de5830df12fbce326dd9f5 waylandpp-1.0.0.tar.gz +sha256 3eee5022ce84ead344e1c51b9d00c7f450f53003fe096fe460d66c616fe56782 LICENSE sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 scanner/gpl-3.0.txt diff --git a/package/waylandpp/waylandpp.mk b/package/waylandpp/waylandpp.mk index 45d9ccd5285b..4a0d58ba505e 100644 --- a/package/waylandpp/waylandpp.mk +++ b/package/waylandpp/waylandpp.mk @@ -4,7 +4,7 @@ # ################################################################################ -WAYLANDPP_VERSION = 0.2.8 +WAYLANDPP_VERSION = 1.0.0 WAYLANDPP_SITE = $(call github,NilsBrause,waylandpp,$(WAYLANDPP_VERSION)) WAYLANDPP_LICENSE = MIT, GPL-3.0+ (wayland_scanner) WAYLANDPP_LICENSE_FILES = LICENSE scanner/gpl-3.0.txt diff --git a/package/webkitgtk/0001-Fix-build-failure-when-gstreamer-support-is-disabled.patch b/package/webkitgtk/0001-Fix-build-failure-when-gstreamer-support-is-disabled.patch new file mode 100644 index 000000000000..3fa23b215bdb --- /dev/null +++ b/package/webkitgtk/0001-Fix-build-failure-when-gstreamer-support-is-disabled.patch @@ -0,0 +1,36 @@ +From 9b31965cdf362768e86f7e592e59e68fb3351261 Mon Sep 17 00:00:00 2001 +From: Matt Turner +Date: Tue, 8 Aug 2023 16:51:25 -0700 +Subject: [PATCH] Fix build failure when gstreamer support is disabled + https://bugs.webkit.org/show_bug.cgi?id=259931 https://bugs.gentoo.org/911663 + +Reviewed by Carlos Alberto Lopez Perez. + +* Source/WebCore/loader/MixedContentChecker.cpp: + +Canonical link: https://commits.webkit.org/260527.429@fix-build + +(cherry picked from commit f5ceef5bf2e3c4d7203a37b9e2d2fdd9b1bb2732) + +Upstream: https://github.com/WebKit/WebKit/commit/f5ceef5bf2e3c4d7203a37b9e2d2fdd9b1bb2732 +Signed-off-by: Thomas Devoogdt +--- + Source/WebCore/loader/MixedContentChecker.cpp | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/Source/WebCore/loader/MixedContentChecker.cpp b/Source/WebCore/loader/MixedContentChecker.cpp +index 9b4c7fe62020..ac4733bc08bc 100644 +--- a/Source/WebCore/loader/MixedContentChecker.cpp ++++ b/Source/WebCore/loader/MixedContentChecker.cpp +@@ -33,6 +33,8 @@ + #include "ContentSecurityPolicy.h" + #include "Document.h" + #include "Frame.h" ++#include "FrameLoader.h" ++#include "FrameLoaderClient.h" + #include "SecurityOrigin.h" + + namespace WebCore { +-- +2.42.0 + diff --git a/package/webkitgtk/Config.in b/package/webkitgtk/Config.in index 976341093e53..927792b1e413 100644 --- a/package/webkitgtk/Config.in +++ b/package/webkitgtk/Config.in @@ -16,12 +16,12 @@ config BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt -comment "webkitgtk needs libgtk3 and a toolchain w/ C++, wchar, threads, dynamic library, gcc >= 8, host gcc >= 4.9" +comment "webkitgtk needs libgtk3 and a toolchain w/ C++, wchar, threads, dynamic library, gcc >= 9, host gcc >= 4.9" depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS depends on !BR2_BINFMT_FLAT depends on !BR2_PACKAGE_LIBGTK3 || !BR2_INSTALL_LIBSTDCPP || \ !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \ - !BR2_TOOLCHAIN_GCC_AT_LEAST_7 || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_9 || \ !BR2_HOST_GCC_AT_LEAST_4_9 depends on BR2_USE_MMU @@ -31,9 +31,9 @@ config BR2_PACKAGE_WEBKITGTK depends on !BR2_BINFMT_FLAT # icu depends on BR2_HOST_GCC_AT_LEAST_4_9 # icu, host-ruby depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_TOOLCHAIN_HAS_THREADS # wayland, icu, libsoup - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 - depends on BR2_USE_WCHAR # icu, libsoup + depends on BR2_TOOLCHAIN_HAS_THREADS # wayland, icu, libsoup3 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_9 + depends on BR2_USE_WCHAR # icu, libsoup3 depends on BR2_PACKAGE_LIBGTK3 depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS select BR2_PACKAGE_CAIRO @@ -44,7 +44,7 @@ config BR2_PACKAGE_WEBKITGTK select BR2_PACKAGE_JPEG select BR2_PACKAGE_LIBGCRYPT select BR2_PACKAGE_LIBSECRET - select BR2_PACKAGE_LIBSOUP + select BR2_PACKAGE_LIBSOUP3 select BR2_PACKAGE_LIBTASN1 select BR2_PACKAGE_LIBXML2 select BR2_PACKAGE_LIBXSLT @@ -82,9 +82,9 @@ comment "sandboxing support needs a toolchain w/ headers >= 3.12" config BR2_PACKAGE_WEBKITGTK_HTTPS bool "HTTPS support" - depends on !BR2_STATIC_LIBS # libsoup -> glib-networking, gnutls + depends on !BR2_STATIC_LIBS # libsoup3 -> glib-networking, gnutls select BR2_PACKAGE_CA_CERTIFICATES # runtime - select BR2_PACKAGE_LIBSOUP_SSL + select BR2_PACKAGE_LIBSOUP3_SSL help Enable HTTPS protocol support. diff --git a/package/webkitgtk/webkitgtk.hash b/package/webkitgtk/webkitgtk.hash index c771297b5a16..7f50f1aa7b21 100644 --- a/package/webkitgtk/webkitgtk.hash +++ b/package/webkitgtk/webkitgtk.hash @@ -1,7 +1,6 @@ -# From https://webkitgtk.org/releases/webkitgtk-2.38.5.tar.xz.sums -md5 de05d314a3ecb5fb3835e4d84f8f466d webkitgtk-2.38.5.tar.xz -sha1 1774390c628bb3a524d4ed76f11de4a878078db6 webkitgtk-2.38.5.tar.xz -sha256 40c20c43022274df5893f22b1054fa894c3eea057389bb08aee08c5b0bb0c1a7 webkitgtk-2.38.5.tar.xz +# From https://www.webkitgtk.org/releases/webkitgtk-2.40.5.tar.xz.sums +sha1 2f4d06b021115eb4106177f7d5f534f45b5d3b2e webkitgtk-2.40.5.tar.xz +sha256 7de051a263668621d91a61a5eb1c3771d1a7cec900043d4afef06c326c16037f webkitgtk-2.40.5.tar.xz # Hashes for license files: sha256 0b5d3a7cc325942567373b0ecd757d07c132e0ebd7c97bfc63f7e1a76094edb4 Source/WebCore/LICENSE-APPLE diff --git a/package/webkitgtk/webkitgtk.mk b/package/webkitgtk/webkitgtk.mk index 3263f7fea041..bb6df3d592bc 100644 --- a/package/webkitgtk/webkitgtk.mk +++ b/package/webkitgtk/webkitgtk.mk @@ -4,7 +4,7 @@ # ################################################################################ -WEBKITGTK_VERSION = 2.38.5 +WEBKITGTK_VERSION = 2.40.5 WEBKITGTK_SITE = https://www.webkitgtk.org/releases WEBKITGTK_SOURCE = webkitgtk-$(WEBKITGTK_VERSION).tar.xz WEBKITGTK_INSTALL_STAGING = YES @@ -13,9 +13,12 @@ WEBKITGTK_LICENSE_FILES = \ Source/WebCore/LICENSE-APPLE \ Source/WebCore/LICENSE-LGPL-2.1 WEBKITGTK_CPE_ID_VENDOR = webkitgtk -WEBKITGTK_DEPENDENCIES = host-ruby host-python3 host-gperf \ - enchant harfbuzz icu jpeg libgcrypt libgtk3 libsecret libsoup \ +WEBKITGTK_DEPENDENCIES = host-ruby host-python3 host-gperf host-unifdef \ + enchant harfbuzz icu jpeg libgcrypt libgtk3 libsecret libsoup3 \ libtasn1 libxml2 libxslt openjpeg sqlite webp woff2 + +WEBKITGTK_CMAKE_BACKEND = ninja + WEBKITGTK_CONF_OPTS = \ -DENABLE_API_TESTS=OFF \ -DENABLE_DOCUMENTATION=OFF \ @@ -24,9 +27,9 @@ WEBKITGTK_CONF_OPTS = \ -DENABLE_SPELLCHECK=ON \ -DENABLE_WEB_RTC=OFF \ -DPORT=GTK \ + -DUSE_AVIF=OFF \ -DUSE_LIBHYPHEN=OFF \ -DUSE_OPENJPEG=ON \ - -DUSE_SOUP2=ON \ -DUSE_WOFF2=ON ifeq ($(BR2_PACKAGE_WEBKITGTK_SANDBOX),y) @@ -77,32 +80,32 @@ else WEBKITGTK_CONF_OPTS += -DENABLE_GAMEPAD=OFF endif -# Only one target platform can be built, assume X11 > Wayland +# Use GLES if available and desktop GL is not. +ifeq ($(BR2_PACKAGE_HAS_LIBGL):$(BR2_PACKAGE_HAS_LIBGLES),:y) +WEBKITGTK_CONF_OPTS += -DENABLE_GLES2=ON +WEBKITGTK_DEPENDENCIES += libgles +else +WEBKITGTK_CONF_OPTS += -DENABLE_GLES2=OFF +endif -# GTK3-X11 target gives OpenGL from newer libgtk3 versions -# Consider this better than EGL + maybe GLESv2 since both can't be built -# 2D CANVAS acceleration requires OpenGL proper with cairo-gl ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y) -WEBKITGTK_CONF_OPTS += \ - -DENABLE_GLES2=OFF \ - -DENABLE_X11_TARGET=ON +WEBKITGTK_CONF_OPTS += -DENABLE_X11_TARGET=ON WEBKITGTK_DEPENDENCIES += libgl \ xlib_libXcomposite xlib_libXdamage xlib_libXrender xlib_libXt -else # !X11 -# GTK3-BROADWAY/WAYLAND needs at least EGL -WEBKITGTK_DEPENDENCIES += libegl -# GLESv2 support is optional though -ifeq ($(BR2_PACKAGE_HAS_LIBGLES),y) -WEBKITGTK_CONF_OPTS += -DENABLE_GLES2=ON -WEBKITGTK_DEPENDENCIES += libgles else -# Disable general OpenGL (shading) if there's no GLESv2 -WEBKITGTK_CONF_OPTS += -DENABLE_GLES2=OFF +WEBKITGTK_CONF_OPTS += -DENABLE_X11_TARGET=OFF endif -# We must explicitly state the wayland target + ifeq ($(BR2_PACKAGE_LIBGTK3_WAYLAND),y) WEBKITGTK_CONF_OPTS += -DENABLE_WAYLAND_TARGET=ON +WEBKITGTK_DEPENDENCIES += libegl +else +WEBKITGTK_CONF_OPTS += -DENABLE_WAYLAND_TARGET=OFF endif + +# If only the GTK Broadway backend is enabled, EGL is still needed. +ifeq ($(BR2_PACKAGE_LIBGTK3_X11):$(BR2_PACKAGE_LIBGTK3_WAYLAND):$(BR2_PACKAGE_LIBGTK3_BROADWAY),::y) +WEBKITGTK_DEPENDENCIES += libegl endif ifeq ($(BR2_PACKAGE_LIBGTK3_WAYLAND)$(BR2_PACKAGE_WPEBACKEND_FDO),yy) @@ -139,23 +142,4 @@ ifeq ($(BR2_ARM_CPU_ARMV5)$(BR2_ARM_CPU_ARMV6)$(BR2_MIPS_CPU_MIPS32R6)$(BR2_MIPS WEBKITGTK_CONF_OPTS += -DENABLE_JIT=OFF -DENABLE_C_LOOP=ON -DENABLE_SAMPLING_PROFILER=OFF endif -# webkitgtk needs cmake >= 3.20 when not building with ninja, which is -# above our minimal version in -# support/dependencies/check-host-cmake.mk, so use the ninja backend: -# https://github.com/WebKit/WebKit/commit/6cd89696b5d406c1a3d9a7a9bbb18fda9284fa1f -WEBKITGTK_CONF_OPTS += -GNinja -WEBKITGTK_DEPENDENCIES += host-ninja - -define WEBKITGTK_BUILD_CMDS - $(TARGET_MAKE_ENV) $(BR2_CMAKE) --build $(WEBKITGTK_BUILDDIR) -endef - -define WEBKITGTK_INSTALL_STAGING_CMDS - $(TARGET_MAKE_ENV) DESTDIR=$(STAGING_DIR) $(BR2_CMAKE) --install $(WEBKITGTK_BUILDDIR) -endef - -define WEBKITGTK_INSTALL_TARGET_CMDS - $(TARGET_MAKE_ENV) DESTDIR=$(TARGET_DIR) $(BR2_CMAKE) --install $(WEBKITGTK_BUILDDIR) -endef - $(eval $(cmake-package)) diff --git a/package/webp/webp.hash b/package/webp/webp.hash index 969e4cd3d7b1..adc543059b62 100644 --- a/package/webp/webp.hash +++ b/package/webp/webp.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 7bf5a8a28cc69bcfa8cb214f2c3095703c6b73ac5fba4d5480c205331d9494df libwebp-1.2.4.tar.gz +sha256 2a499607df669e40258e53d0ade8035ba4ec0175244869d1025d460562aa09b4 libwebp-1.3.2.tar.gz sha256 5aec868f669e384a22372a4e8a1a6cd7d44c64cd451f960ca69cc170d1e13acf COPYING diff --git a/package/webp/webp.mk b/package/webp/webp.mk index 38a1564a6373..33cb4bd50729 100644 --- a/package/webp/webp.mk +++ b/package/webp/webp.mk @@ -4,7 +4,7 @@ # ################################################################################ -WEBP_VERSION = 1.2.4 +WEBP_VERSION = 1.3.2 WEBP_SOURCE = libwebp-$(WEBP_VERSION).tar.gz WEBP_SITE = http://downloads.webmproject.org/releases/webp WEBP_LICENSE = BSD-3-Clause diff --git a/package/websocketpp/0001-fix_cpp20_build.patch b/package/websocketpp/0001-fix_cpp20_build.patch new file mode 100644 index 000000000000..77b22920517f --- /dev/null +++ b/package/websocketpp/0001-fix_cpp20_build.patch @@ -0,0 +1,108 @@ +From 3197a520eb4c1e4754860441918a5930160373eb Mon Sep 17 00:00:00 2001 +From: Peter Thorson +Date: Tue, 29 Jun 2021 09:13:12 -0500 +Subject: [PATCH] [core] Remove the use of simple template ids as they have + been removed in c++20. + https://timsong-cpp.github.io/cppwp/n4861/diff.cpp17.class#2 references #991 + +Signed-off-by: Michael Nosthoff +Upstream: https://github.com/zaphoyd/websocketpp/commit/3197a520eb4c1e4754860441918a5930160373eb +--- + websocketpp/endpoint.hpp | 2 +- + websocketpp/logger/basic.hpp | 14 +++++++------- + websocketpp/roles/server_endpoint.hpp | 6 +++--- + 3 files changed, 11 insertions(+), 11 deletions(-) + +diff --git a/websocketpp/endpoint.hpp b/websocketpp/endpoint.hpp +index 825eaa46d..10f525689 100644 +--- a/websocketpp/endpoint.hpp ++++ b/websocketpp/endpoint.hpp +@@ -111,7 +111,7 @@ class endpoint : public config::transport_type, public config::endpoint_base { + + + /// Destructor +- ~endpoint() {} ++ ~endpoint() {} + + #ifdef _WEBSOCKETPP_DEFAULT_DELETE_FUNCTIONS_ + // no copy constructor because endpoints are not copyable +diff --git a/websocketpp/logger/basic.hpp b/websocketpp/logger/basic.hpp +index 84514130e..4c9d83649 100644 +--- a/websocketpp/logger/basic.hpp ++++ b/websocketpp/logger/basic.hpp +@@ -58,33 +58,33 @@ namespace log { + template + class basic { + public: +- basic(channel_type_hint::value h = ++ basic(channel_type_hint::value h = + channel_type_hint::access) + : m_static_channels(0xffffffff) + , m_dynamic_channels(0) + , m_out(h == channel_type_hint::error ? &std::cerr : &std::cout) {} + +- basic(std::ostream * out) ++ basic(std::ostream * out) + : m_static_channels(0xffffffff) + , m_dynamic_channels(0) + , m_out(out) {} + +- basic(level c, channel_type_hint::value h = ++ basic(level c, channel_type_hint::value h = + channel_type_hint::access) + : m_static_channels(c) + , m_dynamic_channels(0) + , m_out(h == channel_type_hint::error ? &std::cerr : &std::cout) {} + +- basic(level c, std::ostream * out) ++ basic(level c, std::ostream * out) + : m_static_channels(c) + , m_dynamic_channels(0) + , m_out(out) {} + + /// Destructor +- ~basic() {} ++ ~basic() {} + + /// Copy constructor +- basic(basic const & other) ++ basic(basic const & other) + : m_static_channels(other.m_static_channels) + , m_dynamic_channels(other.m_dynamic_channels) + , m_out(other.m_out) +@@ -97,7 +97,7 @@ class basic { + + #ifdef _WEBSOCKETPP_MOVE_SEMANTICS_ + /// Move constructor +- basic(basic && other) ++ basic(basic && other) + : m_static_channels(other.m_static_channels) + , m_dynamic_channels(other.m_dynamic_channels) + , m_out(other.m_out) +diff --git a/websocketpp/roles/server_endpoint.hpp b/websocketpp/roles/server_endpoint.hpp +index 4a5865eff..04fee18f9 100644 +--- a/websocketpp/roles/server_endpoint.hpp ++++ b/websocketpp/roles/server_endpoint.hpp +@@ -75,11 +75,11 @@ class server : public endpoint,config> { + } + + /// Destructor +- ~server() {} ++ ~server() {} + + #ifdef _WEBSOCKETPP_DEFAULT_DELETE_FUNCTIONS_ + // no copy constructor because endpoints are not copyable +- server(server &) = delete; ++ server(server &) = delete; + + // no copy assignment operator because endpoints are not copyable + server & operator=(server const &) = delete; +@@ -87,7 +87,7 @@ class server : public endpoint,config> { + + #ifdef _WEBSOCKETPP_MOVE_SEMANTICS_ + /// Move constructor +- server(server && o) : endpoint,config>(std::move(o)) {} ++ server(server && o) : endpoint,config>(std::move(o)) {} + + #ifdef _WEBSOCKETPP_DEFAULT_DELETE_FUNCTIONS_ + // no move assignment operator because of const member variables diff --git a/package/weston/0001-tests-Add-dependency-on-screenshooter-client-protocol.patch b/package/weston/0001-tests-Add-dependency-on-screenshooter-client-protocol.patch deleted file mode 100644 index 927215380e58..000000000000 --- a/package/weston/0001-tests-Add-dependency-on-screenshooter-client-protocol.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 2ac6b6b084a877adde64db7faff2ed22eb3ea97a Mon Sep 17 00:00:00 2001 -From: Daniel Stone -Date: Tue, 8 Feb 2022 22:39:42 +0000 -Subject: [PATCH] tests: Add dependency on screenshooter client protocol - -Given that the test-helper code relies on the screenshooter protocol, -make sure it's available for us to build, and the dependency ensures we -build in order. - -Fixes: #588 - -Signed-off-by: Daniel Stone - -[Retrieved from: -https://gitlab.freedesktop.org/wayland/weston/-/commit/2ac6b6b084a877adde64db7faff2ed22eb3ea97a] -Signed-off-by: Fabrice Fontaine ---- - tests/meson.build | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/tests/meson.build b/tests/meson.build -index 2d464ddcc..222091cd1 100644 ---- a/tests/meson.build -+++ b/tests/meson.build -@@ -29,8 +29,9 @@ lib_test_client = static_library( - 'weston-test-client-helper.c', - 'weston-test-fixture-compositor.c', - weston_test_client_protocol_h, -- weston_screenshooter_protocol_c, - weston_test_protocol_c, -+ weston_screenshooter_client_protocol_h, -+ weston_screenshooter_protocol_c, - viewporter_client_protocol_h, - viewporter_protocol_c, - 'color_util.h', --- -GitLab - diff --git a/package/weston/Config.in b/package/weston/Config.in index d5dbf27bbd21..db6a78ee8a2a 100644 --- a/package/weston/Config.in +++ b/package/weston/Config.in @@ -18,6 +18,8 @@ config BR2_PACKAGE_WESTON select BR2_PACKAGE_JPEG select BR2_PACKAGE_LIBINPUT select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_SEATD + select BR2_PACKAGE_SEATD_DAEMON if !BR2_PACKAGE_SYSTEMD_LOGIND # Runtime dependency select BR2_PACKAGE_XKEYBOARD_CONFIG select BR2_PACKAGE_WESTON_SHELL_DESKTOP if !BR2_PACKAGE_WESTON_HAS_SHELL @@ -42,6 +44,15 @@ config BR2_PACKAGE_WESTON_DEFAULT_HEADLESS bool "headless" select BR2_PACKAGE_WESTON_HEADLESS +config BR2_PACKAGE_WESTON_DEFAULT_RDP + bool "rdp" + depends on BR2_USE_MMU # freerdp, libglib2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on BR2_USE_WCHAR # freerdp + depends on BR2_INSTALL_LIBSTDCPP # freerdp + depends on BR2_PACKAGE_XORG7 # freerdp-server + select BR2_PACKAGE_WESTON_RDP + config BR2_PACKAGE_WESTON_DEFAULT_WAYLAND bool "wayland (nested)" select BR2_PACKAGE_WESTON_WAYLAND @@ -60,6 +71,7 @@ config BR2_PACKAGE_WESTON_DEFAULT_COMPOSITOR string default "drm" if BR2_PACKAGE_WESTON_DEFAULT_DRM default "headless" if BR2_PACKAGE_WESTON_DEFAULT_HEADLESS + default "rdp" if BR2_PACKAGE_WESTON_DEFAULT_RDP default "wayland" if BR2_PACKAGE_WESTON_DEFAULT_WAYLAND default "x11" if BR2_PACKAGE_WESTON_DEFAULT_X11 @@ -73,7 +85,9 @@ config BR2_PACKAGE_WESTON_RDP depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_USE_WCHAR # freerdp depends on BR2_INSTALL_LIBSTDCPP # freerdp + depends on BR2_PACKAGE_XORG7 # freerdp-server select BR2_PACKAGE_FREERDP + select BR2_PACKAGE_FREERDP_SERVER help This enables the RDP backend, which allows accessing weston through the network with any RDP-compliant client. @@ -87,10 +101,11 @@ config BR2_PACKAGE_WESTON_RDP /etc/freerdp/server/ so you may want to change them in a post-build script or a rootfs overlay. -comment "RDP compositor needs a toolchain w/ wchar, C++" +comment "RDP compositor needs a toolchain w/ wchar, C++, X.org" depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 - depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP + depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP || \ + !BR2_PACKAGE_XORG7 config BR2_PACKAGE_WESTON_HEADLESS bool "headless (testing) compositor" @@ -155,6 +170,22 @@ config BR2_PACKAGE_WESTON_SHELL_KIOSK default y select BR2_PACKAGE_WESTON_HAS_SHELL +config BR2_PACKAGE_WESTON_SCREENSHARE + bool "screenshare" + default y + +config BR2_PACKAGE_WESTON_SIMPLE_CLIENTS + bool "simple clients" + help + Simple clients includes application such as: + damage, dmabuf-feedback, dmabuf-egl, dmabuf-v4l, egl + + In the target filesystem, simple client program binaries are + prefixed with "weston-simple-". + + Note: Weston has two sets of clients. See also the weston + "demo clients" option. + config BR2_PACKAGE_WESTON_DEMO_CLIENTS bool "demo clients" depends on BR2_USE_MMU # pango @@ -169,6 +200,18 @@ config BR2_PACKAGE_WESTON_DEMO_CLIENTS help This enables the installation of Weston's demo clients. + Demo clients includes application such as: + clickdot, confine, content_protection, dnd, editor, + eventdemo, flower, fullscreen, image, multi-resource, + presentation-shm, resizor, scaler, smoke, stacking, + subsurfaces, tablet, transformed... + + In the target filesystem, demo client program binaries are + prefixed with "weston-". + + Note: Weston has two sets of clients. See also the weston + "simple clients" option. + comment "demo clients needs an OpenGL ES provider, an OpenEGL-capable Wayland backend and a toolchain w/ wchar, threads, C++, gcc >= 4.9" depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/weston/weston.hash b/package/weston/weston.hash index d58ca1ef70b1..0ecbaa4168ba 100644 --- a/package/weston/weston.hash +++ b/package/weston/weston.hash @@ -1,4 +1,4 @@ -# From https://lists.freedesktop.org/archives/wayland-devel/2022-June/042260.html -sha256 8a9e52506a865a7410981b04f8341b89b84106db8531ab1f9fdd37b5dc034115 weston-10.0.1.tar.xz -sha512 688d843096a95b463161b98e85ca3443b31ba2ee49fc8d456a2780cc96f576e9d097054e9f361997a66e9cc8373cf29e406a742dae3884b3b50b26acf1710c8c weston-10.0.1.tar.xz +# From https://lists.freedesktop.org/archives/wayland-devel/2023-May/042725.html +sha256 b18591eab278bc191720f6c09158040b795e7118af1d5ddca6acd9a8e2039535 weston-12.0.1.tar.xz +sha512 3dcfa1a2a6b9a605d3ecd597bf7ac0f87b0fd1971845b6e5c44b5e34296943ac146dae6e1cfea9be14ad7a9a8b6d30dc765f9289ef80920d7c516ebba1ba4688 weston-12.0.1.tar.xz sha256 fdb65868f65d0fbdb05c2d3b779e10ce9969fa0c4b9262ba4f260e87086ab860 COPYING diff --git a/package/weston/weston.mk b/package/weston/weston.mk index 01f84178b29c..6a5c0e57f5a4 100644 --- a/package/weston/weston.mk +++ b/package/weston/weston.mk @@ -4,7 +4,7 @@ # ################################################################################ -WESTON_VERSION = 10.0.1 +WESTON_VERSION = 12.0.1 WESTON_SITE = https://gitlab.freedesktop.org/wayland/weston/-/releases/$(WESTON_VERSION)/downloads WESTON_SOURCE = weston-$(WESTON_VERSION).tar.xz WESTON_LICENSE = MIT @@ -13,35 +13,32 @@ WESTON_CPE_ID_VENDOR = wayland WESTON_INSTALL_STAGING = YES WESTON_DEPENDENCIES = host-pkgconf wayland wayland-protocols \ - libxkbcommon pixman libpng udev cairo libinput libdrm + libxkbcommon pixman libpng udev cairo libinput libdrm seatd WESTON_CONF_OPTS = \ - -Dbackend-headless=false \ - -Dcolor-management-colord=false \ -Ddoc=false \ -Dremoting=false \ + -Dbackend-vnc=false \ + -Dlauncher-libseat=true \ -Dtools=calibrator,debug,info,terminal,touch-calibrator -# Uses VIDIOC_EXPBUF, only available from 3.8+ -ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8),y) -WESTON_CONF_OPTS += -Dsimple-clients=dmabuf-v4l -else -WESTON_CONF_OPTS += -Dsimple-clients= -endif +ifeq ($(BR2_PACKAGE_WESTON_SIMPLE_CLIENTS),y) +WESTON_SIMPLE_CLIENTS = \ + damage \ + dmabuf-egl \ + dmabuf-feedback \ + egl \ + im \ + shm \ + touch -ifeq ($(BR2_PACKAGE_DBUS)$(BR2_PACKAGE_SYSTEMD),yy) -WESTON_CONF_OPTS += -Dlauncher-logind=true -WESTON_DEPENDENCIES += dbus systemd -else -WESTON_CONF_OPTS += -Dlauncher-logind=false +ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8),y) +# dmabuf-v4l uses VIDIOC_EXPBUF, only available from 3.8+ +WESTON_SIMPLE_CLIENTS += dmabuf-v4l endif +endif # BR2_PACKAGE_WESTON_SIMPLE_CLIENTS -ifeq ($(BR2_PACKAGE_SEATD),y) -WESTON_CONF_OPTS += -Dlauncher-libseat=true -WESTON_DEPENDENCIES += seatd -else -WESTON_CONF_OPTS += -Dlauncher-libseat=false -endif +WESTON_CONF_OPTS += -Dsimple-clients=$(subst $(space),$(comma),$(strip $(WESTON_SIMPLE_CLIENTS))) ifeq ($(BR2_PACKAGE_JPEG),y) WESTON_CONF_OPTS += -Dimage-jpeg=true @@ -57,33 +54,20 @@ else WESTON_CONF_OPTS += -Dimage-webp=false endif -# weston-launch must be u+s root in order to work properly -ifeq ($(BR2_PACKAGE_LINUX_PAM),y) -define WESTON_PERMISSIONS - /usr/bin/weston-launch f 4755 0 0 - - - - - -endef -define WESTON_USERS - - - weston-launch -1 - - - - Weston launcher group -endef -WESTON_CONF_OPTS += -Ddeprecated-weston-launch=true -WESTON_DEPENDENCIES += linux-pam -else -WESTON_CONF_OPTS += -Ddeprecated-weston-launch=false -endif - -ifeq ($(BR2_PACKAGE_HAS_LIBEGL_WAYLAND)$(BR2_PACKAGE_HAS_LIBGLES),yy) +ifeq ($(BR2_PACKAGE_HAS_LIBEGL_WAYLAND)$(BR2_PACKAGE_HAS_LIBGBM)$(BR2_PACKAGE_HAS_LIBGLES),yyy) WESTON_CONF_OPTS += -Drenderer-gl=true -WESTON_DEPENDENCIES += libegl libgles +WESTON_DEPENDENCIES += libegl libgbm libgles ifeq ($(BR2_PACKAGE_PIPEWIRE)$(BR2_PACKAGE_WESTON_DRM),yy) -WESTON_CONF_OPTS += -Dpipewire=true +WESTON_CONF_OPTS += -Dpipewire=true -Dbackend-pipewire=true WESTON_DEPENDENCIES += pipewire else -WESTON_CONF_OPTS += -Dpipewire=false +WESTON_CONF_OPTS += -Dpipewire=false -Dbackend-pipewire=false endif else WESTON_CONF_OPTS += \ -Drenderer-gl=false \ - -Dpipewire=false + -Dpipewire=false \ + -Dbackend-pipewire=false endif ifeq ($(BR2_PACKAGE_WESTON_RDP),y) @@ -180,6 +164,12 @@ else WESTON_CONF_OPTS += -Dshell-kiosk=false endif +ifeq ($(BR2_PACKAGE_WESTON_SCREENSHARE),y) +WESTON_CONF_OPTS += -Dscreenshare=true +else +WESTON_CONF_OPTS += -Dscreenshare=false +endif + ifeq ($(BR2_PACKAGE_WESTON_DEMO_CLIENTS),y) WESTON_CONF_OPTS += -Ddemo-clients=true WESTON_DEPENDENCIES += pango diff --git a/package/wget/wget.hash b/package/wget/wget.hash index 22674650a270..75c3a913dc02 100644 --- a/package/wget/wget.hash +++ b/package/wget/wget.hash @@ -1,6 +1,8 @@ +# From https://lists.gnu.org/archive/html/bug-wget/2023-05/msg00004.html +sha1 42384273c1937458c9db3766a5509afa636a2f00 wget-1.21.4.tar.lz # Locally calculated after checking pgp signature -# https://ftp.gnu.org/gnu/wget/wget-1.21.3.tar.lz.sig +# https://ftp.gnu.org/gnu/wget/wget-1.21.4.tar.lz.sig # with key 6B98F637D879C5236E277C5C64FF90AAE8C70AF9 -sha256 dbd2fb5e47149d4752d0eaa0dac68cc49cf20d46df4f8e326ffc8f18b2af4ea5 wget-1.21.3.tar.lz +sha256 3683619a5f50edcbccb1720a79006fa37bf9b9a255a8c5b48048bc3c7a874bd9 wget-1.21.4.tar.lz # Locally calculated -sha256 e79e9c8a0c85d735ff98185918ec94ed7d175efc377012787aebcf3b80f0d90b COPYING +sha256 f7dc7522e7e1be9227f3dc8de8b39a4d1d2471968c893af15f00c1a2076a0eec COPYING diff --git a/package/wget/wget.mk b/package/wget/wget.mk index 455faaed126b..d2d308796145 100644 --- a/package/wget/wget.mk +++ b/package/wget/wget.mk @@ -4,7 +4,7 @@ # ################################################################################ -WGET_VERSION = 1.21.3 +WGET_VERSION = 1.21.4 WGET_SOURCE = wget-$(WGET_VERSION).tar.lz WGET_SITE = $(BR2_GNU_MIRROR)/wget WGET_DEPENDENCIES = host-pkgconf diff --git a/package/wilc-driver/0006-Support-Linux-6.3.patch b/package/wilc-driver/0006-Support-Linux-6.3.patch new file mode 100644 index 000000000000..f5a92027da64 --- /dev/null +++ b/package/wilc-driver/0006-Support-Linux-6.3.patch @@ -0,0 +1,43 @@ +From 14b5eccf4145e7a5afc8bc65a15f26ac691f98d8 Mon Sep 17 00:00:00 2001 +From: Giulio Benetti +Date: Wed, 27 Sep 2023 10:54:18 +0200 +Subject: [PATCH] Support Linux 6.3 + +With Linux 6.3 commit: +https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=40fc56ee608cdb20022c225ac6f1e4b7ba63f8f1 +function of_get_named_gpio_flags() has been dropped but it was only a +wrapper to call of_get_named_gpio() if the flags passed was NULL and this +is the case. So let's use of_get_named_gpio() in place of +of_get_named_gpio_flags() since of_get_named_gpio() never changed +after its adding in Linux version 3.1. + +Upstream: https://github.com/embeddedTS/wilc3000-external-module/pull/4 + +Signed-off-by: Giulio Benetti +--- + power.c | 6 ++---- + 1 file changed, 2 insertions(+), 4 deletions(-) + +diff --git a/power.c b/power.c +index 6c59e0b..6ab8d63 100644 +--- a/power.c ++++ b/power.c +@@ -25,13 +25,11 @@ int wilc_of_parse_power_pins(struct wilc *wilc) + const struct wilc_power_gpios *gpios = &default_gpios[0]; + int ret; + +- power->gpios.reset = of_get_named_gpio_flags(of, "reset-gpios", 0, +- NULL); ++ power->gpios.reset = of_get_named_gpio(of, "reset-gpios", 0); + if (!gpio_is_valid(power->gpios.reset)) + power->gpios.reset = gpios->reset; + +- power->gpios.chip_en = of_get_named_gpio_flags(of, "chip_en-gpios", 0, +- NULL); ++ power->gpios.chip_en = of_get_named_gpio(of, "chip_en-gpios", 0); + if (!gpio_is_valid(power->gpios.chip_en)) + power->gpios.chip_en = gpios->chip_en; + +-- +2.34.1 + diff --git a/package/wilc-driver/0007-Support-Linux-6.4.patch b/package/wilc-driver/0007-Support-Linux-6.4.patch new file mode 100644 index 000000000000..8339cc3cb663 --- /dev/null +++ b/package/wilc-driver/0007-Support-Linux-6.4.patch @@ -0,0 +1,36 @@ +From 94fc4594659494b8c5cbdf1a719aea4d66d3398d Mon Sep 17 00:00:00 2001 +From: Giulio Benetti +Date: Wed, 27 Sep 2023 11:20:50 +0200 +Subject: [PATCH] Support Linux 6.4 + +With Linux 6.4 commit: +https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=1aaba11da9aa7d7d6b52a74d45b31cac118295a1 +class_create() doesn't require first argument THIS_MODULE anymore so let's +drop first argument if Linux version >= 6.4 + +Upstream: https://github.com/embeddedTS/wilc3000-external-module/pull/5 + +Signed-off-by: Giulio Benetti +--- + bt.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/bt.c b/bt.c +index 48a5302..a752457 100644 +--- a/bt.c ++++ b/bt.c +@@ -135,7 +135,11 @@ static void wilc_bt_create_device(void) + ret = alloc_chrdev_region(&chc_dev_no, 0, 1, "atmel"); + if (ret < 0) + return; ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 4, 0) ++ chc_dev_class = class_create("atmel"); ++#else + chc_dev_class = class_create(THIS_MODULE, "atmel"); ++#endif + if (IS_ERR(chc_dev_class)) { + unregister_chrdev_region(chc_dev_no, 1); + return; +-- +2.34.1 + diff --git a/package/wilc-firmware/wilc-firmware.hash b/package/wilc-firmware/wilc-firmware.hash index 6e7850df16d3..802cb4f9b18d 100644 --- a/package/wilc-firmware/wilc-firmware.hash +++ b/package/wilc-firmware/wilc-firmware.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 2c2e2927a65fe4d7ec2f9872fca35c6b7bf12090ac62116d63c5f17b95a3a786 wilc-firmware-wilc_linux_15_7.tar.gz +sha256 a06a6a46e03ca00d35da220f7a9f353cc650e5e5657a7988ea732913ad26d9a0 wilc-firmware-wilc_linux_16_1.tar.gz sha256 71355eee947a312594dbdaac039827544f93d23949b65c356b7b0ce09e2600fb LICENSE.wilc_fw diff --git a/package/wilc-firmware/wilc-firmware.mk b/package/wilc-firmware/wilc-firmware.mk index e31829d4301e..12c825cf92e8 100644 --- a/package/wilc-firmware/wilc-firmware.mk +++ b/package/wilc-firmware/wilc-firmware.mk @@ -4,7 +4,7 @@ # ################################################################################ -WILC_FIRMWARE_VERSION = wilc_linux_15_7 +WILC_FIRMWARE_VERSION = wilc_linux_16_1 WILC_FIRMWARE_SITE = $(call github,linux4wilc,firmware,$(WILC_FIRMWARE_VERSION)) WILC_FIRMWARE_LICENSE = PROPRIETARY diff --git a/package/wine/0001-l3codeca-avoid-mpg123-functions-with-suffix.patch b/package/wine/0001-l3codeca-avoid-mpg123-functions-with-suffix.patch deleted file mode 100644 index 8332db4b381d..000000000000 --- a/package/wine/0001-l3codeca-avoid-mpg123-functions-with-suffix.patch +++ /dev/null @@ -1,21 +0,0 @@ -commit 75b70efdaa2d4baa064271098878b79f66df155f -Author: André Zwing -Date: Sat May 21 17:53:07 2022 +0200 - - l3codeca.acm: Avoid mpg123 functions with suffix. - -[Upstream commit: https://source.winehq.org/git/wine.git/commit/75b70efdaa2d4baa064271098878b79f66df155f] -Signed-off-by: André Zwing - -diff --git a/dlls/l3codeca.acm/Makefile.in b/dlls/l3codeca.acm/Makefile.in -index 451794b2624..31765766d4e 100644 ---- a/dlls/l3codeca.acm/Makefile.in -+++ b/dlls/l3codeca.acm/Makefile.in -@@ -1,6 +1,7 @@ - MODULE = l3codeca.acm - IMPORTS = $(MPG123_PE_LIBS) winmm user32 kernelbase - EXTRAINCL = $(MPG123_PE_CFLAGS) -+EXTRADEFS = -DMPG123_NO_LARGENAME - - C_SRCS = \ - mpegl3.c diff --git a/package/wine/0002-mp3dmod-avoid-mpg123-functions-with-suffix.patch b/package/wine/0002-mp3dmod-avoid-mpg123-functions-with-suffix.patch deleted file mode 100644 index 16f2ba2898c8..000000000000 --- a/package/wine/0002-mp3dmod-avoid-mpg123-functions-with-suffix.patch +++ /dev/null @@ -1,21 +0,0 @@ -commit 8d441659f7c7ae359e06a99e7abaae57792356a0 -Author: André Zwing -Date: Sat May 21 17:53:07 2022 +0200 - - mp3dmod: Avoid mpg123 functions with suffix. - -[Upstream commit: https://source.winehq.org/git/wine.git/commit/8d441659f7c7ae359e06a99e7abaae57792356a0] -Signed-off-by: André Zwing - -diff --git a/dlls/mp3dmod/Makefile.in b/dlls/mp3dmod/Makefile.in -index dabbb1dfeae..3ba343a4d34 100644 ---- a/dlls/mp3dmod/Makefile.in -+++ b/dlls/mp3dmod/Makefile.in -@@ -1,6 +1,7 @@ - MODULE = mp3dmod.dll - IMPORTS = $(MPG123_PE_LIBS) dmoguids msdmo ole32 uuid wmcodecdspuuid kernelbase - EXTRAINCL = $(MPG123_PE_CFLAGS) -+EXTRADEFS = -DMPG123_NO_LARGENAME - - C_SRCS = \ - mp3dmod.c diff --git a/package/wine/wine.hash b/package/wine/wine.hash index 9a7a1c342afc..756859c8442d 100644 --- a/package/wine/wine.hash +++ b/package/wine/wine.hash @@ -1,5 +1,5 @@ # Locally calculated after checking pgp signature -sha256 5b43e27d5c085cb18f97394e46180310d5eef7c1d91c6895432a3889b2de086b wine-7.0.tar.xz +sha256 6ec8fb6f2c72d576cb11f52b2f8d59af64404802154651d122b98466d91dc847 wine-8.0.2.tar.xz # Locally calculated sha256 e237fa56668030e928551ddd60f05df5fe957f75eab874bbd017e085ed722e7c COPYING.LIB -sha256 7c360930e51d56c8fa12fe1df8ed348ac77a9ad73f9582a303919469399b3ce4 LICENSE +sha256 793d045546467c8f49e35fbd6e02859e57e78f8bb53571e8200bffd0e966dfa8 LICENSE diff --git a/package/wine/wine.mk b/package/wine/wine.mk index a1c65bef4e09..f47922dc70a5 100644 --- a/package/wine/wine.mk +++ b/package/wine/wine.mk @@ -4,9 +4,9 @@ # ################################################################################ -WINE_VERSION = 7.0 +WINE_VERSION = 8.0.2 WINE_SOURCE = wine-$(WINE_VERSION).tar.xz -WINE_SITE = https://dl.winehq.org/wine/source/7.0 +WINE_SITE = https://dl.winehq.org/wine/source/8.0 WINE_LICENSE = LGPL-2.1+ WINE_LICENSE_FILES = COPYING.LIB LICENSE WINE_CPE_ID_VENDOR = winehq @@ -27,7 +27,6 @@ WINE_CONF_OPTS = \ --without-mingw \ --without-opencl \ --without-oss \ - --without-vkd3d \ --without-vulkan # Wine uses a wrapper around gcc, and uses the value of --host to @@ -131,20 +130,6 @@ else WINE_CONF_OPTS += --without-v4l2 endif -ifeq ($(BR2_PACKAGE_OPENAL),y) -WINE_CONF_OPTS += --with-openal -WINE_DEPENDENCIES += openal -else -WINE_CONF_OPTS += --without-openal -endif - -ifeq ($(BR2_PACKAGE_OPENLDAP),y) -WINE_CONF_OPTS += --with-ldap -WINE_DEPENDENCIES += openldap -else -WINE_CONF_OPTS += --without-ldap -endif - ifeq ($(BR2_PACKAGE_MESA3D_OSMESA_GALLIUM),y) WINE_CONF_OPTS += --with-osmesa WINE_DEPENDENCIES += mesa3d @@ -266,19 +251,8 @@ endif # Wine only needs the host tools to be built, so cut-down the # build time by building just what we need. -HOST_WINE_TOOLS = \ - tools \ - tools/sfnt2fon \ - tools/widl \ - tools/winebuild \ - tools/winegcc \ - tools/wmc \ - tools/wrc - define HOST_WINE_BUILD_CMDS - $(foreach t, $(HOST_WINE_TOOLS), - $(HOST_MAKE_ENV) $(MAKE) -C $(@D)/$(t) - ) + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) __tooldeps__ endef # Wine only needs its host variant to be built, not that it is @@ -304,10 +278,8 @@ HOST_WINE_CONF_OPTS += \ --without-gssapi \ --without-gstreamer \ --without-krb5 \ - --without-ldap \ --without-mingw \ --without-netapi \ - --without-openal \ --without-opencl \ --without-opengl \ --without-osmesa \ @@ -318,7 +290,6 @@ HOST_WINE_CONF_OPTS += \ --without-sdl \ --without-usb \ --without-v4l2 \ - --without-vkd3d \ --without-vulkan \ --without-x \ --without-xcomposite \ diff --git a/package/wireless-regdb/wireless-regdb.hash b/package/wireless-regdb/wireless-regdb.hash index 36451f839d84..71f92aaf9163 100644 --- a/package/wireless-regdb/wireless-regdb.hash +++ b/package/wireless-regdb/wireless-regdb.hash @@ -1,4 +1,4 @@ # From https://www.kernel.org/pub/software/network/wireless-regdb/sha256sums.asc -sha256 fe81e8a8694dc4753a45087a1c4c7e1b48dee5a59f5f796ce374ea550f0b2e73 wireless-regdb-2023.02.13.tar.xz +sha256 26d4c2a727cc59239b84735aad856b7c7d0b04e30aa5c235c4f7f47f5f053491 wireless-regdb-2023.09.01.tar.xz # Locally computed sha256 678b0df753c86198fc496d1f1033429bbd57f101472132ee7eaaf9f5e0a7fae1 LICENSE diff --git a/package/wireless-regdb/wireless-regdb.mk b/package/wireless-regdb/wireless-regdb.mk index 68fbe35b8be9..e9003ce2e6c3 100644 --- a/package/wireless-regdb/wireless-regdb.mk +++ b/package/wireless-regdb/wireless-regdb.mk @@ -4,7 +4,7 @@ # ################################################################################ -WIRELESS_REGDB_VERSION = 2023.02.13 +WIRELESS_REGDB_VERSION = 2023.09.01 WIRELESS_REGDB_SOURCE = wireless-regdb-$(WIRELESS_REGDB_VERSION).tar.xz WIRELESS_REGDB_SITE = $(BR2_KERNEL_MIRROR)/software/network/wireless-regdb WIRELESS_REGDB_LICENSE = ISC diff --git a/package/wireless_tools/Config.in b/package/wireless_tools/Config.in index 349908dbde6b..1d83cb5a5a73 100644 --- a/package/wireless_tools/Config.in +++ b/package/wireless_tools/Config.in @@ -1,5 +1,8 @@ config BR2_PACKAGE_WIRELESS_TOOLS bool "wireless tools" + select BR2_PACKAGE_WIRELESS_TOOLS_IWCONFIG if \ + !BR2_PACKAGE_WIRELESS_TOOLS_IFRENAME && \ + !BR2_PACKAGE_WIRELESS_TOOLS_LIB help A collection of tools to configure wireless lan cards. @@ -7,6 +10,18 @@ config BR2_PACKAGE_WIRELESS_TOOLS if BR2_PACKAGE_WIRELESS_TOOLS +config BR2_PACKAGE_WIRELESS_TOOLS_IWCONFIG + bool "Install tools" + default y + help + Build and install the iwconfig, iwlist, iwspy, iwpriv, and + iwgetid tools. + +config BR2_PACKAGE_WIRELESS_TOOLS_IFRENAME + bool "Install ifrename" + help + Build and install the ifrename tool + config BR2_PACKAGE_WIRELESS_TOOLS_LIB bool "Install shared library" depends on !BR2_STATIC_LIBS diff --git a/package/wireless_tools/wireless_tools.mk b/package/wireless_tools/wireless_tools.mk index 1d29c3b102d8..90c928668811 100644 --- a/package/wireless_tools/wireless_tools.mk +++ b/package/wireless_tools/wireless_tools.mk @@ -14,8 +14,14 @@ WIRELESS_TOOLS_CPE_ID_VERSION = $(WIRELESS_TOOLS_VERSION_MAJOR) WIRELESS_TOOLS_CPE_ID_UPDATE = pre9 WIRELESS_TOOLS_INSTALL_STAGING = YES +ifeq ($(BR2_PACKAGE_WIRELESS_TOOLS_IWCONFIG),y) WIRELESS_TOOLS_BUILD_TARGETS = iwmulticall WIRELESS_TOOLS_INSTALL_TARGETS = install-iwmulticall +endif + +ifeq ($(BR2_PACKAGE_WIRELESS_TOOLS_IFRENAME),y) +WIRELESS_TOOLS_BUILD_TARGETS += ifrename +endif ifeq ($(BR2_PACKAGE_WIRELESS_TOOLS_LIB),y) WIRELESS_TOOLS_BUILD_TARGETS += libiw.so.$(WIRELESS_TOOLS_VERSION_MAJOR) @@ -35,8 +41,11 @@ define WIRELESS_TOOLS_BUILD_CMDS endef define WIRELESS_TOOLS_INSTALL_TARGET_CMDS - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) PREFIX="$(TARGET_DIR)" LDCONFIG=/bin/true \ - $(WIRELESS_TOOLS_INSTALL_TARGETS) + $(if $(WIRELESS_TOOLS_INSTALL_TARGETS), + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) PREFIX="$(TARGET_DIR)" \ + LDCONFIG=/bin/true $(WIRELESS_TOOLS_INSTALL_TARGETS)) + $(if $(BR2_PACKAGE_WIRELESS_TOOLS_IFRENAME), + $(INSTALL) -D -m 755 $(@D)/ifrename $(TARGET_DIR)/sbin/ifrename) endef $(eval $(generic-package)) diff --git a/package/wireshark/wireshark.hash b/package/wireshark/wireshark.hash index 7128b560aedc..a6ef69b1af82 100644 --- a/package/wireshark/wireshark.hash +++ b/package/wireshark/wireshark.hash @@ -1,6 +1,6 @@ -# From https://www.wireshark.org/download/src/all-versions/SIGNATURES-4.0.3.txt -sha1 243b0057cfe6d447662e81b5646110aaf8b63c81 wireshark-4.0.3.tar.xz -sha256 6c51e15bcc0afb93734e686dbff354ffd159f570bd2904bcbbad6f3feb7e9511 wireshark-4.0.3.tar.xz +# From https://www.wireshark.org/download/src/all-versions/SIGNATURES-4.0.11.txt +sha1 4af3140d69f9d41e1c4e161fad66304a6920ddce wireshark-4.0.11.tar.xz +sha256 4c341cc33a6c512d983f4126e6f3e5c249f604e14ab7f337d38b1cbe58199e3d wireshark-4.0.11.tar.xz # Locally calculated sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/wireshark/wireshark.mk b/package/wireshark/wireshark.mk index 12c36575df10..6fb4b60f2b92 100644 --- a/package/wireshark/wireshark.mk +++ b/package/wireshark/wireshark.mk @@ -4,7 +4,7 @@ # ################################################################################ -WIRESHARK_VERSION = 4.0.3 +WIRESHARK_VERSION = 4.0.11 WIRESHARK_SOURCE = wireshark-$(WIRESHARK_VERSION).tar.xz WIRESHARK_SITE = https://www.wireshark.org/download/src/all-versions WIRESHARK_LICENSE = wireshark license diff --git a/package/wlroots/wlroots.hash b/package/wlroots/wlroots.hash index 04bbd65e430d..8ab05393b15b 100644 --- a/package/wlroots/wlroots.hash +++ b/package/wlroots/wlroots.hash @@ -1,5 +1,5 @@ -# Generated locally, after checking https://gitlab.freedesktop.org/wlroots/wlroots/-/releases/0.15.1/downloads/wlroots-0.15.1.tar.gz.sig -sha256 5b92f11a52d978919ed1306e0d54c9d59f1762b28d44f0a2da3ef3b351305373 wlroots-0.15.1.tar.gz +# Generated locally, after checking https://gitlab.freedesktop.org/wlroots/wlroots/-/releases/0.16.2/downloads/wlroots-0.16.2.tar.gz.sig +sha256 83e9a11605f23d4bf781ab1947089483d9ec3f7e9ba65398e0609593b77d44aa wlroots-0.16.2.tar.gz # Hashes for license files: sha256 ffd3737a478b83a8b51b42757d3bf909ef36694508355879722e11fc1fa6736b LICENSE diff --git a/package/wlroots/wlroots.mk b/package/wlroots/wlroots.mk index 5b930a51be9c..b478e57abb90 100644 --- a/package/wlroots/wlroots.mk +++ b/package/wlroots/wlroots.mk @@ -4,7 +4,7 @@ # ################################################################################ -WLROOTS_VERSION = 0.15.1 +WLROOTS_VERSION = 0.16.2 WLROOTS_SITE = https://gitlab.freedesktop.org/wlroots/wlroots/-/releases/$(WLROOTS_VERSION)/downloads WLROOTS_LICENSE = MIT WLROOTS_LICENSE_FILES = LICENSE diff --git a/package/wolfssl/Config.in b/package/wolfssl/Config.in index c41bdb6888ce..9d173412fedf 100644 --- a/package/wolfssl/Config.in +++ b/package/wolfssl/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_WOLFSSL_ASM_SUPPORTS bool default y if BR2_aarch64 - default y if BR2_arm || BR2_armeb + default y if (BR2_arm || BR2_armeb) && !BR2_ARM_CPU_ARMV4 # clz default y if BR2_powerpc default y if BR2_powerpc64 || BR2_powerpc64le default y if BR2_mips64 && !BR2_MIPS_CPU_MIPS32R6 diff --git a/package/wolfssl/wolfssl.hash b/package/wolfssl/wolfssl.hash index 08262113a0ba..fb5a570de8f3 100644 --- a/package/wolfssl/wolfssl.hash +++ b/package/wolfssl/wolfssl.hash @@ -1,5 +1,5 @@ # Locally computed: -sha256 fd3135b8657d09fb96a8aad16585da850b96ea420ae8ce5ac4d5fdfc614c2683 wolfssl-5.5.3.tar.gz +sha256 031691906794ff45e1e792561cf31759f5d29ac74936bc8dffb8b14f16d820b4 wolfssl-5.6.4.tar.gz # Hash for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/wolfssl/wolfssl.mk b/package/wolfssl/wolfssl.mk index 9f06bb1b4b58..17452fdcaf20 100644 --- a/package/wolfssl/wolfssl.mk +++ b/package/wolfssl/wolfssl.mk @@ -4,7 +4,7 @@ # ################################################################################ -WOLFSSL_VERSION = 5.5.3 +WOLFSSL_VERSION = 5.6.4 WOLFSSL_SITE = $(call github,wolfSSL,wolfssl,v$(WOLFSSL_VERSION)-stable) WOLFSSL_INSTALL_STAGING = YES diff --git a/package/wpebackend-fdo/wpebackend-fdo.hash b/package/wpebackend-fdo/wpebackend-fdo.hash index d1a344a664e5..26ba12172711 100644 --- a/package/wpebackend-fdo/wpebackend-fdo.hash +++ b/package/wpebackend-fdo/wpebackend-fdo.hash @@ -1,7 +1,6 @@ -# From https://wpewebkit.org/releases/wpebackend-fdo-1.14.1.tar.xz.sums -md5 2b49218cdd16075b028bbaf5a4f57890 wpebackend-fdo-1.14.1.tar.xz -sha1 a68db2480d29d53d7fa24c69888bacbab6efea11 wpebackend-fdo-1.14.1.tar.xz -sha256 01938dd93c62b3a47b18dd13c70d50490a8b8a6caec23c8550a3dbdbcc6bbb50 wpebackend-fdo-1.14.1.tar.xz +# From https://wpewebkit.org/releases/wpebackend-fdo-1.14.2.tar.xz.sums +sha1 f453f8d77e93f4ac6ac81c1874d4d6bdcb45c253 wpebackend-fdo-1.14.2.tar.xz +sha256 93c9766ae9864eeaeaee2b0a74f22cbca08df42c1a1bdb55b086f2528e380d38 wpebackend-fdo-1.14.2.tar.xz # Hashes for license files: sha256 c9f6803371047fad3e72200ec6cd226329a5ee08ac61104c8211c2761fb46825 COPYING diff --git a/package/wpebackend-fdo/wpebackend-fdo.mk b/package/wpebackend-fdo/wpebackend-fdo.mk index c1e4e0579678..7ef347b6221f 100644 --- a/package/wpebackend-fdo/wpebackend-fdo.mk +++ b/package/wpebackend-fdo/wpebackend-fdo.mk @@ -4,7 +4,7 @@ # ################################################################################ -WPEBACKEND_FDO_VERSION = 1.14.1 +WPEBACKEND_FDO_VERSION = 1.14.2 WPEBACKEND_FDO_SITE = https://wpewebkit.org/releases WPEBACKEND_FDO_SOURCE = wpebackend-fdo-$(WPEBACKEND_FDO_VERSION).tar.xz WPEBACKEND_FDO_INSTALL_STAGING = YES diff --git a/package/wpewebkit/Config.in b/package/wpewebkit/Config.in index 7a8dc557c366..81b66f8429f0 100644 --- a/package/wpewebkit/Config.in +++ b/package/wpewebkit/Config.in @@ -16,12 +16,12 @@ config BR2_PACKAGE_WPEWEBKIT_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt -comment "wpewebkit needs a toolchain w/ C++, wchar, threads, dynamic library, gcc >= 7, host gcc >= 4.9" +comment "wpewebkit needs a toolchain w/ C++, wchar, threads, dynamic library, gcc >= 9, host gcc >= 4.9" depends on BR2_PACKAGE_WPEWEBKIT_ARCH_SUPPORTS depends on !BR2_BINFMT_FLAT depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \ || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \ - || !BR2_TOOLCHAIN_GCC_AT_LEAST_7 \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_9 \ || !BR2_HOST_GCC_AT_LEAST_4_9 comment "wpewebkit needs an OpenGL ES w/ EGL-capable Wayland backend" @@ -36,9 +36,9 @@ config BR2_PACKAGE_WPEWEBKIT depends on !BR2_BINFMT_FLAT # icu depends on BR2_HOST_GCC_AT_LEAST_4_9 # icu, host-ruby depends on BR2_INSTALL_LIBSTDCPP # harfbuzz, icu - depends on BR2_TOOLCHAIN_HAS_THREADS # wayland, icu, libsoup - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 - depends on BR2_USE_WCHAR # icu, libsoup + depends on BR2_TOOLCHAIN_HAS_THREADS # wayland, icu, libsoup3 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_9 + depends on BR2_USE_WCHAR # icu, libsoup3 depends on BR2_PACKAGE_HAS_LIBGLES # libepoxy depends on BR2_PACKAGE_HAS_LIBEGL # libepoxy depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND # wpebackend-fdo @@ -51,7 +51,7 @@ config BR2_PACKAGE_WPEWEBKIT select BR2_PACKAGE_LIBEPOXY select BR2_PACKAGE_LIBGCRYPT select BR2_PACKAGE_LIBPNG - select BR2_PACKAGE_LIBSOUP + select BR2_PACKAGE_LIBSOUP3 select BR2_PACKAGE_LIBTASN1 select BR2_PACKAGE_LIBXSLT select BR2_PACKAGE_OPENJPEG diff --git a/package/wpewebkit/wpewebkit.hash b/package/wpewebkit/wpewebkit.hash index 0fa1018721be..aaeea2bcda7e 100644 --- a/package/wpewebkit/wpewebkit.hash +++ b/package/wpewebkit/wpewebkit.hash @@ -1,7 +1,6 @@ -# From https://wpewebkit.org/releases/wpewebkit-2.38.5.tar.xz.sums -md5 73f7abd0c1cc808032869f72602166e3 wpewebkit-2.38.5.tar.xz -sha1 3f10a04758eeb349f63f841aff765dae25bcde1b wpewebkit-2.38.5.tar.xz -sha256 ff00fd3d0a4c6d551850a78a7dfe4883b6b7ebd93c5549e1121b2f43d3ac1661 wpewebkit-2.38.5.tar.xz +# From https://wpewebkit.org/releases/wpewebkit-2.40.3.tar.xz.sums +sha1 c840bd76b2c86cb8ca0d68b56598cb0abbafc727 wpewebkit-2.40.3.tar.xz +sha256 05b6a9cb1d7d03485e0dc41b2a8e6f99a36aea23d32ba3ecb38d0d6860747ada wpewebkit-2.40.3.tar.xz # Hashes for license files: sha256 0b5d3a7cc325942567373b0ecd757d07c132e0ebd7c97bfc63f7e1a76094edb4 Source/WebCore/LICENSE-APPLE diff --git a/package/wpewebkit/wpewebkit.mk b/package/wpewebkit/wpewebkit.mk index 48e5c2f8cdb1..bf0b0953723d 100644 --- a/package/wpewebkit/wpewebkit.mk +++ b/package/wpewebkit/wpewebkit.mk @@ -4,8 +4,8 @@ # ################################################################################ -WPEWEBKIT_VERSION = 2.38.5 -WPEWEBKIT_SITE = http://www.wpewebkit.org/releases +WPEWEBKIT_VERSION = 2.40.3 +WPEWEBKIT_SITE = https://wpewebkit.org/releases WPEWEBKIT_SOURCE = wpewebkit-$(WPEWEBKIT_VERSION).tar.xz WPEWEBKIT_INSTALL_STAGING = YES WPEWEBKIT_LICENSE = LGPL-2.1+, BSD-2-Clause @@ -14,10 +14,12 @@ WPEWEBKIT_LICENSE_FILES = \ Source/WebCore/LICENSE-LGPL-2.1 WPEWEBKIT_CPE_ID_VENDOR = wpewebkit WPEWEBKIT_CPE_ID_PRODUCT = wpe_webkit -WPEWEBKIT_DEPENDENCIES = host-gperf host-python3 host-ruby \ - harfbuzz cairo icu jpeg libepoxy libgcrypt libgles libsoup libtasn1 \ +WPEWEBKIT_DEPENDENCIES = host-gperf host-python3 host-ruby host-unifdef \ + harfbuzz cairo icu jpeg libepoxy libgcrypt libgles libsoup3 libtasn1 \ libpng libxslt openjpeg wayland-protocols webp wpebackend-fdo +WPEWEBKIT_CMAKE_BACKEND = ninja + WPEWEBKIT_CONF_OPTS = \ -DPORT=WPE \ -DENABLE_ACCESSIBILITY=OFF \ @@ -26,7 +28,7 @@ WPEWEBKIT_CONF_OPTS = \ -DENABLE_INTROSPECTION=OFF \ -DENABLE_MINIBROWSER=OFF \ -DENABLE_WEB_RTC=OFF \ - -DUSE_SOUP2=ON + -DUSE_AVIF=OFF ifeq ($(BR2_PACKAGE_WPEWEBKIT_SANDBOX),y) WPEWEBKIT_CONF_OPTS += \ @@ -103,23 +105,4 @@ ifeq ($(BR2_ARM_CPU_ARMV5)$(BR2_ARM_CPU_ARMV6)$(BR2_MIPS_CPU_MIPS32R6)$(BR2_MIPS WPEWEBKIT_CONF_OPTS += -DENABLE_JIT=OFF -DENABLE_C_LOOP=ON -DENABLE_SAMPLING_PROFILER=OFF endif -# wpewebkit needs cmake >= 3.20 when building with the make backend, which is -# above our minimal version in -# support/dependencies/check-host-cmake.mk, so use the ninja backend: -# https://github.com/WebKit/WebKit/commit/6cd89696b5d406c1a3d9a7a9bbb18fda9284fa1f -WPEWEBKIT_CONF_OPTS += -GNinja -WPEWEBKIT_DEPENDENCIES += host-ninja - -define WPEWEBKIT_BUILD_CMDS - $(TARGET_MAKE_ENV) $(BR2_CMAKE) --build $(WPEWEBKIT_BUILDDIR) -endef - -define WPEWEBKIT_INSTALL_STAGING_CMDS - $(TARGET_MAKE_ENV) DESTDIR=$(STAGING_DIR) $(BR2_CMAKE) --install $(WPEWEBKIT_BUILDDIR) -endef - -define WPEWEBKIT_INSTALL_TARGET_CMDS - $(TARGET_MAKE_ENV) DESTDIR=$(TARGET_DIR) $(BR2_CMAKE) --install $(WPEWEBKIT_BUILDDIR) -endef - $(eval $(cmake-package)) diff --git a/package/x11r7/Config.in b/package/x11r7/Config.in index 4de8922e0d50..b91f97bb34ea 100644 --- a/package/x11r7/Config.in +++ b/package/x11r7/Config.in @@ -42,6 +42,7 @@ if BR2_PACKAGE_XORG7 source package/x11r7/xlib_libXinerama/Config.in source package/x11r7/xlib_libXmu/Config.in source package/x11r7/xlib_libXpm/Config.in + source package/x11r7/xlib_libXpresent/Config.in source package/x11r7/xlib_libXrandr/Config.in source package/x11r7/xlib_libXrender/Config.in source package/x11r7/xlib_libXres/Config.in diff --git a/package/x11r7/xapp_setxkbmap/xapp_setxkbmap.hash b/package/x11r7/xapp_setxkbmap/xapp_setxkbmap.hash index a57d7cc7374a..a3ad6ce38c89 100644 --- a/package/x11r7/xapp_setxkbmap/xapp_setxkbmap.hash +++ b/package/x11r7/xapp_setxkbmap/xapp_setxkbmap.hash @@ -1,5 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2022-April/003146.html -sha256 b560c678da6930a0da267304fa3a41cc5df39a96a5e23d06f14984c87b6f587b setxkbmap-1.3.3.tar.xz -sha512 208f07a7f7bce47b573099d4cd8c941a3a4d74b456720bc3ca1cbba298381a2ab98c7500d6e6cd6d5dd61840b7c42cf6521da754ec395f266f8158102a55ad58 setxkbmap-1.3.3.tar.xz +# From https://lists.x.org/archives/xorg-announce/2023-May/003397.html +sha256 be8d8554d40e981d1b93b5ff82497c9ad2259f59f675b38f1b5e84624c07fade setxkbmap-1.3.4.tar.xz +sha512 f4d026e7707656173f54d79b95ff3370ae06eaf252b89b79bc7175edeaf3ef79073d4d7d8a35fdee95608bf85d7d23514d74f00e55b613810ef6c3ccc0cf498b setxkbmap-1.3.4.tar.xz # Locally computed sha256 afb8ce58340b6a6b85b73e256425263ce46f5a427279785e275991cb660cce82 COPYING diff --git a/package/x11r7/xapp_setxkbmap/xapp_setxkbmap.mk b/package/x11r7/xapp_setxkbmap/xapp_setxkbmap.mk index 4d48a3fbc193..9049b3694417 100644 --- a/package/x11r7/xapp_setxkbmap/xapp_setxkbmap.mk +++ b/package/x11r7/xapp_setxkbmap/xapp_setxkbmap.mk @@ -4,7 +4,7 @@ # ################################################################################ -XAPP_SETXKBMAP_VERSION = 1.3.3 +XAPP_SETXKBMAP_VERSION = 1.3.4 XAPP_SETXKBMAP_SOURCE = setxkbmap-$(XAPP_SETXKBMAP_VERSION).tar.xz XAPP_SETXKBMAP_SITE = https://xorg.freedesktop.org/archive/individual/app XAPP_SETXKBMAP_LICENSE = MIT diff --git a/package/x11r7/xapp_xcalc/xapp_xcalc.hash b/package/x11r7/xapp_xcalc/xapp_xcalc.hash index 0580253dd692..12633a41a92c 100644 --- a/package/x11r7/xapp_xcalc/xapp_xcalc.hash +++ b/package/x11r7/xapp_xcalc/xapp_xcalc.hash @@ -1,5 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2022-April/003138.html -sha256 8cb08212c5322e8043f39b28699e13a43f000976c90b3c7fadd4fae2766326b4 xcalc-1.1.1.tar.xz -sha512 a261e9798d62727f40b9aff07e68e63ba40aa7f4f9b1811d8efd8c3e73cd5912d6178c55ca3c059968191051bd20b889b06b5e92b3df70c7b5d09bd013b9ebdb xcalc-1.1.1.tar.xz +# From https://lists.x.org/archives/xorg-announce/2023-May/003391.html +sha256 8578dfa1457e94289f6d6ed6146714307d8a73a1b54d2f42af1321b625fc1cd4 xcalc-1.1.2.tar.xz +sha512 51da677dc88bcd7299ed8d678cb26b048fdb82a1983e1496a06253ee2dceefca4ac87d1a74432b4a76dcc11921a61339bb3d292607be46228164140b430bbad2 xcalc-1.1.2.tar.xz # Locally computed sha256 8dd69dbec37866a41d3040c5c478aca46e0b50c30319f178064d5e2ed9d3f912 COPYING diff --git a/package/x11r7/xapp_xcalc/xapp_xcalc.mk b/package/x11r7/xapp_xcalc/xapp_xcalc.mk index 849746ece3fb..ffb724e39cff 100644 --- a/package/x11r7/xapp_xcalc/xapp_xcalc.mk +++ b/package/x11r7/xapp_xcalc/xapp_xcalc.mk @@ -4,7 +4,7 @@ # ################################################################################ -XAPP_XCALC_VERSION = 1.1.1 +XAPP_XCALC_VERSION = 1.1.2 XAPP_XCALC_SOURCE = xcalc-$(XAPP_XCALC_VERSION).tar.xz XAPP_XCALC_SITE = https://xorg.freedesktop.org/releases/individual/app XAPP_XCALC_LICENSE = MIT diff --git a/package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.hash b/package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.hash index 07a3eb936cf7..b0afdc15acd1 100644 --- a/package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.hash +++ b/package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.hash @@ -1,5 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2022-April/003157.html -sha256 356d5fd62f3e98ee36d6becf1b32d4ab6112d618339fb4b592ccffbd9e0fc206 xdpyinfo-1.3.3.tar.xz -sha512 47fe0821bc64145876853712ebd7c0af80111c243813615b892429021cc9a53abd38c4684551ae300cb5a4eacdd3d26e2c93e789ed91a948b20e2c37cd2d2442 xdpyinfo-1.3.3.tar.xz +# From https://lists.x.org/archives/xorg-announce/2023-April/003388.html +sha256 a8ada581dbd7266440d7c3794fa89edf6b99b8857fc2e8c31042684f3af4822b xdpyinfo-1.3.4.tar.xz +sha512 9ef9f5c10e15a40895e8f008896b960fdd438277657c7159d16f05db79cd2374cfaca4af2f4e59335824bfd2f74a045ef89dd99ea4130ed436ea59fbbb1cbe12 xdpyinfo-1.3.4.tar.xz # Locally computed sha256 49733ead65fdfa1da0d176f9b965cc08dae74d73d66c9606488d52f6fc036abf COPYING diff --git a/package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.mk b/package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.mk index c5e2a857e3f9..a198fc44c365 100644 --- a/package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.mk +++ b/package/x11r7/xapp_xdpyinfo/xapp_xdpyinfo.mk @@ -4,9 +4,9 @@ # ################################################################################ -XAPP_XDPYINFO_VERSION = 1.3.3 +XAPP_XDPYINFO_VERSION = 1.3.4 XAPP_XDPYINFO_SOURCE = xdpyinfo-$(XAPP_XDPYINFO_VERSION).tar.xz -XAPP_XDPYINFO_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XDPYINFO_SITE = https://xorg.freedesktop.org/archive/individual/app XAPP_XDPYINFO_LICENSE = MIT XAPP_XDPYINFO_LICENSE_FILES = COPYING XAPP_XDPYINFO_CONF_OPTS = --without-xf86misc # not in BR diff --git a/package/x11r7/xapp_xinput/xapp_xinput.hash b/package/x11r7/xapp_xinput/xapp_xinput.hash index 0961879637eb..d3a6a66902ab 100644 --- a/package/x11r7/xapp_xinput/xapp_xinput.hash +++ b/package/x11r7/xapp_xinput/xapp_xinput.hash @@ -1,7 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2019-July/003013.html -md5 ac6b7432726008b2f50eba82b0e2dbe4 xinput-1.6.3.tar.bz2 -sha1 92ea7dfb3d8465921b0dca85da7d5b01cedae6c8 xinput-1.6.3.tar.bz2 -sha256 35a281dd3b9b22ea85e39869bb7670ba78955d5fec17c6ef7165d61e5aeb66ed xinput-1.6.3.tar.bz2 -sha512 cb2fef866ac5a71dbca3e23b4ecadaca38e65dc1b30f8bb024bad92486554fafc472706619a1af04c746a4f53ce6aea827d694b9f4f0c7d0d46bb1da81984076 xinput-1.6.3.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2023-April/003389.html +sha256 ad04d00d656884d133110eeddc34e9c69e626ebebbbab04dc95791c2907057c8 xinput-1.6.4.tar.xz +sha512 6734860852715e5cb9d26259a173e42413fc037546ed7fa4173ffa802c2619ee0322bed228a28cd1911be759d860070867d9b89b115f37323cca1c9ef75354b9 xinput-1.6.4.tar.xz # Locally computed sha256 bbd35c7a8e8c5cb073935e84b29b0c53f7131a4ef1ce737dc2be5616941e07e1 COPYING diff --git a/package/x11r7/xapp_xinput/xapp_xinput.mk b/package/x11r7/xapp_xinput/xapp_xinput.mk index 0d6c0deffe4d..614b62fe7732 100644 --- a/package/x11r7/xapp_xinput/xapp_xinput.mk +++ b/package/x11r7/xapp_xinput/xapp_xinput.mk @@ -4,8 +4,8 @@ # ################################################################################ -XAPP_XINPUT_VERSION = 1.6.3 -XAPP_XINPUT_SOURCE = xinput-$(XAPP_XINPUT_VERSION).tar.bz2 +XAPP_XINPUT_VERSION = 1.6.4 +XAPP_XINPUT_SOURCE = xinput-$(XAPP_XINPUT_VERSION).tar.xz XAPP_XINPUT_SITE = https://xorg.freedesktop.org/archive/individual/app XAPP_XINPUT_LICENSE = MIT XAPP_XINPUT_LICENSE_FILES = COPYING diff --git a/package/x11r7/xapp_xrdb/xapp_xrdb.hash b/package/x11r7/xapp_xrdb/xapp_xrdb.hash index 606fd2606031..d8b56bf2c8bb 100644 --- a/package/x11r7/xapp_xrdb/xapp_xrdb.hash +++ b/package/x11r7/xapp_xrdb/xapp_xrdb.hash @@ -1,5 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2021-August/003107.html -sha256 4f5d031c214ffb88a42ae7528492abde1178f5146351ceb3c05f3b8d5abee8b4 xrdb-1.2.1.tar.bz2 -sha512 d88135cdfea8536523dfb986249ee42761d5363c936352f12f55b4d0c849f21236f7d74d39869c5ec5b549019d6ed89d9096cde4b3c2b4816c2778a8e370b5c9 xrdb-1.2.1.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2023-June/003401.html +sha256 31f5fcab231b38f255b00b066cf7ea3b496df712c9eb2d0d50c670b63e5033f4 xrdb-1.2.2.tar.xz +sha512 c8a6fc94e270e9cb5602e055150553de103d545298285157ecd8924f163a10ebeb9acfff56d1fafbf48d339809c76340213792478cdf3270012d3cd05486001c xrdb-1.2.2.tar.xz # Locally computed sha256 ca1b3e2f9f37c35876b69a9c1c5a7860fae59b7ba87a1d2dc541b722e29b1ecc COPYING diff --git a/package/x11r7/xapp_xrdb/xapp_xrdb.mk b/package/x11r7/xapp_xrdb/xapp_xrdb.mk index 4f9860d25ae3..769c5a06f493 100644 --- a/package/x11r7/xapp_xrdb/xapp_xrdb.mk +++ b/package/x11r7/xapp_xrdb/xapp_xrdb.mk @@ -4,8 +4,8 @@ # ################################################################################ -XAPP_XRDB_VERSION = 1.2.1 -XAPP_XRDB_SOURCE = xrdb-$(XAPP_XRDB_VERSION).tar.bz2 +XAPP_XRDB_VERSION = 1.2.2 +XAPP_XRDB_SOURCE = xrdb-$(XAPP_XRDB_VERSION).tar.xz XAPP_XRDB_SITE = https://xorg.freedesktop.org/archive/individual/app XAPP_XRDB_LICENSE = MIT XAPP_XRDB_LICENSE_FILES = COPYING diff --git a/package/x11r7/xapp_xwd/xapp_xwd.hash b/package/x11r7/xapp_xwd/xapp_xwd.hash index 75952864991e..cc81b05ce59f 100644 --- a/package/x11r7/xapp_xwd/xapp_xwd.hash +++ b/package/x11r7/xapp_xwd/xapp_xwd.hash @@ -1,5 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2021-August/003102.html -sha256 fbaa2b34163714fe7be22b60920ea4683f63b355babb1781aec2e452a033031b xwd-1.0.8.tar.bz2 -sha512 d2aaf42c60d20c4b09f4947d3702058dbfad4633b2c5c8ea62e8897fc9ced1ab3417ce99255a223286d21a731f543019470737e3074f1bc68033b4eb47bc773e xwd-1.0.8.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2023-June/003400.html +sha256 dc121b84947eb4a3d1131bff1e9844cfa2124d95b47b35f9932340fa931fbd3f xwd-1.0.9.tar.xz +sha512 ae59661b05160f5658920fd79031b6b8548cb7bbfc734194edb0acef5c95f76b210ca4443e9506fc1a0cb9df47ee7c22948502971afe578b44c75aa2a1138d56 xwd-1.0.9.tar.xz # Locally computed sha256 7cfda56afd92a1ecd2f23bd0064e01b5141053390d854785504adfe2c0fbd946 COPYING diff --git a/package/x11r7/xapp_xwd/xapp_xwd.mk b/package/x11r7/xapp_xwd/xapp_xwd.mk index 1c5bd50166cd..8960aaffdb85 100644 --- a/package/x11r7/xapp_xwd/xapp_xwd.mk +++ b/package/x11r7/xapp_xwd/xapp_xwd.mk @@ -4,8 +4,8 @@ # ################################################################################ -XAPP_XWD_VERSION = 1.0.8 -XAPP_XWD_SOURCE = xwd-$(XAPP_XWD_VERSION).tar.bz2 +XAPP_XWD_VERSION = 1.0.9 +XAPP_XWD_SOURCE = xwd-$(XAPP_XWD_VERSION).tar.xz XAPP_XWD_SITE = https://xorg.freedesktop.org/archive/individual/app XAPP_XWD_LICENSE = MIT XAPP_XWD_LICENSE_FILES = COPYING diff --git a/package/x11r7/xapp_xwininfo/xapp_xwininfo.hash b/package/x11r7/xapp_xwininfo/xapp_xwininfo.hash index fbc7f7be0000..bbf2e37328a3 100644 --- a/package/x11r7/xapp_xwininfo/xapp_xwininfo.hash +++ b/package/x11r7/xapp_xwininfo/xapp_xwininfo.hash @@ -1,7 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2019-July/003012.html -md5 26d46f7ef0588d3392da3ad5802be420 xwininfo-1.1.5.tar.bz2 -sha1 9f67b1eb07c5824d437bf577cf6198962af1aeb7 xwininfo-1.1.5.tar.bz2 -sha256 7a405441dfc476666c744f5fcd1bc8a75abf8b5b1d85db7b88b370982365080e xwininfo-1.1.5.tar.bz2 -sha512 a3268bbeeeeafac94e589fdd47554a965910d40df7cc3d9c36c7c24fa4f5dd49615484d5916ccb41efca9cd4cf9d8981a4c60953b921220b3f4f57f9cce0e1a6 xwininfo-1.1.5.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2023-April/003379.html +sha256 3518897c17448df9ba99ad6d9bb1ca0f17bc0ed7c0fd61281b34ceed29a9253f xwininfo-1.1.6.tar.xz +sha512 c6df4ed3dcf97772450612f2786ecab8313a43bb78e0b8020cc9ec228b3f466f55090313ad02c8159a73a6892d117322ad85e28d9d76e38bb84c9750712c20bc xwininfo-1.1.6.tar.xz # Locally computed -sha256 443d675237c023a47e4886506b72796afbb2633394812027f91d6e8fa433b2af COPYING +sha256 1be1f0763a5efd08e48089c52728a822bf769b690a2fd82fbab456cfffee822f COPYING diff --git a/package/x11r7/xapp_xwininfo/xapp_xwininfo.mk b/package/x11r7/xapp_xwininfo/xapp_xwininfo.mk index 9652487aae59..196b73c83d2d 100644 --- a/package/x11r7/xapp_xwininfo/xapp_xwininfo.mk +++ b/package/x11r7/xapp_xwininfo/xapp_xwininfo.mk @@ -4,8 +4,8 @@ # ################################################################################ -XAPP_XWININFO_VERSION = 1.1.5 -XAPP_XWININFO_SOURCE = xwininfo-$(XAPP_XWININFO_VERSION).tar.bz2 +XAPP_XWININFO_VERSION = 1.1.6 +XAPP_XWININFO_SOURCE = xwininfo-$(XAPP_XWININFO_VERSION).tar.xz XAPP_XWININFO_SITE = https://xorg.freedesktop.org/archive/individual/app XAPP_XWININFO_LICENSE = MIT XAPP_XWININFO_LICENSE_FILES = COPYING diff --git a/package/x11r7/xdata_xbitmaps/xdata_xbitmaps.hash b/package/x11r7/xdata_xbitmaps/xdata_xbitmaps.hash index 7ebc88a0beed..c9a3956686ef 100644 --- a/package/x11r7/xdata_xbitmaps/xdata_xbitmaps.hash +++ b/package/x11r7/xdata_xbitmaps/xdata_xbitmaps.hash @@ -1,7 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2018-March/002881.html -md5 cedeef095918aca86da79a2934e03daf xbitmaps-1.1.2.tar.bz2 -sha1 1cb0e485a66280e9a64b48426140b8a0de9cf169 xbitmaps-1.1.2.tar.bz2 -sha256 b9f0c71563125937776c8f1f25174ae9685314cbd130fb4c2efce811981e07ee xbitmaps-1.1.2.tar.bz2 -sha512 eed5e2fce9fc6c532984e6ed1262e440591e311ca6c61a7fe7a5c877df84bfc2d7aff388fb9c894fc098785b8e5352f0bd7c918252247a040cf123874847450d xbitmaps-1.1.2.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2023-February/003333.html +sha256 ad6cad54887832a17d86c2ccfc5e52a1dfab090f8307b152c78b0e1529cd0f7a xbitmaps-1.1.3.tar.xz +sha512 b9a7340385fcce2dcd0204f14a462685b14b72ff58f3ec53cd76695bef2b02af902bdac809622dcb27fd4075d5ba13587b5d059530aff502cd5288d161352814 xbitmaps-1.1.3.tar.xz # Locally computed sha256 e121ec6605558ee021674d33b1ab9306e16b9ea7d30453df42286556247be17a COPYING diff --git a/package/x11r7/xdata_xbitmaps/xdata_xbitmaps.mk b/package/x11r7/xdata_xbitmaps/xdata_xbitmaps.mk index e9545abaec64..c8b644582910 100644 --- a/package/x11r7/xdata_xbitmaps/xdata_xbitmaps.mk +++ b/package/x11r7/xdata_xbitmaps/xdata_xbitmaps.mk @@ -4,9 +4,9 @@ # ################################################################################ -XDATA_XBITMAPS_VERSION = 1.1.2 -XDATA_XBITMAPS_SOURCE = xbitmaps-$(XDATA_XBITMAPS_VERSION).tar.bz2 -XDATA_XBITMAPS_SITE = http://xorg.freedesktop.org/releases/individual/data +XDATA_XBITMAPS_VERSION = 1.1.3 +XDATA_XBITMAPS_SOURCE = xbitmaps-$(XDATA_XBITMAPS_VERSION).tar.xz +XDATA_XBITMAPS_SITE = https://xorg.freedesktop.org/archive/individual/data XDATA_XBITMAPS_LICENSE = MIT XDATA_XBITMAPS_LICENSE_FILES = COPYING diff --git a/package/x11r7/xdata_xcursor-themes/xdata_xcursor-themes.hash b/package/x11r7/xdata_xcursor-themes/xdata_xcursor-themes.hash index 2b88f567a074..1bb3831c91e3 100644 --- a/package/x11r7/xdata_xcursor-themes/xdata_xcursor-themes.hash +++ b/package/x11r7/xdata_xcursor-themes/xdata_xcursor-themes.hash @@ -1,7 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2019-February/002945.html -md5 aea14eabf40528ec4db18f1cfcf5c458 xcursor-themes-1.0.6.tar.bz2 -sha1 b56fd5bf5b1ada0532a85c27db0d296e392168c5 xcursor-themes-1.0.6.tar.bz2 -sha256 ee1ec574741293abcf66ac14ce7e74add7ac6be7deb8b38179ef010d22354999 xcursor-themes-1.0.6.tar.bz2 -sha512 2ad3586a5571a5ddc0001187362b54b839644916164834213af98e58698044aec4392dd6e1e42f1794fda85c8fedf259b09214a9636bd0e71a1629c710f198d3 xcursor-themes-1.0.6.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2023-February/003332.html +sha256 95bae8f48823d894a05bf42dfbf453674ab7dbdeb11e2bc079e8525ad47378c8 xcursor-themes-1.0.7.tar.xz +sha512 910925dd17c576028ae0d9dfe5683888648b941806b53cd9ff74ed18ff2de537664b07ab4c647a55290aeba37f6051f322b29e8ecd54f348e32abe2ccea1c902 xcursor-themes-1.0.7.tar.xz # Locally computed sha256 e437aed89c3440a9fe7e19968a3f2eeb97041ef6c9616837a3fd42d0874fc0e6 COPYING diff --git a/package/x11r7/xdata_xcursor-themes/xdata_xcursor-themes.mk b/package/x11r7/xdata_xcursor-themes/xdata_xcursor-themes.mk index c3c5f388e906..e5bf1e502f4e 100644 --- a/package/x11r7/xdata_xcursor-themes/xdata_xcursor-themes.mk +++ b/package/x11r7/xdata_xcursor-themes/xdata_xcursor-themes.mk @@ -4,9 +4,9 @@ # ################################################################################ -XDATA_XCURSOR_THEMES_VERSION = 1.0.6 -XDATA_XCURSOR_THEMES_SOURCE = xcursor-themes-$(XDATA_XCURSOR_THEMES_VERSION).tar.bz2 -XDATA_XCURSOR_THEMES_SITE = http://xorg.freedesktop.org/releases/individual/data +XDATA_XCURSOR_THEMES_VERSION = 1.0.7 +XDATA_XCURSOR_THEMES_SOURCE = xcursor-themes-$(XDATA_XCURSOR_THEMES_VERSION).tar.xz +XDATA_XCURSOR_THEMES_SITE = https://xorg.freedesktop.org/archive/individual/data XDATA_XCURSOR_THEMES_LICENSE = MIT XDATA_XCURSOR_THEMES_LICENSE_FILES = COPYING diff --git a/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.hash b/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.hash index 480886b295d7..cca2639dc314 100644 --- a/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.hash +++ b/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.hash @@ -1,5 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2022-January/003129.html -sha256 8151db5b9ddb317c0ce92dcb62da9a8db5079e5b8a95b60abc854da21e7e971b xf86-input-libinput-1.2.1.tar.xz -sha512 3decf694861d1aa3c02d090e66c5ed5513818cb18e9863f1790e0c8122a972230fb903705062b8291e1709db9098623f1205c63ccfb68e552e104813414589c7 xf86-input-libinput-1.2.1.tar.xz +# From https://lists.x.org/archives/xorg-announce/2023-April/003378.html +sha256 1446ba20a22bc968b5a4a0b4dbc3b8e037c50d9c59ac75fa3f7fc506c58c1abb xf86-input-libinput-1.3.0.tar.xz +sha512 f81f408b37e5f98ee97337dc4da6e78449e554e0ab2a3c6791b089d2cb6d645d0206ddf9babbc2120ab8bfe3b1489314fe42503ee015cec41775024538f3a34f xf86-input-libinput-1.3.0.tar.xz # Locally computed sha256 4114220b281561e80f3422f0e7ae8d3e1fc85131ffc2e3b6265119e66f1adb27 COPYING diff --git a/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.mk b/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.mk index d1f93ffb5b97..381df31fee86 100644 --- a/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.mk +++ b/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_INPUT_LIBINPUT_VERSION = 1.2.1 +XDRIVER_XF86_INPUT_LIBINPUT_VERSION = 1.3.0 XDRIVER_XF86_INPUT_LIBINPUT_SOURCE = xf86-input-libinput-$(XDRIVER_XF86_INPUT_LIBINPUT_VERSION).tar.xz XDRIVER_XF86_INPUT_LIBINPUT_SITE = https://xorg.freedesktop.org/archive/individual/driver XDRIVER_XF86_INPUT_LIBINPUT_LICENSE = MIT diff --git a/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.hash b/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.hash index adba659aea65..d654c362a94f 100644 --- a/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.hash +++ b/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.hash @@ -1,5 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2022-November/003247.html -sha256 7f6f8551fc238abdddcf9f38906564c1f8c7dacb0ad947cfc110487aefbd8d4c xf86-input-mouse-1.9.4.tar.xz -sha512 7dfde3b1e0c1291c4d78ee920942771808b007f743bfc6eed20de12579383745858673dd874a4b5cf4ab8d9d15f6f7ca2db81ee831547a488d64848a7fe5e16c xf86-input-mouse-1.9.4.tar.xz +# From https://lists.x.org/archives/xorg-announce/2023-May/003392.html +sha256 4fde8ae9b44352e2a208584c36528ee3ed13cf5fe4417208a9785daccefd9968 xf86-input-mouse-1.9.5.tar.xz +sha512 ed9bd9cb9a05dac0ff1bfb4e4704cb2e94117afb400aa9e0b7ccdbb102bc6db1b0d3af7cb6f99d0892f8fc306f1643286291c0fa7114af8e65864412bd6c1afa xf86-input-mouse-1.9.5.tar.xz # Locally computed -sha256 472ff645ead9bf3ffb48d42c596376ffc595897e0c0993a071a7ada0da1f4f10 COPYING +sha256 5b066654bdb61a1ef41f38cceda752897bbddb6e60e20f5889cab436a9b7b813 COPYING diff --git a/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.mk b/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.mk index 4a9eb3089ffd..25e25ab93de5 100644 --- a/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.mk +++ b/package/x11r7/xdriver_xf86-input-mouse/xdriver_xf86-input-mouse.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_INPUT_MOUSE_VERSION = 1.9.4 +XDRIVER_XF86_INPUT_MOUSE_VERSION = 1.9.5 XDRIVER_XF86_INPUT_MOUSE_SOURCE = xf86-input-mouse-$(XDRIVER_XF86_INPUT_MOUSE_VERSION).tar.xz XDRIVER_XF86_INPUT_MOUSE_SITE = https://xorg.freedesktop.org/archive/individual/driver XDRIVER_XF86_INPUT_MOUSE_LICENSE = MIT diff --git a/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.hash b/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.hash index c45ae59ee43d..962cb0e16b19 100644 --- a/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.hash +++ b/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.hash @@ -1,5 +1,5 @@ -# From https://lists.x.org/archives/xorg/2022-February/060928.html -sha256 9d23fb602915dc3ccde92aa4d1e9485e7e54eaae2f41f485e55eb20761778266 xf86-video-amdgpu-22.0.0.tar.xz -sha512 95c64e3fef7729ced6e7adc5e81c60cc218f6d8b6604f7b290e86ff52c917426b5102decbf8be8a66c9181ccde6e5dff7083dca8cc0c493a39e82625b5c7cb2a xf86-video-amdgpu-22.0.0.tar.xz +# From https://lists.x.org/archives/xorg-announce/2023-February/003334.html +sha256 4f04f0ea66f3ced0dcc58f617409860163a19c4e8c285cfb5285f36ba09cc061 xf86-video-amdgpu-23.0.0.tar.xz +sha512 bf26f147629a34e84a0ae8435119e170b9c95edafcab1995b63bb8f55abef32f2efbf4536eb070e64b2ae1460424b1b27a4206cb9836d33ddc6dfbee404f718b xf86-video-amdgpu-23.0.0.tar.xz # Locally computed sha256 58847c8e97190c401afa84b3f0b8b147379c876a184e99af2cb51bfd40ac8936 COPYING diff --git a/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.mk b/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.mk index ba4ab43db290..84f8e39ddd6f 100644 --- a/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.mk +++ b/package/x11r7/xdriver_xf86-video-amdgpu/xdriver_xf86-video-amdgpu.mk @@ -4,9 +4,9 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_AMDGPU_VERSION = 22.0.0 +XDRIVER_XF86_VIDEO_AMDGPU_VERSION = 23.0.0 XDRIVER_XF86_VIDEO_AMDGPU_SOURCE = xf86-video-amdgpu-$(XDRIVER_XF86_VIDEO_AMDGPU_VERSION).tar.xz -XDRIVER_XF86_VIDEO_AMDGPU_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_AMDGPU_SITE = https://xorg.freedesktop.org/archive/individual/driver XDRIVER_XF86_VIDEO_AMDGPU_LICENSE = MIT XDRIVER_XF86_VIDEO_AMDGPU_LICENSE_FILES = COPYING XDRIVER_XF86_VIDEO_AMDGPU_DEPENDENCIES = \ diff --git a/package/x11r7/xdriver_xf86-video-ark/0001-mibstore.patch b/package/x11r7/xdriver_xf86-video-ark/0001-mibstore.patch deleted file mode 100644 index fa3e68596aa6..000000000000 --- a/package/x11r7/xdriver_xf86-video-ark/0001-mibstore.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 3a3eb72baec46f48e6cf15a834271c3d3386deac Mon Sep 17 00:00:00 2001 -From: Gaetan Nadon -Date: Tue, 17 Sep 2013 19:55:37 +0000 -Subject: Remove usage of mibstore.h (removed from server) - -The module had a compile error for this missing header file. - -Changes similar to vmware commit -23d87c92b7211cc5249eefe4ab3a2c7f370e279e - -Reviewed-by: Alex Deucher -Signed-off-by: Gaetan Nadon ---- -Fetch from: -http://cgit.freedesktop.org/xorg/driver/xf86-video-ark/commit/?id=3a3eb72baec46f48e6cf15a834271c3d3386deac - -Signed-off-by: Bernd Kuhls - -diff --git a/src/ark_driver.c b/src/ark_driver.c -index b7c287c..65cfe84 100644 ---- a/src/ark_driver.c -+++ b/src/ark_driver.c -@@ -39,7 +39,6 @@ - #include "compiler.h" - #include "mipointer.h" - #include "micmap.h" --#include "mibstore.h" - #include "fb.h" - #include "ark.h" - -@@ -538,7 +537,6 @@ static Bool ARKScreenInit(SCREEN_INIT_ARGS_DECL) - - fbPictureInit (pScreen, 0, 0); - -- miInitializeBackingStore(pScreen); - xf86SetBackingStore(pScreen); - - if (!pARK->NoAccel) { --- -cgit v0.9.0.2-2-gbebe diff --git a/package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark.hash b/package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark.hash index 2e2e95367636..68131fdb38a5 100644 --- a/package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark.hash +++ b/package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark.hash @@ -1,4 +1,5 @@ -# From http://lists.x.org/archives/xorg-announce/2012-July/002007.html -sha256 c690e046f34a393aac1c8d9616b4790e93cda60a460b00b9597d322175dbe51e xf86-video-ark-0.7.5.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2023-February/003328.html +sha256 5acc9e78122ff6f4390787b2d0d44df81379bd613b6245983cc4bf3f325d085d xf86-video-ark-0.7.6.tar.xz +sha512 a52623e07eef6fa12d77b1afc55bb74b21662b850515b3a32bbf5988dcea2e787b4eddf4e020279aa4e4ddba436505ca9298548406913031e0ed5edaac835491 xf86-video-ark-0.7.6.tar.xz # Locally calculated sha256 8ba9850fb0ecd9033bb1d25c1be85625cb53ca56ce76b71f78f4a034f7310bda COPYING diff --git a/package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark.mk b/package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark.mk index 3f2a63609e11..6301a97300ff 100644 --- a/package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark.mk +++ b/package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark.mk @@ -4,9 +4,9 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_ARK_VERSION = 0.7.5 -XDRIVER_XF86_VIDEO_ARK_SOURCE = xf86-video-ark-$(XDRIVER_XF86_VIDEO_ARK_VERSION).tar.bz2 -XDRIVER_XF86_VIDEO_ARK_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_ARK_VERSION = 0.7.6 +XDRIVER_XF86_VIDEO_ARK_SOURCE = xf86-video-ark-$(XDRIVER_XF86_VIDEO_ARK_VERSION).tar.xz +XDRIVER_XF86_VIDEO_ARK_SITE = https://xorg.freedesktop.org/archive/individual/driver XDRIVER_XF86_VIDEO_ARK_LICENSE = MIT XDRIVER_XF86_VIDEO_ARK_LICENSE_FILES = COPYING XDRIVER_XF86_VIDEO_ARK_DEPENDENCIES = xserver_xorg-server xorgproto diff --git a/package/x11r7/xdriver_xf86-video-ati/0001-Fix-link-failure-with-gcc-10.patch b/package/x11r7/xdriver_xf86-video-ati/0001-Fix-link-failure-with-gcc-10.patch deleted file mode 100644 index ec9e49ebc75c..000000000000 --- a/package/x11r7/xdriver_xf86-video-ati/0001-Fix-link-failure-with-gcc-10.patch +++ /dev/null @@ -1,35 +0,0 @@ -From f223035f4ffcff2a9296d1e907a5193f8e8845a3 Mon Sep 17 00:00:00 2001 -From: Adam Jackson -Date: Tue, 4 Feb 2020 16:38:06 -0500 -Subject: [PATCH] Fix link failure with gcc 10 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Without the 'extern' this looks like a definition not just a -declaration, in every file that includes the header. gcc 10 is stricter -about this kind of multiple definition. - -Reviewed-by: Michel Dänzer -[backport from upstream: f223035f4ffcff2a9296d1e907a5193f8e8845a3] -Signed-off-by: Romain Naour ---- - src/drmmode_display.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/drmmode_display.h b/src/drmmode_display.h -index 96eaef0a..8cd8a0a6 100644 ---- a/src/drmmode_display.h -+++ b/src/drmmode_display.h -@@ -262,7 +262,7 @@ Bool drmmode_wait_vblank(xf86CrtcPtr crtc, drmVBlankSeqType type, - uint64_t *ust, uint32_t *result_seq); - - --miPointerSpriteFuncRec drmmode_sprite_funcs; -+extern miPointerSpriteFuncRec drmmode_sprite_funcs; - - - #endif --- -2.25.4 - diff --git a/package/x11r7/xdriver_xf86-video-ati/0002-ati-cleanup-terminology-to-use-primary-secondary.patch b/package/x11r7/xdriver_xf86-video-ati/0002-ati-cleanup-terminology-to-use-primary-secondary.patch deleted file mode 100644 index ed8413b0cd34..000000000000 --- a/package/x11r7/xdriver_xf86-video-ati/0002-ati-cleanup-terminology-to-use-primary-secondary.patch +++ /dev/null @@ -1,371 +0,0 @@ -From d96815a32431e0f434964a786013083bc0d835fc Mon Sep 17 00:00:00 2001 -From: Dave Airlie -Date: Mon, 13 Jul 2020 09:11:28 +1000 -Subject: [PATCH] ati: cleanup terminology to use primary/secondary - -The X server changed some API/ABIs here. - -Based on amdgpu patch by Michel - -(cherry picked from commit 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680) -Signed-off-by: Romain Naour ---- - man/radeon.man | 2 +- - src/compat-api.h | 6 ++++ - src/drmmode_display.c | 4 +-- - src/evergreen_state.h | 2 +- - src/r600_state.h | 2 +- - src/radeon.h | 10 +++--- - src/radeon_exa.c | 2 +- - src/radeon_glamor.c | 2 +- - src/radeon_kms.c | 74 +++++++++++++++++++++---------------------- - 9 files changed, 55 insertions(+), 49 deletions(-) - -diff --git a/man/radeon.man b/man/radeon.man -index dcebf537..247dcdb7 100644 ---- a/man/radeon.man -+++ b/man/radeon.man -@@ -290,7 +290,7 @@ on. If this option is set, the default value of the property is 'on' or 'off' - accordingly. If this option isn't set, the default value of the property is - .B auto, - which means that TearFree is on for rotated outputs, outputs with RandR --transforms applied and for RandR 1.4 slave outputs, otherwise off. -+transforms applied and for RandR 1.4 secondary outputs, otherwise off. - .TP - .BI "Option \*qAccelMethod\*q \*q" "string" \*q - Chooses between available acceleration architectures. Valid values are -diff --git a/src/compat-api.h b/src/compat-api.h -index f4e7524f..def6d3e4 100644 ---- a/src/compat-api.h -+++ b/src/compat-api.h -@@ -34,4 +34,10 @@ - #define BLOCKHANDLER_ARGS pScreen, pTimeout, pReadmask - #endif - -+#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2) -+#define current_primary current_master -+#define primary_pixmap master_pixmap -+#define secondary_dst slave_dst -+#endif -+ - #endif -diff --git a/src/drmmode_display.c b/src/drmmode_display.c -index 0e9e2474..3dec91e8 100644 ---- a/src/drmmode_display.c -+++ b/src/drmmode_display.c -@@ -720,7 +720,7 @@ drmmode_crtc_prime_scanout_update(xf86CrtcPtr crtc, DisplayModePtr mode, - xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, - ent) { - if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) { -- dirty->slave_dst = -+ dirty->secondary_dst = - drmmode_crtc->scanout[scanout_id].pixmap; - break; - } -@@ -1356,7 +1356,7 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix) - - xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) { - if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) { -- PixmapStopDirtyTracking(dirty->src, dirty->slave_dst); -+ PixmapStopDirtyTracking(dirty->src, dirty->secondary_dst); - break; - } - } -diff --git a/src/evergreen_state.h b/src/evergreen_state.h -index 7e54e1c7..34ba87b6 100644 ---- a/src/evergreen_state.h -+++ b/src/evergreen_state.h -@@ -350,7 +350,7 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height, - int *new_pitch); - extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv); - extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix); --extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p); -+extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p); - extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle); - - #endif -diff --git a/src/r600_state.h b/src/r600_state.h -index 34345996..567c3ca2 100644 ---- a/src/r600_state.h -+++ b/src/r600_state.h -@@ -321,6 +321,6 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height, - int *new_pitch); - extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv); - extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix); --extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p); -+extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p); - extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle); - #endif -diff --git a/src/radeon.h b/src/radeon.h -index 2c913466..85fd0217 100644 ---- a/src/radeon.h -+++ b/src/radeon.h -@@ -182,18 +182,18 @@ typedef enum { - - - static inline ScreenPtr --radeon_master_screen(ScreenPtr screen) -+radeon_primary_screen(ScreenPtr screen) - { -- if (screen->current_master) -- return screen->current_master; -+ if (screen->current_primary) -+ return screen->current_primary; - - return screen; - } - - static inline ScreenPtr --radeon_dirty_master(PixmapDirtyUpdatePtr dirty) -+radeon_dirty_primary(PixmapDirtyUpdatePtr dirty) - { -- return radeon_master_screen(dirty->slave_dst->drawable.pScreen); -+ return radeon_primary_screen(dirty->secondary_dst->drawable.pScreen); - } - - static inline DrawablePtr -diff --git a/src/radeon_exa.c b/src/radeon_exa.c -index 268155ed..320ff992 100644 ---- a/src/radeon_exa.c -+++ b/src/radeon_exa.c -@@ -282,7 +282,7 @@ void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv) - free(driverPriv); - } - --Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **fd_handle) -+Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr seconndary, void **fd_handle) - { - struct radeon_exa_pixmap_priv *driver_priv = exaGetPixmapDriverPrivate(ppix); - -diff --git a/src/radeon_glamor.c b/src/radeon_glamor.c -index f1098381..ccf99941 100644 ---- a/src/radeon_glamor.c -+++ b/src/radeon_glamor.c -@@ -366,7 +366,7 @@ radeon_glamor_set_pixmap_bo(DrawablePtr drawable, PixmapPtr pixmap) - - - static Bool --radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave, -+radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr secondary, - void **handle_p) - { - ScreenPtr screen = pixmap->drawable.pScreen; -diff --git a/src/radeon_kms.c b/src/radeon_kms.c -index b3db7c41..62962d61 100644 ---- a/src/radeon_kms.c -+++ b/src/radeon_kms.c -@@ -559,8 +559,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty) - if (dirty->rotation != RR_Rotate_0) { - dstregion = transform_region(damageregion, - &dirty->f_inverse, -- dirty->slave_dst->drawable.width, -- dirty->slave_dst->drawable.height); -+ dirty->secondary_dst->drawable.width, -+ dirty->secondary_dst->drawable.height); - } else - #endif - { -@@ -568,7 +568,7 @@ dirty_region(PixmapDirtyUpdatePtr dirty) - - dstregion = RegionDuplicate(damageregion); - RegionTranslate(dstregion, -dirty->x, -dirty->y); -- PixmapRegionInit(&pixregion, dirty->slave_dst); -+ PixmapRegionInit(&pixregion, dirty->secondary_dst); - RegionIntersect(dstregion, dstregion, &pixregion); - RegionUninit(&pixregion); - } -@@ -585,8 +585,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region) - if (RegionNil(region)) - goto out; - -- if (dirty->slave_dst->master_pixmap) -- DamageRegionAppend(&dirty->slave_dst->drawable, region); -+ if (dirty->secondary_dst->primary_pixmap) -+ DamageRegionAppend(&dirty->secondary_dst->drawable, region); - - #ifdef HAS_DIRTYTRACKING_ROTATION - PixmapSyncDirtyHelper(dirty); -@@ -595,8 +595,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region) - #endif - - radeon_cs_flush_indirect(src_scrn); -- if (dirty->slave_dst->master_pixmap) -- DamageRegionProcessPending(&dirty->slave_dst->drawable); -+ if (dirty->secondary_dst->primary_pixmap) -+ DamageRegionProcessPending(&dirty->secondary_dst->drawable); - - out: - DamageEmpty(dirty->damage); -@@ -613,12 +613,12 @@ radeon_prime_scanout_update_abort(xf86CrtcPtr crtc, void *event_data) - void - radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty) - { -- ScreenPtr master_screen = radeon_dirty_master(dirty); -+ ScreenPtr primary_screen = radeon_dirty_primary(dirty); - PixmapDirtyUpdatePtr ent; - RegionPtr region; - -- xorg_list_for_each_entry(ent, &master_screen->pixmap_dirty_list, ent) { -- if (!radeon_dirty_src_equals(dirty, ent->slave_dst)) -+ xorg_list_for_each_entry(ent, &primary_screen->pixmap_dirty_list, ent) { -+ if (!radeon_dirty_src_equals(dirty, ent->secondary_dst)) - continue; - - region = dirty_region(ent); -@@ -631,45 +631,45 @@ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty) - #if HAS_SYNC_SHARED_PIXMAP - - static Bool --master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty) -+primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty) - { -- ScreenPtr master_screen = radeon_dirty_master(dirty); -+ ScreenPtr primary_screen = radeon_dirty_primary(dirty); - -- return !!master_screen->SyncSharedPixmap; -+ return !!primary_screen->SyncSharedPixmap; - } - - static Bool --slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty) -+secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty) - { -- ScreenPtr slave_screen = dirty->slave_dst->drawable.pScreen; -+ ScreenPtr secondary_screen = dirty->secondary_dst->drawable.pScreen; - -- return !!slave_screen->SyncSharedPixmap; -+ return !!secondary_screen->SyncSharedPixmap; - } - - static void - call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty) - { -- ScreenPtr master_screen = radeon_dirty_master(dirty); -+ ScreenPtr primary_screen = radeon_dirty_primary(dirty); - -- master_screen->SyncSharedPixmap(dirty); -+ primary_screen->SyncSharedPixmap(dirty); - } - - #else /* !HAS_SYNC_SHARED_PIXMAP */ - - static Bool --master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty) -+primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty) - { -- ScrnInfoPtr master_scrn = xf86ScreenToScrn(radeon_dirty_master(dirty)); -+ ScrnInfoPtr primary_scrn = xf86ScreenToScrn(radeon_dirty_primary(dirty)); - -- return master_scrn->driverName == scrn->driverName; -+ return primary_scrn->driverName == scrn->driverName; - } - - static Bool --slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty) -+secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty) - { -- ScrnInfoPtr slave_scrn = xf86ScreenToScrn(dirty->slave_dst->drawable.pScreen); -+ ScrnInfoPtr secondary_scrn = xf86ScreenToScrn(dirty->secondary_dst->drawable.pScreen); - -- return slave_scrn->driverName == scrn->driverName; -+ return secondary_scrn->driverName == scrn->driverName; - } - - static void -@@ -684,12 +684,12 @@ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty) - static xf86CrtcPtr - radeon_prime_dirty_to_crtc(PixmapDirtyUpdatePtr dirty) - { -- ScreenPtr screen = dirty->slave_dst->drawable.pScreen; -+ ScreenPtr screen = dirty->secondary_dst->drawable.pScreen; - ScrnInfoPtr scrn = xf86ScreenToScrn(screen); - xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn); - int c; - -- /* Find the CRTC which is scanning out from this slave pixmap */ -+ /* Find the CRTC which is scanning out from this secondary pixmap */ - for (c = 0; c < xf86_config->num_crtc; c++) { - xf86CrtcPtr xf86_crtc = xf86_config->crtc[c]; - drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private; -@@ -714,7 +714,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id) - if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) { - RegionPtr region; - -- if (master_has_sync_shared_pixmap(scrn, dirty)) -+ if (primary_has_sync_shared_pixmap(scrn, dirty)) - call_sync_shared_pixmap(dirty); - - region = dirty_region(dirty); -@@ -727,7 +727,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id) - radeon_cs_flush_indirect(scrn); - RegionCopy(&drmmode_crtc->scanout_last_region, region); - RegionTranslate(region, -crtc->x, -crtc->y); -- dirty->slave_dst = drmmode_crtc->scanout[scanout_id].pixmap; -+ dirty->secondary_dst = drmmode_crtc->scanout[scanout_id].pixmap; - } - - redisplay_dirty(dirty, region); -@@ -754,7 +754,7 @@ radeon_prime_scanout_update_handler(xf86CrtcPtr crtc, uint32_t frame, uint64_t u - static void - radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty) - { -- ScreenPtr screen = dirty->slave_dst->drawable.pScreen; -+ ScreenPtr screen = dirty->secondary_dst->drawable.pScreen; - ScrnInfoPtr scrn = xf86ScreenToScrn(screen); - RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn); - xf86CrtcPtr xf86_crtc = radeon_prime_dirty_to_crtc(dirty); -@@ -818,7 +818,7 @@ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty) - static void - radeon_prime_scanout_flip(PixmapDirtyUpdatePtr ent) - { -- ScreenPtr screen = ent->slave_dst->drawable.pScreen; -+ ScreenPtr screen = ent->secondary_dst->drawable.pScreen; - ScrnInfoPtr scrn = xf86ScreenToScrn(screen); - RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn); - xf86CrtcPtr crtc = radeon_prime_dirty_to_crtc(ent); -@@ -893,11 +893,11 @@ radeon_dirty_update(ScrnInfoPtr scrn) - if (screen->isGPU) { - PixmapDirtyUpdatePtr region_ent = ent; - -- if (master_has_sync_shared_pixmap(scrn, ent)) { -- ScreenPtr master_screen = radeon_dirty_master(ent); -+ if (primary_has_sync_shared_pixmap(scrn, ent)) { -+ ScreenPtr primary_screen = radeon_dirty_primary(ent); - -- xorg_list_for_each_entry(region_ent, &master_screen->pixmap_dirty_list, ent) { -- if (radeon_dirty_src_equals(ent, region_ent->slave_dst)) -+ xorg_list_for_each_entry(region_ent, &primary_screen->pixmap_dirty_list, ent) { -+ if (radeon_dirty_src_equals(ent, region_ent->secondary_dst)) - break; - } - } -@@ -921,7 +921,7 @@ radeon_dirty_update(ScrnInfoPtr scrn) - - RegionDestroy(region); - } else { -- if (slave_has_sync_shared_pixmap(scrn, ent)) -+ if (secondary_has_sync_shared_pixmap(scrn, ent)) - continue; - - region = dirty_region(ent); -@@ -1216,7 +1216,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL) - (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS); - pScreen->BlockHandler = RADEONBlockHandler_KMS; - -- if (!xf86ScreenToScrn(radeon_master_screen(pScreen))->vtSema) -+ if (!xf86ScreenToScrn(radeon_primary_screen(pScreen))->vtSema) - return; - - if (!pScreen->isGPU) -@@ -2584,7 +2584,7 @@ CARD32 cleanup_black_fb(OsTimerPtr timer, CARD32 now, pointer data) - xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn); - int c; - -- if (xf86ScreenToScrn(radeon_master_screen(screen))->vtSema) -+ if (xf86ScreenToScrn(radeon_primary_screen(screen))->vtSema) - return 0; - - /* Unreference the all-black FB created by RADEONLeaveVT_KMS. After --- -2.31.1 - diff --git a/package/x11r7/xdriver_xf86-video-ati/0003-Guard-local-variable-priv-only-used-with-glamor.patch b/package/x11r7/xdriver_xf86-video-ati/0003-Guard-local-variable-priv-only-used-with-glamor.patch deleted file mode 100644 index 0a23c54cce1a..000000000000 --- a/package/x11r7/xdriver_xf86-video-ati/0003-Guard-local-variable-priv-only-used-with-glamor.patch +++ /dev/null @@ -1,66 +0,0 @@ -From a78e31b5fffadd73b00483f21e54bd144f1b439a Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Michel=20D=C3=A4nzer?= -Date: Fri, 26 Mar 2021 17:42:10 +0100 -Subject: [PATCH] Guard local variable priv only used with glamor -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Fixes compile errors with glamor disabled: - -../../src/radeon_present.c: In function ‘radeon_present_check_flip’: -../../src/radeon_present.c:281:21: error: invalid use of undefined type ‘struct radeon_pixmap’ - 281 | if (priv && priv->fb_failed) - | ^~ -../../src/radeon_present.c:288:19: error: invalid use of undefined type ‘struct radeon_pixmap’ - 288 | if (priv && !priv->fb_failed) { - | ^~ -../../src/radeon_present.c:292:10: error: invalid use of undefined type ‘struct radeon_pixmap’ - 292 | priv->fb_failed = TRUE; - | ^~ - -(cherry picked from commit 3c7c84ed49564907a148ae99b03200e0be350060) -Signed-off-by: Romain Naour ---- - src/radeon_present.c | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/src/radeon_present.c b/src/radeon_present.c -index 494655c9..d010aa19 100644 ---- a/src/radeon_present.c -+++ b/src/radeon_present.c -@@ -254,7 +254,9 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap, - xf86CrtcPtr xf86_crtc = crtc->devPrivate; - ScreenPtr screen = window->drawable.pScreen; - ScrnInfoPtr scrn = xf86_crtc->scrn; -+#ifdef USE_GLAMOR - struct radeon_pixmap *priv = radeon_get_pixmap_private(pixmap); -+#endif - xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn); - RADEONInfoPtr info = RADEONPTR(scrn); - PixmapPtr screen_pixmap = screen->GetScreenPixmap(screen); -@@ -278,10 +280,13 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap, - return FALSE; - #endif - -+#ifdef USE_GLAMOR - if (priv && priv->fb_failed) - return FALSE; -+#endif - - if (!radeon_pixmap_get_fb(pixmap)) { -+#ifdef USE_GLAMOR - if (!priv) - priv = radeon_get_pixmap_private(pixmap); - -@@ -291,6 +296,7 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap, - "normal if using PRIME render offloading)\n"); - priv->fb_failed = TRUE; - } -+#endif - - return FALSE; - } --- -2.31.1 - diff --git a/package/x11r7/xdriver_xf86-video-ati/0004-Only-include-dri-h-with-older-versions-of-xserver.patch b/package/x11r7/xdriver_xf86-video-ati/0004-Only-include-dri-h-with-older-versions-of-xserver.patch deleted file mode 100644 index a969d61913ca..000000000000 --- a/package/x11r7/xdriver_xf86-video-ati/0004-Only-include-dri-h-with-older-versions-of-xserver.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 5eba006e4129e8015b822f9e1d2f1e613e252cda Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Michel=20D=C3=A4nzer?= -Date: Tue, 2 Feb 2021 12:45:54 +0100 -Subject: [PATCH] Only include dri.h with older versions of xserver - -Not needed anymore with current versions. - -Downloaded from upstream commit -https://gitlab.freedesktop.org/xorg/driver/xf86-video-ati/-/commit/5eba006e4129e8015b822f9e1d2f1e613e252cda - -Signed-off-by: Bernd Kuhls ---- - src/drmmode_display.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/drmmode_display.c b/src/drmmode_display.c -index 3099a729..a58f24dd 100644 ---- a/src/drmmode_display.c -+++ b/src/drmmode_display.c -@@ -45,7 +45,9 @@ - #include "radeon_glamor.h" - #include "radeon_reg.h" - -+#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,19,99,1,0) - #include -+#endif - - #include "drmmode_display.h" - --- -GitLab - diff --git a/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.hash b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.hash index 1e7376cbfc81..74530c122f86 100644 --- a/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.hash +++ b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.hash @@ -1,7 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2019-October/003027.html -md5 6e49d3c2839582af415ceded76e626e6 xf86-video-ati-19.1.0.tar.bz2 -sha1 aea1d11c05531b03f2eb67c6785cddf6d7f30e5f xf86-video-ati-19.1.0.tar.bz2 -sha256 659f5a1629eea5f5334d9b39b18e6807a63aa1efa33c1236d9cc53acbb223c49 xf86-video-ati-19.1.0.tar.bz2 -sha512 73a81f6c492daf2e89067fb52b3033dc0fe6841f109627ddca1aee54a45a738c8c134443753a2a2aaa2c131e1d560057ebc76351ff2304c16407df3ff568fcd6 xf86-video-ati-19.1.0.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2023-April/003386.html +sha256 c8c8bb56d3f6227c97e59c3a3c85a25133584ceb82ab5bc05a902a743ab7bf6d xf86-video-ati-22.0.0.tar.xz +sha512 fba9ffc7b0eeb0c369eb1a6f8ef0bb3061cfeca26bc269baf6e3d16dcd943fbf4092f1e37adfb1bc71051cee0b7a0e6fb253f0b8bcd210732ccaf99e8f2356fe xf86-video-ati-22.0.0.tar.xz # Locally computed sha256 58847c8e97190c401afa84b3f0b8b147379c876a184e99af2cb51bfd40ac8936 COPYING diff --git a/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.mk b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.mk index e7f5852811ce..b663279c2086 100644 --- a/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.mk +++ b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.mk @@ -4,9 +4,9 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_ATI_VERSION = 19.1.0 -XDRIVER_XF86_VIDEO_ATI_SOURCE = xf86-video-ati-$(XDRIVER_XF86_VIDEO_ATI_VERSION).tar.bz2 -XDRIVER_XF86_VIDEO_ATI_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_ATI_VERSION = 22.0.0 +XDRIVER_XF86_VIDEO_ATI_SOURCE = xf86-video-ati-$(XDRIVER_XF86_VIDEO_ATI_VERSION).tar.xz +XDRIVER_XF86_VIDEO_ATI_SITE = https://xorg.freedesktop.org/archive/individual/driver XDRIVER_XF86_VIDEO_ATI_LICENSE = MIT XDRIVER_XF86_VIDEO_ATI_LICENSE_FILES = COPYING XDRIVER_XF86_VIDEO_ATI_DEPENDENCIES = \ diff --git a/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.hash b/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.hash index eed28d3fde31..6d7d0b4bc207 100644 --- a/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.hash +++ b/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.hash @@ -1,5 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2022-April/003155.html -sha256 e78ceae5c8c0588c7cb658f2afc3a9fac9ef665b52a75b01f8e9c5449a4e1e5a xf86-video-dummy-0.4.0.tar.xz -sha512 1150a84c4f17215b9c579d8ce9399d547a01970bf7b5396653f14beb13a62deefe3008bf3ad6a2c5c0f46da4cbc0b840c18a7dff339e3b882d108183fa1d30d9 xf86-video-dummy-0.4.0.tar.xz +# From https://lists.x.org/archives/xorg-announce/2023-May/003394.html +sha256 351920a7fd0f759a3ac972a5999b3ffed46f07fb52a99f319bfb5b6a59d3dfaf xf86-video-dummy-0.4.1.tar.xz +sha512 ff7fd8b668e5e9f40a5d27f82599b7a455a8162fc1a247195335c17980f00ce10ae6b2c062239cbaa67d8684c86174f85b398dd7f7065d36f69294bd6f2469de xf86-video-dummy-0.4.1.tar.xz # Locally calculated sha256 e29aa81e74563d14e5633963107c030e74e8352ea7dafee1a9d7e19b7d0e887b COPYING diff --git a/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.mk b/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.mk index e863b1e5062f..f7f05c7c4182 100644 --- a/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.mk +++ b/package/x11r7/xdriver_xf86-video-dummy/xdriver_xf86-video-dummy.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_DUMMY_VERSION = 0.4.0 +XDRIVER_XF86_VIDEO_DUMMY_VERSION = 0.4.1 XDRIVER_XF86_VIDEO_DUMMY_SOURCE = xf86-video-dummy-$(XDRIVER_XF86_VIDEO_DUMMY_VERSION).tar.xz XDRIVER_XF86_VIDEO_DUMMY_SITE = http://xorg.freedesktop.org/releases/individual/driver XDRIVER_XF86_VIDEO_DUMMY_LICENSE = MIT diff --git a/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.hash b/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.hash index 7a66c28b52bd..7dcb99fe2a81 100644 --- a/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.hash +++ b/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.hash @@ -1,3 +1,5 @@ +# From https://lists.x.org/archives/xorg-announce/2023-May/003393.html +sha256 8256ac3f14117324d00b7bfa8053645ca92562fe837c542489a502adbb5f9f1e xf86-video-geode-2.11.21.tar.xz +sha512 e12f74268ab7d16b57644a9465b4be1ca28d250625a31b8810e19a1f94a17e47e0a258455155fd8f336fa59fd78160cdf3763aa94b85c6ccc2c42edf3b65bc61 xf86-video-geode-2.11.21.tar.xz # Locally calculated -sha256 f497d0bfb09f36c72e3467e2d701f57f6b03ab8992c5d570e66582f714f84d64 xf86-video-geode-2.11.20.tar.bz2 sha256 3994ef7cee54f0935a4b57b1c34efd904da567931dd9e1a2d9390d22c8332ea2 COPYING diff --git a/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.mk b/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.mk index dbeae1aa659b..8f84e4863ff8 100644 --- a/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.mk +++ b/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode.mk @@ -4,9 +4,9 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_GEODE_VERSION = 2.11.20 -XDRIVER_XF86_VIDEO_GEODE_SOURCE = xf86-video-geode-$(XDRIVER_XF86_VIDEO_GEODE_VERSION).tar.bz2 -XDRIVER_XF86_VIDEO_GEODE_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_GEODE_VERSION = 2.11.21 +XDRIVER_XF86_VIDEO_GEODE_SOURCE = xf86-video-geode-$(XDRIVER_XF86_VIDEO_GEODE_VERSION).tar.xz +XDRIVER_XF86_VIDEO_GEODE_SITE = https://xorg.freedesktop.org/archive/individual/driver XDRIVER_XF86_VIDEO_GEODE_LICENSE = MIT XDRIVER_XF86_VIDEO_GEODE_LICENSE_FILES = COPYING XDRIVER_XF86_VIDEO_GEODE_DEPENDENCIES = xserver_xorg-server xorgproto diff --git a/package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128.hash b/package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128.hash index 96bd42ac3654..c17d3086a15d 100644 --- a/package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128.hash +++ b/package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128.hash @@ -1,7 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2018-December/002932.html -md5 a980f1b8532ccfe81932580bc4e0f2a0 xf86-video-i128-1.4.0.tar.bz2 -sha1 56d5b897b2695222c13e59d2ade74620a99e1011 xf86-video-i128-1.4.0.tar.bz2 -sha256 8f2c0a6bf5a169dad3fc07c6dd4537b492d0e44489e4a1297311e617c3bed0ea xf86-video-i128-1.4.0.tar.bz2 -sha512 d58baee3f20b3ad2ece6853da0ff20a6d54b984c6e3289bad2715cc003b277a0b44d20ded25cfc116400468df552390bdb5d80fbd3fb60861488ee5d027664b2 xf86-video-i128-1.4.0.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2023-May/003395.html +sha256 7064b513ffe33efa040577c4d355ce2c76ed218989ab38feb8972750d5acbc46 xf86-video-i128-1.4.1.tar.xz +sha512 ec6b4dd9092292b5aabff7cf477090fe62c89944d251689817ac8114a65672f85880b719a442f4c742d63dc2d6c61ec315e53da5b5c625074d1aa0b9ace8e865 xf86-video-i128-1.4.1.tar.xz # Locally computed sha256 7677424d79633dbf255a81bd4e05dd621931b89997af33c31522269ec2ed391e COPYING diff --git a/package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128.mk b/package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128.mk index e44deaf62118..266678105c28 100644 --- a/package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128.mk +++ b/package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128.mk @@ -4,9 +4,9 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_I128_VERSION = 1.4.0 -XDRIVER_XF86_VIDEO_I128_SOURCE = xf86-video-i128-$(XDRIVER_XF86_VIDEO_I128_VERSION).tar.bz2 -XDRIVER_XF86_VIDEO_I128_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_I128_VERSION = 1.4.1 +XDRIVER_XF86_VIDEO_I128_SOURCE = xf86-video-i128-$(XDRIVER_XF86_VIDEO_I128_VERSION).tar.xz +XDRIVER_XF86_VIDEO_I128_SITE = https://xorg.freedesktop.org/archive/individual/driver XDRIVER_XF86_VIDEO_I128_LICENSE = MIT XDRIVER_XF86_VIDEO_I128_LICENSE_FILES = COPYING XDRIVER_XF86_VIDEO_I128_DEPENDENCIES = xserver_xorg-server xorgproto diff --git a/package/x11r7/xdriver_xf86-video-neomagic/xdriver_xf86-video-neomagic.hash b/package/x11r7/xdriver_xf86-video-neomagic/xdriver_xf86-video-neomagic.hash index acc65348f79b..b5a139fdacd1 100644 --- a/package/x11r7/xdriver_xf86-video-neomagic/xdriver_xf86-video-neomagic.hash +++ b/package/x11r7/xdriver_xf86-video-neomagic/xdriver_xf86-video-neomagic.hash @@ -1,7 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2018-December/002934.html -md5 349d5254d09eb46f2a1f151cd423b89a xf86-video-neomagic-1.3.0.tar.bz2 -sha1 6bccfa15ea05d5264120cd96ccf13687642e8f6d xf86-video-neomagic-1.3.0.tar.bz2 -sha256 93833950fae7757088eb6abb125e15e8c245e5e25681c19c3ad4213ec7319064 xf86-video-neomagic-1.3.0.tar.bz2 -sha512 25d019a2556e52aeb4e25942f444437a921e76d527c10ddd420f16aa7d85bf2b8a51612c382a2a7e3e407bb1e8d610d063101184eea0889c3e1a69bfb3b37735 xf86-video-neomagic-1.3.0.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2023-April/003380.html +sha256 b61fac7ec32971e92e34cfd51f88fef169e272a210455e0e1a0faa0d30fc7494 xf86-video-neomagic-1.3.1.tar.xz +sha512 b2425c4e9b8e6e816cbb6fa436da12bd242acf55c3c615352fc80ea072b1822abdb40838c2adcc3c450e429ec6e3b5112d194e739cf5d8ac22d430e273d5378b xf86-video-neomagic-1.3.1.tar.xz # Locally computed sha256 95063ce9aa09850025dd317549ce688519079a8d3cf66ceb3d882cb2bafcced9 COPYING diff --git a/package/x11r7/xdriver_xf86-video-neomagic/xdriver_xf86-video-neomagic.mk b/package/x11r7/xdriver_xf86-video-neomagic/xdriver_xf86-video-neomagic.mk index 8dd2777ff9c5..8c7beeed6e9f 100644 --- a/package/x11r7/xdriver_xf86-video-neomagic/xdriver_xf86-video-neomagic.mk +++ b/package/x11r7/xdriver_xf86-video-neomagic/xdriver_xf86-video-neomagic.mk @@ -4,9 +4,9 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_NEOMAGIC_VERSION = 1.3.0 -XDRIVER_XF86_VIDEO_NEOMAGIC_SOURCE = xf86-video-neomagic-$(XDRIVER_XF86_VIDEO_NEOMAGIC_VERSION).tar.bz2 -XDRIVER_XF86_VIDEO_NEOMAGIC_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_NEOMAGIC_VERSION = 1.3.1 +XDRIVER_XF86_VIDEO_NEOMAGIC_SOURCE = xf86-video-neomagic-$(XDRIVER_XF86_VIDEO_NEOMAGIC_VERSION).tar.xz +XDRIVER_XF86_VIDEO_NEOMAGIC_SITE = https://xorg.freedesktop.org/archive/individual/driver XDRIVER_XF86_VIDEO_NEOMAGIC_LICENSE = MIT XDRIVER_XF86_VIDEO_NEOMAGIC_LICENSE_FILES = COPYING XDRIVER_XF86_VIDEO_NEOMAGIC_DEPENDENCIES = xserver_xorg-server xorgproto diff --git a/package/x11r7/xdriver_xf86-video-savage/0001-cross-compile.patch b/package/x11r7/xdriver_xf86-video-savage/0001-cross-compile.patch deleted file mode 100644 index b9c296b6b5d7..000000000000 --- a/package/x11r7/xdriver_xf86-video-savage/0001-cross-compile.patch +++ /dev/null @@ -1,27 +0,0 @@ ---- a/configure.ac 2008-05-21 16:04:23.000000000 -0400 -+++ b/configure.ac 2008-06-23 11:41:50.000000000 -0400 -@@ -68,12 +68,18 @@ sdkdir=$(pkg-config --variable=sdkdir xo - AC_HEADER_STDC - - if test "$DRI" != no; then -- AC_CHECK_FILE([${sdkdir}/dri.h], -- [have_dri_h="yes"], [have_dri_h="no"]) -- AC_CHECK_FILE([${sdkdir}/sarea.h], -- [have_sarea_h="yes"], [have_sarea_h="no"]) -- AC_CHECK_FILE([${sdkdir}/dristruct.h], -- [have_dristruct_h="yes"], [have_dristruct_h="no"]) -+ if test "$cross_compiling" = "no" ; then -+ AC_CHECK_FILE([${sdkdir}/dri.h], -+ [have_dri_h="yes"], [have_dri_h="no"]) -+ AC_CHECK_FILE([${sdkdir}/sarea.h], -+ [have_sarea_h="yes"], [have_sarea_h="no"]) -+ AC_CHECK_FILE([${sdkdir}/dristruct.h], -+ [have_dristruct_h="yes"], [have_dristruct_h="no"]) -+ else -+ have_dri_h="yes" -+ have_sarea_h="yes" -+ have_dristruct_h="yes" -+ fi - fi - - AC_MSG_CHECKING([whether to include DRI support]) diff --git a/package/x11r7/xdriver_xf86-video-savage/0002-xorg-xserver120.patch b/package/x11r7/xdriver_xf86-video-savage/0002-xorg-xserver120.patch deleted file mode 100644 index 4c695960d1a7..000000000000 --- a/package/x11r7/xdriver_xf86-video-savage/0002-xorg-xserver120.patch +++ /dev/null @@ -1,23 +0,0 @@ -Fix build with modular-xorg-server-1.20 - -Downloaded from -http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/x11/xf86-video-savage/patches/patch-src_savage__driver.c?rev=1.3&content-type=text/x-cvsweb-markup - -Patch was sent upstream by Thomas Klausner : -https://lists.x.org/archives/xorg-devel/2018-May/056952.html - -Signed-off-by: Bernd Kuhls - ---- a/src/savage_driver.c.orig 2017-01-17 22:43:40.000000000 +0000 -+++ b/src/savage_driver.c -@@ -2034,8 +2034,10 @@ static Bool SavagePreInit(ScrnInfoPtr pS - xf86DrvMsg(pScrn->scrnIndex, X_PROBED, "Detected current MCLK value of %1.3f MHz\n", - mclk / 1000.0); - -+#if 0 - pScrn->maxHValue = 2048 << 3; /* 11 bits of h_total 8-pixel units */ - pScrn->maxVValue = 2048; /* 11 bits of v_total */ -+#endif - pScrn->virtualX = pScrn->display->virtualX; - pScrn->virtualY = pScrn->display->virtualY; - diff --git a/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.hash b/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.hash index 661c8749f212..4482ff599119 100644 --- a/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.hash +++ b/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.hash @@ -1,4 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2017-January/002760.html -sha256 2c93c4db1f71e725dda0caee5821253129d4b52d7aa0fd720593e7769bceec86 xf86-video-savage-2.3.9.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2023-April/003381.html +sha256 b36cf02cfdd08a39423bb977c45397fbca5813267c727f0fd3c963ac38b601fd xf86-video-savage-2.4.0.tar.xz +sha512 a4db097c200f1430887e4c52bbe14aeaaa2c73dfc392beeed104c682114bd067f89b69994d649829cdc5d188cdbe7a41b22c82b0b49e3a02cdf366013ebbc161 xf86-video-savage-2.4.0.tar.xz # Locally calculated sha256 611f4020815e3d5011a39a58f0958262715cd3becd9cb1ef14cc166fd84ec5a6 COPYING diff --git a/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.mk b/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.mk index 9e5bf61997f1..03983d5cdc4a 100644 --- a/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.mk +++ b/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage.mk @@ -4,12 +4,11 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_SAVAGE_VERSION = 2.3.9 -XDRIVER_XF86_VIDEO_SAVAGE_SOURCE = xf86-video-savage-$(XDRIVER_XF86_VIDEO_SAVAGE_VERSION).tar.bz2 -XDRIVER_XF86_VIDEO_SAVAGE_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_SAVAGE_VERSION = 2.4.0 +XDRIVER_XF86_VIDEO_SAVAGE_SOURCE = xf86-video-savage-$(XDRIVER_XF86_VIDEO_SAVAGE_VERSION).tar.xz +XDRIVER_XF86_VIDEO_SAVAGE_SITE = https://xorg.freedesktop.org/archive/individual/driver XDRIVER_XF86_VIDEO_SAVAGE_LICENSE = MIT XDRIVER_XF86_VIDEO_SAVAGE_LICENSE_FILES = COPYING -XDRIVER_XF86_VIDEO_SAVAGE_AUTORECONF = YES XDRIVER_XF86_VIDEO_SAVAGE_DEPENDENCIES = xserver_xorg-server libdrm xorgproto ifeq ($(BR2_PACKAGE_HAS_LIBGL),y) diff --git a/package/x11r7/xfont_encodings/xfont_encodings.hash b/package/x11r7/xfont_encodings/xfont_encodings.hash index 6da1080576e5..80d4a48c4066 100644 --- a/package/x11r7/xfont_encodings/xfont_encodings.hash +++ b/package/x11r7/xfont_encodings/xfont_encodings.hash @@ -1,5 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2022-July/003189.html -sha256 77e301de661f35a622b18f60b555a7e7d8c4d5f43ed41410e830d5ac9084fc26 encodings-1.0.6.tar.xz -sha512 2d52486996939401121bc858ba23031f70eef857760db8da4c84f083e981868e4bc7a8c2ab6d59274a0cf95f592a0dbfad47bce6c9299bb45d115b48abc39134 encodings-1.0.6.tar.xz +# From https://lists.x.org/archives/xorg-announce/2023-February/003355.html +sha256 3a39a9f43b16521cdbd9f810090952af4f109b44fa7a865cd555f8febcea70a4 encodings-1.0.7.tar.xz +sha512 dc72982b14e5d89fe1eff1ab11f308796c89255a06337d8cd6bf65757f11dd0a5478b41d844793213db8fe9638389734f148abe9df9fb05027ea563dacde6ba8 encodings-1.0.7.tar.xz # Locally computed sha256 13b4a0f9431f0fdd6ee36ed386e0b7d1eb429c5cb88df73353896078cbb5a137 COPYING diff --git a/package/x11r7/xfont_encodings/xfont_encodings.mk b/package/x11r7/xfont_encodings/xfont_encodings.mk index d499b421fb0a..7825f4117e17 100644 --- a/package/x11r7/xfont_encodings/xfont_encodings.mk +++ b/package/x11r7/xfont_encodings/xfont_encodings.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_ENCODINGS_VERSION = 1.0.6 +XFONT_ENCODINGS_VERSION = 1.0.7 XFONT_ENCODINGS_SOURCE = encodings-$(XFONT_ENCODINGS_VERSION).tar.xz -XFONT_ENCODINGS_SITE = https://xorg.freedesktop.org/releases/individual/font +XFONT_ENCODINGS_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_ENCODINGS_LICENSE = Public Domain XFONT_ENCODINGS_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.hash b/package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.hash index 514c90915a2f..6c96f7dfea21 100644 --- a/package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.hash +++ b/package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.hash @@ -1,3 +1,3 @@ # locally computed -sha256 b2c08433eab5cb202470aa9f779efefce8d9cab2534f34f3aa4a31d05671c054 font-adobe-100dpi-1.0.3.tar.bz2 +sha256 b67aff445e056328d53f9732d39884f55dd8d303fc25af3dbba33a8ba35a9ccf font-adobe-100dpi-1.0.4.tar.xz sha256 bf6d862672b4fcc86f3f38bc138ad44e52d52207dd8689b8d3701630fc331194 COPYING diff --git a/package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.mk b/package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.mk index 241876980834..498f39d14b72 100644 --- a/package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.mk +++ b/package/x11r7/xfont_font-adobe-100dpi/xfont_font-adobe-100dpi.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_ADOBE_100DPI_VERSION = 1.0.3 -XFONT_FONT_ADOBE_100DPI_SOURCE = font-adobe-100dpi-$(XFONT_FONT_ADOBE_100DPI_VERSION).tar.bz2 -XFONT_FONT_ADOBE_100DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_ADOBE_100DPI_VERSION = 1.0.4 +XFONT_FONT_ADOBE_100DPI_SOURCE = font-adobe-100dpi-$(XFONT_FONT_ADOBE_100DPI_VERSION).tar.xz +XFONT_FONT_ADOBE_100DPI_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_ADOBE_100DPI_LICENSE = MIT XFONT_FONT_ADOBE_100DPI_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.hash b/package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.hash index 41ac96fc4fda..057cc0f1a4cd 100644 --- a/package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.hash +++ b/package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.hash @@ -1,3 +1,3 @@ # locally computed -sha256 c6024a1e4a1e65f413f994dd08b734efd393ce0a502eb465deb77b9a36db4d09 font-adobe-75dpi-1.0.3.tar.bz2 +sha256 1281a62dbeded169e495cae1a5b487e1f336f2b4d971d92911c59c103999b911 font-adobe-75dpi-1.0.4.tar.xz sha256 bf6d862672b4fcc86f3f38bc138ad44e52d52207dd8689b8d3701630fc331194 COPYING diff --git a/package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.mk b/package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.mk index 90e94d27cb97..a8480caf7141 100644 --- a/package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.mk +++ b/package/x11r7/xfont_font-adobe-75dpi/xfont_font-adobe-75dpi.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_ADOBE_75DPI_VERSION = 1.0.3 -XFONT_FONT_ADOBE_75DPI_SOURCE = font-adobe-75dpi-$(XFONT_FONT_ADOBE_75DPI_VERSION).tar.bz2 -XFONT_FONT_ADOBE_75DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_ADOBE_75DPI_VERSION = 1.0.4 +XFONT_FONT_ADOBE_75DPI_SOURCE = font-adobe-75dpi-$(XFONT_FONT_ADOBE_75DPI_VERSION).tar.xz +XFONT_FONT_ADOBE_75DPI_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_ADOBE_75DPI_LICENSE = MIT XFONT_FONT_ADOBE_75DPI_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.hash b/package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.hash index 81498788be8b..87e7894f5cf7 100644 --- a/package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.hash +++ b/package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.hash @@ -1,3 +1,3 @@ # locally computed -sha256 d16f5e3f227cc6dd07a160a71f443559682dbc35f1c056a5385085aaec4fada5 font-adobe-utopia-100dpi-1.0.4.tar.bz2 +sha256 fb84ec297a906973548ca59b7c6daeaad21244bec5d3fb1e7c93df5ef43b024b font-adobe-utopia-100dpi-1.0.5.tar.xz sha256 234c2a8109afa8034c787dbf69696a9bdd374914aadf937d2a103831d95c1867 COPYING diff --git a/package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.mk b/package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.mk index 83157f5c6738..8962db61cf9a 100644 --- a/package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.mk +++ b/package/x11r7/xfont_font-adobe-utopia-100dpi/xfont_font-adobe-utopia-100dpi.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_ADOBE_UTOPIA_100DPI_VERSION = 1.0.4 -XFONT_FONT_ADOBE_UTOPIA_100DPI_SOURCE = font-adobe-utopia-100dpi-$(XFONT_FONT_ADOBE_UTOPIA_100DPI_VERSION).tar.bz2 -XFONT_FONT_ADOBE_UTOPIA_100DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_ADOBE_UTOPIA_100DPI_VERSION = 1.0.5 +XFONT_FONT_ADOBE_UTOPIA_100DPI_SOURCE = font-adobe-utopia-100dpi-$(XFONT_FONT_ADOBE_UTOPIA_100DPI_VERSION).tar.xz +XFONT_FONT_ADOBE_UTOPIA_100DPI_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_ADOBE_UTOPIA_100DPI_LICENSE = Adobe License (no modification allowed) XFONT_FONT_ADOBE_UTOPIA_100DPI_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.hash b/package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.hash index 514dd2829f04..0770018fde83 100644 --- a/package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.hash +++ b/package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.hash @@ -1,3 +1,3 @@ # locally computed -sha256 979435105f897a70f8993fa02c8362160b0513366c2ab896965416f96dbb8077 font-adobe-utopia-type1-1.0.4.tar.bz2 +sha256 4cb280bc47693b07c5e00fd0e5ad5721aabebc0548c3f06774e5cc3cbcf75697 font-adobe-utopia-type1-1.0.5.tar.xz sha256 234c2a8109afa8034c787dbf69696a9bdd374914aadf937d2a103831d95c1867 COPYING diff --git a/package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.mk b/package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.mk index 9ec8f800bdaf..b53b499b2870 100644 --- a/package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.mk +++ b/package/x11r7/xfont_font-adobe-utopia-type1/xfont_font-adobe-utopia-type1.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_ADOBE_UTOPIA_TYPE1_VERSION = 1.0.4 -XFONT_FONT_ADOBE_UTOPIA_TYPE1_SOURCE = font-adobe-utopia-type1-$(XFONT_FONT_ADOBE_UTOPIA_TYPE1_VERSION).tar.bz2 -XFONT_FONT_ADOBE_UTOPIA_TYPE1_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_ADOBE_UTOPIA_TYPE1_VERSION = 1.0.5 +XFONT_FONT_ADOBE_UTOPIA_TYPE1_SOURCE = font-adobe-utopia-type1-$(XFONT_FONT_ADOBE_UTOPIA_TYPE1_VERSION).tar.xz +XFONT_FONT_ADOBE_UTOPIA_TYPE1_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_ADOBE_UTOPIA_TYPE1_LICENSE = Adobe License (no modification allowed) XFONT_FONT_ADOBE_UTOPIA_TYPE1_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-alias/xfont_font-alias.hash b/package/x11r7/xfont_font-alias/xfont_font-alias.hash index 5390d1c12667..8b1ead9efb50 100644 --- a/package/x11r7/xfont_font-alias/xfont_font-alias.hash +++ b/package/x11r7/xfont_font-alias/xfont_font-alias.hash @@ -1,5 +1,3 @@ -# From https://lists.x.org/archives/xorg-announce/2020-August/003054.html -sha256 f3111ae8bf2e980f5f56af400e8eefe5fc9f4207f4a412ea79637fd66c945276 font-alias-1.0.4.tar.bz2 -sha512 c67ac2ee344a601fcc09471580214b30c3fd6acc4800702840de44f0733e6d18b3faeec2fa3f4e2314025cc1724d7d6796ebaf620398fe350710182fd2c4b07d font-alias-1.0.4.tar.bz2 # locally computed +sha256 9f89e217bb73e0e3636a0a493fbf8b7c995156e0c53d9a0476d201b67c2d6b6e font-alias-1.0.5.tar.xz sha256 bdba5452fc080c0f1a56d66978ac4150d1d1a00a9cc0248bba4f0b76c80ad47e COPYING diff --git a/package/x11r7/xfont_font-alias/xfont_font-alias.mk b/package/x11r7/xfont_font-alias/xfont_font-alias.mk index 7f8e4b2ea072..fcd270662181 100644 --- a/package/x11r7/xfont_font-alias/xfont_font-alias.mk +++ b/package/x11r7/xfont_font-alias/xfont_font-alias.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_ALIAS_VERSION = 1.0.4 -XFONT_FONT_ALIAS_SOURCE = font-alias-$(XFONT_FONT_ALIAS_VERSION).tar.bz2 -XFONT_FONT_ALIAS_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_ALIAS_VERSION = 1.0.5 +XFONT_FONT_ALIAS_SOURCE = font-alias-$(XFONT_FONT_ALIAS_VERSION).tar.xz +XFONT_FONT_ALIAS_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_ALIAS_LICENSE = MIT XFONT_FONT_ALIAS_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.hash b/package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.hash index 3c565450f43a..ae2503efcf16 100644 --- a/package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.hash +++ b/package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.hash @@ -1,3 +1,3 @@ # locally computed -sha256 505d9b12a7093389e67a925dfda6346bde26d114c67f0cdca7aeda6e5d3344f4 font-arabic-misc-1.0.3.tar.bz2 +sha256 46ffe61b52c78a1d2dca70ff20a9f2d84d69744639cab9a085c7a7ee17663467 font-arabic-misc-1.0.4.tar.xz sha256 192b677a887c20f9671cc357cd5ea7bae586003d61c1f8f6e164e8f5530abf57 COPYING diff --git a/package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.mk b/package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.mk index c867a60233e5..f8e95d8fcb2b 100644 --- a/package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.mk +++ b/package/x11r7/xfont_font-arabic-misc/xfont_font-arabic-misc.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_ARABIC_MISC_VERSION = 1.0.3 -XFONT_FONT_ARABIC_MISC_SOURCE = font-arabic-misc-$(XFONT_FONT_ARABIC_MISC_VERSION).tar.bz2 -XFONT_FONT_ARABIC_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_ARABIC_MISC_VERSION = 1.0.4 +XFONT_FONT_ARABIC_MISC_SOURCE = font-arabic-misc-$(XFONT_FONT_ARABIC_MISC_VERSION).tar.xz +XFONT_FONT_ARABIC_MISC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_ARABIC_MISC_LICENSE = MIT XFONT_FONT_ARABIC_MISC_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.hash b/package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.hash index 154d6eb2fd99..6aa66d0b3403 100644 --- a/package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.hash +++ b/package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.hash @@ -1,3 +1,3 @@ # locally computed -sha256 23c07162708e4b79eb33095c8bfa62c783717a9431254bbf44863734ea239481 font-bh-100dpi-1.0.3.tar.bz2 +sha256 fd8f5efe8491faabdd2744808d3d4eafdae5c83e617017c7fddd2716d049ab1e font-bh-100dpi-1.0.4.tar.xz sha256 888fd79d2c7e6332559d661c62f7a50f92fc5842e6ff0e0bd4c59b0083dabce9 COPYING diff --git a/package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.mk b/package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.mk index cc1573869273..89c5a0d802c5 100644 --- a/package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.mk +++ b/package/x11r7/xfont_font-bh-100dpi/xfont_font-bh-100dpi.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_BH_100DPI_VERSION = 1.0.3 -XFONT_FONT_BH_100DPI_SOURCE = font-bh-100dpi-$(XFONT_FONT_BH_100DPI_VERSION).tar.bz2 -XFONT_FONT_BH_100DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BH_100DPI_VERSION = 1.0.4 +XFONT_FONT_BH_100DPI_SOURCE = font-bh-100dpi-$(XFONT_FONT_BH_100DPI_VERSION).tar.xz +XFONT_FONT_BH_100DPI_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_BH_100DPI_LICENSE = Bigelow & Holmes License (no modification) XFONT_FONT_BH_100DPI_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.hash b/package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.hash index 0648e26dd949..0336c1b23771 100644 --- a/package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.hash +++ b/package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.hash @@ -1,3 +1,3 @@ # locally computed -sha256 3486aa51ac92c646a448fe899c5c3dae0024b1fef724d5100d52640d1cac721c font-bh-75dpi-1.0.3.tar.bz2 +sha256 6026d8c073563dd3cbb4878d0076eed970debabd21423b3b61dd90441b9e7cda font-bh-75dpi-1.0.4.tar.xz sha256 888fd79d2c7e6332559d661c62f7a50f92fc5842e6ff0e0bd4c59b0083dabce9 COPYING diff --git a/package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.mk b/package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.mk index 788a76a2b96b..1bc03affab3a 100644 --- a/package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.mk +++ b/package/x11r7/xfont_font-bh-75dpi/xfont_font-bh-75dpi.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_BH_75DPI_VERSION = 1.0.3 -XFONT_FONT_BH_75DPI_SOURCE = font-bh-75dpi-$(XFONT_FONT_BH_75DPI_VERSION).tar.bz2 -XFONT_FONT_BH_75DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BH_75DPI_VERSION = 1.0.4 +XFONT_FONT_BH_75DPI_SOURCE = font-bh-75dpi-$(XFONT_FONT_BH_75DPI_VERSION).tar.xz +XFONT_FONT_BH_75DPI_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_BH_75DPI_LICENSE = Bigelow & Holmes License (no modification) XFONT_FONT_BH_75DPI_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.hash b/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.hash index 439d5d260259..2e21d28546ba 100644 --- a/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.hash +++ b/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.hash @@ -1,3 +1,3 @@ # locally computed -sha256 62a83363c2536095fda49d260d21e0847675676e4e3415054064cbdffa641fbb font-bh-lucidatypewriter-100dpi-1.0.3.tar.bz2 +sha256 76ec09eda4094a29d47b91cf59c3eba229c8f7d1ca6bae2abbb3f925e33de8f2 font-bh-lucidatypewriter-100dpi-1.0.4.tar.xz sha256 9428a98add4fada4c98e031ae0f29d27f8b15a2c8c6e8830591a4c18ea26a6cd COPYING diff --git a/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.mk b/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.mk index 2f055ddab994..bbbdd3d13c07 100644 --- a/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.mk +++ b/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/xfont_font-bh-lucidatypewriter-100dpi.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_VERSION = 1.0.3 -XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_SOURCE = font-bh-lucidatypewriter-100dpi-$(XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_VERSION).tar.bz2 -XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_VERSION = 1.0.4 +XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_SOURCE = font-bh-lucidatypewriter-100dpi-$(XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_VERSION).tar.xz +XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_LICENSE = Bigelow & Holmes License (no modification) XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.hash b/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.hash index ed8d8514db07..17b1b3f428eb 100644 --- a/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.hash +++ b/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.hash @@ -1,3 +1,3 @@ # locally computed -sha256 4ac16afbe205480cc5572e2977ea63488c543d05be0ea8e5a94c845a6eebcb31 font-bh-lucidatypewriter-75dpi-1.0.3.tar.bz2 +sha256 864e2c39ac61f04f693fc2c8aaaed24b298c2cd40283cec12eee459c5635e8f5 font-bh-lucidatypewriter-75dpi-1.0.4.tar.xz sha256 9428a98add4fada4c98e031ae0f29d27f8b15a2c8c6e8830591a4c18ea26a6cd COPYING diff --git a/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.mk b/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.mk index 4166b2d74154..86789dae5aac 100644 --- a/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.mk +++ b/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/xfont_font-bh-lucidatypewriter-75dpi.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_VERSION = 1.0.3 -XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_SOURCE = font-bh-lucidatypewriter-75dpi-$(XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_VERSION).tar.bz2 -XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_VERSION = 1.0.4 +XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_SOURCE = font-bh-lucidatypewriter-75dpi-$(XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_VERSION).tar.xz +XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_LICENSE = Bigelow & Holmes License (no modification) XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-bh-ttf/xfont_font-bh-ttf.hash b/package/x11r7/xfont_font-bh-ttf/xfont_font-bh-ttf.hash index c9b01efc7adf..a0c5eea223bd 100644 --- a/package/x11r7/xfont_font-bh-ttf/xfont_font-bh-ttf.hash +++ b/package/x11r7/xfont_font-bh-ttf/xfont_font-bh-ttf.hash @@ -1,4 +1,3 @@ -# From http://lists.x.org/archives/xorg-announce/2010-November/001537.html -sha1 f42ebd527096011040a312e0f9cdf78d64177419 font-bh-ttf-1.0.3.tar.bz2 # Locally computed +sha256 85a5f90d00c48c2b06fd125ea8adbc8b8ee97429e3075081c8710926efec3a56 font-bh-ttf-1.0.4.tar.xz sha256 27d47d50006773f1c0bd97661252ae27bb8cfd6951f253bd9d3ef81ed1243934 COPYING diff --git a/package/x11r7/xfont_font-bh-ttf/xfont_font-bh-ttf.mk b/package/x11r7/xfont_font-bh-ttf/xfont_font-bh-ttf.mk index e3ed2a6f0851..3cc0dedaa65f 100644 --- a/package/x11r7/xfont_font-bh-ttf/xfont_font-bh-ttf.mk +++ b/package/x11r7/xfont_font-bh-ttf/xfont_font-bh-ttf.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_BH_TTF_VERSION = 1.0.3 -XFONT_FONT_BH_TTF_SOURCE = font-bh-ttf-$(XFONT_FONT_BH_TTF_VERSION).tar.bz2 -XFONT_FONT_BH_TTF_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BH_TTF_VERSION = 1.0.4 +XFONT_FONT_BH_TTF_SOURCE = font-bh-ttf-$(XFONT_FONT_BH_TTF_VERSION).tar.xz +XFONT_FONT_BH_TTF_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_BH_TTF_LICENSE = Bigelow & Holmes License (no modification) XFONT_FONT_BH_TTF_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.hash b/package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.hash index cb0387d9e986..81a6a76dfb41 100644 --- a/package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.hash +++ b/package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.hash @@ -1,3 +1,3 @@ # locally computed -sha256 761455a297486f3927a85d919b5c948d1d324181d4bea6c95d542504b68a63c1 font-bh-type1-1.0.3.tar.bz2 +sha256 19dec3ec06abde6bedd10094579e928be0f0fc3bdb4fbe93f4c69cce406d72a6 font-bh-type1-1.0.4.tar.xz sha256 27d47d50006773f1c0bd97661252ae27bb8cfd6951f253bd9d3ef81ed1243934 COPYING diff --git a/package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.mk b/package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.mk index 244c91ffb917..c4fd2e69b9ca 100644 --- a/package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.mk +++ b/package/x11r7/xfont_font-bh-type1/xfont_font-bh-type1.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_BH_TYPE1_VERSION = 1.0.3 -XFONT_FONT_BH_TYPE1_SOURCE = font-bh-type1-$(XFONT_FONT_BH_TYPE1_VERSION).tar.bz2 -XFONT_FONT_BH_TYPE1_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BH_TYPE1_VERSION = 1.0.4 +XFONT_FONT_BH_TYPE1_SOURCE = font-bh-type1-$(XFONT_FONT_BH_TYPE1_VERSION).tar.xz +XFONT_FONT_BH_TYPE1_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_BH_TYPE1_LICENSE = Bigelow & Holmes License (no modification) XFONT_FONT_BH_TYPE1_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.hash b/package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.hash index 1cef17d4cd77..9a97a16cd1ce 100644 --- a/package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.hash +++ b/package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.hash @@ -1,3 +1,3 @@ # locally computed -sha256 ebe0d7444e3d7c8da7642055ac2206f0190ee060700d99cd876f8fc9964cb6ce font-bitstream-100dpi-1.0.3.tar.bz2 +sha256 2d1cc682efe4f7ebdf5fbd88961d8ca32b2729968728633dea20a1627690c1a7 font-bitstream-100dpi-1.0.4.tar.xz sha256 6faf32f092c2b92f3f99e0d63db9d802b11b4dd5aa0ce991f107a398d7f1ae80 COPYING diff --git a/package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.mk b/package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.mk index 90d9e5bbb472..f756f2957171 100644 --- a/package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.mk +++ b/package/x11r7/xfont_font-bitstream-100dpi/xfont_font-bitstream-100dpi.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_BITSTREAM_100DPI_VERSION = 1.0.3 -XFONT_FONT_BITSTREAM_100DPI_SOURCE = font-bitstream-100dpi-$(XFONT_FONT_BITSTREAM_100DPI_VERSION).tar.bz2 -XFONT_FONT_BITSTREAM_100DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BITSTREAM_100DPI_VERSION = 1.0.4 +XFONT_FONT_BITSTREAM_100DPI_SOURCE = font-bitstream-100dpi-$(XFONT_FONT_BITSTREAM_100DPI_VERSION).tar.xz +XFONT_FONT_BITSTREAM_100DPI_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_BITSTREAM_100DPI_LICENSE = MIT XFONT_FONT_BITSTREAM_100DPI_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.hash b/package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.hash index 9973f1f456c5..03bcf66ca4db 100644 --- a/package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.hash +++ b/package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.hash @@ -1,3 +1,3 @@ # locally computed -sha256 ba3f5e4610c07bd5859881660753ec6d75d179f26fc967aa776dbb3d5d5cf48e font-bitstream-75dpi-1.0.3.tar.bz2 +sha256 aaeb34d87424a9c2b0cf0e8590704c90cb5b42c6a3b6a0ef9e4676ef773bf826 font-bitstream-75dpi-1.0.4.tar.xz sha256 6faf32f092c2b92f3f99e0d63db9d802b11b4dd5aa0ce991f107a398d7f1ae80 COPYING diff --git a/package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.mk b/package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.mk index deb99aa59689..9c74f0c4dceb 100644 --- a/package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.mk +++ b/package/x11r7/xfont_font-bitstream-75dpi/xfont_font-bitstream-75dpi.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_BITSTREAM_75DPI_VERSION = 1.0.3 -XFONT_FONT_BITSTREAM_75DPI_SOURCE = font-bitstream-75dpi-$(XFONT_FONT_BITSTREAM_75DPI_VERSION).tar.bz2 -XFONT_FONT_BITSTREAM_75DPI_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BITSTREAM_75DPI_VERSION = 1.0.4 +XFONT_FONT_BITSTREAM_75DPI_SOURCE = font-bitstream-75dpi-$(XFONT_FONT_BITSTREAM_75DPI_VERSION).tar.xz +XFONT_FONT_BITSTREAM_75DPI_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_BITSTREAM_75DPI_LICENSE = MIT XFONT_FONT_BITSTREAM_75DPI_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.hash b/package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.hash index 81bb8fc7913b..9e9e158f80b5 100644 --- a/package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.hash +++ b/package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.hash @@ -1,3 +1,3 @@ # locally computed -sha256 c6ea0569adad2c577f140328dc3302e729cb1b1ea90cd0025caf380625f8a688 font-bitstream-type1-1.0.3.tar.bz2 +sha256 de2f238b4cd72db4228a0ba67829d76a2b7c039e22993d66a722ee385248c628 font-bitstream-type1-1.0.4.tar.xz sha256 ecad5afdbd1308634896744a4c962361e9eca73e7d9969bb3aad94533c66d046 COPYING diff --git a/package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.mk b/package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.mk index 640ce86324c2..880e49a102c6 100644 --- a/package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.mk +++ b/package/x11r7/xfont_font-bitstream-type1/xfont_font-bitstream-type1.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_BITSTREAM_TYPE1_VERSION = 1.0.3 -XFONT_FONT_BITSTREAM_TYPE1_SOURCE = font-bitstream-type1-$(XFONT_FONT_BITSTREAM_TYPE1_VERSION).tar.bz2 -XFONT_FONT_BITSTREAM_TYPE1_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_BITSTREAM_TYPE1_VERSION = 1.0.4 +XFONT_FONT_BITSTREAM_TYPE1_SOURCE = font-bitstream-type1-$(XFONT_FONT_BITSTREAM_TYPE1_VERSION).tar.xz +XFONT_FONT_BITSTREAM_TYPE1_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_BITSTREAM_TYPE1_LICENSE = MIT XFONT_FONT_BITSTREAM_TYPE1_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.hash b/package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.hash index 893ba5718d81..480444e518ab 100644 --- a/package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.hash +++ b/package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.hash @@ -1,3 +1,3 @@ # locally computed -sha256 6e8631936157677c77ba032b5c7b1fb3cb2ee872dbcea0444f12cd602cd9212a font-cronyx-cyrillic-1.0.3.tar.bz2 +sha256 dc0781ce0dcbffdbf6aae1a00173a13403f92b0de925bca5a9e117e4e2d6b789 font-cronyx-cyrillic-1.0.4.tar.xz sha256 857fa9f8d12bd7ce7fb235393d775dd5e0b5130fac7a88fdea9156d75b609402 COPYING diff --git a/package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.mk b/package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.mk index caca639c2588..af7590842c87 100644 --- a/package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.mk +++ b/package/x11r7/xfont_font-cronyx-cyrillic/xfont_font-cronyx-cyrillic.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_CRONYX_CYRILLIC_VERSION = 1.0.3 -XFONT_FONT_CRONYX_CYRILLIC_SOURCE = font-cronyx-cyrillic-$(XFONT_FONT_CRONYX_CYRILLIC_VERSION).tar.bz2 -XFONT_FONT_CRONYX_CYRILLIC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_CRONYX_CYRILLIC_VERSION = 1.0.4 +XFONT_FONT_CRONYX_CYRILLIC_SOURCE = font-cronyx-cyrillic-$(XFONT_FONT_CRONYX_CYRILLIC_VERSION).tar.xz +XFONT_FONT_CRONYX_CYRILLIC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_CRONYX_CYRILLIC_LICENSE = MIT XFONT_FONT_CRONYX_CYRILLIC_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.hash b/package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.hash index 04565f8b0f98..3fe94b526fc7 100644 --- a/package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.hash +++ b/package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.hash @@ -1,3 +1,3 @@ # locally computed -sha256 17363eb35eece2e08144da5f060c70103b59d0972b4f4d77fd84c9a7a2dba635 font-cursor-misc-1.0.3.tar.bz2 +sha256 25d9c9595013cb8ca08420509993a6434c917e53ca1fec3f63acd45a19d4f982 font-cursor-misc-1.0.4.tar.xz sha256 c22415fb2144d7298e995dbeee2eb120822d653c61ae43c64fa0fda2cc3ca3a0 COPYING diff --git a/package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.mk b/package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.mk index e752803086fa..38366a80897f 100644 --- a/package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.mk +++ b/package/x11r7/xfont_font-cursor-misc/xfont_font-cursor-misc.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_CURSOR_MISC_VERSION = 1.0.3 -XFONT_FONT_CURSOR_MISC_SOURCE = font-cursor-misc-$(XFONT_FONT_CURSOR_MISC_VERSION).tar.bz2 -XFONT_FONT_CURSOR_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_CURSOR_MISC_VERSION = 1.0.4 +XFONT_FONT_CURSOR_MISC_SOURCE = font-cursor-misc-$(XFONT_FONT_CURSOR_MISC_VERSION).tar.xz +XFONT_FONT_CURSOR_MISC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_CURSOR_MISC_LICENSE = unencumbered XFONT_FONT_CURSOR_MISC_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-daewoo-misc/xfont_font-daewoo-misc.hash b/package/x11r7/xfont_font-daewoo-misc/xfont_font-daewoo-misc.hash index 1b4ebe9d9fcb..cebdbbba88b7 100644 --- a/package/x11r7/xfont_font-daewoo-misc/xfont_font-daewoo-misc.hash +++ b/package/x11r7/xfont_font-daewoo-misc/xfont_font-daewoo-misc.hash @@ -1,2 +1,3 @@ # locally computed -sha256 bc65de70bee12698caa95b523d3b652c056347e17b68cc8b5d6bbdff235c4be8 font-daewoo-misc-1.0.3.tar.bz2 +sha256 f63c8b3dc8f30098cb868b7db2c2c0c8b5b3fd2cefd044035697a43d4c7a4f31 font-daewoo-misc-1.0.4.tar.xz +sha256 294f786aa8f0ad8f92979d153e18f5cf7cc95d872cace25338f9c95e7b348ed9 COPYING diff --git a/package/x11r7/xfont_font-daewoo-misc/xfont_font-daewoo-misc.mk b/package/x11r7/xfont_font-daewoo-misc/xfont_font-daewoo-misc.mk index f5bd941383ce..57e151383b99 100644 --- a/package/x11r7/xfont_font-daewoo-misc/xfont_font-daewoo-misc.mk +++ b/package/x11r7/xfont_font-daewoo-misc/xfont_font-daewoo-misc.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_DAEWOO_MISC_VERSION = 1.0.3 -XFONT_FONT_DAEWOO_MISC_SOURCE = font-daewoo-misc-$(XFONT_FONT_DAEWOO_MISC_VERSION).tar.bz2 -XFONT_FONT_DAEWOO_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_DAEWOO_MISC_VERSION = 1.0.4 +XFONT_FONT_DAEWOO_MISC_SOURCE = font-daewoo-misc-$(XFONT_FONT_DAEWOO_MISC_VERSION).tar.xz +XFONT_FONT_DAEWOO_MISC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_DAEWOO_MISC_LICENSE_FILES = COPYING XFONT_FONT_DAEWOO_MISC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install diff --git a/package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.hash b/package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.hash index 34873fe3b71d..2dea72b831eb 100644 --- a/package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.hash +++ b/package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.hash @@ -1,3 +1,3 @@ # locally computed -sha256 e19ddf8b5f8de914d81675358fdfe37762e9ce524887cc983adef34f2850ff7b font-dec-misc-1.0.3.tar.bz2 +sha256 82d968201d8ff8bec0e51dccd781bb4d4ebf17e11004944279bdc0201e161af7 font-dec-misc-1.0.4.tar.xz sha256 bf4d44be4b5eb66c53bf5f7eb2d9d4817fb937788b37ed6ceda1876fdb964817 COPYING diff --git a/package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.mk b/package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.mk index 1642b413524d..6f404ab2a0ed 100644 --- a/package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.mk +++ b/package/x11r7/xfont_font-dec-misc/xfont_font-dec-misc.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_DEC_MISC_VERSION = 1.0.3 -XFONT_FONT_DEC_MISC_SOURCE = font-dec-misc-$(XFONT_FONT_DEC_MISC_VERSION).tar.bz2 -XFONT_FONT_DEC_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_DEC_MISC_VERSION = 1.0.4 +XFONT_FONT_DEC_MISC_SOURCE = font-dec-misc-$(XFONT_FONT_DEC_MISC_VERSION).tar.xz +XFONT_FONT_DEC_MISC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_DEC_MISC_LICENSE = MIT XFONT_FONT_DEC_MISC_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.hash b/package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.hash index c5e8f4e4aea5..5a967f70d569 100644 --- a/package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.hash +++ b/package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.hash @@ -1,3 +1,3 @@ # locally computed -sha256 fddb28d3db5a07f4b4ca15388488a9680a10e1367a18f358f903b2a608a5d2df font-ibm-type1-1.0.3.tar.bz2 +sha256 c4395e95ba46d40c4ad1737e91cac20c0ab75411329b60db5d99fed92b60ce7f font-ibm-type1-1.0.4.tar.xz sha256 fc0fd4df7ac7ac7f9b1ff3a221f28c52edea4506dc4c84f1869a3f4281360ca1 COPYING diff --git a/package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.mk b/package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.mk index 4d34998af4dc..ea295cadfa0f 100644 --- a/package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.mk +++ b/package/x11r7/xfont_font-ibm-type1/xfont_font-ibm-type1.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_IBM_TYPE1_VERSION = 1.0.3 -XFONT_FONT_IBM_TYPE1_SOURCE = font-ibm-type1-$(XFONT_FONT_IBM_TYPE1_VERSION).tar.bz2 -XFONT_FONT_IBM_TYPE1_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_IBM_TYPE1_VERSION = 1.0.4 +XFONT_FONT_IBM_TYPE1_SOURCE = font-ibm-type1-$(XFONT_FONT_IBM_TYPE1_VERSION).tar.xz +XFONT_FONT_IBM_TYPE1_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_IBM_TYPE1_LICENSE = IBM/MIT X Consortium Courier Typefont agreement (no modification) XFONT_FONT_IBM_TYPE1_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.hash b/package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.hash index bc4a9e5b17b6..bc2164b23faa 100644 --- a/package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.hash +++ b/package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.hash @@ -1,3 +1,3 @@ # locally computed -sha256 5824ab4b485951107dd245b8f7717d2822f1a6dbf6cea98f1ac7f49905c0a867 font-isas-misc-1.0.3.tar.bz2 +sha256 47e595bbe6da444b9f6fcaa26539abc7ba1989e23afa6cdc49e22e484cc438fc font-isas-misc-1.0.4.tar.xz sha256 32d5d082b8186051bbe75ea9cbedc646830217ca931b1b7a1e534a828c94e839 COPYING diff --git a/package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.mk b/package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.mk index 1393d67eae87..d14492527815 100644 --- a/package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.mk +++ b/package/x11r7/xfont_font-isas-misc/xfont_font-isas-misc.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_ISAS_MISC_VERSION = 1.0.3 -XFONT_FONT_ISAS_MISC_SOURCE = font-isas-misc-$(XFONT_FONT_ISAS_MISC_VERSION).tar.bz2 -XFONT_FONT_ISAS_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_ISAS_MISC_VERSION = 1.0.4 +XFONT_FONT_ISAS_MISC_SOURCE = font-isas-misc-$(XFONT_FONT_ISAS_MISC_VERSION).tar.xz +XFONT_FONT_ISAS_MISC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_ISAS_MISC_LICENSE = MIT XFONT_FONT_ISAS_MISC_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-jis-misc/xfont_font-jis-misc.hash b/package/x11r7/xfont_font-jis-misc/xfont_font-jis-misc.hash index c39db360612f..95cdaa9f1c74 100644 --- a/package/x11r7/xfont_font-jis-misc/xfont_font-jis-misc.hash +++ b/package/x11r7/xfont_font-jis-misc/xfont_font-jis-misc.hash @@ -1,2 +1,3 @@ # locally computed -sha256 2b18ce10b367ebafe95a17de799b6db9a24e2337188d124adaf68af05b1fac65 font-jis-misc-1.0.3.tar.bz2 +sha256 78d1eff6c471f7aa6802a26d62cccf51d8e5185586406d9b6e1ee691b0bffad0 font-jis-misc-1.0.4.tar.xz +sha256 7a94eaf8f051c95232d64b24b082eb02f827e1361c03b82e9bc7252263ea66c1 COPYING diff --git a/package/x11r7/xfont_font-jis-misc/xfont_font-jis-misc.mk b/package/x11r7/xfont_font-jis-misc/xfont_font-jis-misc.mk index 78a5bbbf8ed6..f0ba7fe9427e 100644 --- a/package/x11r7/xfont_font-jis-misc/xfont_font-jis-misc.mk +++ b/package/x11r7/xfont_font-jis-misc/xfont_font-jis-misc.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_JIS_MISC_VERSION = 1.0.3 -XFONT_FONT_JIS_MISC_SOURCE = font-jis-misc-$(XFONT_FONT_JIS_MISC_VERSION).tar.bz2 -XFONT_FONT_JIS_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_JIS_MISC_VERSION = 1.0.4 +XFONT_FONT_JIS_MISC_SOURCE = font-jis-misc-$(XFONT_FONT_JIS_MISC_VERSION).tar.xz +XFONT_FONT_JIS_MISC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_JIS_MISC_LICENSE_FILES = COPYING XFONT_FONT_JIS_MISC_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) MKFONTSCALE=$(HOST_DIR)/bin/mkfontscale MKFONTDIR=$(HOST_DIR)/bin/mkfontdir install diff --git a/package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.hash b/package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.hash index ce0899b65ae4..ace39dcd64b4 100644 --- a/package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.hash +++ b/package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.hash @@ -1,3 +1,3 @@ # locally computed -sha256 9a3381c10f32d9511f0ad4179df395914c50779103c16cddf7017f5220ed8db6 font-micro-misc-1.0.3.tar.bz2 +sha256 2ee0b9d6bd7ae849aff1bd82efab44a1b6b368fbb5e11d12ff7f015a3df6f943 font-micro-misc-1.0.4.tar.xz sha256 1711d038bca0efb51b5114e902412019d1c21531882866b1a6908c6386268cfb COPYING diff --git a/package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.mk b/package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.mk index b5da83f398cb..e76626bb96ed 100644 --- a/package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.mk +++ b/package/x11r7/xfont_font-micro-misc/xfont_font-micro-misc.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_MICRO_MISC_VERSION = 1.0.3 -XFONT_FONT_MICRO_MISC_SOURCE = font-micro-misc-$(XFONT_FONT_MICRO_MISC_VERSION).tar.bz2 -XFONT_FONT_MICRO_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_MICRO_MISC_VERSION = 1.0.4 +XFONT_FONT_MICRO_MISC_SOURCE = font-micro-misc-$(XFONT_FONT_MICRO_MISC_VERSION).tar.xz +XFONT_FONT_MICRO_MISC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_MICRO_MISC_LICENSE = Public Domain XFONT_FONT_MICRO_MISC_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.hash b/package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.hash index 5eb407f4c716..5d2f1dedc16f 100644 --- a/package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.hash +++ b/package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.hash @@ -1,3 +1,3 @@ # locally computed -sha256 e40fe3e3323c62b738550795457ad555c70c008aa91b5912dfd46f8e745f5e60 font-misc-cyrillic-1.0.3.tar.bz2 +sha256 76021a7f53064001914a57fd08efae57f76b68f0a24dca8ab1b245474ee8e993 font-misc-cyrillic-1.0.4.tar.xz sha256 8765722448e0ca6ce113d0406554c40224f74abfc005f4b2ef927567349f1529 COPYING diff --git a/package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.mk b/package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.mk index 8fa30ea31405..93a7973fb7e4 100644 --- a/package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.mk +++ b/package/x11r7/xfont_font-misc-cyrillic/xfont_font-misc-cyrillic.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_MISC_CYRILLIC_VERSION = 1.0.3 -XFONT_FONT_MISC_CYRILLIC_SOURCE = font-misc-cyrillic-$(XFONT_FONT_MISC_CYRILLIC_VERSION).tar.bz2 -XFONT_FONT_MISC_CYRILLIC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_MISC_CYRILLIC_VERSION = 1.0.4 +XFONT_FONT_MISC_CYRILLIC_SOURCE = font-misc-cyrillic-$(XFONT_FONT_MISC_CYRILLIC_VERSION).tar.xz +XFONT_FONT_MISC_CYRILLIC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_MISC_CYRILLIC_LICENSE = MIT / Public Domain XFONT_FONT_MISC_CYRILLIC_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.hash b/package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.hash index 45cf43001868..73f38186f295 100644 --- a/package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.hash +++ b/package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.hash @@ -1,5 +1,3 @@ -# From https://lists.x.org/archives/xorg-announce/2020-August/003055.html -sha256 698c0f6ddf9ca482250bdafa08293893148393bb9cb23e0a9ca313c6dbfc4ae0 font-misc-ethiopic-1.0.4.tar.bz2 -sha512 4fed9ff3782746898c56dac199e9ca89356f4967779937049b9ff4ffad202317c023859f92d44b371dfa5485d5368ccad648e64b12cde0ed21f7d4aee5affcd5 font-misc-ethiopic-1.0.4.tar.bz2 # locally computed +sha256 4749a7e6e1a1eef6c91fcc9a04e8b1c0ed027d40c1599e5a6c93270d8469b612 font-misc-ethiopic-1.0.5.tar.xz sha256 94835f274f1ddad34f8fd3a06b2c493222a68e4094f4097000d101f22ee0d0d5 COPYING diff --git a/package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.mk b/package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.mk index 9ded4b6cede8..9a4e25bf827e 100644 --- a/package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.mk +++ b/package/x11r7/xfont_font-misc-ethiopic/xfont_font-misc-ethiopic.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_MISC_ETHIOPIC_VERSION = 1.0.4 -XFONT_FONT_MISC_ETHIOPIC_SOURCE = font-misc-ethiopic-$(XFONT_FONT_MISC_ETHIOPIC_VERSION).tar.bz2 -XFONT_FONT_MISC_ETHIOPIC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_MISC_ETHIOPIC_VERSION = 1.0.5 +XFONT_FONT_MISC_ETHIOPIC_SOURCE = font-misc-ethiopic-$(XFONT_FONT_MISC_ETHIOPIC_VERSION).tar.xz +XFONT_FONT_MISC_ETHIOPIC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_MISC_ETHIOPIC_LICENSE = MIT XFONT_FONT_MISC_ETHIOPIC_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.hash b/package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.hash index 92046c851197..63d033b444bc 100644 --- a/package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.hash +++ b/package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.hash @@ -1,3 +1,3 @@ # locally computed -sha256 3721323f13855cf7ca609115a1f7b182491e9b2b9c6e01eb1a2c7f8edd480791 font-misc-meltho-1.0.3.tar.bz2 +sha256 63be5ec17078898f263c24096a68b43ae5b06b88852e42549afa03d124d65219 font-misc-meltho-1.0.4.tar.xz sha256 6a02b45e4877b9df8c1bdaa21e1e8fba86d85e3be4c90f2791183a501e0cbd25 COPYING diff --git a/package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.mk b/package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.mk index ac4a71b700c7..727b82fccf28 100644 --- a/package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.mk +++ b/package/x11r7/xfont_font-misc-meltho/xfont_font-misc-meltho.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_MISC_MELTHO_VERSION = 1.0.3 -XFONT_FONT_MISC_MELTHO_SOURCE = font-misc-meltho-$(XFONT_FONT_MISC_MELTHO_VERSION).tar.bz2 -XFONT_FONT_MISC_MELTHO_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_MISC_MELTHO_VERSION = 1.0.4 +XFONT_FONT_MISC_MELTHO_SOURCE = font-misc-meltho-$(XFONT_FONT_MISC_MELTHO_VERSION).tar.xz +XFONT_FONT_MISC_MELTHO_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_MISC_MELTHO_LICENSE = Meltho License XFONT_FONT_MISC_MELTHO_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.hash b/package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.hash index 781742420d38..2fbdcaf3a133 100644 --- a/package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.hash +++ b/package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.hash @@ -1,3 +1,3 @@ # locally computed -sha256 b8e77940e4e1769dc47ef1805918d8c9be37c708735832a07204258bacc11794 font-misc-misc-1.1.2.tar.bz2 +sha256 79abe361f58bb21ade9f565898e486300ce1cc621d5285bec26e14b6a8618fed font-misc-misc-1.1.3.tar.xz sha256 1711d038bca0efb51b5114e902412019d1c21531882866b1a6908c6386268cfb COPYING diff --git a/package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.mk b/package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.mk index e03da6f1b535..ee90e7a80c92 100644 --- a/package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.mk +++ b/package/x11r7/xfont_font-misc-misc/xfont_font-misc-misc.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_MISC_MISC_VERSION = 1.1.2 -XFONT_FONT_MISC_MISC_SOURCE = font-misc-misc-$(XFONT_FONT_MISC_MISC_VERSION).tar.bz2 -XFONT_FONT_MISC_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_MISC_MISC_VERSION = 1.1.3 +XFONT_FONT_MISC_MISC_SOURCE = font-misc-misc-$(XFONT_FONT_MISC_MISC_VERSION).tar.xz +XFONT_FONT_MISC_MISC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_MISC_MISC_LICENSE = Public Domain XFONT_FONT_MISC_MISC_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.hash b/package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.hash index f6e8e9aa7941..978c634ec550 100644 --- a/package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.hash +++ b/package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.hash @@ -1,3 +1,3 @@ # locally computed -sha256 bd5f7adb34367c197773a9801df5bce7b019664941900b2a31fbfe1ff2830f8f font-mutt-misc-1.0.3.tar.bz2 +sha256 b12359f4e12c23bcfcb448b918297e975fa91bef5293d88d3c25343cc768bb24 font-mutt-misc-1.0.4.tar.xz sha256 81d42a6eeaf3ac2fcc1e1408fb6e2039d1162ca85d4abaf75e3daddcb250e4ff COPYING diff --git a/package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.mk b/package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.mk index 6fcaa5dadc28..41179f4c4f2b 100644 --- a/package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.mk +++ b/package/x11r7/xfont_font-mutt-misc/xfont_font-mutt-misc.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_MUTT_MISC_VERSION = 1.0.3 -XFONT_FONT_MUTT_MISC_SOURCE = font-mutt-misc-$(XFONT_FONT_MUTT_MISC_VERSION).tar.bz2 -XFONT_FONT_MUTT_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_MUTT_MISC_VERSION = 1.0.4 +XFONT_FONT_MUTT_MISC_SOURCE = font-mutt-misc-$(XFONT_FONT_MUTT_MISC_VERSION).tar.xz +XFONT_FONT_MUTT_MISC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_MUTT_MISC_LICENSE = MIT XFONT_FONT_MUTT_MISC_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.hash b/package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.hash index 107493b267a6..44ce495ec6b0 100644 --- a/package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.hash +++ b/package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.hash @@ -1,3 +1,3 @@ # locally computed -sha256 e444028656e0767e2eddc6d9aca462b16a2be75a47244dbc199b2c44eca87e5a font-schumacher-misc-1.1.2.tar.bz2 +sha256 8b849f0cdb1e55a34cc3dd8b0fb37443fabbc224d5ba44085569581244a68070 font-schumacher-misc-1.1.3.tar.xz sha256 4e2b9933887950acad3a780dce91c71770c8887f132bcd0c2ba6146cdc372407 COPYING diff --git a/package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.mk b/package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.mk index e07569d4b4b1..4e61b453396a 100644 --- a/package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.mk +++ b/package/x11r7/xfont_font-schumacher-misc/xfont_font-schumacher-misc.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_SCHUMACHER_MISC_VERSION = 1.1.2 -XFONT_FONT_SCHUMACHER_MISC_SOURCE = font-schumacher-misc-$(XFONT_FONT_SCHUMACHER_MISC_VERSION).tar.bz2 -XFONT_FONT_SCHUMACHER_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_SCHUMACHER_MISC_VERSION = 1.1.3 +XFONT_FONT_SCHUMACHER_MISC_SOURCE = font-schumacher-misc-$(XFONT_FONT_SCHUMACHER_MISC_VERSION).tar.xz +XFONT_FONT_SCHUMACHER_MISC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_SCHUMACHER_MISC_LICENSE = MIT XFONT_FONT_SCHUMACHER_MISC_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-screen-cyrillic/xfont_font-screen-cyrillic.hash b/package/x11r7/xfont_font-screen-cyrillic/xfont_font-screen-cyrillic.hash index e8d3fa160544..4d92cdaf9f02 100644 --- a/package/x11r7/xfont_font-screen-cyrillic/xfont_font-screen-cyrillic.hash +++ b/package/x11r7/xfont_font-screen-cyrillic/xfont_font-screen-cyrillic.hash @@ -1,4 +1,3 @@ -# From http://www.x.org/archive/current/src/everything/CHECKSUMS -sha256 824231e8dffe15299454e47259f29d98001c9cf8ad3d6b5171399e4d71705e79 font-screen-cyrillic-1.0.4.tar.bz2 # Locally computed +sha256 8f758bb8cd580c7e655487d1d0db69d319acae54d932b295d96d9d9b83fde5c0 font-screen-cyrillic-1.0.5.tar.xz sha256 5234cbcbdcc9865ce2b576b5f67e77e40ccdc1aa01e6528bea5a17784934b894 COPYING diff --git a/package/x11r7/xfont_font-screen-cyrillic/xfont_font-screen-cyrillic.mk b/package/x11r7/xfont_font-screen-cyrillic/xfont_font-screen-cyrillic.mk index a254d4a756a5..144cec520356 100644 --- a/package/x11r7/xfont_font-screen-cyrillic/xfont_font-screen-cyrillic.mk +++ b/package/x11r7/xfont_font-screen-cyrillic/xfont_font-screen-cyrillic.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_SCREEN_CYRILLIC_VERSION = 1.0.4 -XFONT_FONT_SCREEN_CYRILLIC_SOURCE = font-screen-cyrillic-$(XFONT_FONT_SCREEN_CYRILLIC_VERSION).tar.bz2 -XFONT_FONT_SCREEN_CYRILLIC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_SCREEN_CYRILLIC_VERSION = 1.0.5 +XFONT_FONT_SCREEN_CYRILLIC_SOURCE = font-screen-cyrillic-$(XFONT_FONT_SCREEN_CYRILLIC_VERSION).tar.xz +XFONT_FONT_SCREEN_CYRILLIC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_SCREEN_CYRILLIC_LICENSE = MIT XFONT_FONT_SCREEN_CYRILLIC_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-sony-misc/xfont_font-sony-misc.hash b/package/x11r7/xfont_font-sony-misc/xfont_font-sony-misc.hash index 80261ff312be..726e74805028 100644 --- a/package/x11r7/xfont_font-sony-misc/xfont_font-sony-misc.hash +++ b/package/x11r7/xfont_font-sony-misc/xfont_font-sony-misc.hash @@ -1,4 +1,3 @@ -# From http://www.x.org/archive/current/src/everything/CHECKSUMS -sha256 2043a326ba347c9da5ca1e9bc363e2521c3ea40b43b1f9662d333efd4867cff5 font-sony-misc-1.0.3.tar.bz2 # Locally computed +sha256 e6b09f823fccb06e0bd0b2062283b6514153323bd8a7486e9c2e3f55ab84946b font-sony-misc-1.0.4.tar.xz sha256 8233ff7d7bc8b5b46cbba3f6cd0069d2ef875bd1b1e0090ca4145282aa096739 COPYING diff --git a/package/x11r7/xfont_font-sony-misc/xfont_font-sony-misc.mk b/package/x11r7/xfont_font-sony-misc/xfont_font-sony-misc.mk index 6e580fd922fe..f77a5f004f0a 100644 --- a/package/x11r7/xfont_font-sony-misc/xfont_font-sony-misc.mk +++ b/package/x11r7/xfont_font-sony-misc/xfont_font-sony-misc.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_SONY_MISC_VERSION = 1.0.3 -XFONT_FONT_SONY_MISC_SOURCE = font-sony-misc-$(XFONT_FONT_SONY_MISC_VERSION).tar.bz2 -XFONT_FONT_SONY_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_SONY_MISC_VERSION = 1.0.4 +XFONT_FONT_SONY_MISC_SOURCE = font-sony-misc-$(XFONT_FONT_SONY_MISC_VERSION).tar.xz +XFONT_FONT_SONY_MISC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_SONY_MISC_LICENSE = MIT XFONT_FONT_SONY_MISC_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-sun-misc/xfont_font-sun-misc.hash b/package/x11r7/xfont_font-sun-misc/xfont_font-sun-misc.hash index 8b195c9f9bdc..ac2f343906e3 100644 --- a/package/x11r7/xfont_font-sun-misc/xfont_font-sun-misc.hash +++ b/package/x11r7/xfont_font-sun-misc/xfont_font-sun-misc.hash @@ -1,4 +1,3 @@ -# From http://www.x.org/archive/current/src/everything/CHECKSUMS -sha256 481f4fcbbf7005658b080b3cf342c8c76de752e77f47958b2b383de73266d2e0 font-sun-misc-1.0.3.tar.bz2 # Locally computed -sha256 dd6da1d39832ab2878c3304405c1c7883c6da292ffde262fca1785239534c40f COPYING +sha256 dd84dd116d927affa4fa0fa29727b3ecfc0f064238817c0a1e552a0ac384db9f font-sun-misc-1.0.4.tar.xz +sha256 d76b96147b5c155642652ca15e2e4cb4cc249ee2eaa02292e274b723224b88de COPYING diff --git a/package/x11r7/xfont_font-sun-misc/xfont_font-sun-misc.mk b/package/x11r7/xfont_font-sun-misc/xfont_font-sun-misc.mk index 737cfb5c9b22..3d3596a9b637 100644 --- a/package/x11r7/xfont_font-sun-misc/xfont_font-sun-misc.mk +++ b/package/x11r7/xfont_font-sun-misc/xfont_font-sun-misc.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_SUN_MISC_VERSION = 1.0.3 -XFONT_FONT_SUN_MISC_SOURCE = font-sun-misc-$(XFONT_FONT_SUN_MISC_VERSION).tar.bz2 -XFONT_FONT_SUN_MISC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_SUN_MISC_VERSION = 1.0.4 +XFONT_FONT_SUN_MISC_SOURCE = font-sun-misc-$(XFONT_FONT_SUN_MISC_VERSION).tar.xz +XFONT_FONT_SUN_MISC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_SUN_MISC_LICENSE = MIT XFONT_FONT_SUN_MISC_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-util/xfont_font-util.hash b/package/x11r7/xfont_font-util/xfont_font-util.hash index a7664efec200..cf52a2348f5a 100644 --- a/package/x11r7/xfont_font-util/xfont_font-util.hash +++ b/package/x11r7/xfont_font-util/xfont_font-util.hash @@ -1,5 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2022-July/003190.html -sha256 e791c890779c40056ab63aaed5e031bb6e2890a98418ca09c534e6261a2eebd2 font-util-1.3.3.tar.xz -sha512 5e1cb8af44fe0bea72b1a6a4e455f50ca49b7531c2f4b605800c0b2b7578b9826ccf17fa195c505ab1d6339fd4ad697c01ba3b9777616f354ab62b23434d47c9 font-util-1.3.3.tar.xz +# From https://lists.x.org/archives/xorg-announce/2023-February/003331.html +sha256 9f724bf940128c7e39f7252bd961cd38cfac2359de2100a8bed696bf40d40f7d font-util-1.4.0.tar.xz +sha512 05fff613019718a4bd8537ff7eb270bd85345ffb006c16f81b739d6e8cdbfaa9d6503aef9bc48d6c7f70330bf90ff1a46bacdff3c99e8017191d935c85f73d60 font-util-1.4.0.tar.xz # Locally calculated sha256 ce16c3ee6f2a38db6870b66bdb54fce9dcf24acd1161840789e321f6faa1251c COPYING diff --git a/package/x11r7/xfont_font-util/xfont_font-util.mk b/package/x11r7/xfont_font-util/xfont_font-util.mk index b864dce23cce..8a97c85d6840 100644 --- a/package/x11r7/xfont_font-util/xfont_font-util.mk +++ b/package/x11r7/xfont_font-util/xfont_font-util.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_UTIL_VERSION = 1.3.3 +XFONT_FONT_UTIL_VERSION = 1.4.0 XFONT_FONT_UTIL_SOURCE = font-util-$(XFONT_FONT_UTIL_VERSION).tar.xz -XFONT_FONT_UTIL_SITE = https://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_UTIL_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_UTIL_LICENSE = MIT/BSD-2-Clause XFONT_FONT_UTIL_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-winitzki-cyrillic/xfont_font-winitzki-cyrillic.hash b/package/x11r7/xfont_font-winitzki-cyrillic/xfont_font-winitzki-cyrillic.hash index 283f6f9f2c28..a0200073de7d 100644 --- a/package/x11r7/xfont_font-winitzki-cyrillic/xfont_font-winitzki-cyrillic.hash +++ b/package/x11r7/xfont_font-winitzki-cyrillic/xfont_font-winitzki-cyrillic.hash @@ -1,4 +1,3 @@ -# From http://www.x.org/archive/current/src/everything/CHECKSUMS -sha256 abd13b63d02fcaec488686c23683e5cf640b43bd32f8ca22eeae6f84df0a36a0 font-winitzki-cyrillic-1.0.3.tar.bz2 # Locally computed +sha256 3b6d82122dc14776e3afcd877833a7834e1f900c53fc1c7bb2d67c781cfa97a8 font-winitzki-cyrillic-1.0.4.tar.xz sha256 ca60a2aa1133e39e8c72a01af06cf0c927f5ddfe70d469d1535231100618095d COPYING diff --git a/package/x11r7/xfont_font-winitzki-cyrillic/xfont_font-winitzki-cyrillic.mk b/package/x11r7/xfont_font-winitzki-cyrillic/xfont_font-winitzki-cyrillic.mk index e43cd1150f73..f13483994b3e 100644 --- a/package/x11r7/xfont_font-winitzki-cyrillic/xfont_font-winitzki-cyrillic.mk +++ b/package/x11r7/xfont_font-winitzki-cyrillic/xfont_font-winitzki-cyrillic.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_WINITZKI_CYRILLIC_VERSION = 1.0.3 -XFONT_FONT_WINITZKI_CYRILLIC_SOURCE = font-winitzki-cyrillic-$(XFONT_FONT_WINITZKI_CYRILLIC_VERSION).tar.bz2 -XFONT_FONT_WINITZKI_CYRILLIC_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_WINITZKI_CYRILLIC_VERSION = 1.0.4 +XFONT_FONT_WINITZKI_CYRILLIC_SOURCE = font-winitzki-cyrillic-$(XFONT_FONT_WINITZKI_CYRILLIC_VERSION).tar.xz +XFONT_FONT_WINITZKI_CYRILLIC_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_WINITZKI_CYRILLIC_LICENSE = Public Domain XFONT_FONT_WINITZKI_CYRILLIC_LICENSE_FILES = COPYING diff --git a/package/x11r7/xfont_font-xfree86-type1/xfont_font-xfree86-type1.hash b/package/x11r7/xfont_font-xfree86-type1/xfont_font-xfree86-type1.hash index 640f56636a88..68035e4195e3 100644 --- a/package/x11r7/xfont_font-xfree86-type1/xfont_font-xfree86-type1.hash +++ b/package/x11r7/xfont_font-xfree86-type1/xfont_font-xfree86-type1.hash @@ -1,4 +1,3 @@ -# From http://www.x.org/archive/current/src/everything/CHECKSUMS -sha256 caebf42aec7be7f3bd40e0f232d6f34881b853dc84acfcdf7458358701fbe34a font-xfree86-type1-1.0.4.tar.bz2 # Locally computed +sha256 a93c2c788a5ea1c002af7c8662cf9d9821fb1df51b8d2b2c5e0026dfdfea4837 font-xfree86-type1-1.0.5.tar.xz sha256 51e6bc6513b3fa94512d8dd570240498c878605f25292c3883d92fdfca18d0c6 COPYING diff --git a/package/x11r7/xfont_font-xfree86-type1/xfont_font-xfree86-type1.mk b/package/x11r7/xfont_font-xfree86-type1/xfont_font-xfree86-type1.mk index a26fbc8948ef..0b332d20bf36 100644 --- a/package/x11r7/xfont_font-xfree86-type1/xfont_font-xfree86-type1.mk +++ b/package/x11r7/xfont_font-xfree86-type1/xfont_font-xfree86-type1.mk @@ -4,9 +4,9 @@ # ################################################################################ -XFONT_FONT_XFREE86_TYPE1_VERSION = 1.0.4 -XFONT_FONT_XFREE86_TYPE1_SOURCE = font-xfree86-type1-$(XFONT_FONT_XFREE86_TYPE1_VERSION).tar.bz2 -XFONT_FONT_XFREE86_TYPE1_SITE = http://xorg.freedesktop.org/releases/individual/font +XFONT_FONT_XFREE86_TYPE1_VERSION = 1.0.5 +XFONT_FONT_XFREE86_TYPE1_SOURCE = font-xfree86-type1-$(XFONT_FONT_XFREE86_TYPE1_VERSION).tar.xz +XFONT_FONT_XFREE86_TYPE1_SITE = https://xorg.freedesktop.org/archive/individual/font XFONT_FONT_XFREE86_TYPE1_LICENSE = MIT XFONT_FONT_XFREE86_TYPE1_LICENSE_FILES = COPYING diff --git a/package/x11r7/xkeyboard-config/xkeyboard-config.hash b/package/x11r7/xkeyboard-config/xkeyboard-config.hash index 08e36da1d0cc..3a19075ba150 100644 --- a/package/x11r7/xkeyboard-config/xkeyboard-config.hash +++ b/package/x11r7/xkeyboard-config/xkeyboard-config.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 eb1383a5ac4b6210d7c7302b9d6fab052abdf51c5d2c9b55f1f779997ba68c6c xkeyboard-config-2.37.tar.xz +sha256 0690a91bab86b18868f3eee6d41e9ec4ce6894f655443d490a2184bfac56c872 xkeyboard-config-2.38.tar.xz sha256 6ca90f4b67dced4062894d6d77f4cc39343df9e359fc12f5e5d3c89ef2a3ef6d COPYING diff --git a/package/x11r7/xkeyboard-config/xkeyboard-config.mk b/package/x11r7/xkeyboard-config/xkeyboard-config.mk index b82c15a23a1a..7c9c814d95cc 100644 --- a/package/x11r7/xkeyboard-config/xkeyboard-config.mk +++ b/package/x11r7/xkeyboard-config/xkeyboard-config.mk @@ -4,7 +4,7 @@ # ################################################################################ -XKEYBOARD_CONFIG_VERSION = 2.37 +XKEYBOARD_CONFIG_VERSION = 2.38 XKEYBOARD_CONFIG_SOURCE = xkeyboard-config-$(XKEYBOARD_CONFIG_VERSION).tar.xz XKEYBOARD_CONFIG_SITE = https://www.x.org/releases/individual/data/xkeyboard-config XKEYBOARD_CONFIG_LICENSE = MIT diff --git a/package/x11r7/xlib_libX11/xlib_libX11.hash b/package/x11r7/xlib_libX11/xlib_libX11.hash index ed68164d5fe2..56fecee9ff52 100644 --- a/package/x11r7/xlib_libX11/xlib_libX11.hash +++ b/package/x11r7/xlib_libX11/xlib_libX11.hash @@ -1,5 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2023-February/003318.html -sha256 c9a287a5aefa9804ce3cfafcf516fe96ed3f7e8e45c0e2ee59e84c86757df518 libX11-1.8.4.tar.xz -sha512 3150a47498b0cb012482ee02efeaae16d9e736288f2b3f917be912e1613d56ad6b4ab180de8820305deb2b95dfd993633f43a65344d75979d6b86bdf110cb63e libX11-1.8.4.tar.xz +# From https://lists.x.org/archives/xorg-announce/2023-October/003426.html +sha256 05f267468e3c851ae2b5c830bcf74251a90f63f04dd7c709ca94dc155b7e99ee libX11-1.8.7.tar.xz +sha512 d53bfc18f38d339a6a695b09835b2ae96b323881678bfe7ddca697605e3bdf4102ff49cc3078880a6c55b5977fcdd0aadaf5429086132de3a5bda302f79a2fa6 libX11-1.8.7.tar.xz # Locally computed sha256 2e7012a140f000735a7172674a2d314398d79622444fba65d108b029b29ab283 COPYING diff --git a/package/x11r7/xlib_libX11/xlib_libX11.mk b/package/x11r7/xlib_libX11/xlib_libX11.mk index add16f49dbfa..920a5d9aed39 100644 --- a/package/x11r7/xlib_libX11/xlib_libX11.mk +++ b/package/x11r7/xlib_libX11/xlib_libX11.mk @@ -4,7 +4,7 @@ # ################################################################################ -XLIB_LIBX11_VERSION = 1.8.4 +XLIB_LIBX11_VERSION = 1.8.7 XLIB_LIBX11_SOURCE = libX11-$(XLIB_LIBX11_VERSION).tar.xz XLIB_LIBX11_SITE = https://xorg.freedesktop.org/archive/individual/lib XLIB_LIBX11_LICENSE = MIT diff --git a/package/x11r7/xlib_libXaw/xlib_libXaw.hash b/package/x11r7/xlib_libXaw/xlib_libXaw.hash index f289e661530d..ce2ec4a3e158 100644 --- a/package/x11r7/xlib_libXaw/xlib_libXaw.hash +++ b/package/x11r7/xlib_libXaw/xlib_libXaw.hash @@ -1,6 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2021-March/003077.html -sha256 76aef98ea3df92615faec28004b5ce4e5c6855e716fa16de40c32030722a6f8e libXaw-1.0.14.tar.bz2 -sha512 29d1c151369523ae6cb418e636b0b7b39ccccc35462a0b394dbeb46d5b6d780badd2eb872a55d9fbba1ee1af034e76c0463f40f8d8a7be2c336d08b3b1bf81d4 libXaw-1.0.14.tar.bz2 - +# From https://lists.x.org/archives/xorg-announce/2023-March/003372.html +sha256 ab35f70fde9fb02cc71b342f654846a74328b74cb3a0703c02d20eddb212754a libXaw-1.0.15.tar.xz +sha512 8edbf280b7b24b9040c291545053c1251d6af7e7f56da43a6065a1848245863eb52bdfc28c2f18dbb6597a4064394a44f4df5d8596a1a467549ccc9ce50a7821 libXaw-1.0.15.tar.xz # Locally calculated sha256 9f5adb26952f93b3e4650285b94ec6c61a27aab5a21088bfb6694001be1b360d COPYING diff --git a/package/x11r7/xlib_libXaw/xlib_libXaw.mk b/package/x11r7/xlib_libXaw/xlib_libXaw.mk index 6b615a8de5eb..f81a7b4a8890 100644 --- a/package/x11r7/xlib_libXaw/xlib_libXaw.mk +++ b/package/x11r7/xlib_libXaw/xlib_libXaw.mk @@ -4,9 +4,9 @@ # ################################################################################ -XLIB_LIBXAW_VERSION = 1.0.14 -XLIB_LIBXAW_SOURCE = libXaw-$(XLIB_LIBXAW_VERSION).tar.bz2 -XLIB_LIBXAW_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXAW_VERSION = 1.0.15 +XLIB_LIBXAW_SOURCE = libXaw-$(XLIB_LIBXAW_VERSION).tar.xz +XLIB_LIBXAW_SITE = https://xorg.freedesktop.org/archive/individual/lib XLIB_LIBXAW_LICENSE = MIT XLIB_LIBXAW_LICENSE_FILES = COPYING XLIB_LIBXAW_INSTALL_STAGING = YES diff --git a/package/x11r7/xlib_libXfixes/xlib_libXfixes.hash b/package/x11r7/xlib_libXfixes/xlib_libXfixes.hash index 5dfe49605258..03de90624532 100644 --- a/package/x11r7/xlib_libXfixes/xlib_libXfixes.hash +++ b/package/x11r7/xlib_libXfixes/xlib_libXfixes.hash @@ -1,6 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2021-May/003086.html -sha256 a7c1a24da53e0b46cac5aea79094b4b2257321c621b258729bc3139149245b4c libXfixes-6.0.0.tar.bz2 -sha512 1985ef156f382e9a7e1cc7e044e0f626de1e4c82557a511cbcf6431994c0ac25b1f8b3a0293bd3089331593db8ce01d3a71ddec68f19b5fe6029d5082fb6885d libXfixes-6.0.0.tar.bz2 - +# From https://lists.x.org/archives/xorg-announce/2023-April/003382.html +sha256 b695f93cd2499421ab02d22744458e650ccc88c1d4c8130d60200213abc02d58 libXfixes-6.0.1.tar.xz +sha512 b46deffb30cd73ec8a127390d99f2ba2f3ab78f334fdba227f1f461441644a0c169b0d13ffa47576fa458780e7a6db664ff8b93e9195fb217262efd8128f1ffe libXfixes-6.0.1.tar.xz # Locally calculated -sha256 d64e671ffeb483d4543f98c842788ab34c77427e27d83d6b082065a4438d4885 COPYING +sha256 a07d8a5a6972638a745a03983207a1052881c24eea29021fdca7794bea8d7774 COPYING diff --git a/package/x11r7/xlib_libXfixes/xlib_libXfixes.mk b/package/x11r7/xlib_libXfixes/xlib_libXfixes.mk index c0229b57d2e1..3f535fc1d499 100644 --- a/package/x11r7/xlib_libXfixes/xlib_libXfixes.mk +++ b/package/x11r7/xlib_libXfixes/xlib_libXfixes.mk @@ -4,9 +4,9 @@ # ################################################################################ -XLIB_LIBXFIXES_VERSION = 6.0.0 -XLIB_LIBXFIXES_SOURCE = libXfixes-$(XLIB_LIBXFIXES_VERSION).tar.bz2 -XLIB_LIBXFIXES_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXFIXES_VERSION = 6.0.1 +XLIB_LIBXFIXES_SOURCE = libXfixes-$(XLIB_LIBXFIXES_VERSION).tar.xz +XLIB_LIBXFIXES_SITE = https://xorg.freedesktop.org/archive/individual/lib XLIB_LIBXFIXES_LICENSE = MIT XLIB_LIBXFIXES_LICENSE_FILES = COPYING XLIB_LIBXFIXES_CPE_ID_VENDOR = x diff --git a/package/x11r7/xlib_libXft/xlib_libXft.hash b/package/x11r7/xlib_libXft/xlib_libXft.hash index 5074365aeda8..749aa0ad620b 100644 --- a/package/x11r7/xlib_libXft/xlib_libXft.hash +++ b/package/x11r7/xlib_libXft/xlib_libXft.hash @@ -1,5 +1,5 @@ -# From https://lists.x.org/archives/xorg/2022-November/061175.html -sha256 79f0b37c45007381c371a790c2754644ad955166dbf2a48e3625032e9bdd4f71 libXft-2.3.7.tar.xz -sha512 9df29d3c7b88a21952df1015604511e5d79856d721b2a61eb2c5a062a9abccf16318132432a7c86c0ef816bf174ae86842fa67dabbaa0b163dfa56d99022de19 libXft-2.3.7.tar.xz +# From https://lists.x.org/archives/xorg-announce/2023-April/003384.html +sha256 5e8c3c4bc2d4c0a40aef6b4b38ed2fb74301640da29f6528154b5009b1c6dd49 libXft-2.3.8.tar.xz +sha512 fc385d73e1acb701942c154ffb5a283d17891f21d3ac598c4a3fb375a7d6082734593062368c15cad67c1a94177dd15deed878ec5ea852188393b52e92c372c8 libXft-2.3.8.tar.xz # Locally computed sha256 7cda22286b1379b9b73df695f72cbad36595e65b039a5fbc5c89b69ecc44438c COPYING diff --git a/package/x11r7/xlib_libXft/xlib_libXft.mk b/package/x11r7/xlib_libXft/xlib_libXft.mk index 845b612669f8..154c220aa119 100644 --- a/package/x11r7/xlib_libXft/xlib_libXft.mk +++ b/package/x11r7/xlib_libXft/xlib_libXft.mk @@ -4,7 +4,7 @@ # ################################################################################ -XLIB_LIBXFT_VERSION = 2.3.7 +XLIB_LIBXFT_VERSION = 2.3.8 XLIB_LIBXFT_SOURCE = libXft-$(XLIB_LIBXFT_VERSION).tar.xz XLIB_LIBXFT_SITE = https://xorg.freedesktop.org/archive/individual/lib XLIB_LIBXFT_LICENSE = MIT diff --git a/package/x11r7/xlib_libXi/xlib_libXi.hash b/package/x11r7/xlib_libXi/xlib_libXi.hash index a86ef13225fc..545d4881f6ac 100644 --- a/package/x11r7/xlib_libXi/xlib_libXi.hash +++ b/package/x11r7/xlib_libXi/xlib_libXi.hash @@ -1,5 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2021-September/003109.html -sha256 2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00 libXi-1.8.tar.bz2 -sha512 4b2c667a8466eb389f253d77285c3f506c4a2b6c75054c722974a864565d565cc0c5701f8ea773eb929ceb94adfeb737ecd7a0bfc2c240157416a5f343c07aba libXi-1.8.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2023-May/003390.html +sha256 89bfc0e814f288f784202e6e5f9b362b788ccecdeb078670145eacd8749656a7 libXi-1.8.1.tar.xz +sha512 a30b1a07e6d710f5196e7477415d68074736f89d954e8f2d5ccc9b5f349e7d1d440c90fb512508176b5db5ecad55608cfb540872936b731963fd83343db3a0b9 libXi-1.8.1.tar.xz # Locally computed sha256 9392174bc86e291369fd2f61f3ed325962735a5f5c585ce8d7ebd365e2a5639f COPYING diff --git a/package/x11r7/xlib_libXi/xlib_libXi.mk b/package/x11r7/xlib_libXi/xlib_libXi.mk index b4802cf018cf..6ae5ec8be837 100644 --- a/package/x11r7/xlib_libXi/xlib_libXi.mk +++ b/package/x11r7/xlib_libXi/xlib_libXi.mk @@ -4,9 +4,9 @@ # ################################################################################ -XLIB_LIBXI_VERSION = 1.8 -XLIB_LIBXI_SOURCE = libXi-$(XLIB_LIBXI_VERSION).tar.bz2 -XLIB_LIBXI_SITE = https://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXI_VERSION = 1.8.1 +XLIB_LIBXI_SOURCE = libXi-$(XLIB_LIBXI_VERSION).tar.xz +XLIB_LIBXI_SITE = https://xorg.freedesktop.org/archive/individual/lib XLIB_LIBXI_LICENSE = MIT XLIB_LIBXI_LICENSE_FILES = COPYING XLIB_LIBXI_CPE_ID_VENDOR = x.org diff --git a/package/x11r7/xlib_libXpm/xlib_libXpm.hash b/package/x11r7/xlib_libXpm/xlib_libXpm.hash index 733c404543f6..358216989148 100644 --- a/package/x11r7/xlib_libXpm/xlib_libXpm.hash +++ b/package/x11r7/xlib_libXpm/xlib_libXpm.hash @@ -1,6 +1,6 @@ -# From https://lists.x.org/archives/xorg-announce/2023-January/003313.html -sha256 60bb906c5c317a6db863e39b69c4a83fdbd2ae2154fcf47640f8fefc9fdfd1c1 libXpm-3.5.15.tar.xz -sha512 955d716fcea2c9d868ab941c56f017b39bfa0f47fd2904e9b04c6a9be17f23f8b8c906da9c90a89a789f1f399d419641705ff5b6f9921820e34d4807c7a1992f libXpm-3.5.15.tar.xz +# From https://lists.x.org/archives/xorg-announce/2023-October/003425.html +sha256 64b31f81019e7d388c822b0b28af8d51c4622b83f1f0cb6fa3fc95e271226e43 libXpm-3.5.17.tar.xz +sha512 52f9d2664a47a26c1a6ad65d18867de870b66947b0b0d99cca3512756a0aaa6ce2a245c0b49f20b70c3ce48bf04c47c333e8119a147465c277bca727f6ab017e libXpm-3.5.17.tar.xz # Locally calculated sha256 a80d706759624a04aa90fd62bc644a360fc3d72e08dcbfb129f167c11ca285de COPYING sha256 cbe4ced0abc8a32bea471204ae01038c202758ce4e772d3d329a341ffa761e71 COPYRIGHT diff --git a/package/x11r7/xlib_libXpm/xlib_libXpm.mk b/package/x11r7/xlib_libXpm/xlib_libXpm.mk index 970ec9340773..0bba3ea946a6 100644 --- a/package/x11r7/xlib_libXpm/xlib_libXpm.mk +++ b/package/x11r7/xlib_libXpm/xlib_libXpm.mk @@ -4,7 +4,7 @@ # ################################################################################ -XLIB_LIBXPM_VERSION = 3.5.15 +XLIB_LIBXPM_VERSION = 3.5.17 XLIB_LIBXPM_SOURCE = libXpm-$(XLIB_LIBXPM_VERSION).tar.xz XLIB_LIBXPM_SITE = https://xorg.freedesktop.org/archive/individual/lib XLIB_LIBXPM_LICENSE = MIT diff --git a/package/x11r7/xlib_libXpresent/Config.in b/package/x11r7/xlib_libXpresent/Config.in new file mode 100644 index 000000000000..f6e2d93fab18 --- /dev/null +++ b/package/x11r7/xlib_libXpresent/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_XLIB_LIBXPRESENT + bool "libXpresent" + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXFIXES + select BR2_PACKAGE_XLIB_LIBXRANDR + select BR2_PACKAGE_XORGPROTO + help + X.Org Xpresent library diff --git a/package/x11r7/xlib_libXpresent/xlib_libXpresent.hash b/package/x11r7/xlib_libXpresent/xlib_libXpresent.hash new file mode 100644 index 000000000000..e7f6ac9e5af1 --- /dev/null +++ b/package/x11r7/xlib_libXpresent/xlib_libXpresent.hash @@ -0,0 +1,6 @@ +# From https://lists.x.org/archives/xorg-announce/2022-October/003225.html +sha256 b964df9e5a066daa5e08d2dc82692c57ca27d00b8cc257e8e960c9f1cf26231b libXpresent-1.0.1.tar.xz +sha512 a4551f49a68f4487eb70dc5b50b7f745fbc8b6842cfa60422afe3834af41c504a37bcfddb4e7e9ee084b250df256034290776c8eb7d8838e392eb626fff55d25 libXpresent-1.0.1.tar.xz + +# Locally calculated +sha256 d64e671ffeb483d4543f98c842788ab34c77427e27d83d6b082065a4438d4885 COPYING diff --git a/package/x11r7/xlib_libXpresent/xlib_libXpresent.mk b/package/x11r7/xlib_libXpresent/xlib_libXpresent.mk new file mode 100644 index 000000000000..4cb4fd193aa5 --- /dev/null +++ b/package/x11r7/xlib_libXpresent/xlib_libXpresent.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# xlib_libXpresent +# +################################################################################ + +XLIB_LIBXPRESENT_VERSION = 1.0.1 +XLIB_LIBXPRESENT_SOURCE = libXpresent-$(XLIB_LIBXPRESENT_VERSION).tar.xz +XLIB_LIBXPRESENT_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXPRESENT_LICENSE = MIT +XLIB_LIBXPRESENT_LICENSE_FILES = COPYING +XLIB_LIBXPRESENT_INSTALL_STAGING = YES + +XLIB_LIBXPRESENT_DEPENDENCIES = \ + xlib_libX11 \ + xlib_libXext \ + xlib_libXfixes \ + xlib_libXrandr \ + xorgproto + +$(eval $(autotools-package)) diff --git a/package/x11r7/xlib_libXt/xlib_libXt.hash b/package/x11r7/xlib_libXt/xlib_libXt.hash index 40512f35401b..577896d38ba4 100644 --- a/package/x11r7/xlib_libXt/xlib_libXt.hash +++ b/package/x11r7/xlib_libXt/xlib_libXt.hash @@ -1,5 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2021-January/003070.html -sha256 679cc08f1646dbd27f5e48ffe8dd49406102937109130caab02ca32c083a3d60 libXt-1.2.1.tar.bz2 -sha512 6877af61ba91eeed6b6f80471b84f354ad0ec0827249c7ee0a00c13508063fe8d2696dd400a4bdbc6ca2ff67cbe1317ad5ac24522fd96099dc56535e33ca052c libXt-1.2.1.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2023-April/003383.html +sha256 52820b3cdb827d08dc90bdfd1b0022a3ad8919b57a39808b12591973b331bf91 libXt-1.3.0.tar.xz +sha512 64c5978655135b925c3aaad86b1aa6a3f3b57ad8b3592bf142be616b8aa339a02c2fc7badfab9564ea8076ea8f37acfe31709ed528f5a1d251f2d116aa074118 libXt-1.3.0.tar.xz # Locally calculated -sha256 a2866ccc0b1745149e4a2258d934314d40cbb43bd8318c6fa597f233995b0a81 COPYING +sha256 75c5574ca04731d739b1420f55f2b7b47f30df895817f1b03d0d7f5c1fbee534 COPYING diff --git a/package/x11r7/xlib_libXt/xlib_libXt.mk b/package/x11r7/xlib_libXt/xlib_libXt.mk index 9530262cf511..cca89145f86a 100644 --- a/package/x11r7/xlib_libXt/xlib_libXt.mk +++ b/package/x11r7/xlib_libXt/xlib_libXt.mk @@ -4,9 +4,9 @@ # ################################################################################ -XLIB_LIBXT_VERSION = 1.2.1 -XLIB_LIBXT_SOURCE = libXt-$(XLIB_LIBXT_VERSION).tar.bz2 -XLIB_LIBXT_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXT_VERSION = 1.3.0 +XLIB_LIBXT_SOURCE = libXt-$(XLIB_LIBXT_VERSION).tar.xz +XLIB_LIBXT_SITE = https://xorg.freedesktop.org/archive/individual/lib XLIB_LIBXT_LICENSE = MIT XLIB_LIBXT_LICENSE_FILES = COPYING XLIB_LIBXT_INSTALL_STAGING = YES diff --git a/package/x11r7/xlib_libdmx/xlib_libdmx.hash b/package/x11r7/xlib_libdmx/xlib_libdmx.hash index e9d8616ba454..8a4b13099ef7 100644 --- a/package/x11r7/xlib_libdmx/xlib_libdmx.hash +++ b/package/x11r7/xlib_libdmx/xlib_libdmx.hash @@ -1,7 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2018-May/002894.html -md5 d2f1f0ec68ac3932dd7f1d9aa0a7a11c libdmx-1.1.4.tar.bz2 -sha1 499e2540ca0e94ca858037865243c3c60908fd94 libdmx-1.1.4.tar.bz2 -sha256 253f90005d134fa7a209fbcbc5a3024335367c930adf0f3203e754cf32747243 libdmx-1.1.4.tar.bz2 -sha512 77aba6cadfd17db0cc7e1bc26f14d908223a0fdb135d46f86c3be34e3bc7e2f843f08d4d0ef773357e83b17122bffe56a0442d12908378c05a22177b10ae10e9 libdmx-1.1.4.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2023-June/003403.html +sha256 35a4e26a8b0b2b4fe36441dca463645c3fa52d282ac3520501a38ea942cbf74f libdmx-1.1.5.tar.xz +sha512 55df45a06bddbf19e0253362853e2f979d736ba1f1fdec5d392c0f6c0dc72684e7b8df0f0a99ac96ce9d9d59bc6c25146086b18c054b4dbe6be9aa3166f23464 libdmx-1.1.5.tar.xz # Locally computed sha256 819e8dcd3dd2a44850c350331aa492230f86bccb0983dd739dec5ba36d7d2b8e COPYING diff --git a/package/x11r7/xlib_libdmx/xlib_libdmx.mk b/package/x11r7/xlib_libdmx/xlib_libdmx.mk index 429595b5d724..9aaf81eb6f6d 100644 --- a/package/x11r7/xlib_libdmx/xlib_libdmx.mk +++ b/package/x11r7/xlib_libdmx/xlib_libdmx.mk @@ -4,9 +4,9 @@ # ################################################################################ -XLIB_LIBDMX_VERSION = 1.1.4 -XLIB_LIBDMX_SOURCE = libdmx-$(XLIB_LIBDMX_VERSION).tar.bz2 -XLIB_LIBDMX_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBDMX_VERSION = 1.1.5 +XLIB_LIBDMX_SOURCE = libdmx-$(XLIB_LIBDMX_VERSION).tar.xz +XLIB_LIBDMX_SITE = https://xorg.freedesktop.org/archive/individual/lib XLIB_LIBDMX_LICENSE = MIT XLIB_LIBDMX_LICENSE_FILES = COPYING XLIB_LIBDMX_CPE_ID_VENDOR = x diff --git a/package/x11r7/xlib_xtrans/xlib_xtrans.hash b/package/x11r7/xlib_xtrans/xlib_xtrans.hash index 1bab37244eb4..9595a73d0e8c 100644 --- a/package/x11r7/xlib_xtrans/xlib_xtrans.hash +++ b/package/x11r7/xlib_xtrans/xlib_xtrans.hash @@ -1,7 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2019-March/002980.html -md5 ce2fb8100c6647ee81451ebe388b17ad xtrans-1.4.0.tar.bz2 -sha1 7c490026efb450798e02b040c05eba5212291c08 xtrans-1.4.0.tar.bz2 -sha256 377c4491593c417946efcd2c7600d1e62639f7a8bbca391887e2c4679807d773 xtrans-1.4.0.tar.bz2 -sha512 4fea89a3455c0e13321cbefa43340016dbb59bdd0dbdb5b796c1a6d2a6b1fd63cf1327b769ab426286b9c54b32ec764a50cd2b46228e4e43b841bda6b94de214 xtrans-1.4.0.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2023-June/003399.html +sha256 1ba4b703696bfddbf40bacf25bce4e3efb2a0088878f017a50e9884b0c8fb1bd xtrans-1.5.0.tar.xz +sha512 e8091f11d4ad2b14e01de3eac56bdf2267ea26687ce66e3056374d0d02e049480c0b27c482f8828a0efd086f1e4c485108ca4dce3f83d66c1896effa3b38b228 xtrans-1.5.0.tar.xz # Locally computed -sha256 a9c96c832e00774266b492d4d41556f12a64f039ba3ef645c4b8c6010fcb8f2a COPYING +sha256 22616bf00b6db85ee3164775a95206894af987b85ff1a7703de55644bc722a39 COPYING diff --git a/package/x11r7/xlib_xtrans/xlib_xtrans.mk b/package/x11r7/xlib_xtrans/xlib_xtrans.mk index 88c9b57a52db..001705bb2ebd 100644 --- a/package/x11r7/xlib_xtrans/xlib_xtrans.mk +++ b/package/x11r7/xlib_xtrans/xlib_xtrans.mk @@ -4,12 +4,13 @@ # ################################################################################ -XLIB_XTRANS_VERSION = 1.4.0 -XLIB_XTRANS_SOURCE = xtrans-$(XLIB_XTRANS_VERSION).tar.bz2 -XLIB_XTRANS_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_XTRANS_VERSION = 1.5.0 +XLIB_XTRANS_SOURCE = xtrans-$(XLIB_XTRANS_VERSION).tar.xz +XLIB_XTRANS_SITE = https://xorg.freedesktop.org/archive/individual/lib XLIB_XTRANS_LICENSE = MIT XLIB_XTRANS_LICENSE_FILES = COPYING XLIB_XTRANS_INSTALL_STAGING = YES +XLIB_XTRANS_INSTALL_TARGET = NO $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/x11r7/xorgproto/xorgproto.hash b/package/x11r7/xorgproto/xorgproto.hash index cc52013e118b..37ad9c7c04a8 100644 --- a/package/x11r7/xorgproto/xorgproto.hash +++ b/package/x11r7/xorgproto/xorgproto.hash @@ -1,17 +1,17 @@ -# From https://lists.x.org/archives/xorg-announce/2022-August/003197.html -sha256 5d13dbf2be08f95323985de53352c4f352713860457b95ccaf894a647ac06b9e xorgproto-2022.2.tar.xz -sha512 8e6108110600d076a94cc6d0e465b2e9adfbbe8d7e6b75fae9c5262d99dc6074ab1ed561a74d6d451f00f5b7af9f507a6317be9c0770efeed9e60b64beb7a1c9 xorgproto-2022.2.tar.xz +# From https://lists.x.org/archives/xorg-announce/2023-June/003408.html +sha256 b61fbc7db82b14ce2dc705ab590efc32b9ad800037113d1973811781d5118c2c xorgproto-2023.2.tar.xz +sha512 af0a8c8094fc6a490a886a8c048175762b6334798f2e48b6f6e19a7bb39ddbef05fa1237c4e9d9f1d870d24f5ca7a7c463044c41ceebd108f8ab0816677a582d xorgproto-2023.2.tar.xz # Locally computed sha256 aacd931f191b610902aee1e526090c2858aabc07969441fa2537ffd3e7049555 COPYING-applewmproto sha256 dabc025f93129a0eb2d17f37c719dbe5ecbcb5bc8f7bc7f4ce89fe04576cc0c2 COPYING-bigreqsproto -sha256 ab587ca94282c1e60797ffe4a77aea195418387db20ec7e0c24cedf2c844f8c1 COPYING-compositeproto +sha256 3e980a770506b448897638632974bbcbdf2da3b99191dd0a03d3770097a46738 COPYING-compositeproto sha256 f67a18cb46c4c203c5122b4a901cfcc3178b2a62f83f31ca5fef5bdca3966094 COPYING-damageproto sha256 819e8dcd3dd2a44850c350331aa492230f86bccb0983dd739dec5ba36d7d2b8e COPYING-dmxproto sha256 0c306691492c4d7a8cda1ec3847668b797887dddcd7e986b4c166ae27619af7d COPYING-dri2proto sha256 64a579d1a0b3347301d87c94698a58ea7933d0ae6ca7e8fdd702fde2ea376301 COPYING-dri3proto -sha256 0aa43d03da3cedbd9882c0ded621b0d855353eb9e551f9eed940d75c8a0b03c1 COPYING-evieproto -sha256 65cb0b867b00fb27f066a37353713b265645b3301146562570d7638ed2ddd548 COPYING-fixesproto +sha256 9936421f7516f7a17ae560b6989636b493e55c01128b543c7e72441568c3cba4 COPYING-evieproto +sha256 fb361c7c4322e4919ae193c5a20055d5190c23aa50480fd0a41f4d439cae2bc6 COPYING-fixesproto sha256 1ab381e978bff63d68be2e4f235d51935f3f16f3ba3bebf83afa99a70c0484a2 COPYING-fontcacheproto sha256 f4af05774b02ae149357cc26f7bf5ef1116c2e09373c2492081a3a1892c58417 COPYING-fontsproto sha256 823deb4673d3f26aa8c90e704888299648f00be3262f9363eaeecedcd65b936d COPYING-glproto @@ -20,7 +20,7 @@ sha256 d397a67d4b28e897bc5fce79b2b917df9905b54f961fc3ad1f49c7fe3803f92c COPYIN sha256 7a5dd5d4c989c167da50f15879959f42bbda960e06d0a0aea7197f61fe1dc846 COPYING-lg3dproto sha256 8442b5f22f2fb13017a4302a906e7dedc899267b41f613558970941120170128 COPYING-pmproto sha256 64a579d1a0b3347301d87c94698a58ea7933d0ae6ca7e8fdd702fde2ea376301 COPYING-presentproto -sha256 6b890b118261694865988378dbba876bcd9caa1a421c5c0d626116948bc0ae35 COPYING-printproto +sha256 46f599055002bbf3e6ce244bde8d9ebe5ec24ae7906836db186773a9791d0b75 COPYING-printproto sha256 41c13dcd09147ed2440286f2fb8151df8ebee06deee4ed78ddf094601c216d3d COPYING-randrproto sha256 ee10aee0f1697ffdbe870a39f037361d4f7136f2976bb7919a41b3f66407caee COPYING-recordproto sha256 9e48921a94da36d7a69fe71809223ee0bb46370db9842dccdeeb55b5a9946872 COPYING-renderproto @@ -29,7 +29,7 @@ sha256 fcbd3c628bf4d28ee3e6032054bf44bbe58f3b1a944dad856a8d3eb6b37ea412 COPYIN sha256 d6d3513f5a7099748dc387f54498d799380b45f8a444f13aa98aa45a860ae55b COPYING-trapproto sha256 f8f49bbad61967ebc890fb79fff5bfb7cfc1c341aa8f8dee13eb3fb534040b47 COPYING-videoproto sha256 eb183a00c61bb47992f096b6993ed7ec17518bea9c285fe87efff7f622cc6c12 COPYING-windowswmproto -sha256 3bd8e0c41497bfe6ab8d11c3c90c5e79edd0b2437f2bf81161575f54bae53f21 COPYING-x11proto +sha256 da835951edc6e3b8d168d6afe7447c65d0b9a99937293cf3f288bba8244a9f86 COPYING-x11proto sha256 5531d18cfcc944dab39991f63f182cbbce3fe493ba0c7cf08a25c0d01ee84482 COPYING-xcmiscproto sha256 fb42146c6c06a200a9b121220eb692ff9101ba0fbd0b224b9e16a016c59ae86a COPYING-xextproto sha256 3591964e01a9cdfc9cc4149a847a431a3f3d98328cc9e5864c7a7831b29c4058 COPYING-xf86bigfontproto @@ -39,3 +39,4 @@ sha256 3591964e01a9cdfc9cc4149a847a431a3f3d98328cc9e5864c7a7831b29c4058 COPYIN sha256 3591964e01a9cdfc9cc4149a847a431a3f3d98328cc9e5864c7a7831b29c4058 COPYING-xf86rushproto sha256 942bb46a3503a708948491699171b00b9e0dfb47818d9268b160bccc5f51a4b9 COPYING-xf86vidmodeproto sha256 b2d8cda803e900915ce10f0ba735ff2c033b39c7cc5a8a436667ca583d4066fa COPYING-xineramaproto +sha256 309bd89bc2b30c6e3d3eb78f5377fa576475499e0ba936a9c3cba50ba5d6375c COPYING-xwaylandproto diff --git a/package/x11r7/xorgproto/xorgproto.mk b/package/x11r7/xorgproto/xorgproto.mk index c707bdafc0e7..f6e5a5a43455 100644 --- a/package/x11r7/xorgproto/xorgproto.mk +++ b/package/x11r7/xorgproto/xorgproto.mk @@ -4,7 +4,7 @@ # ################################################################################ -XORGPROTO_VERSION = 2022.2 +XORGPROTO_VERSION = 2023.2 XORGPROTO_SOURCE = xorgproto-$(XORGPROTO_VERSION).tar.xz XORGPROTO_SITE = https://xorg.freedesktop.org/archive/individual/proto XORGPROTO_LICENSE = MIT @@ -44,7 +44,8 @@ XORGPROTO_LICENSE_FILES = \ COPYING-xf86miscproto \ COPYING-xf86rushproto \ COPYING-xf86vidmodeproto \ - COPYING-xineramaproto + COPYING-xineramaproto \ + COPYING-xwaylandproto XORGPROTO_INSTALL_STAGING = YES XORGPROTO_INSTALL_TARGET = NO # xproxymngproto is needed by xfindproxy diff --git a/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash b/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash index e2a2a251c337..092a640f04ed 100644 --- a/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash +++ b/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash @@ -1,5 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2023-February/003321.html -sha256 d9c60b2dd0ec52326ca6ab20db0e490b1ff4f566f59ca742d6532e92795877bb xorg-server-21.1.7.tar.xz -sha512 e2a093381e28da9b2aa700c6609349fa851f4ca8df23c776f30e4e2733e7a6c1b257576b93f4c4e87fb09df901385bf52528982f6e7a6ad469597aeae8640bb5 xorg-server-21.1.7.tar.xz +# From https://lists.x.org/archives/xorg-announce/2023-March/003377.html +sha256 38aadb735650c8024ee25211c190bf8aad844c5f59632761ab1ef4c4d5aeb152 xorg-server-21.1.8.tar.xz +sha512 6104b3620ed2e1e27d9a8e963388bbe8785a764585b1bc03dbf5d719a92894773dda580d377ca18ceeab353e65a5d23cc947bab84a4012f9dd1eca31cac36937 xorg-server-21.1.8.tar.xz # Locally calculated sha256 4cc0447a22635c7b2f1a93fec4aa94f1970fadeb72a063de006b51cf4963a06f COPYING diff --git a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk index 33b35b79797c..ede03d024c80 100644 --- a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk +++ b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk @@ -4,7 +4,7 @@ # ################################################################################ -XSERVER_XORG_SERVER_VERSION = 21.1.7 +XSERVER_XORG_SERVER_VERSION = 21.1.8 XSERVER_XORG_SERVER_SOURCE = xorg-server-$(XSERVER_XORG_SERVER_VERSION).tar.xz XSERVER_XORG_SERVER_SITE = https://xorg.freedesktop.org/archive/individual/xserver XSERVER_XORG_SERVER_LICENSE = MIT @@ -176,13 +176,18 @@ XSERVER_XORG_SERVER_CONF_OPTS += --with-sha1=libsha1 XSERVER_XORG_SERVER_DEPENDENCIES += libsha1 endif +# Install the systemd unit only when nodm nor xdm aren't enabled, as +# they would be responsible for starting the server. +ifeq ($(BR2_PACKAGE_NODM)$(BR2_PACKAGE_XAPP_XDM),) define XSERVER_XORG_SERVER_INSTALL_INIT_SYSTEMD $(INSTALL) -D -m 0644 package/x11r7/xserver_xorg-server/xorg.service \ $(TARGET_DIR)/usr/lib/systemd/system/xorg.service endef +endif -# init script conflicts with S90nodm -ifneq ($(BR2_PACKAGE_NODM),y) +# Install the init script only when neither nodm nor xdm are enabled, as +# they would be responsible for starting the server. +ifeq ($(BR2_PACKAGE_NODM)$(BR2_PACKAGE_XAPP_XDM),) define XSERVER_XORG_SERVER_INSTALL_INIT_SYSV $(INSTALL) -D -m 755 package/x11r7/xserver_xorg-server/S40xorg \ $(TARGET_DIR)/etc/init.d/S40xorg diff --git a/package/x11r7/xwayland/xwayland.hash b/package/x11r7/xwayland/xwayland.hash index 0c476f31837d..b62f404d4055 100644 --- a/package/x11r7/xwayland/xwayland.hash +++ b/package/x11r7/xwayland/xwayland.hash @@ -1,6 +1,6 @@ -# From https://lists.x.org/archives/xorg-announce/2023-February/003322.html -sha256 d11eeee73290b88ea8da42a7d9350dedfaba856ce4ae44e58c045ad9ecaa2f73 xwayland-22.1.8.tar.xz -sha512 f52c6f99d8ef7605bc1c651d5ee5e306c12af30649a2d712b1c4c3cf4c7c80246ae24bd9ac39461d47aafc78f5d659446a459cd6259e05ef3128b204981d114a xwayland-22.1.8.tar.xz +# From https://lists.x.org/archives/xorg-announce/2023-March/003376.html +sha256 fb9461f5cb9fea5e07e91882311b0c88b43e8843b017ebac05eb5af69aa34c15 xwayland-23.1.1.tar.xz +sha512 21c386847135c5cb4ac884926b0fbeb6ad21c9ee54752e0cdc8418e31a72872d81032159c1d91b8afb915aaaf65e80454342461d676996b2f3c535a37b0147f0 xwayland-23.1.1.tar.xz # Locally calculated sha256 4cc0447a22635c7b2f1a93fec4aa94f1970fadeb72a063de006b51cf4963a06f COPYING diff --git a/package/x11r7/xwayland/xwayland.mk b/package/x11r7/xwayland/xwayland.mk index 7aef1156d359..8550b61389a8 100644 --- a/package/x11r7/xwayland/xwayland.mk +++ b/package/x11r7/xwayland/xwayland.mk @@ -4,11 +4,12 @@ # ################################################################################ -XWAYLAND_VERSION = 22.1.8 +XWAYLAND_VERSION = 23.1.1 XWAYLAND_SOURCE = xwayland-$(XWAYLAND_VERSION).tar.xz XWAYLAND_SITE = https://xorg.freedesktop.org/archive/individual/xserver XWAYLAND_LICENSE = MIT XWAYLAND_LICENSE_FILES = COPYING +XWAYLAND_CPE_ID_VENDOR = x.org XWAYLAND_INSTALL_STAGING = YES XWAYLAND_DEPENDENCIES = \ pixman \ diff --git a/package/xdg-dbus-proxy/xdg-dbus-proxy.hash b/package/xdg-dbus-proxy/xdg-dbus-proxy.hash index 7bbea72b03e2..f61a6a91aec4 100644 --- a/package/xdg-dbus-proxy/xdg-dbus-proxy.hash +++ b/package/xdg-dbus-proxy/xdg-dbus-proxy.hash @@ -1,5 +1,5 @@ -# From https://github.com/flatpak/xdg-dbus-proxy/releases/tag/0.1.4 -sha256 1ec0eab53d1e49966d722352bcfd51ac402dce5190baedc749a8541e761670ab xdg-dbus-proxy-0.1.4.tar.xz +# From https://github.com/flatpak/xdg-dbus-proxy/releases/tag/0.1.5 +sha256 061dcfaf8a0650e5fd9d5432dfe88bda749ea0d079dc136304bfecfbce0661fb xdg-dbus-proxy-0.1.5.tar.xz # Hash for license files: sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING diff --git a/package/xdg-dbus-proxy/xdg-dbus-proxy.mk b/package/xdg-dbus-proxy/xdg-dbus-proxy.mk index 48f49dba2acd..2e8c054386ec 100644 --- a/package/xdg-dbus-proxy/xdg-dbus-proxy.mk +++ b/package/xdg-dbus-proxy/xdg-dbus-proxy.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDG_DBUS_PROXY_VERSION = 0.1.4 +XDG_DBUS_PROXY_VERSION = 0.1.5 XDG_DBUS_PROXY_SITE = https://github.com/flatpak/xdg-dbus-proxy/releases/download/$(XDG_DBUS_PROXY_VERSION) XDG_DBUS_PROXY_SOURCE = xdg-dbus-proxy-$(XDG_DBUS_PROXY_VERSION).tar.xz XDG_DBUS_PROXY_DEPENDENCIES = host-pkgconf libglib2 diff --git a/package/xen/xen.hash b/package/xen/xen.hash index 5637f0e8d9bd..d2350ac51574 100644 --- a/package/xen/xen.hash +++ b/package/xen/xen.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 a1a24092ad14658eed420b7d56b67d0d9d5b314e96c30a799b45f3a721f98bf0 xen-4.14.5.tar.gz +sha256 7917681bc6e744789815131fcf7799e6b83a0d45b5801ac654322b037ce472f8 xen-4.14.6.tar.gz sha256 ecca9538e9d3f7e3c2bff827502f4495e2ef9e22c451298696ea08886b176c2c COPYING diff --git a/package/xen/xen.mk b/package/xen/xen.mk index 169753e89f79..80412cca97cd 100644 --- a/package/xen/xen.mk +++ b/package/xen/xen.mk @@ -4,8 +4,9 @@ # ################################################################################ -XEN_VERSION = 4.14.5 +XEN_VERSION = 4.14.6 XEN_SITE = https://downloads.xenproject.org/release/xen/$(XEN_VERSION) +XEN_SELINUX_MODULES = systemd udev xen XEN_LICENSE = GPL-2.0 XEN_LICENSE_FILES = COPYING XEN_CPE_ID_VENDOR = xen diff --git a/package/xenomai/3.0.10/0004-lib-psos-task.c-fix-build-with-gcc-12.patch b/package/xenomai/3.0.10/0004-lib-psos-task.c-fix-build-with-gcc-12.patch new file mode 100644 index 000000000000..fcc1f1e6730d --- /dev/null +++ b/package/xenomai/3.0.10/0004-lib-psos-task.c-fix-build-with-gcc-12.patch @@ -0,0 +1,56 @@ +From 6c6da9e6d75ccfaa83c1efe14211f080c14181c6 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sun, 3 Dec 2023 15:28:50 +0100 +Subject: [PATCH] lib/psos/task.c: fix build with gcc >= 12 + +Fix the following build failure with gcc >= 12: + +task.c: In function 't_start': +task.c:398:16: error: 'ret' may be used uninitialized [-Werror=maybe-uninitialized] + 398 | return ret; + | ^~~ +task.c:364:13: note: 'ret' was declared here + 364 | int ret; + | ^~~ +task.c: In function 't_resume': +task.c:444:16: error: 'ret' may be used uninitialized [-Werror=maybe-uninitialized] + 444 | return ret; + | ^~~ +task.c:428:13: note: 'ret' was declared here + 428 | int ret; + | ^~~ + +Fixes: + - http://autobuild.buildroot.org/results/bc1b40de22e563b704ad7f20b6bf4d1f73a6ed8a + +Signed-off-by: Fabrice Fontaine +Upstream: https://lore.kernel.org/xenomai/20231203144307.1940139-1-fontaine.fabrice@gmail.com/T/#u +--- + lib/psos/task.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/lib/psos/task.c b/lib/psos/task.c +index f678be61d..27bcc28a9 100644 +--- a/lib/psos/task.c ++++ b/lib/psos/task.c +@@ -362,7 +362,7 @@ u_long t_start(u_long tid, + { + struct psos_task *task; + struct service svc; +- int ret; ++ int ret = SUCCESS; + + CANCEL_DEFER(svc); + +@@ -426,7 +426,7 @@ u_long t_resume(u_long tid) + { + struct psos_task *task; + struct service svc; +- int ret; ++ int ret = SUCCESS; + + CANCEL_DEFER(svc); + +-- +2.42.0 + diff --git a/package/xenomai/xenomai.mk b/package/xenomai/xenomai.mk index c1ad0c5df62b..9356919259ba 100644 --- a/package/xenomai/xenomai.mk +++ b/package/xenomai/xenomai.mk @@ -41,7 +41,6 @@ XENOMAI_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) install-user XENOMAI_CONF_OPTS += \ --disable-demo \ - --disable-testsuite \ --includedir=/usr/include/xenomai/ ifeq ($(BR2_PACKAGE_XENOMAI_MERCURY),y) @@ -87,17 +86,10 @@ endef XENOMAI_POST_INSTALL_TARGET_HOOKS += XENOMAI_REMOVE_UNNEEDED_FILES -ifeq ($(BR2_PACKAGE_XENOMAI_TESTSUITE),) -define XENOMAI_REMOVE_TESTSUITE - rm -rf $(TARGET_DIR)/usr/share/xenomai/ - for i in clocktest gpiotest latency smokey spitest switchtest \ - xeno-test-run-wrapper dohell xeno-test-run xeno-test ; do \ - rm -f $(TARGET_DIR)/usr/bin/$$i ; \ - done - rm -rf $(TARGET_DIR)/usr/demo/ -endef - -XENOMAI_POST_INSTALL_TARGET_HOOKS += XENOMAI_REMOVE_TESTSUITE +ifeq ($(BR2_PACKAGE_XENOMAI_TESTSUITE),y) +XENOMAI_CONF_OPTS += --enable-testsuite +else +XENOMAI_CONF_OPTS += --disable-testsuite endif ifeq ($(BR2_PACKAGE_XENOMAI_RTCAN),) diff --git a/package/xfsprogs/0003-libxfs-stop-overriding-MAP_SYNC-in-publicly-exported.patch b/package/xfsprogs/0003-libxfs-stop-overriding-MAP_SYNC-in-publicly-exported.patch deleted file mode 100644 index 510ed5b6423a..000000000000 --- a/package/xfsprogs/0003-libxfs-stop-overriding-MAP_SYNC-in-publicly-exported.patch +++ /dev/null @@ -1,187 +0,0 @@ -From b82bd75c80aadcc2890b23f63eec9ba2c560b2e5 Mon Sep 17 00:00:00 2001 -From: "Darrick J. Wong" -Date: Thu, 4 Aug 2022 21:26:43 -0500 -Subject: [PATCH] libxfs: stop overriding MAP_SYNC in publicly exported header - files - -Florian Fainelli most recently reported that xfsprogs doesn't build with -musl on mips: - -"MIPS platforms building with recent kernel headers and the musl-libc -toolchain will expose the following build failure: - -mmap.c: In function 'mmap_f': -mmap.c:196:12: error: 'MAP_SYNC' undeclared (first use in this function); did you mean 'MS_SYNC'? - 196 | flags = MAP_SYNC | MAP_SHARED_VALIDATE; - | ^~~~~~~~ - | MS_SYNC -mmap.c:196:12: note: each undeclared identifier is reported only once for each function it appears in -make[4]: *** [../include/buildrules:81: mmap.o] Error 1" - -At first glance, the build failure here is caused by the fact that: - -1. The configure script doesn't detect MAP_SYNC support -2. The build system doesn't set HAVE_MAP_SYNC -2. io/mmap.c includes input.h -> projects.h -> xfs.h and later sys/mman.h -3. include/linux.h #define's MAP_SYNC to 0 if HAVE_MAP_SYNC is not set -4. musl's sys/mman.h #undef MAP_SYNC on platforms that don't support it -5. io/mmap.c tries to use MAP_SYNC, not realizing that libc undefined it - -Normally, xfs_io only exports functionality that is defined by the libc -and/or kernel headers on the build system. We often make exceptions for -new functionality so that we have a way to test them before the header -file packages catch up, hence this '#ifndef HAVE_FOO #define FOO' -paradigm. - -MAP_SYNC is a gross and horribly broken example of this. These support -crutches are supposed to be *private* to xfsprogs for benefit of early -testing, but they were instead added to include/linux.h, which we -provide to user programs in the xfslibs-dev package. IOWs, we've been - -Worst yet, gcc 11.3 doesn't even warn about overriding a #define to 0: - -int main(int argc, char *argv[]) { - printf("MAP_SYNC 0x%x\n", MAP_SYNC); -} - -$ gcc -o a a.c -Wall -$ ./a -MAP_SYNC 0x80000 -$ gcc -DSTUPID -o a a.c -Wall -$ ./a -MAP_SYNC 0x0 - -Four years have gone by since the introduction of MAP_SYNC, so let's get -rid of the override code entirely -- any platform that supports MAP_SYNC -has had plenty of chances to ensure their header files have the right -bits. While we're at it, fix AC_HAVE_MAP_SYNC to look for MAP_SYNC in -the same header file that the one user (io/mmap.c) uses -- sys/mman.h. - -Annoyingly, I had to test this by hand because the sole fstest that -exercises MAP_SYNC (generic/470) requires dm-logwrites and dm-thinp, -neither of which support fsdax on current kernels. - -Reported-by: info@mobile-stream.com -Reported-by: Fabrice Fontaine -Reported-by: Florian Fainelli -Signed-off-by: Darrick J. Wong -Tested-by: Florian Fainelli -Reviewed-by: Carlos Maiolino -Signed-off-by: Eric Sandeen ---- - include/linux.h | 8 -------- - io/io.h | 2 +- - io/mmap.c | 25 +++++++++++++------------ - m4/package_libcdev.m4 | 3 +-- - 4 files changed, 15 insertions(+), 23 deletions(-) - -diff --git a/include/linux.h b/include/linux.h -index de8a71221146..052facc15db5 100644 ---- a/include/linux.h -+++ b/include/linux.h -@@ -356,14 +356,6 @@ fsmap_advance( - #define HAVE_GETFSMAP - #endif /* HAVE_GETFSMAP */ - --#ifndef HAVE_MAP_SYNC --#define MAP_SYNC 0 --#define MAP_SHARED_VALIDATE 0 --#else --#include --#include --#endif /* HAVE_MAP_SYNC */ -- - /* - * Reminder: anything added to this file will be compiled into downstream - * userspace projects! -diff --git a/io/io.h b/io/io.h -index 49db902fc44f..64b7a663a8cf 100644 ---- a/io/io.h -+++ b/io/io.h -@@ -55,7 +55,7 @@ typedef struct mmap_region { - size_t length; /* length of mapping */ - off64_t offset; /* start offset into backing file */ - int prot; /* protection mode of the mapping */ -- bool map_sync; /* is this a MAP_SYNC mapping? */ -+ int flags; /* MAP_* flags passed to mmap() */ - char *name; /* name of backing file */ - } mmap_region_t; - -diff --git a/io/mmap.c b/io/mmap.c -index 8c048a0ab6d0..425957d4b487 100644 ---- a/io/mmap.c -+++ b/io/mmap.c -@@ -46,8 +46,11 @@ print_mapping( - for (i = 0, p = pflags; p->prot != PROT_NONE; i++, p++) - buffer[i] = (map->prot & p->prot) ? p->mode : '-'; - -- if (map->map_sync) -+#ifdef HAVE_MAP_SYNC -+ if ((map->flags & (MAP_SYNC | MAP_SHARED_VALIDATE)) == -+ (MAP_SYNC | MAP_SHARED_VALIDATE)) - sprintf(&buffer[i], " S"); -+#endif - - printf("%c%03d%c 0x%lx - 0x%lx %s %14s (%lld : %ld)\n", - braces? '[' : ' ', index, braces? ']' : ' ', -@@ -139,7 +142,9 @@ mmap_help(void) - " -r -- map with PROT_READ protection\n" - " -w -- map with PROT_WRITE protection\n" - " -x -- map with PROT_EXEC protection\n" -+#ifdef HAVE_MAP_SYNC - " -S -- map with MAP_SYNC and MAP_SHARED_VALIDATE flags\n" -+#endif - " -s -- first do mmap(size)/munmap(size), try to reserve some free space\n" - " If no protection mode is specified, all are used by default.\n" - "\n")); -@@ -193,18 +198,14 @@ mmap_f( - prot |= PROT_EXEC; - break; - case 'S': -+#ifdef HAVE_MAP_SYNC - flags = MAP_SYNC | MAP_SHARED_VALIDATE; -- -- /* -- * If MAP_SYNC and MAP_SHARED_VALIDATE aren't defined -- * in the system headers we will have defined them -- * both as 0. -- */ -- if (!flags) { -- printf("MAP_SYNC not supported\n"); -- return 0; -- } - break; -+#else -+ printf("MAP_SYNC not supported\n"); -+ exitcode = 1; -+ return command_usage(&mmap_cmd); -+#endif - case 's': - length2 = cvtnum(blocksize, sectsize, optarg); - break; -@@ -281,7 +282,7 @@ mmap_f( - mapping->offset = offset; - mapping->name = filename; - mapping->prot = prot; -- mapping->map_sync = (flags == (MAP_SYNC | MAP_SHARED_VALIDATE)); -+ mapping->flags = flags; - return 0; - } - -diff --git a/m4/package_libcdev.m4 b/m4/package_libcdev.m4 -index adab9bb9773a..3a0c23453176 100644 ---- a/m4/package_libcdev.m4 -+++ b/m4/package_libcdev.m4 -@@ -339,8 +339,7 @@ AC_DEFUN([AC_HAVE_STATFS_FLAGS], - AC_DEFUN([AC_HAVE_MAP_SYNC], - [ AC_MSG_CHECKING([for MAP_SYNC]) - AC_TRY_COMPILE([ --#include --#include -+#include - ], [ - int flags = MAP_SYNC | MAP_SHARED_VALIDATE; - ], have_map_sync=yes --- -2.25.1 - diff --git a/package/xfsprogs/Config.in b/package/xfsprogs/Config.in index a382b63ff879..d14c3d469867 100644 --- a/package/xfsprogs/Config.in +++ b/package/xfsprogs/Config.in @@ -1,13 +1,15 @@ -comment "xfsprogs needs a toolchain w/ threads" +comment "xfsprogs needs a toolchain w/ threads, C++" depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_INSTALL_LIBSTDCPP config BR2_PACKAGE_XFSPROGS bool "xfsprogs" depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS depends on BR2_USE_MMU # fork() depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_INSTALL_LIBSTDCPP # liburcu select BR2_PACKAGE_INIH select BR2_PACKAGE_LIBURCU select BR2_PACKAGE_UTIL_LINUX diff --git a/package/xfsprogs/xfsprogs.hash b/package/xfsprogs/xfsprogs.hash index bb546601dc44..8c73e149051f 100644 --- a/package/xfsprogs/xfsprogs.hash +++ b/package/xfsprogs/xfsprogs.hash @@ -1,5 +1,5 @@ # From https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/sha256sums.asc -sha256 01ccd3ef9df2837753a5d876b8da84ea957d13d7a461b8c46e8afa4eb09aabc8 xfsprogs-5.14.2.tar.xz +sha256 c31868418bfbf49a3a9c47fc70cdffde9d96f4ff0051bd04a0881e6654648104 xfsprogs-6.4.0.tar.xz # Hash for license files sha256 f6b78c087c3ebdf0f3c13415070dd480a3f35d8fc76f3d02180a407c1c812f79 LICENSES/GPL-2.0 diff --git a/package/xfsprogs/xfsprogs.mk b/package/xfsprogs/xfsprogs.mk index 695471bddcc0..e657c8086da9 100644 --- a/package/xfsprogs/xfsprogs.mk +++ b/package/xfsprogs/xfsprogs.mk @@ -4,7 +4,7 @@ # ################################################################################ -XFSPROGS_VERSION = 5.14.2 +XFSPROGS_VERSION = 6.4.0 XFSPROGS_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/fs/xfs/xfsprogs XFSPROGS_SOURCE = xfsprogs-$(XFSPROGS_VERSION).tar.xz XFSPROGS_LICENSE = GPL-2.0, GPL-2.0+, LGPL-2.1 (libhandle, few headers) @@ -27,6 +27,10 @@ else XFSPROGS_CONF_OPTS += --disable-libicu endif +ifeq ($(BR2_OPTIMIZE_0),y) +XFSPROGS_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -O1" +endif + XFSPROGS_INSTALL_TARGET_OPTS = DIST_ROOT=$(TARGET_DIR) install $(eval $(autotools-package)) diff --git a/package/xmrig/Config.in b/package/xmrig/Config.in index 4dd16fa2b05f..0b5f5370e4e8 100644 --- a/package/xmrig/Config.in +++ b/package/xmrig/Config.in @@ -15,6 +15,7 @@ config BR2_PACKAGE_XMRIG # xmrig needs fenv.h which is not provided by uclibc depends on !BR2_TOOLCHAIN_USES_UCLIBC depends on !BR2_STATIC_LIBS # libuv + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libuv depends on BR2_INSTALL_LIBSTDCPP select BR2_PACKAGE_LIBUV help @@ -22,10 +23,11 @@ config BR2_PACKAGE_XMRIG https://xmrig.com -comment "xmrig needs a glibc or musl toolchain w/ NPTL, dynamic library, C++" +comment "xmrig needs a glibc or musl toolchain w/ NPTL, dynamic library, C++, gcc >= 4.9" depends on BR2_PACKAGE_XMRIG_ARCH_SUPPORTS depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ BR2_TOOLCHAIN_USES_UCLIBC || BR2_STATIC_LIBS || \ - !BR2_INSTALL_LIBSTDCPP + !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 diff --git a/package/xmrig/xmrig.hash b/package/xmrig/xmrig.hash index 781e089de89c..eab24a7eab8f 100644 --- a/package/xmrig/xmrig.hash +++ b/package/xmrig/xmrig.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 772f947058e5b89ca9bf34128487def47796870b547439a9b0524ddd1899420c xmrig-6.19.0.tar.gz +sha256 86c62eb6db83981b21ac1faac69c28fee2952cbbc207ea7476707d4f1799633f xmrig-6.20.0.tar.gz sha256 589ed823e9a84c56feb95ac58e7cf384626b9cbf4fda2a907bc36e103de1bad2 LICENSE diff --git a/package/xmrig/xmrig.mk b/package/xmrig/xmrig.mk index f345ba9cf9f0..982ccc8c5dfe 100644 --- a/package/xmrig/xmrig.mk +++ b/package/xmrig/xmrig.mk @@ -4,7 +4,7 @@ # ################################################################################ -XMRIG_VERSION = 6.19.0 +XMRIG_VERSION = 6.20.0 XMRIG_SITE = $(call github,xmrig,xmrig,v$(XMRIG_VERSION)) XMRIG_LICENSE = GPL-3.0+ XMRIG_LICENSE_FILES = LICENSE diff --git a/package/xr819-xradio/xr819-xradio.hash b/package/xr819-xradio/xr819-xradio.hash index 60185db7363f..1ff36368ec18 100644 --- a/package/xr819-xradio/xr819-xradio.hash +++ b/package/xr819-xradio/xr819-xradio.hash @@ -1,4 +1,4 @@ # Locally computed -sha256 2b297fbcc9b5ed190bcfff9f6f808c170632ac3d69dbd92156a7f4f57142dec9 xr819-xradio-005f28cfe9e20b7f2dfd9d32d38ee97060dc707f.tar.gz +sha256 e27b6b5fb35ef44a93eb1f5b29bd61c06109e951c8a5ea2cc3e0310663f22001 xr819-xradio-547521df27d1a80fb5542e93fa13bd09fb2259a2.tar.gz # Locally computed sha256 db296f2f7f35bca3a174efb0eb392b3b17bd94b341851429a3dff411b1c2fc73 LICENSE diff --git a/package/xr819-xradio/xr819-xradio.mk b/package/xr819-xradio/xr819-xradio.mk index e5daaa60511d..1e4cdb687282 100644 --- a/package/xr819-xradio/xr819-xradio.mk +++ b/package/xr819-xradio/xr819-xradio.mk @@ -4,7 +4,7 @@ # ################################################################################ -XR819_XRADIO_VERSION = 005f28cfe9e20b7f2dfd9d32d38ee97060dc707f +XR819_XRADIO_VERSION = 547521df27d1a80fb5542e93fa13bd09fb2259a2 XR819_XRADIO_SITE = $(call github,fifteenhex,xradio,$(XR819_XRADIO_VERSION)) XR819_XRADIO_LICENSE = GPL-2.0 XR819_XRADIO_LICENSE_FILES = LICENSE diff --git a/package/xtables-addons/xtables-addons.hash b/package/xtables-addons/xtables-addons.hash index 840a31f9478f..7bdbbb85784f 100644 --- a/package/xtables-addons/xtables-addons.hash +++ b/package/xtables-addons/xtables-addons.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 faa16a27166275afbfe8df605f55c3a81ac693bf19da674d45ceded4137ae217 xtables-addons-3.22.tar.xz +sha256 3e823f71720519ced31c4c7d2bfaf7120d9c01c59a0843dfcbe93c95c64d81c1 xtables-addons-3.24.tar.xz sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 LICENSE diff --git a/package/xtables-addons/xtables-addons.mk b/package/xtables-addons/xtables-addons.mk index e794538956c1..efd8bd98cecd 100644 --- a/package/xtables-addons/xtables-addons.mk +++ b/package/xtables-addons/xtables-addons.mk @@ -4,7 +4,7 @@ # ################################################################################ -XTABLES_ADDONS_VERSION = 3.22 +XTABLES_ADDONS_VERSION = 3.24 XTABLES_ADDONS_SOURCE = xtables-addons-$(XTABLES_ADDONS_VERSION).tar.xz XTABLES_ADDONS_SITE = https://inai.de/files/xtables-addons XTABLES_ADDONS_DEPENDENCIES = iptables linux host-pkgconf @@ -13,7 +13,6 @@ XTABLES_ADDONS_LICENSE_FILES = LICENSE XTABLES_ADDONS_CONF_OPTS = \ --with-kbuild="$(LINUX_DIR)" \ - --with-xtables="$(STAGING_DIR)/usr" \ --with-xtlibdir="/usr/lib/xtables" define XTABLES_ADDONS_BUILD_CMDS diff --git a/package/xterm/xterm.hash b/package/xterm/xterm.hash index 12cd2e639b90..1a2ad8fea0fe 100644 --- a/package/xterm/xterm.hash +++ b/package/xterm/xterm.hash @@ -1,4 +1,4 @@ # Locally calculated after checking pgp signature -sha256 1e5bb7aad068fb31d6d3cbb77f80c7ad1526cd4c956a4ddcf2c5cf28af5334e1 xterm-376.tgz +sha256 31ef870740ceae020c3c4b4a9601c7f47bfd46672c1aaf2d213a565d64cbc373 xterm-384.tgz # Locally calculated -sha256 9521ef761474cd31ea406f56a751646a7b42a9287cdc6f2f8e52ed4c4d2a73e7 COPYING +sha256 98d02d0b7f7b8aabb742b05e6960caaa9ae20e26d2f0d0dc57808362f2ac79bc COPYING diff --git a/package/xterm/xterm.mk b/package/xterm/xterm.mk index d01b608d992d..2fc2f734c82f 100644 --- a/package/xterm/xterm.mk +++ b/package/xterm/xterm.mk @@ -4,7 +4,7 @@ # ################################################################################ -XTERM_VERSION = 376 +XTERM_VERSION = 384 XTERM_SOURCE = xterm-$(XTERM_VERSION).tgz XTERM_SITE = http://invisible-mirror.net/archives/xterm XTERM_DEPENDENCIES = ncurses xlib_libXaw host-pkgconf diff --git a/package/xvisor/0001-psmouse-back.c-fix-build-with-gcc-11.patch b/package/xvisor/0001-psmouse-back.c-fix-build-with-gcc-11.patch deleted file mode 100644 index 1c02f45c9d5b..000000000000 --- a/package/xvisor/0001-psmouse-back.c-fix-build-with-gcc-11.patch +++ /dev/null @@ -1,115 +0,0 @@ -From 0e07e82121697d99470a147eadad9a708889c4df Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Thu, 2 Sep 2021 18:13:03 +0200 -Subject: [PATCH] psmouse-back.c: fix build with gcc 11 - -Fix the following build failures with gcc 11 by defining inline -functions as static: - -/home/buildroot/autobuild/instance-3/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/11.1.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: /home/buildroot/autobuild/instance-3/output-1/build/xvisor-0.3.0/build/drivers/drivers.o: in function `psmouse_extensions': -/home/buildroot/autobuild/instance-3/output-1/build/xvisor-0.3.0/drivers/input/mouse/psmouse-base.c:783: undefined reference to `lifebook_detect' -/home/buildroot/autobuild/instance-3/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/11.1.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: /home/buildroot/autobuild/instance-3/output-1/build/xvisor-0.3.0/drivers/input/mouse/psmouse-base.c:783: undefined reference to `alps_detect' -/home/buildroot/autobuild/instance-3/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/11.1.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: /home/buildroot/autobuild/instance-3/output-1/build/xvisor-0.3.0/drivers/input/mouse/psmouse-base.c:783: undefined reference to `ps2pp_init' -/home/buildroot/autobuild/instance-3/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/11.1.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: /home/buildroot/autobuild/instance-3/output-1/build/xvisor-0.3.0/drivers/input/mouse/psmouse-base.c:783: undefined reference to `trackpoint_detect' -/home/buildroot/autobuild/instance-3/output-1/host/lib/gcc/arm-buildroot-linux-gnueabihf/11.1.0/../../../../arm-buildroot-linux-gnueabihf/bin/ld: /home/buildroot/autobuild/instance-3/output-1/build/xvisor-0.3.0/drivers/input/mouse/psmouse-base.c:783: undefined reference to `fsp_detect' - -Fixes: - - http://autobuild.buildroot.org/results/69062b9c80567d135edd48890165e69881cf7295 - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/xvisor/xvisor/pull/139] ---- - drivers/input/mouse/alps.h | 4 ++-- - drivers/input/mouse/lifebook.h | 6 +++--- - drivers/input/mouse/logips2pp.h | 2 +- - drivers/input/mouse/sentelic.h | 4 ++-- - drivers/input/mouse/trackpoint.h | 2 +- - 5 files changed, 9 insertions(+), 9 deletions(-) - -diff --git a/drivers/input/mouse/alps.h b/drivers/input/mouse/alps.h -index ae1ac354..acc1e89e 100644 ---- a/drivers/input/mouse/alps.h -+++ b/drivers/input/mouse/alps.h -@@ -51,11 +51,11 @@ struct alps_data { - int alps_detect(struct psmouse *psmouse, bool set_properties); - int alps_init(struct psmouse *psmouse); - #else --inline int alps_detect(struct psmouse *psmouse, bool set_properties) -+static inline int alps_detect(struct psmouse *psmouse, bool set_properties) - { - return -ENOSYS; - } --inline int alps_init(struct psmouse *psmouse) -+static inline int alps_init(struct psmouse *psmouse) - { - return -ENOSYS; - } -diff --git a/drivers/input/mouse/lifebook.h b/drivers/input/mouse/lifebook.h -index 4c4326c6..0baf02a7 100644 ---- a/drivers/input/mouse/lifebook.h -+++ b/drivers/input/mouse/lifebook.h -@@ -16,14 +16,14 @@ void lifebook_module_init(void); - int lifebook_detect(struct psmouse *psmouse, bool set_properties); - int lifebook_init(struct psmouse *psmouse); - #else --inline void lifebook_module_init(void) -+static inline void lifebook_module_init(void) - { - } --inline int lifebook_detect(struct psmouse *psmouse, bool set_properties) -+static inline int lifebook_detect(struct psmouse *psmouse, bool set_properties) - { - return -ENOSYS; - } --inline int lifebook_init(struct psmouse *psmouse) -+static inline int lifebook_init(struct psmouse *psmouse) - { - return -ENOSYS; - } -diff --git a/drivers/input/mouse/logips2pp.h b/drivers/input/mouse/logips2pp.h -index 0c186f02..439e9c58 100644 ---- a/drivers/input/mouse/logips2pp.h -+++ b/drivers/input/mouse/logips2pp.h -@@ -14,7 +14,7 @@ - #ifdef CONFIG_MOUSE_PS2_LOGIPS2PP - int ps2pp_init(struct psmouse *psmouse, bool set_properties); - #else --inline int ps2pp_init(struct psmouse *psmouse, bool set_properties) -+static inline int ps2pp_init(struct psmouse *psmouse, bool set_properties) - { - return -ENOSYS; - } -diff --git a/drivers/input/mouse/sentelic.h b/drivers/input/mouse/sentelic.h -index aa697ece..42df9e3b 100644 ---- a/drivers/input/mouse/sentelic.h -+++ b/drivers/input/mouse/sentelic.h -@@ -123,11 +123,11 @@ struct fsp_data { - extern int fsp_detect(struct psmouse *psmouse, bool set_properties); - extern int fsp_init(struct psmouse *psmouse); - #else --inline int fsp_detect(struct psmouse *psmouse, bool set_properties) -+static inline int fsp_detect(struct psmouse *psmouse, bool set_properties) - { - return -ENOSYS; - } --inline int fsp_init(struct psmouse *psmouse) -+static inline int fsp_init(struct psmouse *psmouse) - { - return -ENOSYS; - } -diff --git a/drivers/input/mouse/trackpoint.h b/drivers/input/mouse/trackpoint.h -index e558a709..f14e59c0 100644 ---- a/drivers/input/mouse/trackpoint.h -+++ b/drivers/input/mouse/trackpoint.h -@@ -145,7 +145,7 @@ struct trackpoint_data - #ifdef CONFIG_MOUSE_PS2_TRACKPOINT - int trackpoint_detect(struct psmouse *psmouse, bool set_properties); - #else --inline int trackpoint_detect(struct psmouse *psmouse, bool set_properties) -+static inline int trackpoint_detect(struct psmouse *psmouse, bool set_properties) - { - return -ENOSYS; - } --- -2.32.0 - diff --git a/package/xvisor/xvisor.hash b/package/xvisor/xvisor.hash index 45b6fec49c09..4676db9e8ca7 100644 --- a/package/xvisor/xvisor.hash +++ b/package/xvisor/xvisor.hash @@ -1,3 +1,3 @@ # Locally generated -sha256 b1bb2ca09340e87a2f465c65196892cdd0f59b798794ae69e35d1f883cf9ba49 xvisor-0.3.1.tar.xz +sha256 fbced0f74b75758d4859d329b86c213bd24662168179ebfb2b02b987a1070215 xvisor-0.3.2.tar.xz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/xvisor/xvisor.mk b/package/xvisor/xvisor.mk index d7bb288ea8a6..eba37be9b7a2 100644 --- a/package/xvisor/xvisor.mk +++ b/package/xvisor/xvisor.mk @@ -4,7 +4,7 @@ # ################################################################################ -XVISOR_VERSION = 0.3.1 +XVISOR_VERSION = 0.3.2 XVISOR_SOURCE = xvisor-$(XVISOR_VERSION).tar.xz XVISOR_SITE = http://www.xhypervisor.org/tarball XVISOR_LICENSE = GPL-2.0+ diff --git a/package/xxhash/0001-fix-man-page-installation.patch b/package/xxhash/0001-fix-man-page-installation.patch deleted file mode 100644 index 5d2a5a4efa85..000000000000 --- a/package/xxhash/0001-fix-man-page-installation.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 836f4e735cf368542f14005e41d2f84ec29dfd60 Mon Sep 17 00:00:00 2001 -From: Yann Collet -Date: Sat, 4 Dec 2021 10:29:49 -0800 -Subject: [PATCH] fix man page installation - -for variant redirectors (`xxh32sum`, `xxh64sum` and `xxh128sum`). -fix #647, reported by @jpalus. - -Also : slightly updated man page text, for clarity and accuracy. - -[Retrieved (and updated to keep only Makefile update) from: -https://github.com/Cyan4973/xxHash/commit/836f4e735cf368542f14005e41d2f84ec29dfd60] -Signed-off-by: Fabrice Fontaine ---- - Makefile | 14 ++++++++------ - cli/xxhsum.1 | 8 ++++---- - cli/xxhsum.1.md | 8 +++++--- - 3 files changed, 17 insertions(+), 13 deletions(-) - -diff --git a/Makefile b/Makefile -index 2fbefbc6..63273e16 100644 ---- a/Makefile -+++ b/Makefile -@@ -457,6 +457,7 @@ endif - - INSTALL_PROGRAM ?= $(INSTALL) - INSTALL_DATA ?= $(INSTALL) -m 644 -+INSTALL_DIR ?= $(INSTALL) -d -m 755 - - - # Escape special symbols by putting each character into its separate class -@@ -496,7 +497,7 @@ libxxhash.pc: libxxhash.pc.in - .PHONY: install - install: lib libxxhash.pc xxhsum ## install libraries, CLI, links and man page - @echo Installing libxxhash -- $(Q)$(INSTALL) -d -m 755 $(DESTDIR)$(LIBDIR) -+ $(Q)$(INSTALL_DIR) $(DESTDIR)$(LIBDIR) - $(Q)$(INSTALL_DATA) libxxhash.a $(DESTDIR)$(LIBDIR) - $(Q)$(INSTALL_PROGRAM) $(LIBXXH) $(DESTDIR)$(LIBDIR) - $(Q)ln -sf $(LIBXXH) $(DESTDIR)$(LIBDIR)/libxxhash.$(SHARED_EXT_MAJOR) -@@ -508,19 +509,20 @@ ifeq ($(DISPATCH),1) - $(Q)$(INSTALL_DATA) xxh_x86dispatch.h $(DESTDIR)$(INCLUDEDIR) - endif - @echo Installing pkgconfig -- $(Q)$(INSTALL) -d -m 755 $(DESTDIR)$(PKGCONFIGDIR)/ -+ $(Q)$(INSTALL_DIR) $(DESTDIR)$(PKGCONFIGDIR)/ - $(Q)$(INSTALL_DATA) libxxhash.pc $(DESTDIR)$(PKGCONFIGDIR)/ - @echo Installing xxhsum -- $(Q)$(INSTALL) -d -m 755 $(DESTDIR)$(BINDIR)/ $(DESTDIR)$(MANDIR)/ -+ $(Q)$(INSTALL_DIR) $(DESTDIR)$(BINDIR)/ - $(Q)$(INSTALL_PROGRAM) xxhsum $(DESTDIR)$(BINDIR)/xxhsum - $(Q)ln -sf xxhsum $(DESTDIR)$(BINDIR)/xxh32sum - $(Q)ln -sf xxhsum $(DESTDIR)$(BINDIR)/xxh64sum - $(Q)ln -sf xxhsum $(DESTDIR)$(BINDIR)/xxh128sum - @echo Installing man pages -+ $(Q)$(INSTALL_DIR) $(DESTDIR)$(MANDIR)/ - $(Q)$(INSTALL_DATA) $(MAN) $(DESTDIR)$(MANDIR)/xxhsum.1 -- $(Q)ln -sf $(MAN) $(DESTDIR)$(MANDIR)/xxh32sum.1 -- $(Q)ln -sf $(MAN) $(DESTDIR)$(MANDIR)/xxh64sum.1 -- $(Q)ln -sf $(MAN) $(DESTDIR)$(MANDIR)/xxh128sum.1 -+ $(Q)ln -sf xxhsum.1 $(DESTDIR)$(MANDIR)/xxh32sum.1 -+ $(Q)ln -sf xxhsum.1 $(DESTDIR)$(MANDIR)/xxh64sum.1 -+ $(Q)ln -sf xxhsum.1 $(DESTDIR)$(MANDIR)/xxh128sum.1 - @echo xxhash installation completed - - .PHONY: uninstall diff --git a/package/xxhash/0002-Makefile-add-dedicated-install-targets.patch b/package/xxhash/0002-Makefile-add-dedicated-install-targets.patch deleted file mode 100644 index 17d34a082333..000000000000 --- a/package/xxhash/0002-Makefile-add-dedicated-install-targets.patch +++ /dev/null @@ -1,71 +0,0 @@ -From 0e7418bce83bb9c236d9cb4535a36a80cd0cc663 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Wed, 15 Dec 2021 21:45:14 +0100 -Subject: [PATCH] Makefile: add dedicated install targets - -Add dedicated install targets to allow the user to install only xxhsum, -the static library, the shared library, etc. - -This is especially useful on embedded systems where dynamic library is -not always supported by toolchains - -Signed-off-by: Fabrice Fontaine -[Retrieved from: -https://github.com/Cyan4973/xxHash/commit/db9c199e99f7b4d419647b1ef49c547fc2547516] ---- - Makefile | 18 +++++++++++++++--- - 1 file changed, 15 insertions(+), 3 deletions(-) - -diff --git a/Makefile b/Makefile -index 8d4fcd21..5fe72972 100644 ---- a/Makefile -+++ b/Makefile -@@ -505,11 +505,14 @@ libxxhash.pc: libxxhash.pc.in - $< > $@ - - --.PHONY: install --install: lib libxxhash.pc xxhsum ## install libraries, CLI, links and man page -- @echo Installing libxxhash -+install_libxxhash.a: libxxhash.a -+ @echo Installing libxxhash.a - $(Q)$(INSTALL_DIR) $(DESTDIR)$(LIBDIR) - $(Q)$(INSTALL_DATA) libxxhash.a $(DESTDIR)$(LIBDIR) -+ -+install_libxxhash: libxxhash -+ @echo Installing libxxhash -+ $(Q)$(INSTALL_DIR) $(DESTDIR)$(LIBDIR) - $(Q)$(INSTALL_PROGRAM) $(LIBXXH) $(DESTDIR)$(LIBDIR) - $(Q)ln -sf $(LIBXXH) $(DESTDIR)$(LIBDIR)/libxxhash.$(SHARED_EXT_MAJOR) - $(Q)ln -sf $(LIBXXH) $(DESTDIR)$(LIBDIR)/libxxhash.$(SHARED_EXT) -@@ -519,21 +522,30 @@ install: lib libxxhash.pc xxhsum ## install libraries, CLI, links and man page - ifeq ($(DISPATCH),1) - $(Q)$(INSTALL_DATA) xxh_x86dispatch.h $(DESTDIR)$(INCLUDEDIR) - endif -+ -+install_libxxhash.pc: libxxhash.pc - @echo Installing pkgconfig - $(Q)$(INSTALL_DIR) $(DESTDIR)$(PKGCONFIGDIR)/ - $(Q)$(INSTALL_DATA) libxxhash.pc $(DESTDIR)$(PKGCONFIGDIR)/ -+ -+install_xxhsum: xxhsum - @echo Installing xxhsum - $(Q)$(INSTALL_DIR) $(DESTDIR)$(BINDIR)/ - $(Q)$(INSTALL_PROGRAM) xxhsum $(DESTDIR)$(BINDIR)/xxhsum - $(Q)ln -sf xxhsum $(DESTDIR)$(BINDIR)/xxh32sum - $(Q)ln -sf xxhsum $(DESTDIR)$(BINDIR)/xxh64sum - $(Q)ln -sf xxhsum $(DESTDIR)$(BINDIR)/xxh128sum -+ -+install_man: - @echo Installing man pages - $(Q)$(INSTALL_DIR) $(DESTDIR)$(MANDIR)/ - $(Q)$(INSTALL_DATA) $(MAN) $(DESTDIR)$(MANDIR)/xxhsum.1 - $(Q)ln -sf xxhsum.1 $(DESTDIR)$(MANDIR)/xxh32sum.1 - $(Q)ln -sf xxhsum.1 $(DESTDIR)$(MANDIR)/xxh64sum.1 - $(Q)ln -sf xxhsum.1 $(DESTDIR)$(MANDIR)/xxh128sum.1 -+ -+.PHONY: install -+install: install_libxxhash.a install_libxxhash install_libxxhash.pc install_xxhsum install_man ## install libraries, CLI, links and man page - @echo xxhash installation completed - - .PHONY: uninstall diff --git a/package/xxhash/0003-do-no-longer-depend-on-assert-h-for-XXH_STATIC_ASSERT.patch b/package/xxhash/0003-do-no-longer-depend-on-assert-h-for-XXH_STATIC_ASSERT.patch deleted file mode 100644 index 3b65ae1d6c2f..000000000000 --- a/package/xxhash/0003-do-no-longer-depend-on-assert-h-for-XXH_STATIC_ASSERT.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 6189ecd3d44a693460f86280ccf49d33cb4b18e1 Mon Sep 17 00:00:00 2001 -From: Yann Collet -Date: Sun, 26 Dec 2021 15:15:26 -0800 -Subject: [PATCH] do no longer depend on `` for XXH_STATIC_ASSERT - -since some versions are buggy. - -Use `_Static_assert` instead, which is part of the C11 language. -[Retrieved from: -https://github.com/Cyan4973/xxHash/commit/6189ecd3d44a693460f86280ccf49d33cb4b18e1] -Signed-off-by: Fabrice Fontaine ---- - xxhash.h | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - -diff --git a/xxhash.h b/xxhash.h -index 311a69c7..5dfd5c45 100644 ---- a/xxhash.h -+++ b/xxhash.h -@@ -1749,8 +1749,7 @@ static void* XXH_memcpy(void* dest, const void* src, size_t size) - /* note: use after variable declarations */ - #ifndef XXH_STATIC_ASSERT - # if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 201112L) /* C11 */ --# include --# define XXH_STATIC_ASSERT_WITH_MESSAGE(c,m) do { static_assert((c),m); } while(0) -+# define XXH_STATIC_ASSERT_WITH_MESSAGE(c,m) do { _Static_assert((c),m); } while(0) - # elif defined(__cplusplus) && (__cplusplus >= 201103L) /* C++11 */ - # define XXH_STATIC_ASSERT_WITH_MESSAGE(c,m) do { static_assert((c),m); } while(0) - # else diff --git a/package/xxhash/0004-Makefile-add-install_libxxhash.includes-target.patch b/package/xxhash/0004-Makefile-add-install_libxxhash.includes-target.patch deleted file mode 100644 index 22c8cdaadff8..000000000000 --- a/package/xxhash/0004-Makefile-add-install_libxxhash.includes-target.patch +++ /dev/null @@ -1,39 +0,0 @@ -From b7c91f761b6d0b79398d0a064d2d6e34de3dfa47 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Tue, 27 Dec 2022 23:12:37 +0100 -Subject: [PATCH] Makefile: add install_libxxhash.includes target - -Add install_libxxhash.includes to be able to install headers when -building and installing the static library - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/Cyan4973/xxHash/pull/776] ---- - Makefile | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/Makefile b/Makefile -index cfa5779..2276282 100644 ---- a/Makefile -+++ b/Makefile -@@ -557,6 +557,8 @@ install_libxxhash: libxxhash - $(Q)$(INSTALL_PROGRAM) $(LIBXXH) $(DESTDIR)$(LIBDIR) - $(Q)ln -sf $(LIBXXH) $(DESTDIR)$(LIBDIR)/libxxhash.$(SHARED_EXT_MAJOR) - $(Q)ln -sf $(LIBXXH) $(DESTDIR)$(LIBDIR)/libxxhash.$(SHARED_EXT) -+ -+install_libxxhash.includes: - $(Q)$(INSTALL) -d -m 755 $(DESTDIR)$(INCLUDEDIR) # includes - $(Q)$(INSTALL_DATA) xxhash.h $(DESTDIR)$(INCLUDEDIR) - $(Q)$(INSTALL_DATA) xxh3.h $(DESTDIR)$(INCLUDEDIR) # for compatibility, will be removed in v0.9.0 -@@ -586,7 +588,7 @@ install_man: - $(Q)ln -sf xxhsum.1 $(DESTDIR)$(MANDIR)/xxh128sum.1 - - .PHONY: install --install: install_libxxhash.a install_libxxhash install_libxxhash.pc install_xxhsum install_man ## install libraries, CLI, links and man page -+install: install_libxxhash.a install_libxxhash install_libxxhash.includes install_libxxhash.pc install_xxhsum install_man ## install libraries, CLI, links and man page - @echo xxhash installation completed - - .PHONY: uninstall --- -2.35.1 - diff --git a/package/xxhash/xxhash.hash b/package/xxhash/xxhash.hash index 2c99236a45dd..216d07ddbdc6 100644 --- a/package/xxhash/xxhash.hash +++ b/package/xxhash/xxhash.hash @@ -1,4 +1,4 @@ # locally computed -sha256 3bb6b7d6f30c591dd65aaaff1c8b7a5b94d81687998ca9400082c739a690436c xxhash-0.8.1.tar.gz -sha256 553d0035773ddd1590045f8fdc3a4c6ead31e36336721aeca8421e88ed1c9f80 LICENSE +sha256 baee0c6afd4f03165de7a4e67988d16f0f2b257b51d0e3cb91909302a26a79c4 xxhash-0.8.2.tar.gz +sha256 6ffedbc0f7878612d2b23589f1ff2ab15633e1df7963a5d9fc750ec5500c7e7a LICENSE sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 cli/COPYING diff --git a/package/xxhash/xxhash.mk b/package/xxhash/xxhash.mk index 75d375a2fa13..7708ba1e1969 100644 --- a/package/xxhash/xxhash.mk +++ b/package/xxhash/xxhash.mk @@ -4,7 +4,7 @@ # ################################################################################ -XXHASH_VERSION = 0.8.1 +XXHASH_VERSION = 0.8.2 XXHASH_SITE = $(call github,Cyan4973,xxHash,v$(XXHASH_VERSION)) XXHASH_LICENSE = BSD-2-Clause (library), GPL-2.0+ (xxhsum) XXHASH_LICENSE_FILES = LICENSE cli/COPYING diff --git a/package/xz/0001-Detect-symver-attribute-support.patch b/package/xz/0001-Detect-symver-attribute-support.patch deleted file mode 100644 index 462fa9d86ba5..000000000000 --- a/package/xz/0001-Detect-symver-attribute-support.patch +++ /dev/null @@ -1,70 +0,0 @@ -From f0e0e8bd08b4d4e7c89a5a3b7d9a3c083f7e5432 Mon Sep 17 00:00:00 2001 -From: Vincent Fazio -Date: Wed, 8 Feb 2023 12:58:37 +0000 -Subject: [PATCH] Detect symver attribute support - -On Microblaze, builds will fail when trying to add symver information -because __attribute__((symver ..)) is not supported even though -__has_attribute(__symver__) returns true. - -Support for symver needs to be detected via a compile test since -__has_attribute can report false positives [0]. - -Add a configure compile check for __attribute__((symver ..)) to ensure -it is supported and define a variable to advertise support. - -[0] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101766#c1 - -Upstream: https://github.com/tukaani-project/xz/pull/32 -Signed-off-by: Thomas Petazzoni -Signed-off-by: Vincent Fazio -[Peter: patch configure instead of configure.ac so autoreconf isn't -triggered at build time] -Signed-off-by: Peter Korsgaard ---- - configure | 15 +++++++++++++++ - src/liblzma/common/common.h | 2 +- - 2 files changed, 16 insertions(+), 1 deletion(-) - -diff --git a/src/liblzma/common/common.h b/src/liblzma/common/common.h -index 671d3bc..27b56ee 100644 ---- a/src/liblzma/common/common.h -+++ b/src/liblzma/common/common.h -@@ -76,7 +76,7 @@ - // too (which doesn't support __symver__) so use it to detect if __symver__ - // is available. This should be far more reliable than looking at compiler - // version macros as nowadays especially __GNUC__ is defined by many compilers. --# if lzma_has_attribute(__symver__) -+# if defined(HAVE_SYMVER_ATTRIBUTE) - # define LZMA_SYMVER_API(extnamever, type, intname) \ - extern __attribute__((__symver__(extnamever))) \ - LZMA_API(type) intname -diff --git a/configure b/configure -index ff0eed5..e685b30 100755 ---- a/configure -+++ b/configure -@@ -16687,6 +16687,21 @@ printf "%s\n" "" >&6; } - - printf "%s\n" "#define HAVE_SYMBOL_VERSIONS_LINUX $have_symbol_versions_linux" >>confdefs.h - -+ OLD_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -Werror" # we need -Werror to make sure the attribute is not ignored -+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext -+/* end confdefs.h. */ -+__attribute__ ((symver ("test@TEST"))) void foo(void) { } -+ -+_ACEOF -+if ac_fn_c_try_compile "$LINENO" -+then : -+ -+printf "%s\n" "#define HAVE_SYMVER_ATTRIBUTE 1" >>confdefs.h -+ -+fi -+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -+ CFLAGS="$OLD_CFLAGS" - ;; - *) - enable_symbol_versions=generic --- -2.34.1 - diff --git a/package/xz/xz.hash b/package/xz/xz.hash index 1153e02b4d4e..92bac40463e5 100644 --- a/package/xz/xz.hash +++ b/package/xz/xz.hash @@ -1,9 +1,9 @@ # Locally calculated after checking pgp signature -# https://tukaani.org/xz/xz-5.2.10.tar.bz2.sig -sha256 01b71df61521d9da698ce3c33148bff06a131628ff037398c09482f3a26e5408 xz-5.2.10.tar.bz2 +# https://tukaani.org/xz/xz-5.4.4.tar.gz.sig +sha256 0b6fcde1ac38e90433a2556f500c065950b9bcd2d602006efc334782bdfe6296 xz-5.4.4.tar.bz2 # Hash for license files -sha256 bcb02973ef6e87ea73d331b3a80df7748407f17efdb784b61b47e0e610d3bb5c COPYING +sha256 72d7ef9c98be319fd34ce88b45203b36d5936f9c49e82bf3198ffee5e0c7d87e COPYING sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING.GPLv2 -sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING.GPLv3 +sha256 3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986 COPYING.GPLv3 sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LGPLv2.1 diff --git a/package/xz/xz.mk b/package/xz/xz.mk index 0120d23b85e8..42fee82e8085 100644 --- a/package/xz/xz.mk +++ b/package/xz/xz.mk @@ -4,7 +4,7 @@ # ################################################################################ -XZ_VERSION = 5.2.10 +XZ_VERSION = 5.4.4 XZ_SOURCE = xz-$(XZ_VERSION).tar.bz2 XZ_SITE = https://tukaani.org/xz XZ_INSTALL_STAGING = YES diff --git a/package/yajl/yajl.mk b/package/yajl/yajl.mk index d14a68b4024b..cd23c8728da3 100644 --- a/package/yajl/yajl.mk +++ b/package/yajl/yajl.mk @@ -9,5 +9,6 @@ YAJL_SITE = $(call github,lloyd,yajl,refs/tags/$(YAJL_VERSION)) YAJL_INSTALL_STAGING = YES YAJL_LICENSE = ISC YAJL_LICENSE_FILES = COPYING +YAJL_CPE_ID_VENDOR = yajl_project $(eval $(cmake-package)) diff --git a/package/yaml-cpp/yaml-cpp.hash b/package/yaml-cpp/yaml-cpp.hash index 9ad904143982..92bf65d2f796 100644 --- a/package/yaml-cpp/yaml-cpp.hash +++ b/package/yaml-cpp/yaml-cpp.hash @@ -1,3 +1,3 @@ # locally computed -sha256 43e6a9fcb146ad871515f0d0873947e5d497a1c9c60c58cb102a97b47208b7c3 yaml-cpp-0.7.0.tar.gz +sha256 fbe74bbdcee21d656715688706da3c8becfd946d92cd44705cc6098bb23b3a16 yaml-cpp-0.8.0.tar.gz sha256 aa6fcc27be034e41e21dd832f9175bfe694a48491d9e14ff0fa278e19ad14f1b LICENSE diff --git a/package/yaml-cpp/yaml-cpp.mk b/package/yaml-cpp/yaml-cpp.mk index d65298ffb9cf..1f879565897e 100644 --- a/package/yaml-cpp/yaml-cpp.mk +++ b/package/yaml-cpp/yaml-cpp.mk @@ -4,8 +4,8 @@ # ################################################################################ -YAML_CPP_VERSION = 0.7.0 -YAML_CPP_SITE = $(call github,jbeder,yaml-cpp,yaml-cpp-$(YAML_CPP_VERSION)) +YAML_CPP_VERSION = 0.8.0 +YAML_CPP_SITE = $(call github,jbeder,yaml-cpp,$(YAML_CPP_VERSION)) YAML_CPP_INSTALL_STAGING = YES YAML_CPP_LICENSE = MIT YAML_CPP_LICENSE_FILES = LICENSE @@ -13,6 +13,7 @@ YAML_CPP_CPE_ID_VENDOR = yaml-cpp_project # Disable testing and parse tools YAML_CPP_CONF_OPTS += \ + -DCMAKE_DEBUG_POSTFIX="" \ -DYAML_CPP_BUILD_TESTS=OFF \ -DYAML_CPP_BUILD_TOOLS=OFF diff --git a/package/yavta/yavta.mk b/package/yavta/yavta.mk index d16bee69b117..db481b77b957 100644 --- a/package/yavta/yavta.mk +++ b/package/yavta/yavta.mk @@ -5,7 +5,7 @@ ################################################################################ YAVTA_VERSION = 583bedefc2a247d2cfd32d1b4a0abbe3e2015c70 -YAVTA_SITE = https://git.ideasonboard.org/git/yavta.git +YAVTA_SITE = https://git.ideasonboard.org/yavta.git YAVTA_SITE_METHOD = git YAVTA_LICENSE = GPL-2.0+ YAVTA_LICENSE_FILES = COPYING.GPL diff --git a/package/ytree/0001-fix-musl.patch b/package/ytree/0001-fix-musl.patch deleted file mode 100644 index 0a24744669e6..000000000000 --- a/package/ytree/0001-fix-musl.patch +++ /dev/null @@ -1,26 +0,0 @@ -Fix musl build - -Fixes - - match.c.text+0x9c): undefined reference to `re_comp' - match.c.text+0xca): undefined reference to `re_exec' - -by forcing to use the 'modern' regex methods implementation instead of -the obsolete re_comp/re_exec ([1]) one? - -[1] http://man7.org/linux/man-pages/man3/re_comp.3.html - -Signed-off-by: Bernd Kuhls - -diff -uNr ytree-1.99pl2.orig/match.c ytree-1.99pl2/match.c ---- ytree-1.99pl2.orig/match.c 2019-09-29 12:37:57.000000000 +0200 -+++ ytree-1.99pl2/match.c 2019-10-01 19:46:56.193815327 +0200 -@@ -10,7 +10,7 @@ - #include "ytree.h" - - #if defined( sun ) || defined( linux ) || defined( __NeXT__ ) || defined( OSF1 ) || defined( __OpenBSD__ ) || defined(__NetBSD__) || defined( __FreeBSD__ ) || defined( __GNU__ ) --#define HAS_REGEX -+#define HAS_REGCOMP - #endif - - #ifdef linux diff --git a/package/ytree/ytree.hash b/package/ytree/ytree.hash index 88ca8282bfd9..f3fbba8673b0 100644 --- a/package/ytree/ytree.hash +++ b/package/ytree/ytree.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 6e7a8b7f68efe6d365abe33a1d06d739ad85f22a3d54ddd0aec24a3478d66642 ytree-2.04.tar.gz +sha256 8cf8b151e4913b5b7f7a91dffd5c7306106a42477ec44e71d62c75f66ab61a57 ytree-2.05.tar.gz sha256 eb6bf7204569b4fe8eaf9d4dffc57e44047c5efb5deba1b2d99069ddbc99d031 COPYING diff --git a/package/ytree/ytree.mk b/package/ytree/ytree.mk index a64ebe83eda6..1bd2df46b67a 100644 --- a/package/ytree/ytree.mk +++ b/package/ytree/ytree.mk @@ -4,7 +4,7 @@ # ################################################################################ -YTREE_VERSION = 2.04 +YTREE_VERSION = 2.05 YTREE_SITE = https://www.han.de/~werner YTREE_LICENSE = GPL-2.0+ YTREE_LICENSE_FILES = COPYING diff --git a/package/z3/z3.hash b/package/z3/z3.hash index 8a511c3fe5d1..bddf3066ba51 100644 --- a/package/z3/z3.hash +++ b/package/z3/z3.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 a3735fabf00e1341adcc70394993c05fd3e2ae167a3e9bb46045e33084eb64a3 z3-4.12.1.tar.gz +sha256 9f58f3710bd2094085951a75791550f547903d75fe7e2fcb373c5f03fc761b8f z3-4.12.2.tar.gz sha256 e617cad2ab9347e3129c2b171e87909332174e17961c5c3412d0799469111337 LICENSE.txt diff --git a/package/z3/z3.mk b/package/z3/z3.mk index 45c412ad126e..501d9ee61aa7 100644 --- a/package/z3/z3.mk +++ b/package/z3/z3.mk @@ -4,7 +4,7 @@ # ################################################################################ -Z3_VERSION = 4.12.1 +Z3_VERSION = 4.12.2 Z3_SITE = $(call github,Z3Prover,z3,z3-$(Z3_VERSION)) Z3_LICENSE = MIT Z3_LICENSE_FILES = LICENSE.txt diff --git a/package/zabbix/Config.in b/package/zabbix/Config.in index 377c0ff692c6..af677f782ea6 100644 --- a/package/zabbix/Config.in +++ b/package/zabbix/Config.in @@ -26,7 +26,7 @@ config BR2_PACKAGE_ZABBIX_SERVER depends on BR2_USE_MMU # mysql, postgresql depends on \ (BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS) || \ - (BR2_USE_WCHAR && !BR2_STATIC_LIBS) + (BR2_USE_WCHAR && !BR2_STATIC_LIBS && !BR2_OPTIMIZE_FAST) select BR2_PACKAGE_ZLIB select BR2_PACKAGE_LIBEVENT diff --git a/package/zabbix/zabbix.mk b/package/zabbix/zabbix.mk index 0d6c579f4c72..3b126caa4982 100644 --- a/package/zabbix/zabbix.mk +++ b/package/zabbix/zabbix.mk @@ -7,6 +7,7 @@ ZABBIX_VERSION_MAJOR = 6.2 ZABBIX_VERSION = $(ZABBIX_VERSION_MAJOR).7 ZABBIX_SITE = https://cdn.zabbix.com/zabbix/sources/stable/$(ZABBIX_VERSION_MAJOR) +ZABBIX_SELINUX_MODULES = zabbix ZABBIX_LICENSE = GPL-2.0+ ZABBIX_LICENSE_FILES = README COPYING ZABBIX_CPE_ID_VENDOR = zabbix diff --git a/package/zbar/zbar.mk b/package/zbar/zbar.mk index fb83fa01d5fa..2c933929cf11 100644 --- a/package/zbar/zbar.mk +++ b/package/zbar/zbar.mk @@ -9,6 +9,7 @@ ZBAR_SOURCE = zbar-$(ZBAR_VERSION).tar.bz2 ZBAR_SITE = https://www.linuxtv.org/downloads/zbar ZBAR_LICENSE = LGPL-2.1+ ZBAR_LICENSE_FILES = LICENSE.md +ZBAR_CPE_ID_VENDOR = zbar_project ZBAR_INSTALL_STAGING = YES ZBAR_DEPENDENCIES = libv4l jpeg $(TARGET_NLS_DEPENDENCIES) # uses C99 features diff --git a/package/zchunk/0001-meson-fix-argp-standalone-wrap-and-find_library.patch b/package/zchunk/0001-meson-fix-argp-standalone-wrap-and-find_library.patch deleted file mode 100644 index 6c9cdba3adc4..000000000000 --- a/package/zchunk/0001-meson-fix-argp-standalone-wrap-and-find_library.patch +++ /dev/null @@ -1,106 +0,0 @@ -From 473c97cda44b95f5cea08a0cdd566e602df564db Mon Sep 17 00:00:00 2001 -From: James Hilliard -Date: Thu, 21 Apr 2022 14:24:01 -0600 -Subject: [PATCH] meson: fix argp-standalone wrap and find_library - -Signed-off-by: James Hilliard -[james.hilliard1@gmail.com: backport from upstream commit -473c97cda44b95f5cea08a0cdd566e602df564db] ---- - .github/workflows/main.yml | 27 --------------------------- - meson.build | 6 +++--- - subprojects/argp-standalone.wrap | 7 +++++++ - 3 files changed, 10 insertions(+), 30 deletions(-) - create mode 100644 subprojects/argp-standalone.wrap - -diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml -index c49806f..35667af 100644 ---- a/.github/workflows/main.yml -+++ b/.github/workflows/main.yml -@@ -35,25 +35,11 @@ jobs: - steps: - - uses: actions/checkout@v2 - -- - uses: actions/checkout@v2 -- with: -- repository: wolfv/argp-standalone -- path: argp-standalone -- - - name: Install mamba - uses: mamba-org/provision-with-micromamba@main - with: - environment-file: .github/environment.yml - -- - name: Compile argp-standalone -- shell: cmd /C CALL {0} -- run: | -- CALL micromamba activate zchunk_test_env -- cd argp-standalone -- meson setup builddir -- meson compile -C builddir --prefix=%CONDA_PREFIX%\Library -- meson install -C builddir -- - - name: Compile zchunk - shell: cmd /C CALL {0} - run: | -@@ -75,11 +61,6 @@ jobs: - steps: - - uses: actions/checkout@v2 - -- - uses: actions/checkout@v2 -- with: -- repository: wolfv/argp-standalone -- path: argp-standalone -- - - uses: actions/setup-python@v1 - with: - python-version: '3.x' -@@ -87,14 +68,6 @@ jobs: - - name: Install meson and ninja - run: pip install meson ninja - -- - name: Compile argp-standalone -- shell: cmd /C CALL {0} -- run: | -- cd argp-standalone -- meson setup builddir -- meson compile -C builddir -- meson install -C builddir -- - - name: Compile zchunk - shell: cmd /C CALL {0} - run: | -diff --git a/meson.build b/meson.build -index 1c6b32d..aa7dd25 100644 ---- a/meson.build -+++ b/meson.build -@@ -58,10 +58,10 @@ endif - - # argp-standalone dependency (if required) - if build_machine.system() == 'windows' or build_machine.system() == 'darwin' or build_machine.system() == 'freebsd' or not cc.links('#include \nstatic error_t parse_opt (int key, char *arg, struct argp_state *state) { argp_usage(state); return 0; }; void main() {}') -- if fs.is_dir(join_paths([get_option('prefix'), 'include'])) -- inc += include_directories(join_paths([get_option('prefix'), 'include'])) -+ argplib = cc.find_library('argp', has_headers : ['argp.h'], required: false) -+ if not argplib.found() -+ argplib = dependency('argp-standalone') - endif -- argplib = cc.find_library('argp', dirs : join_paths([get_option('prefix'), 'lib'])) - else - argplib = dependency('', required : false) - endif -diff --git a/subprojects/argp-standalone.wrap b/subprojects/argp-standalone.wrap -new file mode 100644 -index 0000000..14c0b63 ---- /dev/null -+++ b/subprojects/argp-standalone.wrap -@@ -0,0 +1,7 @@ -+[wrap-git] -+directory = argp-standalone-1.4.1 -+url = https://github.com/argp-standalone/argp-standalone.git -+revision = 21855f34ec9997c37e1a08cd69497336513a5800 -+ -+[provide] -+dependency_names = argp-standalone --- -2.25.1 - diff --git a/package/zchunk/0002-zck-declare-write_data-as-static.patch b/package/zchunk/0002-zck-declare-write_data-as-static.patch deleted file mode 100644 index 3c48ab3d5092..000000000000 --- a/package/zchunk/0002-zck-declare-write_data-as-static.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 477c4e891bd4d9e41fcbaa07cd1a37c0975df5cc Mon Sep 17 00:00:00 2001 -From: James Hilliard -Date: Wed, 4 May 2022 16:32:48 -0600 -Subject: [PATCH] zck: declare write_data as static - -This needs to be declared static to avoid a symbol conflict: -io.c:(.text+0xe8): multiple definition of `write_data'; src/zck.p/zck.c.o:zck.c:(.text+0x1f4): first defined here - -Fixes: - - http://autobuild.buildroot.net/results/225/22590a7038a40da3700d56c1f82f7dc74225702a - -Signed-off-by: James Hilliard -[james.hilliard1@gmail.com: backport from upstream commit -477c4e891bd4d9e41fcbaa07cd1a37c0975df5cc] ---- - src/zck.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/zck.c b/src/zck.c -index 7727479..83b2630 100644 ---- a/src/zck.c -+++ b/src/zck.c -@@ -159,7 +159,7 @@ static error_t parse_opt (int key, char *arg, struct argp_state *state) { - - static struct argp argp = {options, parse_opt, args_doc, doc}; - --void write_data(zckCtx *zck, char *data, ssize_t in_size) { -+static void write_data(zckCtx *zck, char *data, ssize_t in_size) { - if(zck_write(zck, data, in_size) < 0) { - LOG_ERROR("%s", zck_get_error(zck)); - exit(1); --- -2.25.1 - diff --git a/package/zchunk/zchunk.hash b/package/zchunk/zchunk.hash index fa097d4ae0ad..15103a9ea066 100644 --- a/package/zchunk/zchunk.hash +++ b/package/zchunk/zchunk.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 bc36f13b1bcb2ab52d046bfc3ec04a9bd1f89b070b4e8fca52eded235a583526 zchunk-1.2.2.tar.gz +sha256 4d923d32af7db33f3c0a6655b258e857a2ca564912cf85ddce14e9b1b7d495bf zchunk-1.3.2.tar.gz sha256 3c6a4fd5a93cacec6bf694d0537246bc15a95a274f5c5301749754e56d27b797 LICENSE diff --git a/package/zchunk/zchunk.mk b/package/zchunk/zchunk.mk index fc91f90431c0..39d51ac35248 100644 --- a/package/zchunk/zchunk.mk +++ b/package/zchunk/zchunk.mk @@ -4,11 +4,13 @@ # ################################################################################ -ZCHUNK_VERSION = 1.2.2 +ZCHUNK_VERSION = 1.3.2 ZCHUNK_SITE = $(call github,zchunk,zchunk,$(ZCHUNK_VERSION)) ZCHUNK_LICENSE = BSD-2-Clause ZCHUNK_LICENSE_FILES = LICENSE +ZCHUNK_CPE_ID_VENDOR = zchunk ZCHUNK_INSTALL_STAGING = YES +ZCHUNK_CONF_OPTS = -Ddocs=false -Dtests=false ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y) ZCHUNK_DEPENDENCIES += argp-standalone $(TARGET_NLS_DEPENDENCIES) diff --git a/package/zeek/Config.in b/package/zeek/Config.in index 114ec4235de6..730388ded753 100644 --- a/package/zeek/Config.in +++ b/package/zeek/Config.in @@ -10,6 +10,7 @@ config BR2_PACKAGE_ZEEK select BR2_PACKAGE_LIBPCAP select BR2_PACKAGE_MUSL_FTS if !BR2_TOOLCHAIN_USES_GLIBC select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL select BR2_PACKAGE_ZLIB help The Zeek Network Security Monitor diff --git a/package/zerofree/Config.in b/package/zerofree/Config.in index 99466d6baec0..e7007819d876 100644 --- a/package/zerofree/Config.in +++ b/package/zerofree/Config.in @@ -9,6 +9,6 @@ config BR2_PACKAGE_ZEROFREE https://frippery.org/uml/ -comment "zerofree needs a toolchain w/ dynamic library" +comment "zerofree needs a toolchain w/ dynamic library" depends on BR2_USE_MMU depends on BR2_STATIC_LIBS diff --git a/package/zeromq/zeromq.hash b/package/zeromq/zeromq.hash index 5085fbca3308..e5ac289656d6 100644 --- a/package/zeromq/zeromq.hash +++ b/package/zeromq/zeromq.hash @@ -1,7 +1,6 @@ # From https://github.com/zeromq/libzmq/releases -md5 c897d4005a3f0b8276b00b7921412379 zeromq-4.3.4.tar.gz -sha1 47277a64749049123d1401600e8cfbab10a3ae28 zeromq-4.3.4.tar.gz +md5 ae933b1e98411fd7cb8309f9502d2737 zeromq-4.3.5.tar.gz +sha1 bdbf686c8a40ba638e21cf74e34dbb425e108500 zeromq-4.3.5.tar.gz # Locally computed -sha256 c593001a89f5a85dd2ddf564805deb860e02471171b3f204944857336295c3e5 zeromq-4.3.4.tar.gz -sha256 4fd86507c9b486764343065a9e035222869a27b5789efeb4fd93edc85412d7a3 COPYING -sha256 83f32abe61ee58ffb1b007412c08415168c052501dbf56d7a47aaaac52b03ef6 COPYING.LESSER +sha256 6653ef5910f17954861fe72332e68b03ca6e4d9c7160eb3a8de5a5a913bfab43 zeromq-4.3.5.tar.gz +sha256 1f256ecad192880510e84ad60474eab7589218784b9a50bc7ceee34c2b91f1d5 LICENSE diff --git a/package/zeromq/zeromq.mk b/package/zeromq/zeromq.mk index 452c5f429171..137fad1a6693 100644 --- a/package/zeromq/zeromq.mk +++ b/package/zeromq/zeromq.mk @@ -4,12 +4,12 @@ # ################################################################################ -ZEROMQ_VERSION = 4.3.4 +ZEROMQ_VERSION = 4.3.5 ZEROMQ_SITE = https://github.com/zeromq/libzmq/releases/download/v$(ZEROMQ_VERSION) ZEROMQ_INSTALL_STAGING = YES ZEROMQ_CONF_OPTS = --disable-Werror --without-documentation -ZEROMQ_LICENSE = LGPL-3.0+ with exceptions -ZEROMQ_LICENSE_FILES = COPYING COPYING.LESSER +ZEROMQ_LICENSE = MPL-2.0 +ZEROMQ_LICENSE_FILES = LICENSE ZEROMQ_CPE_ID_VENDOR = zeromq ZEROMQ_CPE_ID_PRODUCT = libzmq diff --git a/package/zfs/Config.in b/package/zfs/Config.in index 6209c5865b70..049e0716f3ad 100644 --- a/package/zfs/Config.in +++ b/package/zfs/Config.in @@ -11,6 +11,7 @@ config BR2_PACKAGE_ZFS depends on BR2_PACKAGE_HAS_UDEV depends on BR2_USE_MMU # util-linux (libblkid) depends on BR2_TOOLCHAIN_HAS_THREADS # libtirpc + select BR2_LINUX_NEEDS_MODULES select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBBLKID select BR2_PACKAGE_UTIL_LINUX_LIBUUID diff --git a/package/zfs/zfs.hash b/package/zfs/zfs.hash index 0bce3817fee1..01c86f2bd69c 100644 --- a/package/zfs/zfs.hash +++ b/package/zfs/zfs.hash @@ -1,6 +1,5 @@ -# From https://github.com/openzfs/zfs/releases/download/zfs-2.1.7/zfs-2.1.7.sha256.asc -sha256 6462e63e185de6ff10c64ffa6ed773201a082f9dd13e603d7e8136fcb4aca71b zfs-2.1.7.tar.gz -sha256 96a27353fe717ff2c8b95deb8b009c4eb750303c6400e2d8a2582ab1ec12b25a bc3f12bfac152a0c28951cec92340ba14f9ccee9.patch +# From https://github.com/openzfs/zfs/releases/download/zfs-2.2.2/zfs-2.2.2.sha256.asc +sha256 76bc0547d9ba31d4b0142e417aaaf9f969072c3cb3c1a5b10c8738f39ed12fc9 zfs-2.2.2.tar.gz # Hash for license files: sha256 1ffb70c33c4f79f04e947facc5c7851f289609256aacb47fc115f700427d9520 LICENSE diff --git a/package/zfs/zfs.mk b/package/zfs/zfs.mk index 84e9099ba901..59cdd31942d1 100644 --- a/package/zfs/zfs.mk +++ b/package/zfs/zfs.mk @@ -4,17 +4,18 @@ # ################################################################################ -ZFS_VERSION = 2.1.7 +ZFS_VERSION = 2.2.2 ZFS_SITE = https://github.com/openzfs/zfs/releases/download/zfs-$(ZFS_VERSION) -ZFS_PATCH = https://github.com/openzfs/zfs/commit/bc3f12bfac152a0c28951cec92340ba14f9ccee9.patch +ZFS_SELINUX_MODULES = zfs ZFS_LICENSE = CDDL ZFS_LICENSE_FILES = LICENSE COPYRIGHT ZFS_CPE_ID_VENDOR = openzfs ZFS_CPE_ID_PRODUCT = openzfs +# 0001-config-user-check-for-aio.h.patch ZFS_AUTORECONF = YES -ZFS_DEPENDENCIES = libaio openssl udev util-linux zlib libcurl +ZFS_DEPENDENCIES = libaio openssl udev util-linux zlib libcurl linux # sysvinit installs only a commented-out modules-load.d/ config file ZFS_CONF_OPTS = \ @@ -57,6 +58,14 @@ else ZFS_CONF_OPTS += --disable-pam endif +# Sets the environment for the `make` that will be run ZFS autotools checks. +ZFS_CONF_ENV += \ + ARCH=$(KERNEL_ARCH) \ + CROSS_COMPILE="$(TARGET_CROSS)" +ZFS_MAKE_ENV += \ + ARCH=$(KERNEL_ARCH) \ + CROSS_COMPILE="$(TARGET_CROSS)" + # ZFS userland tools are unfunctional without the Linux kernel modules. ZFS_MODULE_SUBDIRS = \ module/avl \ @@ -78,5 +87,7 @@ define ZFS_LINUX_CONFIG_FIXUPS $(call KCONFIG_ENABLE_OPT,CONFIG_ZLIB_INFLATE) endef -$(eval $(kernel-module)) +# Even though zfs builds a kernel module, it gets built directly by +# the autotools logic, so we don't use the kernel-module +# infrastructure. $(eval $(autotools-package)) diff --git a/package/zic/zic.hash b/package/zic/zic.hash index 40f68f02996b..a2720a27baa3 100644 --- a/package/zic/zic.hash +++ b/package/zic/zic.hash @@ -1,4 +1,4 @@ -# From https://mm.icann.org/pipermail/tz-announce/2022-October/000075.html -sha512 3e2ef91b972f1872e3e8da9eae9d1c4638bfdb32600f164484edd7147be45a116db80443cd5ae61b5c34f8b841e4362f4beefd957633f6cc9b7def543ed6752b tzcode2022f.tar.gz +# From https://mm.icann.org/pipermail/tz-announce/2023-March/000079.html +sha512 fa18bae9c0e7c061bc9d5f5f2eb9967f0e4ddb2baafdee9887fa30cd0c60f4aa6f21eacffb17df0d59d26ff54d08c5dcefa98159309eba497e86443624913a82 tzcode2023c.tar.gz # Locally computed: sha256 0613408568889f5739e5ae252b722a2659c02002839ad970a63dc5e9174b27cf LICENSE diff --git a/package/zic/zic.mk b/package/zic/zic.mk index 229afaadc21c..a915f6d25653 100644 --- a/package/zic/zic.mk +++ b/package/zic/zic.mk @@ -4,7 +4,7 @@ # ################################################################################ -ZIC_VERSION = 2022f +ZIC_VERSION = 2023c ZIC_SOURCE = tzcode$(ZIC_VERSION).tar.gz ZIC_SITE = https://www.iana.org/time-zones/repository/releases ZIC_STRIP_COMPONENTS = 0 diff --git a/package/zlib-ng/0001-Use-static-keyword-for-vec_sumsu-to-prevent-undefine.patch b/package/zlib-ng/0001-Use-static-keyword-for-vec_sumsu-to-prevent-undefine.patch deleted file mode 100644 index cc103215de3c..000000000000 --- a/package/zlib-ng/0001-Use-static-keyword-for-vec_sumsu-to-prevent-undefine.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 677f56825f7080403e18e57ffe8177f3df290f20 Mon Sep 17 00:00:00 2001 -From: Nathan Moinvaziri -Date: Sun, 23 Jan 2022 12:59:01 -0800 -Subject: [PATCH] Use static keyword for vec_sumsu to prevent undefined - reference error when g++ linking. - -Signed-off-by: Joel Stanley ---- - arch/power/adler32_power8.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/arch/power/adler32_power8.c b/arch/power/adler32_power8.c -index 029aa3a84c57..fc4086322efc 100644 ---- a/arch/power/adler32_power8.c -+++ b/arch/power/adler32_power8.c -@@ -44,7 +44,7 @@ - #include "adler32_p.h" - - /* Vector across sum unsigned int (saturate). */ --inline vector unsigned int vec_sumsu(vector unsigned int __a, vector unsigned int __b) { -+static inline vector unsigned int vec_sumsu(vector unsigned int __a, vector unsigned int __b) { - __b = vec_sld(__a, __a, 8); - __b = vec_add(__b, __a); - __a = vec_sld(__b, __b, 4); --- -2.35.1 - diff --git a/package/zlib-ng/0002-CMakeLists.txt-fix-version-in-zlib.pc-when-building-.patch b/package/zlib-ng/0002-CMakeLists.txt-fix-version-in-zlib.pc-when-building-.patch deleted file mode 100644 index 749c45ddcad6..000000000000 --- a/package/zlib-ng/0002-CMakeLists.txt-fix-version-in-zlib.pc-when-building-.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 9fcc446306f27eb253545540ce28403874b899fa Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Fri, 27 May 2022 23:25:21 +0200 -Subject: [PATCH] CMakeLists.txt: fix version in zlib.pc when building - statically - -When building statically (i.e. with BUILD_SHARED_LIBS=OFF), -ZLIB_FULL_VERSION is not set resulting in an empty version in zlib.pc -and the following build failure with transmission: - -checking for ZLIB... configure: error: Package requirements (zlib >= 1.2.3) were not met: - -Package dependency requirement 'zlib >= 1.2.3' could not be satisfied. -Package 'zlib' has version '', required version is '>= 1.2.3' - -Fixes: - - http://autobuild.buildroot.org/results/b3b882482f517726e5c780ba4c37818bd379df82 - -Signed-off-by: Fabrice Fontaine -[Upstream status: https://github.com/zlib-ng/zlib-ng/pull/1278] ---- - CMakeLists.txt | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index a62a95e..6a26d59 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -150,8 +150,10 @@ if(ZLIB_COMPAT) - add_definitions(-DZLIB_COMPAT) - set(WITH_GZFILEOP ON) - set(SUFFIX "") -+ set(ZLIB_FULL_VERSION ${ZLIB_HEADER_VERSION}.zlib-ng) - else() - set(SUFFIX "-ng") -+ set(ZLIB_FULL_VERSION ${ZLIBNG_HEADER_VERSION}) - endif() - - if(WITH_GZFILEOP) -@@ -1068,10 +1070,8 @@ if(NOT DEFINED BUILD_SHARED_LIBS OR BUILD_SHARED_LIBS) - set_target_properties(zlib PROPERTIES DEFINE_SYMBOL ZLIB_DLL) - - if(ZLIB_COMPAT) -- set(ZLIB_FULL_VERSION ${ZLIB_HEADER_VERSION}.zlib-ng) - set_target_properties(zlib PROPERTIES SOVERSION 1) - else() -- set(ZLIB_FULL_VERSION ${ZLIBNG_HEADER_VERSION}) - set_target_properties(zlib PROPERTIES SOVERSION 2) - endif() - --- -2.35.1 - diff --git a/package/zlib-ng/0003-zlib-ng-check-that-sys-auxv.h-exists-at-configure-time.patch b/package/zlib-ng/0003-zlib-ng-check-that-sys-auxv.h-exists-at-configure-time.patch deleted file mode 100644 index ba8297cda7b0..000000000000 --- a/package/zlib-ng/0003-zlib-ng-check-that-sys-auxv.h-exists-at-configure-time.patch +++ /dev/null @@ -1,90 +0,0 @@ -From e1baa6b439c06f3d0e6be3e381cc746ffb55aee1 Mon Sep 17 00:00:00 2001 -From: Mika Lindqvist -Date: Wed, 13 Apr 2022 01:22:29 +0300 -Subject: [PATCH] Check that sys/auxv.h exists at configure time and add - preprocessor define for it. * Protect including sys/auxv.h in all relevant - files with the new preprocessor define * Test for both existence of both - sys/auxv.h and getauxval() with both cmake and configure - -[Ben Hutchings: Backport to 2.0.6: - - Drop the s390 changes - - Change some filenames] - -Backported from: e1baa6b439c06f3d0e6be3e381cc746ffb55aee1 -Signed-off-by: Ben Hutchings ---- - CMakeLists.txt | 4 ++++ - arch/arm/armfeature.c | 2 +- - arch/power/power.c | 5 ++++- - configure | 13 +++++++++++++ - 4 files changed, 22 insertions(+), 2 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 0dd196130..e4e4b7332 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -338,6 +338,10 @@ endif() - # - # Check for standard/system includes - # -+check_include_file(sys/auxv.h HAVE_SYS_AUXV_H) -+if(HAVE_SYS_AUXV_H) -+ add_definitions(-DHAVE_SYS_AUXV_H) -+endif() - check_include_file(sys/sdt.h HAVE_SYS_SDT_H) - if(HAVE_SYS_SDT_H) - add_definitions(-DHAVE_SYS_SDT_H) -diff --git a/arch/arm/arm_features.c b/arch/arm/arm_features.c -index 195c94992..f6b67687f 100644 ---- a/arch/arm/armfeature.c -+++ b/arch/arm/armfeature.c -@@ -1,6 +1,6 @@ - #include "../../zutil.h" - --#if defined(__linux__) -+#if defined(__linux__) && defined(HAVE_SYS_AUXV_H) - # include - # ifdef ARM_ASM_HWCAP - # include -diff --git a/arch/power/power_features.c b/arch/power/power_features.c -index 9186b40d8..65599d9a7 100644 ---- a/arch/power/power.c -+++ b/arch/power/power.c -@@ -1,9 +1,12 @@ - /* POWER feature check - * Copyright (C) 2020 Matheus Castanho , IBM -+ * Copyright (C) 2021-2022 Mika T. Lindqvist - * For conditions of distribution and use, see copyright notice in zlib.h - */ - --#include -+#ifdef HAVE_SYS_AUXV_H -+# include -+#endif - #include "../../zutil.h" - - Z_INTERNAL int power_cpu_has_arch_2_07; -diff --git a/configure b/configure -index aed1909cc..a357e1c8a 100755 ---- a/configure -+++ b/configure -@@ -776,6 +776,19 @@ else - echo "Checking for strerror... No." | tee -a configure.log - fi - -+# check for getauxval() for architecture feature detection at run-time -+cat > $test.c < -+int main() { return getauxval(0); } -+EOF -+if try $CC $CFLAGS -o $test $test.c $LDSHAREDLIBC; then -+ echo "Checking for getauxval() in sys/auxv.h... Yes." | tee -a configure.log -+ CFLAGS="${CFLAGS} -DHAVE_SYS_AUXV_H" -+ SFLAGS="${SFLAGS} -DHAVE_SYS_AUXV_H" -+else -+ echo "Checking for getauxval() in sys/auxv.h... No." | tee -a configure.log -+fi -+ - # We need to remove zconf.h from source directory if building outside of it - if [ "$SRCDIR" != "$BUILDDIR" ]; then - rm -f $SRCDIR/zconf${SUFFIX}.h diff --git a/package/zlib-ng/zlib-ng.hash b/package/zlib-ng/zlib-ng.hash index a799cfe253c4..a2fe98435c90 100644 --- a/package/zlib-ng/zlib-ng.hash +++ b/package/zlib-ng/zlib-ng.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 8258b75a72303b661a238047cb348203d88d9dddf85d480ed885f375916fcab6 zlib-ng-2.0.6.tar.gz +sha256 d20e55f89d71991c59f1c5ad1ef944815e5850526c0d9cd8e504eaed5b24491a zlib-ng-2.1.3.tar.gz sha256 d3c80be055d94d798eaa786116e84fa0b010bc11420b5d2060d978ea77845436 LICENSE.md diff --git a/package/zlib-ng/zlib-ng.mk b/package/zlib-ng/zlib-ng.mk index aa65d8437dbc..fbb906503ac0 100644 --- a/package/zlib-ng/zlib-ng.mk +++ b/package/zlib-ng/zlib-ng.mk @@ -4,7 +4,7 @@ # ################################################################################ -ZLIB_NG_VERSION = 2.0.6 +ZLIB_NG_VERSION = 2.1.3 ZLIB_NG_SITE = $(call github,zlib-ng,zlib-ng,$(ZLIB_NG_VERSION)) ZLIB_NG_LICENSE = Zlib ZLIB_NG_LICENSE_FILES = LICENSE.md @@ -35,4 +35,10 @@ else ZLIB_NG_CONF_OPTS += -DWITH_POWER8=OFF endif +ifeq ($(BR2_powerpc_power9),y) +ZLIB_NG_CONF_OPTS += -DWITH_POWER9=ON +else +ZLIB_NG_CONF_OPTS += -DWITH_POWER9=OFF +endif + $(eval $(cmake-package)) diff --git a/package/znc/0004-Add-support-SWIG-4.1.0-drop-support-for-4.0.1.patch b/package/znc/0004-Add-support-SWIG-4.1.0-drop-support-for-4.0.1.patch new file mode 100644 index 000000000000..cb0988e63149 --- /dev/null +++ b/package/znc/0004-Add-support-SWIG-4.1.0-drop-support-for-4.0.1.patch @@ -0,0 +1,53 @@ +From fecdd9895894b3afe903021b0843a422eb4d3308 Mon Sep 17 00:00:00 2001 +From: Alexey Sokolov +Date: Sat, 5 Nov 2022 12:54:40 +0000 +Subject: [PATCH] Add support SWIG 4.1.0, drop support for < 4.0.1 + +https://bugs.gentoo.org/878587 + +Upstream: https://github.com/znc/znc/commit/fecdd9895894b3afe903021b0843a422eb4d3308 + +Signed-off-by: Bernd Kuhls +--- + CMakeLists.txt | 2 +- + modules/modperl/CMakeLists.txt | 1 - + modules/modpython/CMakeLists.txt | 1 - + 3 files changed, 1 insertion(+), 3 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 9d43578e0e..efab0ee1ee 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -173,7 +173,7 @@ if(WANT_PYTHON AND NOT EXISTS + endif() + endif() + if(search_swig) +- find_package(SWIG 3.0.0) ++ find_package(SWIG 4.0.1) + if(NOT SWIG_FOUND) + message(FATAL_ERROR + "Can't find SWIG, therefore Perl and Python aren't supported. " +diff --git a/modules/modperl/CMakeLists.txt b/modules/modperl/CMakeLists.txt +index e18fe47644..a87f74e478 100644 +--- a/modules/modperl/CMakeLists.txt ++++ b/modules/modperl/CMakeLists.txt +@@ -53,7 +53,6 @@ if(SWIG_FOUND) + "-I${PROJECT_SOURCE_DIR}/include" + "-I${CMAKE_CURRENT_SOURCE_DIR}/.." + "-I${CMAKE_CURRENT_SOURCE_DIR}/include" +- -DZNC_EXPORT_LIB_EXPORT + -outdir "${CMAKE_CURRENT_BINARY_DIR}" + -o "${CMAKE_CURRENT_BINARY_DIR}/modperl_biglib.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/modperl.i" +diff --git a/modules/modpython/CMakeLists.txt b/modules/modpython/CMakeLists.txt +index edbeb41ed5..36a2e649f0 100644 +--- a/modules/modpython/CMakeLists.txt ++++ b/modules/modpython/CMakeLists.txt +@@ -50,7 +50,6 @@ if(SWIG_FOUND) + "-I${PROJECT_BINARY_DIR}/include" + "-I${PROJECT_SOURCE_DIR}/include" + "-I${CMAKE_CURRENT_SOURCE_DIR}/.." +- -DZNC_EXPORT_LIB_EXPORT + -outdir "${CMAKE_CURRENT_BINARY_DIR}" + -o "${CMAKE_CURRENT_BINARY_DIR}/modpython_biglib.cpp" + "${CMAKE_CURRENT_SOURCE_DIR}/modpython.i" diff --git a/package/zstd/zstd.hash b/package/zstd/zstd.hash index eca44b89f03c..abfb1d62e200 100644 --- a/package/zstd/zstd.hash +++ b/package/zstd/zstd.hash @@ -1,6 +1,6 @@ -# From https://github.com/facebook/zstd/releases/download/v1.5.2/zstd-1.5.2.tar.gz.sha256 -sha256 7c42d56fac126929a6a85dbc73ff1db2411d04f104fae9bdea51305663a83fd0 zstd-1.5.2.tar.gz +# From https://github.com/facebook/zstd/releases/download/v1.5.5/zstd-1.5.5.tar.gz.sha256 +sha256 9c4396cc829cfae319a6e2615202e82aad41372073482fce286fac78646d3ee4 zstd-1.5.5.tar.gz # License files (locally computed) -sha256 2c1a7fa704df8f3a606f6fc010b8b5aaebf403f3aeec339a12048f1ba7331a0b LICENSE +sha256 7055266497633c9025b777c78eb7235af13922117480ed5c674677adc381c9d8 LICENSE sha256 f9c375a1be4a41f7b70301dd83c91cb89e41567478859b77eef375a52d782505 COPYING diff --git a/package/zstd/zstd.mk b/package/zstd/zstd.mk index 73bb97a793d3..e25202fd63c0 100644 --- a/package/zstd/zstd.mk +++ b/package/zstd/zstd.mk @@ -4,7 +4,7 @@ # ################################################################################ -ZSTD_VERSION = 1.5.2 +ZSTD_VERSION = 1.5.5 ZSTD_SITE = https://github.com/facebook/zstd/releases/download/v$(ZSTD_VERSION) ZSTD_INSTALL_STAGING = YES ZSTD_LICENSE = BSD-3-Clause or GPL-2.0 diff --git a/package/zxing-cpp/zxing-cpp.hash b/package/zxing-cpp/zxing-cpp.hash index 5457ede44a61..6c6917ed8650 100644 --- a/package/zxing-cpp/zxing-cpp.hash +++ b/package/zxing-cpp/zxing-cpp.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 126767bb56f8a1f25ae84d233db2e9b9be50d71f5776092d0e170ca0f0ed1862 zxing-cpp-1.4.0.tar.gz +sha256 6d54e403592ec7a143791c6526c1baafddf4c0897bb49b1af72b70a0f0c4a3fe zxing-cpp-2.1.0.tar.gz # License files sha256 c6596eb7be8581c18be736c846fb9173b69eccf6ef94c5135893ec56bd92ba08 LICENSE diff --git a/package/zxing-cpp/zxing-cpp.mk b/package/zxing-cpp/zxing-cpp.mk index 1051376808e4..b0cadf1b1f67 100644 --- a/package/zxing-cpp/zxing-cpp.mk +++ b/package/zxing-cpp/zxing-cpp.mk @@ -4,7 +4,7 @@ # ################################################################################ -ZXING_CPP_VERSION = 1.4.0 +ZXING_CPP_VERSION = 2.1.0 ZXING_CPP_SITE = $(call github,zxing-cpp,zxing-cpp,v$(ZXING_CPP_VERSION)) ZXING_CPP_LICENSE = Apache-2.0 ZXING_CPP_LICENSE_FILES = LICENSE @@ -33,7 +33,10 @@ endif ifeq ($(BR2_PACKAGE_PYTHON3)$(BR2_PACKAGE_PYTHON_PYBIND),yy) ZXING_CPP_DEPENDENCIES += python3 python-pybind -ZXING_CPP_CONF_OPTS += -DBUILD_PYTHON_MODULE=ON +ZXING_CPP_CONF_OPTS += \ + -DBUILD_PYTHON_MODULE=ON \ + -DPYTHON_EXECUTABLE=$(HOST_DIR)/bin/python3 \ + -DPYTHON_INCLUDE_DIRS=$(STAGING_DIR)/usr/include/python$(PYTHON3_VERSION_MAJOR) else ZXING_CPP_CONF_OPTS += -DBUILD_PYTHON_MODULE=OFF endif diff --git a/package/zynaddsubfx/0001-MidiIn-Add-stdint.h-header-include.patch b/package/zynaddsubfx/0001-MidiIn-Add-stdint.h-header-include.patch new file mode 100644 index 000000000000..ea4eb6619069 --- /dev/null +++ b/package/zynaddsubfx/0001-MidiIn-Add-stdint.h-header-include.patch @@ -0,0 +1,26 @@ +From 4f1565f18cf71867f25f31c50c3a5e6995f49ae6 Mon Sep 17 00:00:00 2001 +From: fundamental +Date: Sat, 22 Apr 2023 10:21:09 -0400 +Subject: [PATCH] MidiIn: Add stdint.h header include + +Upstream: https://github.com/zynaddsubfx/zynaddsubfx/commit/70905c96fe7b9ffde19bc4bc05b0dc53a1ed1707 +Signed-off-by: Julien Olivain +--- + src/Nio/MidiIn.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/Nio/MidiIn.h b/src/Nio/MidiIn.h +index ce0bcfec..c6b30c61 100644 +--- a/src/Nio/MidiIn.h ++++ b/src/Nio/MidiIn.h +@@ -17,6 +17,7 @@ + #define MIDI_IN_H + + #include "Engine.h" ++#include //uint8_t + + namespace zyn { + +-- +2.41.0 + diff --git a/package/zynaddsubfx/0002-Bank-Add-stdint.h-header-include.patch b/package/zynaddsubfx/0002-Bank-Add-stdint.h-header-include.patch new file mode 100644 index 000000000000..556854a9e2f5 --- /dev/null +++ b/package/zynaddsubfx/0002-Bank-Add-stdint.h-header-include.patch @@ -0,0 +1,28 @@ +From eab3bc1712e5af7e6aef942a24e833ce2c429436 Mon Sep 17 00:00:00 2001 +From: fundamental +Date: Wed, 19 Apr 2023 21:52:01 -0400 +Subject: [PATCH] Bank: Add stdint.h header include + +As uint8_t is used, this header should be included. + +Upstream: https://github.com/zynaddsubfx/zynaddsubfx/commit/f384d92486d6b515cb628d0f52008a9e03341d8c +Signed-off-by: Julien Olivain +--- + src/Misc/Bank.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/Misc/Bank.h b/src/Misc/Bank.h +index 5120441a..3f324dd8 100644 +--- a/src/Misc/Bank.h ++++ b/src/Misc/Bank.h +@@ -18,6 +18,7 @@ + #include + #include "../globals.h" + #include "Config.h" ++#include + + //entries in a bank + #define BANK_SIZE 160 +-- +2.41.0 + diff --git a/support/config-fragments/autobuild/br-arm-internal-glibc.config b/support/config-fragments/autobuild/br-arm-internal-glibc.config index fb930cbef7cc..cd148f32e63b 100644 --- a/support/config-fragments/autobuild/br-arm-internal-glibc.config +++ b/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_36_X=y -BR2_GCC_VERSION_11_X=y +BR2_BINUTILS_VERSION_2_39_X=y +BR2_GCC_VERSION_12_X=y BR2_TOOLCHAIN_BUILDROOT_CXX=y diff --git a/support/dependencies/check-host-cmake.mk b/support/dependencies/check-host-cmake.mk index 5760e4ded1f1..e3676903198b 100644 --- a/support/dependencies/check-host-cmake.mk +++ b/support/dependencies/check-host-cmake.mk @@ -1,9 +1,11 @@ -# Set this to either 3.18 or higher, depending on the highest minimum -# version required by any of the packages bundled in Buildroot. If a -# package is bumped or a new one added, and it requires a higher -# version, our cmake infra will catch it and build its own. +# The cmake minimum version is set to either 3.18 or higher, +# depending on the highest minimum version required by any +# of the packages bundled in Buildroot. If a package is +# bumped or a new one added, and it requires a higher +# cmake version than the one provided by the host, our +# cmake infra will catch it and build its own. # -BR2_CMAKE_VERSION_MIN = 3.18 +BR2_CMAKE_VERSION_MIN = $(BR2_HOST_CMAKE_AT_LEAST) BR2_CMAKE_CANDIDATES ?= cmake cmake3 BR2_CMAKE ?= $(call suitable-host-package,cmake,\ diff --git a/support/dependencies/check-host-tar.sh b/support/dependencies/check-host-tar.sh index b7d607a47a0b..7d6b3bf68816 100755 --- a/support/dependencies/check-host-tar.sh +++ b/support/dependencies/check-host-tar.sh @@ -33,7 +33,12 @@ fi major_min=1 minor_min=27 -if [ $major -lt $major_min ]; then +# Maximal version = 1.34 (1.35 changed devmajor/devminor for files) +# https://lists.gnu.org/archive/html/info-gnu/2023-07/msg00005.html +major_max=1 +minor_max=34 + +if [ $major -lt $major_min -o $major -gt $major_max ]; then # echo nothing: no suitable tar found exit 1 fi @@ -43,5 +48,10 @@ if [ $major -eq $major_min -a $minor -lt $minor_min ]; then exit 1 fi +if [ $major -eq $major_max -a $minor -gt $minor_max ]; then + # echo nothing: no suitable tar found + exit 1 +fi + # valid echo $tar diff --git a/support/dependencies/dependencies.sh b/support/dependencies/dependencies.sh index 58f44c87233c..6e7d067ccdb2 100755 --- a/support/dependencies/dependencies.sh +++ b/support/dependencies/dependencies.sh @@ -280,6 +280,7 @@ required_perl_modules="$required_perl_modules English" # Used by host-libxml-par required_perl_modules="$required_perl_modules ExtUtils::MakeMaker" # Used by host-libxml-parser-perl required_perl_modules="$required_perl_modules Thread::Queue" # Used by host-automake required_perl_modules="$required_perl_modules FindBin" # Used by (host-)libopenssl +required_perl_modules="$required_perl_modules IPC::Cmd" # Used by (host-)libopenssl if grep -q ^BR2_PACKAGE_MOSH=y $BR2_CONFIG ; then required_perl_modules="$required_perl_modules diagnostics" diff --git a/support/docker/Dockerfile b/support/docker/Dockerfile index a16c1e38491e..8c6e2add6009 100644 --- a/support/docker/Dockerfile +++ b/support/docker/Dockerfile @@ -44,6 +44,7 @@ RUN apt-get -o APT::Retries=3 install -y --no-install-recommends \ python3-pexpect \ python3-pytest \ qemu-system-arm \ + qemu-system-misc \ qemu-system-x86 \ rsync \ shellcheck \ diff --git a/support/download/check-hash b/support/download/check-hash index 5a47f49bc302..03a655718770 100755 --- a/support/download/check-hash +++ b/support/download/check-hash @@ -3,12 +3,12 @@ set -e # Helper to check a file matches its known hash # Call it with: -# $1: the path of the file containing all the expected hashes -# $2: the full path to the temporary file that was downloaded, and +# $1: the full path to the temporary file that was downloaded, and # that is to be checked -# $3: the final basename of the file, to which it will be ultimately +# $2: the final basename of the file, to which it will be ultimately # saved as, to be able to match it to the corresponding hashes # in the .hash file +# $*: the paths of the files containing all the expected hashes # # Exit codes: # 0: the hash file exists and the file to check matches all its hashes, @@ -27,28 +27,21 @@ while getopts :q OPT; do done shift $((OPTIND-1)) -h_file="${1}" -file="${2}" -base="${3}" - -# Bail early if no hash to check -if [ -z "${h_file}" ]; then - exit 0 -fi -# Does the hash-file exist? -if [ ! -f "${h_file}" ]; then - printf "WARNING: no hash file for %s\n" "${base}" >&2 - exit 0 -fi +file="${1}" +base="${2}" +shift 2 +declare -a h_files=( "${@}" ) # Check one hash for a file # $1: algo hash # $2: known hash # $3: file (full path) +# $4: hash file (full path) check_one_hash() { _h="${1}" _known="${2}" _file="${3}" + _h_file="${4}" # Note: md5 is supported, but undocumented on purpose. # Note: sha3 is not supported, since there is currently no implementation @@ -70,6 +63,7 @@ check_one_hash() { return 0 fi + printf "ERROR: while checking hashes from %s\n" "${_h_file}" >&2 printf "ERROR: %s has wrong %s hash:\n" "${base}" "${_h}" >&2 printf "ERROR: expected: %s\n" "${_known}" >&2 printf "ERROR: got : %s\n" "${_hash}" >&2 @@ -79,21 +73,31 @@ check_one_hash() { } # Do we know one or more hashes for that file? +nb_h_files=0 nb_checks=0 -while read t h f; do - case "${t}" in - ''|'#'*) - # Skip comments and empty lines - continue - ;; - *) - if [ "${f}" = "${base}" ]; then - check_one_hash "${t}" "${h}" "${file}" - : $((nb_checks++)) - fi - ;; - esac -done <"${h_file}" +for h_file in "${h_files[@]}"; do + [ -f "${h_file}" ] || continue + : $((nb_h_files++)) + while read t h f; do + case "${t}" in + ''|'#'*) + # Skip comments and empty lines + continue + ;; + *) + if [ "${f}" = "${base}" ]; then + check_one_hash "${t}" "${h}" "${file}" "${h_file}" + : $((nb_checks++)) + fi + ;; + esac + done <"${h_file}" +done + +if [ ${nb_h_files} -eq 0 ]; then + printf "WARNING: no hash file for %s\n" "${base}" >&2 + exit 0 +fi if [ ${nb_checks} -eq 0 ]; then case " ${BR_NO_CHECK_HASH_FOR} " in diff --git a/support/download/dl-wrapper b/support/download/dl-wrapper index 1e8d6058f664..35428faeefe5 100755 --- a/support/download/dl-wrapper +++ b/support/download/dl-wrapper @@ -21,8 +21,8 @@ export BR_BACKEND_DL_GETOPTS=":hc:d:o:n:N:H:lru:qf:e" main() { local OPT OPTARG - local backend output hfile large_file recurse quiet rc - local -a uris + local backend output large_file recurse quiet rc + local -a uris hfiles # Parse our options; anything after '--' is for the backend while getopts ":c:d:D:o:n:N:H:lrf:u:qp:" OPT; do @@ -33,7 +33,7 @@ main() { o) output="${OPTARG}";; n) raw_base_name="${OPTARG}";; N) base_name="${OPTARG}";; - H) hfile="${OPTARG}";; + H) hfiles+=( "${OPTARG}" );; l) large_file="-l";; r) recurse="-r";; f) filename="${OPTARG}";; @@ -70,7 +70,7 @@ main() { # - fails at least one of its hashes: force a re-download # - there's no hash (but a .hash file): consider it a hard error if [ -e "${output}" ]; then - if support/download/check-hash ${quiet} "${hfile}" "${output}" "${output##*/}"; then + if support/download/check-hash ${quiet} "${output}" "${output##*/}" "${hfiles[@]}"; then exit 0 elif [ ${?} -ne 2 ]; then # Do not remove the file, otherwise it might get re-downloaded @@ -154,7 +154,7 @@ main() { # Check if the downloaded file is sane, and matches the stored hashes # for that file - if support/download/check-hash ${quiet} "${hfile}" "${tmpf}" "${output##*/}"; then + if support/download/check-hash ${quiet} "${tmpf}" "${output##*/}" "${hfiles[@]}"; then rc=0 else if [ ${?} -ne 3 ]; then diff --git a/support/download/git b/support/download/git index 1a1c315f73d7..6654d98a008e 100755 --- a/support/download/git +++ b/support/download/git @@ -5,8 +5,8 @@ # (e.g. tar options, compression ratio or method)), we MUST update the format # version in the variable BR_FMT_VERSION_git, in package/pkg-download.mk. -# We want to catch any unexpected failure, and exit immediately -set -E +# We want to catch any unexpected failure +set -e # Download helper for git, to be called from the download wrapper script # @@ -21,6 +21,7 @@ set -E # Environment: # GIT : the git command to call +# shellcheck disable=SC1090 # Only provides mk_tar_gz() . "${0%/*}/helpers" # Save our path and options in case we need to call ourselves again @@ -77,17 +78,19 @@ pushd "${git_cache}" >/dev/null # Any error now should try to recover trap _on_error ERR +set -E # Caller needs to single-quote its arguments to prevent them from # being expanded a second time (in case there are spaces in them) _git() { if [ -z "${quiet}" ]; then - printf '%s ' GIT_DIR="${git_cache}/.git" ${GIT} "${@}"; printf '\n' + printf '%s ' GIT_DIR="${git_cache}/.git" "${GIT}" "${@}"; printf '\n' fi _plain_git "$@" } # Note: please keep command below aligned with what is printed above _plain_git() { + # shellcheck disable=SC2086 # We want word-splitting for GIT eval GIT_DIR="${git_cache}/.git" ${GIT} "${@}" } @@ -173,6 +176,7 @@ fi # the working copy as well as the repository, which means submodules # will not be cached for older versions. # +# shellcheck disable=SC2016 # Will be expanded by git-foreach cmd='printf "Deregistering submodule \"%s\"\n" "${path}" && cd .. && rm -rf "${path##*/}"' _git submodule --quiet foreach "'${cmd}'" @@ -199,11 +203,12 @@ if [ ${recurse} -eq 1 ]; then # that the archives are reproducible across a wider range of git # versions. However, we can't do that if git is too old and uses # full repositories for submodules. + # shellcheck disable=SC2016 # Will be expanded by git-foreach cmd='printf "%s\n" "${path}/"' for module_dir in $( _plain_git submodule --quiet foreach "'${cmd}'" ); do [ -f "${module_dir}/.git" ] || continue relative_dir="$( sed -r -e 's,/+,/,g; s,[^/]+/,../,g' <<<"${module_dir}" )" - sed -r -i -e "s:^gitdir\: $(pwd)/:gitdir\: "${relative_dir}":" "${module_dir}/.git" + sed -r -i -e "s:^gitdir\: $(pwd)/:gitdir\: ${relative_dir}:" "${module_dir}/.git" done fi @@ -213,6 +218,7 @@ if [ ${large_file} -eq 1 ]; then _git lfs fetch _git lfs checkout # If there are also submodules, recurse into them, + # shellcheck disable=SC2086 # We want word-splitting for GIT if [ ${recurse} -eq 1 ]; then _git submodule foreach --recursive ${GIT} lfs install --local _git submodule foreach --recursive ${GIT} lfs fetch diff --git a/support/download/helpers b/support/download/helpers index 90a7d6c1ec3a..265685eff528 100755 --- a/support/download/helpers +++ b/support/download/helpers @@ -53,6 +53,9 @@ mk_tar_gz() { tmp="$(mktemp --tmpdir="$(pwd)")" pushd "${in_dir}" >/dev/null + # Enforce group/others mode bits + chmod -R go-wx+X . + # Establish list find . -not -type d -and -not \( -false "${find_opts[@]}" \) >"${tmp}.list" # Sort list for reproducibility diff --git a/support/download/svn b/support/download/svn index b23b7773d39b..1decb2310b46 100755 --- a/support/download/svn +++ b/support/download/svn @@ -16,13 +16,16 @@ set -e # -u URI Checkout from repository at URI. # -c REV Use revision REV. # -n NAME Use basename NAME. +# -r Recursive, i.e. use externals # # Environment: # SVN : the svn command to call +# shellcheck disable=SC1090 # Only provides mk_tar_gz() . "${0%/*}/helpers" quiet= +externals=--ignore-externals while getopts "${BR_BACKEND_DL_GETOPTS}" OPT; do case "${OPT}" in q) quiet=-q;; @@ -30,6 +33,7 @@ while getopts "${BR_BACKEND_DL_GETOPTS}" OPT; do u) uri="${OPTARG}";; c) rev="${OPTARG}";; n) basename="${OPTARG}";; + r) externals=;; :) printf "option '%s' expects a mandatory argument\n" "${OPTARG}"; exit 1;; \?) printf "unknown option '%s'\n" "${OPTARG}" >&2; exit 1;; esac @@ -41,23 +45,41 @@ shift $((OPTIND-1)) # Get rid of our options # being expanded a second time (in case there are spaces in them) _svn() { if [ -z "${quiet}" ]; then - printf '%s ' ${SVN} "${@}"; printf '\n' + printf '%s ' "${SVN}" "${@}"; printf '\n' fi _plain_svn "$@" } # Note: please keep command below aligned with what is printed above _plain_svn() { + # shellcheck disable=SC2086 # We want word-splitting for SVN eval ${SVN} "${@}" } -_svn export --ignore-keywords ${quiet} "${@}" "'${uri}@${rev}'" "'${basename}'" +# shellcheck disable=SC2086 # externals and quiet may be empty +_svn export --ignore-keywords ${quiet} ${externals} "${@}" "'${uri}@${rev}'" "'${basename}'" + +# For 'svn info', we only need the credentials, if any; other options +# would be invalid, as they are intended for 'svn export'. +# We can also consume the positional parameters, as we'll no longer +# be calling any other remote-reaching svn command. +creds= +while [ ${#} -gt 0 ]; do + case "${1}" in + --username=*) creds+=" ${1}"; shift;; + --password=*) creds+=" ${1}"; shift;; + --username) creds+=" ${1} ${2}"; shift 2;; + --password) creds+=" ${1} ${2}"; shift 2;; + *) shift;; + esac +done # Get the date of the revision, to generate reproducible archives. # The output format is YYYY-MM-DDTHH:MM:SS.mmmuuuZ (i.e. always in the # UTC timezone), which we can feed as-is to the --mtime option for tar. # In case there is a redirection (e.g. http -> https), just keep the # last line (svn outputs everything on stdout) -date="$( _plain_svn info "'${uri}@${rev}'" \ +# shellcheck disable=SC2086 # creds may be empty +date="$( _plain_svn info ${creds} "'${uri}@${rev}'" \ |sed -r -e '/^Last Changed Date: /!d; s///' )" diff --git a/support/misc/Vagrantfile b/support/misc/Vagrantfile index a1de1707495a..61eb74365963 100644 --- a/support/misc/Vagrantfile +++ b/support/misc/Vagrantfile @@ -5,7 +5,7 @@ ################################################################################ # Buildroot version to use -RELEASE='2023.02' +RELEASE='2023.11' ### Change here for more memory/cores ### VM_MEMORY=2048 diff --git a/support/misc/gitlab-ci.yml.in b/support/misc/gitlab-ci.yml.in index 38aca31fb5de..4d9acbc3d3dc 100644 --- a/support/misc/gitlab-ci.yml.in +++ b/support/misc/gitlab-ci.yml.in @@ -1,31 +1,37 @@ +stages: + - download + - test + before_script: - git config --global --add safe.directory ${CI_PROJECT_DIR} .check-check-package_base: + stage: test script: - python3 -m pytest -v utils/checkpackagelib/ .check-check-symbol_base: + stage: test script: - python3 -m pytest -v utils/checksymbolslib/ .check-DEVELOPERS_base: + stage: test script: - utils/get-developers -v -.check-flake8_base: - script: - - make check-flake8 - .check-package_base: + stage: test script: - make check-package .check-symbol_base: + stage: test script: - utils/check-symbols .defconfig_check: + stage: test script: - DEFCONFIG_NAME=$(echo ${CI_JOB_NAME} | sed -e 's,_check$,,g') - echo "Configure Buildroot for ${DEFCONFIG_NAME}" @@ -46,6 +52,7 @@ before_script: } .defconfig_base: + stage: test script: - DEFCONFIG_NAME=${CI_JOB_NAME} - OUTPUT_DIR=output @@ -60,6 +67,11 @@ before_script: tail -200 runtime-test.log exit 1 } + retry: + max: 2 + when: + - runner_system_failure + - stuck_or_timeout_failure artifacts: when: always expire_in: 2 weeks @@ -72,7 +84,18 @@ before_script: - output/build/*/.config - runtime-test.log +.runtime_test_download: + stage: download + # Keep test-dl directory so the downloaded files can be an artifact of + # the job passed to all jobs of next stages. + script: ./support/testing/run-tests -d test-dl/ --prepare-only + artifacts: + when: always + paths: + - test-dl/ + .runtime_test_base: + stage: test # Keep build directories so the rootfs can be an artifact of the job. The # runner will clean up those files for us. # Multiply every emulator timeout by 10 to avoid sporadic failures in @@ -81,6 +104,11 @@ before_script: - TEST_CASE_NAME=${CI_JOB_NAME} - echo "Starting runtime test ${TEST_CASE_NAME}" - ./support/testing/run-tests -o test-output/ -d test-dl/ -k --timeout-multiplier 10 ${TEST_CASE_NAME} + retry: + max: 2 + when: + - runner_system_failure + - stuck_or_timeout_failure artifacts: when: always expire_in: 2 weeks @@ -90,7 +118,7 @@ before_script: - test-output/*/images/* .test_pkg: - stage: build + stage: test script: - OUTPUT_DIR=${CI_JOB_NAME} - echo "Configure Buildroot for ${OUTPUT_DIR}" @@ -101,6 +129,11 @@ before_script: needs: - pipeline: $PARENT_PIPELINE_ID job: generate-gitlab-ci-yml + retry: + max: 2 + when: + - runner_system_failure + - stuck_or_timeout_failure artifacts: when: always expire_in: 2 weeks diff --git a/support/scripts/br2-external b/support/scripts/br2-external index 2c33e6eaccf9..8aea479d205e 100755 --- a/support/scripts/br2-external +++ b/support/scripts/br2-external @@ -66,7 +66,7 @@ do_validate() { do_validate_one() { local br2_ext="${1}" - local br2_name br2_desc n d + local br2_name br2_desc br2_ver n d if [ ! -d "${br2_ext}" ]; then error "'%s': no such file or directory\n" "${br2_ext}" @@ -104,8 +104,10 @@ do_validate_one() { # Register this br2-external tree, use an absolute canonical path br2_ext="$( cd "${br2_ext}"; pwd )" + br2_ver="$( support/scripts/setlocalversion "${br2_ext}" )" BR2_EXT_NAMES+=( "${br2_name}" ) eval BR2_EXT_PATHS_${br2_name}="\"\${br2_ext}\"" + eval BR2_EXT_VERS_${br2_name}="\"\${br2_ver}\"" eval BR2_EXT_DESCS_${br2_name}="\"\${br2_desc:-\${br2_name}}\"" } @@ -113,7 +115,7 @@ do_validate_one() { # for the br2-external tree do_mk() { local outputdir="${1}" - local br2_name br2_desc br2_ext + local br2_name br2_desc br2_ext br2_ver { printf '#\n# Automatically generated file; DO NOT EDIT.\n#\n' @@ -126,7 +128,7 @@ do_mk() { done printf '\n' - printf 'BR2_EXTERNAL_NAMES = \n' + printf 'export BR2_EXTERNAL_NAMES = \n' printf 'BR2_EXTERNAL_DIRS = \n' printf 'BR2_EXTERNAL_MKS = \n' @@ -139,12 +141,14 @@ do_mk() { for br2_name in "${BR2_EXT_NAMES[@]}"; do eval br2_desc="\"\${BR2_EXT_DESCS_${br2_name}}\"" eval br2_ext="\"\${BR2_EXT_PATHS_${br2_name}}\"" + eval br2_ver="\"\${BR2_EXT_VERS_${br2_name}}\"" printf '\n' printf 'BR2_EXTERNAL_NAMES += %s\n' "${br2_name}" printf 'BR2_EXTERNAL_DIRS += %s\n' "${br2_ext}" printf 'BR2_EXTERNAL_MKS += %s/external.mk\n' "${br2_ext}" printf 'export BR2_EXTERNAL_%s_PATH = %s\n' "${br2_name}" "${br2_ext}" printf 'export BR2_EXTERNAL_%s_DESC = %s\n' "${br2_name}" "${br2_desc}" + printf 'export BR2_EXTERNAL_%s_VERSION = %s\n' "${br2_name}" "${br2_ver}" done } >"${outputdir}/.br2-external.mk" } @@ -152,7 +156,7 @@ do_mk() { # Generate the kconfig snippets for the br2-external tree. do_kconfig() { local outputdir="${1}" - local br2_name br2_desc br2_ext br2 + local br2_name br2_desc br2_ext br2_ver br2 local -a items items=( @@ -181,14 +185,26 @@ do_kconfig() { printf 'menu "External options"\n\n' >>"${outputdir}/.br2-external.in.menus" + { + printf 'config BR2_EXTERNAL_NAMES\n' + printf '\tstring\n' + # Use star-expansion: we really one a single arg. + printf '\tdefault "%s"\n' "${BR2_EXT_NAMES[*]}" + printf '\n' + } >>"${outputdir}/.br2-external.in.paths" + for br2_name in "${BR2_EXT_NAMES[@]}"; do eval br2_desc="\"\${BR2_EXT_DESCS_${br2_name}}\"" eval br2_ext="\"\${BR2_EXT_PATHS_${br2_name}}\"" + eval br2_ver="\"\${BR2_EXT_VERS_${br2_name}}\"" { printf 'config BR2_EXTERNAL_%s_PATH\n' "${br2_name}" printf '\tstring\n' printf '\tdefault "%s"\n' "${br2_ext}" + printf 'config BR2_EXTERNAL_%s_VERSION\n' "${br2_name}" + printf '\tstring\n' + printf '\tdefault "%s"\n' "${br2_ver}" printf '\n' } >>"${outputdir}/.br2-external.in.paths" diff --git a/support/scripts/cpedb.py b/support/scripts/cpedb.py deleted file mode 100644 index f4daf561244c..000000000000 --- a/support/scripts/cpedb.py +++ /dev/null @@ -1,174 +0,0 @@ -#!/usr/bin/env python3 - -import xml.etree.ElementTree as ET -from xml.etree.ElementTree import Element, SubElement -import gzip -import os -import requests -import time -from xml.dom import minidom - -VALID_REFS = ['VENDOR', 'VERSION', 'CHANGE_LOG', 'PRODUCT', 'PROJECT', 'ADVISORY'] - -CPEDB_URL = "https://static.nvd.nist.gov/feeds/xml/cpe/dictionary/official-cpe-dictionary_v2.3.xml.gz" - -ns = { - '': 'http://cpe.mitre.org/dictionary/2.0', - 'cpe-23': 'http://scap.nist.gov/schema/cpe-extension/2.3', - 'xml': 'http://www.w3.org/XML/1998/namespace' -} - - -class CPE: - def __init__(self, cpe_str, titles, refs): - self.cpe_str = cpe_str - self.titles = titles - self.references = refs - self.cpe_cur_ver = "".join(self.cpe_str.split(":")[5:6]) - - def update_xml_dict(self): - ET.register_namespace('', 'http://cpe.mitre.org/dictionary/2.0') - cpes = Element('cpe-list') - cpes.set('xmlns:cpe-23', "http://scap.nist.gov/schema/cpe-extension/2.3") - cpes.set('xmlns:ns6', "http://scap.nist.gov/schema/scap-core/0.1") - cpes.set('xmlns:scap-core', "http://scap.nist.gov/schema/scap-core/0.3") - cpes.set('xmlns:config', "http://scap.nist.gov/schema/configuration/0.1") - cpes.set('xmlns:xsi', "http://www.w3.org/2001/XMLSchema-instance") - cpes.set('xmlns:meta', "http://scap.nist.gov/schema/cpe-dictionary-metadata/0.2") - cpes.set('xsi:schemaLocation', " ".join(["http://scap.nist.gov/schema/cpe-extension/2.3", - "https://scap.nist.gov/schema/cpe/2.3/cpe-dictionary-extension_2.3.xsd", - "http://cpe.mitre.org/dictionary/2.0", - "https://scap.nist.gov/schema/cpe/2.3/cpe-dictionary_2.3.xsd", - "http://scap.nist.gov/schema/cpe-dictionary-metadata/0.2", - "https://scap.nist.gov/schema/cpe/2.1/cpe-dictionary-metadata_0.2.xsd", - "http://scap.nist.gov/schema/scap-core/0.3", - "https://scap.nist.gov/schema/nvd/scap-core_0.3.xsd", - "http://scap.nist.gov/schema/configuration/0.1", - "https://scap.nist.gov/schema/nvd/configuration_0.1.xsd", - "http://scap.nist.gov/schema/scap-core/0.1", - "https://scap.nist.gov/schema/nvd/scap-core_0.1.xsd"])) - item = SubElement(cpes, 'cpe-item') - cpe_short_name = CPE.short_name(self.cpe_str) - cpe_new_ver = CPE.version_update(self.cpe_str) - - item.set('name', 'cpe:/' + cpe_short_name) - self.titles[0].text.replace(self.cpe_cur_ver, cpe_new_ver) - for title in self.titles: - item.append(title) - if self.references: - item.append(self.references) - cpe23item = SubElement(item, 'cpe-23:cpe23-item') - cpe23item.set('name', self.cpe_str) - - # Generate the XML as a string - xmlstr = ET.tostring(cpes) - - # And use minidom to pretty print the XML - return minidom.parseString(xmlstr).toprettyxml(encoding="utf-8").decode("utf-8") - - @staticmethod - def version(cpe): - return cpe.split(":")[5] - - @staticmethod - def product(cpe): - return cpe.split(":")[4] - - @staticmethod - def short_name(cpe): - return ":".join(cpe.split(":")[2:6]) - - @staticmethod - def version_update(cpe): - return ":".join(cpe.split(":")[5:6]) - - @staticmethod - def no_version(cpe): - return ":".join(cpe.split(":")[:5]) - - -class CPEDB: - def __init__(self, nvd_path): - self.all_cpes = dict() - self.all_cpes_no_version = dict() - self.nvd_path = nvd_path - - def get_xml_dict(self): - print("CPE: Setting up NIST dictionary") - if not os.path.exists(os.path.join(self.nvd_path, "cpe")): - os.makedirs(os.path.join(self.nvd_path, "cpe")) - - cpe_dict_local = os.path.join(self.nvd_path, "cpe", os.path.basename(CPEDB_URL)) - if not os.path.exists(cpe_dict_local) or os.stat(cpe_dict_local).st_mtime < time.time() - 86400: - print("CPE: Fetching xml manifest from [" + CPEDB_URL + "]") - cpe_dict = requests.get(CPEDB_URL) - open(cpe_dict_local, "wb").write(cpe_dict.content) - - print("CPE: Unzipping xml manifest...") - nist_cpe_file = gzip.GzipFile(fileobj=open(cpe_dict_local, 'rb')) - print("CPE: Converting xml manifest to dict...") - tree = ET.parse(nist_cpe_file) - all_cpedb = tree.getroot() - self.parse_dict(all_cpedb) - - def parse_dict(self, all_cpedb): - # Cycle through the dict and build two dict to be used for custom - # lookups of partial and complete CPE objects - # The objects are then used to create new proposed XML updates if - # if is determined one is required - # Out of the different language titles, select English - for cpe in all_cpedb.findall(".//{http://cpe.mitre.org/dictionary/2.0}cpe-item"): - cpe_titles = [] - for title in cpe.findall('.//{http://cpe.mitre.org/dictionary/2.0}title[@xml:lang="en-US"]', ns): - title.tail = None - cpe_titles.append(title) - - # Some older CPE don't include references, if they do, make - # sure we handle the case of one ref needing to be packed - # in a list - cpe_ref = cpe.find(".//{http://cpe.mitre.org/dictionary/2.0}references") - if cpe_ref: - for ref in cpe_ref.findall(".//{http://cpe.mitre.org/dictionary/2.0}reference"): - ref.tail = None - ref.text = ref.text.upper() - if ref.text not in VALID_REFS: - ref.text = ref.text + "-- UPDATE this entry, here are some examples and just one word should be used -- " + ' '.join(VALID_REFS) # noqa E501 - cpe_ref.tail = None - cpe_ref.text = None - - cpe_str = cpe.find(".//{http://scap.nist.gov/schema/cpe-extension/2.3}cpe23-item").get('name') - item = CPE(cpe_str, cpe_titles, cpe_ref) - cpe_str_no_version = CPE.no_version(cpe_str) - # This dict must have a unique key for every CPE version - # which allows matching to the specific obj data of that - # NIST dict entry - self.all_cpes.update({cpe_str: item}) - # This dict has one entry for every CPE (w/o version) to allow - # partial match (no valid version) check (the obj is saved and - # used as seed for suggested xml updates. By updating the same - # non-version'd entry, it assumes the last update here is the - # latest version in the NIST dict) - self.all_cpes_no_version.update({cpe_str_no_version: item}) - - def find_partial(self, cpe_str): - cpe_str_no_version = CPE.no_version(cpe_str) - if cpe_str_no_version in self.all_cpes_no_version: - return cpe_str_no_version - - def find_partial_obj(self, cpe_str): - cpe_str_no_version = CPE.no_version(cpe_str) - if cpe_str_no_version in self.all_cpes_no_version: - return self.all_cpes_no_version[cpe_str_no_version] - - def find_partial_latest_version(self, cpe_str_partial): - cpe_obj = self.find_partial_obj(cpe_str_partial) - return cpe_obj.cpe_cur_ver - - def find(self, cpe_str): - if self.find_partial(cpe_str): - if cpe_str in self.all_cpes: - return cpe_str - - def gen_update_xml(self, cpe_str): - cpe = self.find_partial_obj(cpe_str) - return cpe.update_xml_dict() diff --git a/support/scripts/fix-rpath b/support/scripts/fix-rpath index 3e67e770e524..1e58646ceaa6 100755 --- a/support/scripts/fix-rpath +++ b/support/scripts/fix-rpath @@ -46,27 +46,66 @@ Environment: TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR (default HOST_DIR/opt/ext-toolchain) + PARALLEL_JOBS number of parallel jobs to run + Returns: 0 if success or 1 in case of error EOF } -: ${PATCHELF:=${HOST_DIR}/bin/patchelf} +: "${PATCHELF:=${HOST_DIR}/bin/patchelf}" # ELF files should not be in these sub-directories HOST_EXCLUDEPATHS="/share/terminfo" STAGING_EXCLUDEPATHS="/usr/include /usr/share/terminfo" TARGET_EXCLUDEPATHS="/lib/firmware" +patch_file() { + local PATCHELF rootdir file + local -a sanitize_extra_args + + PATCHELF="${1}" + rootdir="${2}" + file="${3}" + shift 3 + sanitize_extra_args=("${@}") + + # check if it's an ELF file + rpath="$("${PATCHELF}" --print-rpath "${file}" 2>&1)" + if test $? -ne 0 ; then + return 0 + fi + + # make files writable if necessary + changed="$(chmod -c u+w "${file}")" + + # With per-package directory support, most RPATH of host + # binaries will point to per-package directories. This won't + # work with the --make-rpath-relative ${rootdir} invocation as + # the per-package host directory is not within ${rootdir}. So, + # we rewrite all RPATHs pointing to per-package directories so + # that they point to the global host directry. + # shellcheck disable=SC2001 # ${var//search/replace} hard when search or replace have / in them + changed_rpath="$(echo "${rpath}" | sed "s@${PER_PACKAGE_DIR}/[^/]\+/host@${HOST_DIR}@")" + if test "${rpath}" != "${changed_rpath}" ; then + "${PATCHELF}" --set-rpath "${changed_rpath}" "${file}" + fi + + # call patchelf to sanitize the rpath + "${PATCHELF}" --make-rpath-relative "${rootdir}" "${sanitize_extra_args[@]}" "${file}" + # restore the original permission + test "${changed}" != "" && chmod u-w "${file}" +} + main() { - local rootdir - local tree="${1}" - local find_args=( ) - local sanitize_extra_args=( ) + local rootdir tree + local -a find_args sanitize_extra_args + + tree="${1}" if ! "${PATCHELF}" --version > /dev/null 2>&1; then - echo "Error: can't execute patchelf utility '${PATCHELF}'" - exit 1 + echo "Error: can't execute patchelf utility '${PATCHELF}'" + exit 1 fi case "${tree}" in @@ -123,34 +162,14 @@ main() { ;; esac - find_args+=( "-type" "f" "-print" ) - - while read file ; do - # check if it's an ELF file - rpath=$(${PATCHELF} --print-rpath "${file}" 2>&1) - if test $? -ne 0 ; then - continue - fi - - # make files writable if necessary - changed=$(chmod -c u+w "${file}") - - # With per-package directory support, most RPATH of host - # binaries will point to per-package directories. This won't - # work with the --make-rpath-relative ${rootdir} invocation as - # the per-package host directory is not within ${rootdir}. So, - # we rewrite all RPATHs pointing to per-package directories so - # that they point to the global host directry. - changed_rpath=$(echo ${rpath} | sed "s@${PER_PACKAGE_DIR}/[^/]\+/host@${HOST_DIR}@") - if test "${rpath}" != "${changed_rpath}" ; then - ${PATCHELF} --set-rpath ${changed_rpath} "${file}" - fi - - # call patchelf to sanitize the rpath - ${PATCHELF} --make-rpath-relative "${rootdir}" ${sanitize_extra_args[@]} "${file}" - # restore the original permission - test "${changed}" != "" && chmod u-w "${file}" - done < <(find "${rootdir}" ${find_args[@]}) + find_args+=( "-type" "f" "-print0" ) + + export -f patch_file + # Limit the number of cores used + # shellcheck disable=SC2016 # ${@} has to be expanded in the sub-shell. + find "${rootdir}" "${find_args[@]}" \ + | xargs -0 -r -P "${PARALLEL_JOBS:-1}" -I {} \ + bash -c 'patch_file "${@}"' _ "${PATCHELF}" "${rootdir}" {} "${sanitize_extra_args[@]}" # Restore patched patchelf utility test "${tree}" = "host" && mv "${PATCHELF}.__to_be_patched" "${PATCHELF}" @@ -159,4 +178,4 @@ main() { return 0 } -main ${@} +main "${@}" diff --git a/support/scripts/gen-bootlin-toolchains b/support/scripts/gen-bootlin-toolchains index 23ebfbdce9fd..434422121395 100755 --- a/support/scripts/gen-bootlin-toolchains +++ b/support/scripts/gen-bootlin-toolchains @@ -338,6 +338,8 @@ class Toolchain: m = re.match("^BR2_TOOLCHAIN_EXTERNAL_GCC_([0-9_]*)=y$", frag) assert m, "Cannot get gcc version for toolchain %s" % self.fname_prefix selects.append("BR2_TOOLCHAIN_GCC_AT_LEAST_%s" % m[1]) + # respect the GCC requirement for the selected CPU/arch tuning + depends.append("!BR2_ARCH_NEEDS_GCC_AT_LEAST_%s" % str(int(m[1]) + 1)) # kernel headers version if frag.startswith("BR2_TOOLCHAIN_EXTERNAL_HEADERS_"): diff --git a/support/scripts/gen-missing-cpe b/support/scripts/gen-missing-cpe deleted file mode 100755 index 0b222f2659a1..000000000000 --- a/support/scripts/gen-missing-cpe +++ /dev/null @@ -1,65 +0,0 @@ -#!/usr/bin/env python3 - -import argparse -import sys -import json -import subprocess -import os -from cpedb import CPEDB, CPE - - -def gen_update_xml_reports(cpeids, cpedb, output): - cpe_need_update = [] - - for cpe in cpeids: - result = cpedb.find(cpe) - if not result: - result = cpedb.find_partial(CPE.no_version(cpe)) - if result: - cpe_need_update.append(cpe) - else: - print("WARNING: no match found for '%s'" % cpe) - - for cpe in cpe_need_update: - xml = cpedb.gen_update_xml(cpe) - fname = CPE.product(cpe) + '-' + CPE.version(cpe) + '.xml' - print("Generating %s" % fname) - with open(os.path.join(output, fname), 'w+') as fp: - fp.write(xml) - - print("Generated %d update files out of %d CPEs" % (len(cpe_need_update), len(cpeids))) - - -def get_cpe_ids(): - print("Getting list of CPE for enabled packages") - cmd = ["make", "--no-print-directory", "show-info"] - js = json.loads(subprocess.check_output(cmd).decode("utf-8")) - return set([v["cpe-id"] for k, v in js.items() if "cpe-id" in v]) - - -def resolvepath(path): - return os.path.abspath(os.path.expanduser(path)) - - -def parse_args(): - parser = argparse.ArgumentParser() - parser.add_argument('--output', dest='output', - help='Path to the output CPE update files', type=resolvepath, required=True) - parser.add_argument('--nvd-path', dest='nvd_path', - help='Path to the local NVD database', type=resolvepath, required=True) - return parser.parse_args() - - -def __main__(): - args = parse_args() - if not os.path.isdir(args.output): - print("ERROR: output directory %s does not exist" % args.output) - sys.exit(1) - cpedb = CPEDB(args.nvd_path) - cpedb.get_xml_dict() - cpeids = get_cpe_ids() - gen_update_xml_reports(cpeids, cpedb, args.output) - - -if __name__ == "__main__": - __main__() diff --git a/support/scripts/generate-gitlab-ci-yml b/support/scripts/generate-gitlab-ci-yml index e2fb2228b33e..2d922b9eb25d 100755 --- a/support/scripts/generate-gitlab-ci-yml +++ b/support/scripts/generate-gitlab-ci-yml @@ -26,7 +26,7 @@ gen_tests() { local do_basics do_defconfigs do_runtime do_testpkg local defconfigs_ext cfg tst - basics=( check-package check-symbol DEVELOPERS flake8 package symbol ) + basics=( check-package check-symbol DEVELOPERS package symbol ) defconfigs=( $(cd configs; LC_ALL=C ls -1 *_defconfig) ) @@ -132,6 +132,7 @@ gen_tests() { fi if ${do_runtime:-false}; then + printf 'runtime_test_download: { extends: .runtime_test_download }\n' printf '%s: { extends: .runtime_test_base }\n' "${runtimes[@]}" fi diff --git a/support/scripts/pkg-stats b/support/scripts/pkg-stats index 3248e3678d7e..9349a0df574f 100755 --- a/support/scripts/pkg-stats +++ b/support/scripts/pkg-stats @@ -37,10 +37,10 @@ brpath = os.path.normpath(os.path.join(os.path.dirname(__file__), "..", "..")) sys.path.append(os.path.join(brpath, "utils")) from getdeveloperlib import parse_developers # noqa: E402 -from cpedb import CPEDB_URL # noqa: E402 INFRA_RE = re.compile(r"\$\(eval \$\(([a-z-]*)-package\)\)") URL_RE = re.compile(r"\s*https?://\S*\s*$") +CPEDB_URL = "https://static.nvd.nist.gov/feeds/xml/cpe/dictionary/official-cpe-dictionary_v2.3.xml.gz" RM_API_STATUS_ERROR = 1 RM_API_STATUS_FOUND_BY_DISTRO = 2 @@ -84,7 +84,7 @@ class Package: all_ignored_cves = dict() all_cpeids = dict() # This is the list of all possible checks. Add new checks to this list so - # a tool that post-processeds the json output knows the checks before + # a tool that post-processes the json output knows the checks before # iterating over the packages. status_checks = ['cve', 'developers', 'hash', 'license', 'license-files', 'patches', 'pkg-check', 'url', 'version'] @@ -259,7 +259,7 @@ class Package: if var in self.all_cpeids: self.cpeid = self.all_cpeids[var] # Set a preliminary status, it might be overridden by check_package_cpes() - self.status['cpe'] = ("warning", "not checked against CPE dictionnary") + self.status['cpe'] = ("warning", "not checked against CPE dictionary") else: self.status['cpe'] = ("error", "no verified CPE identifier") @@ -272,8 +272,7 @@ class Package: self.status['pkg-check'] = ("error", "Missing") for root, dirs, files in os.walk(pkgdir): for f in files: - if f.endswith(".mk") or f.endswith(".hash") or f == "Config.in" or f == "Config.in.host": - cmd.append(os.path.join(root, f)) + cmd.append(os.path.join(root, f)) o = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate()[1] lines = o.splitlines() for line in lines: @@ -338,16 +337,21 @@ def get_pkglist(npackages, package_list): package_list: limit to those packages in this list """ WALK_USEFUL_SUBDIRS = ["boot", "linux", "package", "toolchain"] - WALK_EXCLUDES = ["boot/common.mk", + WALK_EXCLUDES = ["boot/barebox/barebox.mk", + "boot/common.mk", "linux/linux-ext-.*.mk", + "package/fftw/fftw.mk", "package/freescale-imx/freescale-imx.mk", "package/gcc/gcc.mk", "package/gstreamer/gstreamer.mk", "package/gstreamer1/gstreamer1.mk", "package/gtk2-themes/gtk2-themes.mk", + "package/kf5/kf5.mk", + "package/llvm-project/llvm-project.mk", "package/matchbox/matchbox.mk", "package/opengl/opengl.mk", "package/qt5/qt5.mk", + "package/qt6/qt6.mk", "package/x11r7/x11r7.mk", "package/doc-asciidoc.mk", "package/pkg-.*.mk", @@ -499,7 +503,7 @@ def check_package_latest_version_set_status(pkg, status, version, identifier): async def check_package_get_latest_version_by_distro(session, pkg, retry=True): - url = "https://release-monitoring.org//api/project/Buildroot/%s" % pkg.name + url = "https://release-monitoring.org/api/project/Buildroot/%s" % pkg.name try: async with session.get(url) as resp: if resp.status != 200: @@ -871,7 +875,7 @@ function expandField(fieldId){ .wrong, .lotsofpatches, .invalid_url, .version-needs-update, .cpe-nok, .cve-nok { background: #ff9a69; } - .somepatches, .missing_url, .version-unknown, .cpe-unknown, .cve-unknown { + .somepatches, .somewarnings, .missing_url, .version-unknown, .cpe-unknown, .cve-unknown { background: #ffd870; } .cve_ignored, .version-error { @@ -1028,6 +1032,8 @@ def dump_html_pkg(f, pkg): div_class.append(f'_{pkg_css_class}') if pkg.warnings == 0: div_class.append("correct") + elif pkg.warnings < 5: + div_class.append("somewarnings") else: div_class.append("wrong") f.write(f'
    {pkg.warnings}
    \n') diff --git a/support/testing/conf/overlayfs-kernel-fragment.config b/support/testing/conf/overlayfs-kernel-fragment.config new file mode 100644 index 000000000000..912223899335 --- /dev/null +++ b/support/testing/conf/overlayfs-kernel-fragment.config @@ -0,0 +1 @@ +CONFIG_OVERLAY_FS=y diff --git a/support/testing/infra/basetest.py b/support/testing/infra/basetest.py index 670c7213d6ed..12d96415dac9 100644 --- a/support/testing/infra/basetest.py +++ b/support/testing/infra/basetest.py @@ -9,14 +9,8 @@ """ BR2_arm=y BR2_TOOLCHAIN_EXTERNAL=y - BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y - BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y - BR2_TOOLCHAIN_EXTERNAL_URL="https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--uclibc--bleeding-edge-2018.11-1.tar.bz2" - BR2_TOOLCHAIN_EXTERNAL_GCC_8=y - BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_14=y - BR2_TOOLCHAIN_EXTERNAL_LOCALE=y - BR2_TOOLCHAIN_HAS_THREADS_DEBUG=y - BR2_TOOLCHAIN_EXTERNAL_CXX=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y """ MINIMAL_CONFIG = \ diff --git a/support/testing/infra/emulator.py b/support/testing/infra/emulator.py index 53876f828cc0..09f81eca89b3 100644 --- a/support/testing/infra/emulator.py +++ b/support/testing/infra/emulator.py @@ -20,7 +20,7 @@ def __init__(self, builddir, downloaddir, logtofile, timeout_multiplier): # # kernel: path to the kernel image, or the special string # 'builtin'. 'builtin' means a pre-built kernel image will be - # downloaded from ARTEFACTS_URL and suitable options are + # downloaded from ARTIFACTS_URL and suitable options are # automatically passed to qemu and added to the kernel cmdline. So # far only armv5, armv7 and i386 builtin kernels are available. # If None, then no kernel is used, and we assume a bootable device @@ -84,11 +84,11 @@ def boot(self, arch, kernel=None, kernel_cmdline=None, options=None): # Wait for the login prompt to appear, and then login as root with # the provided password, or no password if not specified. - def login(self, password=None): + def login(self, password=None, timeout=60): # The login prompt can take some time to appear when running multiple # instances in parallel, so set the timeout to a large value index = self.qemu.expect(["buildroot login:", pexpect.TIMEOUT], - timeout=60 * self.timeout_multiplier) + timeout=timeout * self.timeout_multiplier) if index != 0: self.logfile.write("==> System does not boot") raise SystemError("System does not boot") diff --git a/support/testing/run-tests b/support/testing/run-tests index bf400193627d..e8c540f3701a 100755 --- a/support/testing/run-tests +++ b/support/testing/run-tests @@ -8,6 +8,8 @@ import nose2 from infra.basetest import BRConfigTest +import infra + def main(): parser = argparse.ArgumentParser(description='Run Buildroot tests') @@ -23,6 +25,8 @@ def main(): help='output directory') parser.add_argument('-d', '--download', help='download directory') + parser.add_argument('-p', '--prepare-only', action='store_true', + help='download emulator builtin binaries') parser.add_argument('-k', '--keep', help='keep build directories', action='store_true') @@ -60,6 +64,16 @@ def main(): BRConfigTest.downloaddir = os.path.abspath(args.download) + if args.prepare_only: + emulator_builtin_binaries = ["kernel-vexpress-5.10.7", + "vexpress-v2p-ca9-5.10.7.dtb", + "kernel-versatile-5.10.7", + "versatile-pb-5.10.7.dtb"] + print("Downloading emulator builtin binaries") + for binary in emulator_builtin_binaries: + infra.download(BRConfigTest.downloaddir, binary) + return 0 + if args.output is None: print("Missing output directory, please use -o/--output") print("") diff --git a/support/testing/tests/boot/test_edk2.py b/support/testing/tests/boot/test_edk2.py index c1be8fad95d3..16fa10f8c903 100644 --- a/support/testing/tests/boot/test_edk2.py +++ b/support/testing/tests/boot/test_edk2.py @@ -18,12 +18,14 @@ class TestEdk2(infra.basetest.BRTest): BR2_LINUX_KERNEL_CUSTOM_VERSION=y BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.10.34" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y - BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-sbsa/linux.config" + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="support/testing/tests/boot/test_edk2/linux.config" BR2_TARGET_EDK2=y BR2_TARGET_EDK2_PLATFORM_QEMU_SBSA=y BR2_TARGET_GRUB2=y BR2_TARGET_GRUB2_ARM64_EFI=y BR2_TARGET_ARM_TRUSTED_FIRMWARE=y + BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y + BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.9" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="qemu_sbsa" BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP=y BR2_PACKAGE_HOST_GENIMAGE=y diff --git a/board/qemu/aarch64-sbsa/linux.config b/support/testing/tests/boot/test_edk2/linux.config similarity index 100% rename from board/qemu/aarch64-sbsa/linux.config rename to support/testing/tests/boot/test_edk2/linux.config diff --git a/support/testing/tests/boot/test_grub.py b/support/testing/tests/boot/test_grub.py index 2c393f730e55..9f3a6a8495e7 100644 --- a/support/testing/tests/boot/test_grub.py +++ b/support/testing/tests/boot/test_grub.py @@ -61,7 +61,15 @@ class TestGrubi386EFI(infra.basetest.BRTest): def test_run(self): hda = os.path.join(self.builddir, "images", "disk.img") bios = os.path.join(self.builddir, "images", "OVMF.fd") - self.emulator.boot(arch="i386", options=["-bios", bios, "-hda", hda]) + # In QEMU v5.1.0 up to v7.2.0, the CPU hotplug register block misbehaves. + # EDK2 hang if the bug is detected in Qemu after printing errors to IO port 0x402 + # (requires BR2_TARGET_EDK2_OVMF_DEBUG_ON_SERIAL to see them) + # The Docker image used by the Buildroot gitlab-ci uses Qemu 5.2.0, the workaround + # can be removed as soon as the Docker image is updated to provided Qemu >= 8.0.0. + # https://github.com/tianocore/edk2/commit/bf5678b5802685e07583e3c7ec56d883cbdd5da3 + # http://lists.busybox.net/pipermail/buildroot/2023-July/670825.html + qemu_fw_cfg = "name=opt/org.tianocore/X-Cpuhp-Bugcheck-Override,string=yes" + self.emulator.boot(arch="i386", options=["-bios", bios, "-hda", hda, "-fw_cfg", qemu_fw_cfg]) self.emulator.login() cmd = "modprobe efivarfs" @@ -104,7 +112,15 @@ class TestGrubX8664EFI(infra.basetest.BRTest): def test_run(self): hda = os.path.join(self.builddir, "images", "disk.img") bios = os.path.join(self.builddir, "images", "OVMF.fd") - self.emulator.boot(arch="x86_64", options=["-bios", bios, "-hda", hda]) + # In QEMU v5.1.0 up to v7.2.0, the CPU hotplug register block misbehaves. + # EDK2 hang if the bug is detected in Qemu after printing errors to IO port 0x402 + # (requires BR2_TARGET_EDK2_OVMF_DEBUG_ON_SERIAL to see them) + # The Docker image used by the Buildroot gitlab-ci uses Qemu 5.2.0, the workaround + # can be removed as soon as the Docker image is updated to provided Qemu >= 8.0.0. + # https://github.com/tianocore/edk2/commit/bf5678b5802685e07583e3c7ec56d883cbdd5da3 + # http://lists.busybox.net/pipermail/buildroot/2023-July/670825.html + qemu_fw_cfg = "name=opt/org.tianocore/X-Cpuhp-Bugcheck-Override,string=yes" + self.emulator.boot(arch="x86_64", options=["-bios", bios, "-hda", hda, "-fw_cfg", qemu_fw_cfg]) self.emulator.login() cmd = "modprobe efivarfs" diff --git a/support/testing/tests/core/test_timezone.py b/support/testing/tests/core/test_timezone.py index f661519196e9..bf4a47fcde13 100644 --- a/support/testing/tests/core/test_timezone.py +++ b/support/testing/tests/core/test_timezone.py @@ -22,15 +22,16 @@ def test_run(self): boot_armv5_cpio(self.emulator, self.builddir) tz, _ = self.emulator.run("TZ=UTC date +%Z") self.assertEqual(tz[0].strip(), "UTC") - tz, _ = self.emulator.run("TZ=America/Los_Angeles date +%Z") - self.assertEqual(tz[0].strip(), "UTC") + # This test is Glibc specific since there is no Time Zone Database installed + # and other C libraries use their own rule for returning time zone name or + # abbreviation when TZ is empty or set with a not installed time zone data file. + tz, _ = self.emulator.run("TZ= date +%Z") + self.assertEqual(tz[0].strip(), "Universal") -class TestGlibcAllTimezone(infra.basetest.BRTest): - config = \ +class TestAllTimezone(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ """ - BR2_arm=y - BR2_TOOLCHAIN_EXTERNAL=y BR2_TARGET_TZ_INFO=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set @@ -48,11 +49,9 @@ def test_run(self): self.assertEqual(tz[0].strip(), "CET") -class TestGlibcNonDefaultLimitedTimezone(infra.basetest.BRTest): - config = \ +class TestNonDefaultLimitedTimezone(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ """ - BR2_arm=y - BR2_TOOLCHAIN_EXTERNAL=y BR2_TARGET_TZ_INFO=y BR2_TARGET_TZ_ZONELIST="northamerica" BR2_TARGET_LOCALTIME="America/New_York" diff --git a/support/testing/tests/fs/test_iso9660.py b/support/testing/tests/fs/test_iso9660.py index 692291267ef8..3d08f2e89517 100644 --- a/support/testing/tests/fs/test_iso9660.py +++ b/support/testing/tests/fs/test_iso9660.py @@ -29,7 +29,16 @@ def test_mount_internal_external(emulator, builddir, internal=True, efi=False): img = os.path.join(builddir, "images", "rootfs.iso9660") if efi: efi_img = os.path.join(builddir, "images", "OVMF.fd") - emulator.boot(arch="i386", options=["-cdrom", img, "-bios", efi_img]) + # In QEMU v5.1.0 up to v7.2.0, the CPU hotplug register block misbehaves. + # EDK2 hang if the bug is detected in Qemu after printing errors to IO port 0x402 + # (requires BR2_TARGET_EDK2_OVMF_DEBUG_ON_SERIAL to see them) + # The Docker image used by the Buildroot gitlab-ci uses Qemu 5.2.0, the workaround + # can be removed as soon as the Docker image is updated to provided Qemu >= 8.0.0. + # This workaround is needed only when efi=True since it imply EDK2 is used. + # https://github.com/tianocore/edk2/commit/bf5678b5802685e07583e3c7ec56d883cbdd5da3 + # http://lists.busybox.net/pipermail/buildroot/2023-July/670825.html + qemu_fw_cfg = "name=opt/org.tianocore/X-Cpuhp-Bugcheck-Override,string=yes" + emulator.boot(arch="i386", options=["-cdrom", img, "-bios", efi_img, "-fw_cfg", qemu_fw_cfg]) else: emulator.boot(arch="i386", options=["-cdrom", img]) emulator.login() diff --git a/support/testing/tests/init/systemd-overlay-fstab/etc/fstab b/support/testing/tests/init/systemd-overlay-fstab/etc/fstab new file mode 100644 index 000000000000..d5c84406db47 --- /dev/null +++ b/support/testing/tests/init/systemd-overlay-fstab/etc/fstab @@ -0,0 +1,2 @@ +/dev/root / auto ro 0 1 +other-var-backing-store /run/buildroot/mounts/var tmpfs defaults diff --git a/support/testing/tests/init/systemd-overlay-mount-unit/usr/lib/systemd/system/run-buildroot-mounts-var.mount b/support/testing/tests/init/systemd-overlay-mount-unit/usr/lib/systemd/system/run-buildroot-mounts-var.mount new file mode 100644 index 000000000000..520cd6d9dae0 --- /dev/null +++ b/support/testing/tests/init/systemd-overlay-mount-unit/usr/lib/systemd/system/run-buildroot-mounts-var.mount @@ -0,0 +1,13 @@ +[Unit] +Description=Variable permanent storage overlay +ConditionPathIsSymbolicLink=!/var +DefaultDependencies=no +After=local-fs-pre.target + +[Mount] +# Rather than creating an actual writable partition, we just create +# another tmpfs. For tmpfs, the What is not relevant - but we use it in +# the test to distinguish it from other tmpfses +What=other-var-backing-store +Where=/run/buildroot/mounts/var +Type=tmpfs diff --git a/support/testing/tests/init/test_openrc.py b/support/testing/tests/init/test_openrc.py index c6ade7676d55..a1eb8fe21382 100644 --- a/support/testing/tests/init/test_openrc.py +++ b/support/testing/tests/init/test_openrc.py @@ -44,3 +44,16 @@ class TestInitSystemOpenrcRwFull(InitSystemOpenrcBase): def test_run(self): self.start_emulator("ext2") self.check_init() + + +class TestInitSystemOpenrcMergedUsrFull(InitSystemOpenrcBase): + config = InitSystemOpenrcBase.config + \ + """ + BR2_ROOTFS_MERGED_USR=y + BR2_SYSTEM_DHCP="eth0" + BR2_TARGET_ROOTFS_EXT2=y + """ + + def test_run(self): + self.start_emulator("ext2") + self.check_init() diff --git a/support/testing/tests/init/test_systemd.py b/support/testing/tests/init/test_systemd.py index ddc32b08386c..79061a86d79b 100644 --- a/support/testing/tests/init/test_systemd.py +++ b/support/testing/tests/init/test_systemd.py @@ -1,7 +1,15 @@ import infra.basetest +import re from tests.init.base import InitSystemBase as InitSystemBase +# In the following tests, the read-only cases use the default settings, +# which historically used both a factory to populate a tmpfs on /var, +# and pre-populated /var at buildtime. Since these are the default +# settings, and they proved to generate a system that ultimately boots, +# we still want to keep testing that. See later, below, for the +# specialised test cases. + class InitSystemSystemdBase(InitSystemBase): config = \ """ @@ -17,7 +25,10 @@ class InitSystemSystemdBase(InitSystemBase): """ def check_systemd(self, fs): - self.start_emulator(fs) + if "BR2_LINUX_KERNEL=y" in self.config: + self.start_emulator(fs, "zImage", "vexpress-v2p-ca9") + else: + self.start_emulator(fs) self.check_init("/lib/systemd/systemd") # Test all units are OK @@ -40,19 +51,12 @@ class TestInitSystemSystemdRoNetworkd(InitSystemSystemdBase): """ BR2_SYSTEM_DHCP="eth0" # BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set - BR2_ROOTFS_OVERLAY="{}" BR2_TARGET_ROOTFS_SQUASHFS=y - """.format(infra.filepath("tests/init/systemd-factory")) + """ def test_run(self): self.check_systemd("squashfs") - # This one must be executed on the target, to check that - # the factory feature works as expected - out, exit_code = self.emulator.run("cat /var/foo/bar") - self.assertEqual(exit_code, 0) - self.assertEqual(out[0], "foobar") - class TestInitSystemSystemdRwNetworkd(InitSystemSystemdBase): config = InitSystemSystemdBase.config + \ @@ -191,3 +195,214 @@ class TestInitSystemSystemdRwFull(InitSystemSystemdBase): def test_run(self): self.check_systemd("ext2") + + +# The following tests are all about read-only rootfs, and exercise either +# using an un-populated factory for /var, or an overlaysfs ontop of a +# pre-populated /var. They all specialise the TestInitSystemSystemdRo* +# test cases above. + + +# Helper class for factory-based tests +class InitSystemSystemdBaseFactory(): + config = \ + """ + # BR2_INIT_SYSTEMD_POPULATE_TMPFILES is not set + BR2_ROOTFS_OVERLAY="{}" + """.format(infra.filepath("tests/init/systemd-factory")) + + def test_run(self): + super().test_run() + + # This one must be executed on the target, to check that + # the factory feature works as expected + out, exit_code = self.emulator.run("cat /var/foo/bar") + self.assertEqual(exit_code, 0) + self.assertEqual(out[0], "foobar") + + # /var/foo/bar is from the /var factory + _, exit_code = self.emulator.run("test -e /usr/share/factory/var/foo/bar") + self.assertEqual(exit_code, 0) + + # We can write in /var/foo/bar + _, exit_code = self.emulator.run("echo barfoo >/var/foo/bar") + self.assertEqual(exit_code, 0) + # ... and it contains the new content + out, exit_code = self.emulator.run("cat /var/foo/bar") + self.assertEqual(exit_code, 0) + self.assertEqual(out[0], "barfoo") + # ... but the factory is umodified + out, exit_code = self.emulator.run("cat /usr/share/factory/var/foo/bar") + self.assertEqual(exit_code, 0) + self.assertEqual(out[0], "foobar") + + +class TestInitSystemSystemdRoNetworkdFactory( + InitSystemSystemdBaseFactory, + TestInitSystemSystemdRoNetworkd, +): + config = InitSystemSystemdBaseFactory.config + \ + TestInitSystemSystemdRoNetworkd.config + + +class TestInitSystemSystemdRoIfupdownFactory( + InitSystemSystemdBaseFactory, + TestInitSystemSystemdRoIfupdown, +): + config = InitSystemSystemdBaseFactory.config + \ + TestInitSystemSystemdRoIfupdown.config + + +class TestInitSystemSystemdRoIfupdownDbusbrokerFactory( + InitSystemSystemdBaseFactory, + TestInitSystemSystemdRoIfupdownDbusbroker, +): + config = InitSystemSystemdBaseFactory.config + \ + TestInitSystemSystemdRoIfupdownDbusbroker.config + + +class TestInitSystemSystemdRoIfupdownDbusbrokerDbusFactory( + InitSystemSystemdBaseFactory, + TestInitSystemSystemdRoIfupdownDbusbrokerDbus, +): + config = InitSystemSystemdBaseFactory.config + \ + TestInitSystemSystemdRoIfupdownDbusbrokerDbus.config + + +class TestInitSystemSystemdRoFullFactory( + InitSystemSystemdBaseFactory, + TestInitSystemSystemdRoFull, +): + config = InitSystemSystemdBaseFactory.config + \ + TestInitSystemSystemdRoFull.config + + +# Helper class for overlayfs-based tests +class InitSystemSystemdBaseOverlayfs(): + config = \ + """ + # BR2_INIT_SYSTEMD_VAR_FACTORY is not set + BR2_INIT_SYSTEMD_VAR_OVERLAYFS=y + BR2_ROOTFS_OVERLAY="{}" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.10.7" + BR2_LINUX_KERNEL_DEFCONFIG="vexpress" + BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{}" + BR2_LINUX_KERNEL_DTS_SUPPORT=y + BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9" + """.format(infra.filepath("tests/init/systemd-factory"), + infra.filepath("conf/overlayfs-kernel-fragment.config")) + + def test_run(self): + super().test_run() + + # This one must be executed on the target, to check that + # the tmpfiles pre-populate works as expected + out, exit_code = self.emulator.run("cat /var/foo/bar") + self.assertEqual(exit_code, 0) + self.assertEqual(out[0], "foobar") + + # /var/foo/bar is from the pre-populated /var, so it should + # not be present in the upper of the overlay + _, exit_code = self.emulator.run("test -e /run/buildroot/mounts/var/upper/foo/bar") + self.assertNotEqual(exit_code, 0) + + # We can write in /var/foo/bar + _, exit_code = self.emulator.run("echo barfoo >/var/foo/bar") + self.assertEqual(exit_code, 0) + # ... and it contains the new content + out, exit_code = self.emulator.run("cat /var/foo/bar") + self.assertEqual(exit_code, 0) + self.assertEqual(out[0], "barfoo") + # ... and it to appears in the upper + _, exit_code = self.emulator.run("test -e /run/buildroot/mounts/var/upper/foo/bar") + self.assertEqual(exit_code, 0) + # ... with the new content + out, exit_code = self.emulator.run("cat /run/buildroot/mounts/var/upper/foo/bar") + self.assertEqual(exit_code, 0) + self.assertEqual(out[0], "barfoo") + # ... while the lower still has the oldcontent + out, exit_code = self.emulator.run("cat /run/buildroot/mounts/var/lower/foo/bar") + self.assertEqual(exit_code, 0) + self.assertEqual(out[0], "foobar") + + +class TestInitSystemSystemdRoNetworkdOverlayfs( + InitSystemSystemdBaseOverlayfs, + TestInitSystemSystemdRoNetworkd, +): + config = InitSystemSystemdBaseOverlayfs.config + \ + TestInitSystemSystemdRoNetworkd.config + + +class TestInitSystemSystemdRoIfupdownOverlayfs( + InitSystemSystemdBaseOverlayfs, + TestInitSystemSystemdRoIfupdown, +): + config = InitSystemSystemdBaseOverlayfs.config + \ + TestInitSystemSystemdRoIfupdown.config + + +class TestInitSystemSystemdRoIfupdownDbusbrokerOverlayfs( + InitSystemSystemdBaseOverlayfs, + TestInitSystemSystemdRoIfupdownDbusbroker, +): + config = InitSystemSystemdBaseOverlayfs.config + \ + TestInitSystemSystemdRoIfupdownDbusbroker.config + + +class TestInitSystemSystemdRoIfupdownDbusbrokerDbusOverlayfs( + InitSystemSystemdBaseOverlayfs, + TestInitSystemSystemdRoIfupdownDbusbrokerDbus, +): + config = InitSystemSystemdBaseOverlayfs.config + \ + TestInitSystemSystemdRoIfupdownDbusbrokerDbus.config + + +class TestInitSystemSystemdRoFullOverlayfs( + InitSystemSystemdBaseOverlayfs, + TestInitSystemSystemdRoFull, +): + config = InitSystemSystemdBaseOverlayfs.config + \ + TestInitSystemSystemdRoFull.config + + +class InitSystemSystemdBaseOverlayfsVarBacking(InitSystemBase): + @classmethod + def gen_config(cls, overlaydir: str) -> str: + return re.sub( + r'^\s*BR2_ROOTFS_OVERLAY="(.*)"$', + 'BR2_ROOTFS_OVERLAY="\\1 {}"'.format(infra.filepath(overlaydir)), + TestInitSystemSystemdRoFullOverlayfs.config, + flags=re.MULTILINE, + ) + + def check_var_mounted(self): + self.assertRunOk("grep '^other-var-backing-store /run/buildroot/mounts/var tmpfs' /proc/mounts") + + +class TestInitSystemSystemdRoFullOverlayfsVarBackingMountUnit( + TestInitSystemSystemdRoFullOverlayfs, + InitSystemSystemdBaseOverlayfsVarBacking, +): + config = InitSystemSystemdBaseOverlayfsVarBacking.gen_config( + 'tests/init/systemd-overlay-mount-unit', + ) + + def test_run(self): + super().test_run() + self.check_var_mounted() + + +class TestInitSystemSystemdRoFullOverlayfsVarBackingFstab( + TestInitSystemSystemdRoFullOverlayfs, + InitSystemSystemdBaseOverlayfsVarBacking, +): + config = InitSystemSystemdBaseOverlayfsVarBacking.gen_config( + 'tests/init/systemd-overlay-fstab', + ) + + def test_run(self): + super().test_run() + self.check_var_mounted() diff --git a/support/testing/tests/init/test_systemd_selinux.py b/support/testing/tests/init/test_systemd_selinux.py index 73604cfc32e4..e9bb3405cd21 100644 --- a/support/testing/tests/init/test_systemd_selinux.py +++ b/support/testing/tests/init/test_systemd_selinux.py @@ -12,17 +12,18 @@ class TestSELinuxSystemd(infra.basetest.BRTest): BR2_INIT_SYSTEMD=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y - BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.8.12" + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.26" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/x86_64/linux.config" + BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y BR2_PACKAGE_LIBSELINUX=y BR2_PACKAGE_REFPOLICY=y """ def wait_boot(self): - # The complete boot with systemd takes more time than what the default multipler permits - self.emulator.timeout_multiplier *= 10 - self.emulator.login() + # The complete boot with systemd takes more time than what the + # default typically allows + self.emulator.login(timeout=600) def run_tests(self, fstype): kernel = os.path.join(self.builddir, "images", "bzImage") diff --git a/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniTest.java b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniTest.java index 3d6c17b746cb..21d96797880c 100644 --- a/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniTest.java +++ b/support/testing/tests/package/br2-external/openjdk/package/openjdk-jni-test/JniTest.java @@ -33,7 +33,7 @@ private static void Test( public static void main(String[] args) { var actualVersion = JniWrapper.get_jni_version(); - var expectedVersion = 0x000A0000; + var expectedVersion = 0x00150000; JniTest.Test( "Get JNI Version", actualVersion, diff --git a/support/testing/tests/package/sample_nu.nu b/support/testing/tests/package/sample_nu.nu new file mode 100644 index 000000000000..5287862cf1d8 --- /dev/null +++ b/support/testing/tests/package/sample_nu.nu @@ -0,0 +1,6 @@ +#! /usr/bin/nu +def greet [name] { + ["hello" $name] +} + +greet "world" diff --git a/support/testing/tests/package/sample_python_docker.py b/support/testing/tests/package/sample_python_docker.py new file mode 100644 index 000000000000..a69097b4125a --- /dev/null +++ b/support/testing/tests/package/sample_python_docker.py @@ -0,0 +1,12 @@ +import docker + +client = docker.from_env() +info = client.info() +images = client.images.list() + +assert len(images) > 0 + +print('Version:', info['ServerVersion']) +print('Images:') +for i in images: + print(i.tags[0]) diff --git a/support/testing/tests/package/sample_python_evdev.py b/support/testing/tests/package/sample_python_evdev.py new file mode 100644 index 000000000000..0c00fa6e2f55 --- /dev/null +++ b/support/testing/tests/package/sample_python_evdev.py @@ -0,0 +1,11 @@ +import evdev + +devices = [evdev.InputDevice(path) for path in evdev.list_devices()] +e = evdev.events.InputEvent(1036996631, 984417, evdev.ecodes.EV_KEY, evdev.ecodes.KEY_A, 2) +k = evdev.events.KeyEvent(e) + +assert(k.keystate == evdev.events.KeyEvent.key_hold) +assert(k.event == e) +assert(k.scancode == evdev.ecodes.KEY_A) +assert(k.keycode == 'KEY_A') +assert(len(devices) > 0) diff --git a/support/testing/tests/package/sample_python_hwdata.py b/support/testing/tests/package/sample_python_hwdata.py new file mode 100644 index 000000000000..a13c08b32eb5 --- /dev/null +++ b/support/testing/tests/package/sample_python_hwdata.py @@ -0,0 +1,40 @@ +#! /usr/bin/env python3 + +from hwdata import PCI, PNP, USB + +# Test PCI IDs +pci_vendor_id = '1af4' +pci_device_id = '1003' + +pci = PCI() + +pci_vendor = pci.get_vendor(pci_vendor_id) +print("PCI Vendor: %s" % pci_vendor) +assert (pci_vendor == "Red Hat, Inc.") + +pci_device = pci.get_device(pci_vendor_id, pci_device_id) +print("PCI Device: %s" % pci_device) +assert (pci_device == "Virtio console") + +# Test USB IDs +usb_vendor_id = '1d6b' +usb_device_id = '0001' + +usb = USB() + +usb_vendor = usb.get_vendor(usb_vendor_id) +print("USB Vendor: %s" % usb_vendor) +assert (usb_vendor == "Linux Foundation") + +usb_device = usb.get_device(usb_vendor_id, usb_device_id) +print("USB Device: %s" % usb_device) +assert (usb_device == "1.1 root hub") + +# Test PNP IDs +pnp_id = 'RHT' + +pnp = PNP() + +pnp_vendor = pnp.get_vendor(pnp_id) +print("PNP Vendor: %s" % pnp_vendor) +assert (pnp_vendor == "Red Hat, Inc.") diff --git a/support/testing/tests/package/sample_python_mako.py b/support/testing/tests/package/sample_python_mako.py new file mode 100644 index 000000000000..833ead87be2e --- /dev/null +++ b/support/testing/tests/package/sample_python_mako.py @@ -0,0 +1 @@ +from mako import runtime # noqa diff --git a/support/testing/tests/package/sample_python_mako_ext.py b/support/testing/tests/package/sample_python_mako_ext.py new file mode 100644 index 000000000000..855d64ebf5fb --- /dev/null +++ b/support/testing/tests/package/sample_python_mako_ext.py @@ -0,0 +1,3 @@ +from mako import runtime # noqa +import mako.ext.pygmentplugin # noqa +import mako.ext.babelplugin # noqa diff --git a/support/testing/tests/package/sample_python_midiutil.py b/support/testing/tests/package/sample_python_midiutil.py new file mode 100644 index 000000000000..58bf1fbccb48 --- /dev/null +++ b/support/testing/tests/package/sample_python_midiutil.py @@ -0,0 +1,23 @@ +#! /usr/bin/env python3 + +# Taken from: +# https://github.com/MarkCWirt/MIDIUtil/blob/1.2.1/examples/c-major-scale.py + +from midiutil import MIDIFile + +degrees = [60, 62, 64, 65, 67, 69, 71, 72] # MIDI note number +track = 0 +channel = 0 +time = 0 # In beats +duration = 1 # In beats +tempo = 60 # In BPM +volume = 100 # 0-127, as per the MIDI standard + +MyMIDI = MIDIFile(1) # One track +MyMIDI.addTempo(track, time, tempo) + +for i, pitch in enumerate(degrees): + MyMIDI.addNote(track, channel, pitch, time + i, duration, volume) + +with open("major-scale.mid", "wb") as output_file: + MyMIDI.writeFile(output_file) diff --git a/support/testing/tests/package/sample_python_pysmb.py b/support/testing/tests/package/sample_python_pysmb.py new file mode 100644 index 000000000000..6b37530a84ab --- /dev/null +++ b/support/testing/tests/package/sample_python_pysmb.py @@ -0,0 +1,2 @@ +from nmb.NetBIOS import NetBIOS # noqa +from smb.SMBHandler import SMBHandler # noqa diff --git a/support/testing/tests/package/sample_python_segno.py b/support/testing/tests/package/sample_python_segno.py new file mode 100644 index 000000000000..c96d6087ceff --- /dev/null +++ b/support/testing/tests/package/sample_python_segno.py @@ -0,0 +1,13 @@ +import segno +import os +import tempfile + +qr = segno.make_qr('http:/www.example.org/') +with tempfile.NamedTemporaryFile('wb', suffix='.png', delete=False) as f: + fn = f.name +qr.save(fn) +expected = b'\211PNG\r\n\032\n' # PNG magic number +with open(fn, mode='rb') as f: + val = f.read(len(expected)) +os.unlink(fn) +assert expected == val diff --git a/support/testing/tests/package/test_acpica.py b/support/testing/tests/package/test_acpica.py new file mode 100644 index 000000000000..f7dd64d7f01c --- /dev/null +++ b/support/testing/tests/package/test_acpica.py @@ -0,0 +1,91 @@ +import os + +import infra.basetest + + +class TestAcpica(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_PACKAGE_ACPICA=y + BR2_ROOTFS_OVERLAY="{}" + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """.format( + # overlay to add an ASL source file + infra.filepath("tests/package/test_acpica/rootfs-overlay")) + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + # Check a program can execute + self.assertRunOk("iasl -v") + + # Check "acpiexamples" demo is running + self.assertRunOk("acpiexamples") + + # Check "acpihelp" convert error code 0x1 to AE_ERROR + self.assertRunOk("acpihelp -e 1 | grep -F AE_ERROR") + + # Check "acpihelp" convert 0xA3 opcode to NoOpOp + self.assertRunOk("acpihelp -o 0xA3 | grep -F NoOpOp") + + # Compile a simple ASL file + # The output file is automatically set to "dsdt.aml" + self.assertRunOk("iasl dsdt.asl") + + # Evaluate the AML with acpiexec + # STR0 is expected to be "Hello Buildroot!" + cmd = "acpiexec -b 'evaluate STR0' dsdt.aml" + cmd += " | grep -F '\"Hello Buildroot!\"'" + self.assertRunOk(cmd) + + # INT1 is exepcted to be 12345678 + cmd = "acpiexec -b 'evaluate INT1' dsdt.aml" + cmd += " | grep -F 12345678" + self.assertRunOk(cmd) + + # Evalute the TEST method which prints its argument + cmd = "acpiexec -b 'evaluate TST2 \"Hello World\"' dsdt.aml" + cmd += " | grep -F 'Arg0=Hello World'" + self.assertRunOk(cmd) + + # dump aml to text + self.assertRunOk("acpidump -f dsdt.aml -o dsdt.dump") + + # Rebuild dump to binary with acpixtract + # Output is implicitly into the dsdt.dat file + self.assertRunOk("acpixtract -a dsdt.dump") + + # Compare with acpibin + # The rebuilt dsdt.dat is expected to be the same + cmd = "acpibin -a dsdt.aml dsdt.dat" + cmd += " | grep -F 'Files compare exactly'" + self.assertRunOk(cmd) + + # Compare with cmp, to check acpibin + self.assertRunOk("cmp dsdt.aml dsdt.dat") + + # Disassemble the compiled ASL + # Output file is implicitly "dsdt.dsl", we rename it to + # "disa.dsl" to make sure it will not clash with the original + # file, when recompiling. + self.assertRunOk("iasl dsdt.aml && mv -v dsdt.dsl disa.dsl") + + # Disassembled output should contain our string + self.assertRunOk("grep STR0 disa.dsl | grep '\"Hello Buildroot!\"'") + + # Recompile the disassembled file + self.assertRunOk("iasl disa.dsl") + + # Compare the first compiled file with the one recompiled from + # the disassembly. There are expected to be identical. + cmd = "acpibin -a dsdt.aml disa.aml" + cmd += " | grep -F 'Files compare exactly'" + self.assertRunOk(cmd) + + # Also compare with "cmp" + self.assertRunOk("cmp dsdt.aml disa.aml") diff --git a/support/testing/tests/package/test_acpica/rootfs-overlay/root/dsdt.asl b/support/testing/tests/package/test_acpica/rootfs-overlay/root/dsdt.asl new file mode 100644 index 000000000000..24f51565bea9 --- /dev/null +++ b/support/testing/tests/package/test_acpica/rootfs-overlay/root/dsdt.asl @@ -0,0 +1,9 @@ +DefinitionBlock ("", "DSDT", 2, "", "", 0x0) +{ + Name (STR0, "Hello Buildroot!") + Name (INT1, 0x12345678) + Method (TST2, 1) + { + printf ("Arg0=%o", Arg0) + } +} diff --git a/support/testing/tests/package/test_bash.py b/support/testing/tests/package/test_bash.py new file mode 100644 index 000000000000..f0ee8cadc120 --- /dev/null +++ b/support/testing/tests/package/test_bash.py @@ -0,0 +1,47 @@ +import os + +import infra.basetest + + +class TestBash(infra.basetest.BRTest): + config = \ + """ + BR2_arm=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_ENABLE_LOCALE_WHITELIST="" + BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y + BR2_PACKAGE_BASH=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + # Check that we are indeed not (yet) running bash + out, _ = self.emulator.run('echo "${BASH}"') + self.assertEqual(out[0], "", "Already running bash instead of busybox' sh") + + self.assertRunOk("bash -il") + # Twist! The above command is still runing, it's just that + # bash did display the prompt we expect. Check we are indeed + # actually bash + out, _ = self.emulator.run('echo "${BASH}"') + self.assertEqual(out[0], "/bin/bash", "Not running bash") + # Exit bash, back to busybox' shell + self.emulator.run("exit 0") + + # Check that we are indeed no longer running bash + out, _ = self.emulator.run('echo "${BASH}"') + self.assertEqual(out[0], "", "Still running bash instead of busybox' sh") + + # Try to run with a non-available locale + self.assertRunOk("LC_ALL=en_US bash -il") + out, _ = self.emulator.run('echo "${BASH}"') + self.assertEqual(out[0], "/bin/bash", "Not running bash") + self.emulator.run("exit 0") diff --git a/support/testing/tests/package/test_brotli.py b/support/testing/tests/package/test_brotli.py new file mode 100644 index 000000000000..779b956cb31c --- /dev/null +++ b/support/testing/tests/package/test_brotli.py @@ -0,0 +1,13 @@ +from tests.package.test_compressor_base import TestCompressorBase + + +class TestBrotli(TestCompressorBase): + __test__ = True + config = TestCompressorBase.config + \ + """ + BR2_PACKAGE_BROTLI=y + """ + compress_cmd = "brotli" + decompress_cmd = "brotli -d" + compressed_file_ext = ".br" + timeout = 60 diff --git a/support/testing/tests/package/test_bzip2.py b/support/testing/tests/package/test_bzip2.py new file mode 100644 index 000000000000..4b7ae8180faf --- /dev/null +++ b/support/testing/tests/package/test_bzip2.py @@ -0,0 +1,12 @@ +from tests.package.test_compressor_base import TestCompressorBase + + +class TestBzip2(TestCompressorBase): + __test__ = True + config = TestCompressorBase.config + \ + """ + BR2_PACKAGE_BZIP2=y + """ + compress_cmd = "bzip2" + decompress_cmd = "bunzip2" + compressed_file_ext = ".bz2" diff --git a/support/testing/tests/package/test_clang.py b/support/testing/tests/package/test_clang.py index df3990c6be82..f36faa059a54 100644 --- a/support/testing/tests/package/test_clang.py +++ b/support/testing/tests/package/test_clang.py @@ -14,7 +14,7 @@ class TestClangCompilerRT(infra.basetest.BRTest): BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y - BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.16.7" + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.283" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config" BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y diff --git a/support/testing/tests/package/test_compressor_base.py b/support/testing/tests/package/test_compressor_base.py new file mode 100644 index 000000000000..6555584c103c --- /dev/null +++ b/support/testing/tests/package/test_compressor_base.py @@ -0,0 +1,126 @@ +import os + +import infra.basetest + + +class TestCompressorBase(infra.basetest.BRTest): + """Common class to test a data compression/decompression package. + + Build an image containing the package enabled in config, start the + emulator, login to it. It prepares a test data file with some + redundancy to let compression program reduce the file size. + + Each test case that inherits from this class must have: + __test__ = True - to let nose2 know that it is a test case + config - defconfig fragment with the packages to run the test + compress_cmd - the compression program command (ex: "gzip") + it can also contain arguments (ex: "gzip -9") + It also can have: + decompress_cmd - the decompression program (ex: "gunzip") + if unset, the default value is "un" appended with the + value of "compress_cmd". + check_integrity_cmd + - the integrity check command (ex: "gzip -t") + in unset, the default value is "compress_cmd" appended + with " -t". + compressed_file_ext + - the file extention of compressed files created by the + compress command. (ex: ".gz") + if unset, the default value is a dot "." appended with + the value of "compress_cmd". + timeout - timeout to the compression command. Some compression + program can take more time than the default value + (set to 5 seconds). + """ + __test__ = False + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + compress_cmd = "compressor-unknown" + decompress_cmd = None + check_integrity_cmd = None + compressed_file_ext = None + timeout = 5 + + def __init__(self, names): + """Setup common test variables.""" + super(TestCompressorBase, self).__init__(names) + + if self.decompress_cmd is None: + self.decompress_cmd = "un" + self.compress_cmd + + if self.check_integrity_cmd is None: + self.check_integrity_cmd = self.compress_cmd + " -t" + + if self.compressed_file_ext is None: + self.compressed_file_ext = "." + self.compress_cmd + + self.ref_file = "reference.bin" + self.test_file = "test.bin" + self.comp_test_file = self.test_file + self.compressed_file_ext + + def login(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + def test_run(self): + self.login() + self.prepare_data() + self.compress_test() + self.check_integrity_test() + self.uncompress_test() + self.compare_test() + + def prepare_data(self): + # Create a data file composed of: 128kB of random data, then + # 128kB of zeroes, then a repetition of the 1st 128kB of + # random. + self.assertRunOk("dd if=/dev/urandom of=rand.bin bs=128k count=1") + self.assertRunOk("dd if=/dev/zero of=zeroes.bin bs=128k count=1") + self.assertRunOk(f"cat rand.bin zeroes.bin rand.bin > {self.ref_file}") + + # Keep a copy of the reference data since + # compressor/decompressor programs usually unlink source data + # file. + self.assertRunOk(f"cp {self.ref_file} {self.test_file}") + + def compress_test(self): + # Run the compression + self.assertRunOk(f"{self.compress_cmd} {self.test_file}", timeout=self.timeout) + + # Check that the compressed file was created with the expected name + self.assertRunOk(f"test -e {self.comp_test_file}") + + # Remove the input test file. Some compressors (like gzip) are + # removing it automatically by default. Some others (like lz4) + # are keeping those by default. We always remove it to make + # sure a new file will be recreated by the decompression. + self.assertRunOk(f"rm -f {self.test_file}") + + # Check the compressed file is smaller than the input. + # The "ls -l" command is for simplifying debugging + self.assertRunOk(f"ls -l {self.ref_file} {self.comp_test_file}") + ref_sz_cmd = f"wc -c < {self.ref_file}" + comp_sz_cmd = f"wc -c < {self.comp_test_file}" + self.assertRunOk(f"test $({ref_sz_cmd}) -gt $({comp_sz_cmd})") + + def check_integrity_test(self): + # Check the compressed file integrity + self.assertRunOk(f"{self.check_integrity_cmd} {self.comp_test_file}") + + def uncompress_test(self): + # Run the decompression + self.assertRunOk(f"{self.decompress_cmd} {self.comp_test_file}") + + # Check the decompressed file was created with the correct name + self.assertRunOk(f"test -e {self.test_file}") + + def compare_test(self): + # Check the decompressed file is exactly the same as the + # reference created at the beginning + self.assertRunOk(f"cmp {self.test_file} {self.ref_file}") diff --git a/support/testing/tests/package/test_ddrescue.py b/support/testing/tests/package/test_ddrescue.py new file mode 100644 index 000000000000..22069714218d --- /dev/null +++ b/support/testing/tests/package/test_ddrescue.py @@ -0,0 +1,94 @@ +import os + +import infra.basetest + + +class TestDdrescue(infra.basetest.BRTest): + + # A specific configuration is needed for testing ddrescue: + # - A kernel config fragment enables loop blk dev and device + # mapper dm-dust, which are used to simulate a failing storage + # block device. + # - dmraid user space package is needed to configure dm-dust + config = \ + """ + BR2_aarch64=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.15" + BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config" + BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{}" + BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y + BR2_PACKAGE_DDRESCUE=y + BR2_PACKAGE_DMRAID=y + BR2_TARGET_ROOTFS_CPIO=y + BR2_TARGET_ROOTFS_CPIO_GZIP=y + # BR2_TARGET_ROOTFS_TAR is not set + """.format( + infra.filepath("tests/package/test_ddrescue/linux-ddrescue.fragment") + ) + + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.cpio.gz") + kern = os.path.join(self.builddir, "images", "Image") + self.emulator.boot(arch="aarch64", + kernel=kern, + kernel_cmdline=["console=ttyAMA0"], + options=["-M", "virt", "-cpu", "cortex-a57", "-m", "256M", "-initrd", img]) + self.emulator.login() + + # Test variables: + dev_img = "/tmp/dev.img" + lo_dev = "/dev/loop0" + dm_dev_name = "dust0" + dm_dev = f"/dev/mapper/{dm_dev_name}" + ddrescue_img = "/tmp/ddrescue.img" + + # Test the program can execute + self.assertRunOk("ddrescue --version") + + # Create a 1MB file of zeroes for initial loopback block device + self.assertRunOk(f"dd if=/dev/zero of={dev_img} bs=1M count=1") + + # Setup lookback block device + self.assertRunOk(f"losetup {lo_dev} {dev_img}") + + # Create and setup dm-dust to simulate a failing block device + # The dev_img file is 1MB: 2048 blocks of 512 bytes each + self.assertRunOk(f"dmsetup create {dm_dev_name} --table '0 2048 dust {lo_dev} 0 512'") + + # Add few bad blocks and enable I/O error emulation + for badblock in [30, 40, 50, 60]: + self.assertRunOk(f"dmsetup message {dm_dev_name} 0 addbadblock {badblock}") + self.assertRunOk(f"dmsetup message {dm_dev_name} 0 enable") + + # Show device mapper status, to make debugging easier + self.assertRunOk(f"dmsetup status {dm_dev_name}") + + # A normal 'dd' is expected to fail with I/O error + cmd = f"dd if={dm_dev} of=/dev/null bs=512" + _, exit_code = self.emulator.run(cmd) + self.assertNotEqual(exit_code, 0) + + # Where a normal 'dd' fails, 'ddrescue' is expected to succeed + self.assertRunOk(f"ddrescue {dm_dev} {ddrescue_img}") + + # ddrescue does not normaly write any output data when there + # is I/O error on the input. The intent is to preserve any + # data that could have been read in a previous pass. There is + # one exception, when the output is a non-existing regular + # file, ddrescue will initialize it with zeroes the first + # time. Since the original image file was also including + # zeroes, the recovered image is expected to be the same as + # the original one. See ddrescue manual: + # https://www.gnu.org/software/ddrescue/manual/ddrescue_manual.html#Introduction + # "Ddrescue does not write zeros to the output when it finds + # bad sectors in the input, and does not truncate the output + # file if not asked to." + # https://www.gnu.org/software/ddrescue/manual/ddrescue_manual.html#Algorithm + # "If the output file is a regular file created by ddrescue, + # the areas marked as bad-sector will contain zeros." + self.assertRunOk(f"cmp {dev_img} {ddrescue_img}") diff --git a/support/testing/tests/package/test_ddrescue/linux-ddrescue.fragment b/support/testing/tests/package/test_ddrescue/linux-ddrescue.fragment new file mode 100644 index 000000000000..5cbe18a89fbe --- /dev/null +++ b/support/testing/tests/package/test_ddrescue/linux-ddrescue.fragment @@ -0,0 +1,4 @@ +CONFIG_BLK_DEV_LOOP=y +CONFIG_MD=y +CONFIG_BLK_DEV_DM=y +CONFIG_DM_DUST=y diff --git a/support/testing/tests/package/test_docker_compose.py b/support/testing/tests/package/test_docker_compose.py index 38b669fc6d61..16027c9c3ada 100644 --- a/support/testing/tests/package/test_docker_compose.py +++ b/support/testing/tests/package/test_docker_compose.py @@ -4,6 +4,8 @@ class TestDockerCompose(infra.basetest.BRTest): + scripts = ["conf/docker-compose.yml", + "tests/package/sample_python_docker.py"] config = \ """ BR2_x86_64=y @@ -18,6 +20,8 @@ class TestDockerCompose(infra.basetest.BRTest): BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.262" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="{}" + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_DOCKER=y BR2_PACKAGE_CA_CERTIFICATES=y BR2_PACKAGE_DOCKER_CLI=y BR2_PACKAGE_DOCKER_COMPOSE=y @@ -27,7 +31,7 @@ class TestDockerCompose(infra.basetest.BRTest): # BR2_TARGET_ROOTFS_TAR is not set """.format( infra.filepath("tests/package/copy-sample-script-to-target.sh"), - infra.filepath("conf/docker-compose.yml"), + " ".join([infra.filepath(i) for i in scripts]), infra.filepath("conf/docker-compose-kernel.config")) def wait_for_dockerd(self): @@ -46,6 +50,9 @@ def docker_compose_test(self): self.assertRunOk('wget -q -O /tmp/busybox http://127.0.0.1/busybox', 120) self.assertRunOk('cmp /bin/busybox /tmp/busybox', 120) + def python_docker_test(self): + self.assertRunOk('python3 ./sample_python_docker.py', 120) + def test_run(self): kernel = os.path.join(self.builddir, "images", "bzImage") rootfs = os.path.join(self.builddir, "images", "rootfs.ext2") @@ -62,3 +69,4 @@ def test_run(self): self.wait_for_dockerd() self.docker_test() self.docker_compose_test() + self.python_docker_test() diff --git a/support/testing/tests/package/test_dos2unix.py b/support/testing/tests/package/test_dos2unix.py new file mode 100644 index 000000000000..af5850ae3e96 --- /dev/null +++ b/support/testing/tests/package/test_dos2unix.py @@ -0,0 +1,45 @@ +import os + +import infra.basetest + + +class TestDos2Unix(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y + BR2_PACKAGE_DOS2UNIX=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + # Check the program can run. This test also checks that we're + # using the real "dos2unix" rather than the applet provided in + # BusyBox, since the "--version" option is recognized by the + # real dos2unix and return an error in BusyBox. + self.assertRunOk("dos2unix --version") + + # Create a text file with UNIX new-lines + self.assertRunOk("echo -e 'Hello\\nBuildroot' > original.txt") + + # Convert the original UNIX file to DOS + self.assertRunOk("unix2dos -n original.txt dos.txt") + + # DOS file is expected to be different than the UNIX file + _, exit_code = self.emulator.run("cmp original.txt dos.txt") + self.assertNotEqual(exit_code, 0) + + # The "cat -A" command should print '^M$' for CR-LF + self.assertRunOk("cat -A dos.txt | grep -Fq '^M$'") + + # Convert back DOS file to UNIX + self.assertRunOk("dos2unix -n dos.txt unix.txt") + + # "unix.txt" should be identical to "original.txt" + self.assertRunOk("cmp original.txt unix.txt") diff --git a/support/testing/tests/package/test_firewalld.py b/support/testing/tests/package/test_firewalld.py new file mode 100644 index 000000000000..700337f63736 --- /dev/null +++ b/support/testing/tests/package/test_firewalld.py @@ -0,0 +1,102 @@ +"""Test firewalld for both systemd and sysvinit.""" +import os +import time +import infra.basetest + + +class TestFirewalldSystemd(infra.basetest.BRTest): + """Build the kernel as firewalld requires several the nftable options.""" + + config = """ + BR2_arm=y + BR2_cortex_a9=y + BR2_ARM_ENABLE_VFP=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_INIT_SYSTEMD=y + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.61" + BR2_LINUX_KERNEL_DEFCONFIG="vexpress" + BR2_LINUX_KERNEL_DTS_SUPPORT=y + BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9" + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_FIREWALLD=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + kernel_file = os.path.join(self.builddir, "images", "zImage") + dtb_file = os.path.join(self.builddir, "images", "vexpress-v2p-ca9.dtb") + self.emulator.boot(arch="armv7", + kernel=kernel_file, + kernel_cmdline=["console=ttyAMA0,115200"], + options=[ + "-initrd", cpio_file, + "-dtb", dtb_file, + "-M", "vexpress-a9" + ]) + # It takes quite some time for the system to boot with firewalld, + self.emulator.login(timeout=120) + + # It may take some time for firewalld to finish startup. + # Give it at least 15 seconds. + is_active = False + for i in range(15): + output, _ = self.emulator.run("systemctl is-active firewalld") + if output[0] == "active": + is_active = True + break + time.sleep(1) + if not is_active: + self.fail("firewalld failed to activate!") + + cmd = "firewall-cmd --state" + output, exit_code = self.emulator.run(cmd, timeout=10) + self.assertIn("running", output[0]) + self.assertEqual(exit_code, 0) + + +class TestFirewalldSysVInit(infra.basetest.BRTest): + """Build the kernel as firewalld requires several nftable options.""" + + config = """ + BR2_arm=y + BR2_cortex_a9=y + BR2_ARM_ENABLE_VFP=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.61" + BR2_LINUX_KERNEL_DEFCONFIG="vexpress" + BR2_LINUX_KERNEL_DTS_SUPPORT=y + BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9" + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_FIREWALLD=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + kernel_file = os.path.join(self.builddir, "images", "zImage") + dtb_file = os.path.join(self.builddir, "images", "vexpress-v2p-ca9.dtb") + self.emulator.boot(arch="armv7", + kernel=kernel_file, + kernel_cmdline=["console=ttyAMA0,115200"], + options=[ + "-initrd", cpio_file, + "-dtb", dtb_file, + "-M", "vexpress-a9" + ]) + # It takes quite some time for the system to boot with firewalld. + self.emulator.login(timeout=120) + cmd = "firewall-cmd --state" + output, exit_code = self.emulator.run(cmd, timeout=10) + self.assertIn("running", output[0]) + self.assertEqual(exit_code, 0) diff --git a/support/testing/tests/package/test_fluidsynth.py b/support/testing/tests/package/test_fluidsynth.py new file mode 100644 index 000000000000..20d4da0c50a0 --- /dev/null +++ b/support/testing/tests/package/test_fluidsynth.py @@ -0,0 +1,61 @@ +import os + +import infra.basetest + + +class TestFluidsynth(infra.basetest.BRTest): + # infra.basetest.BASIC_TOOLCHAIN_CONFIG cannot be used as it is + # armv5 and based on qemu versatilepb which is limited to 256MB of + # RAM. The test needs 1GB of RAM (larger initrd and soundfont is + # loaded in memory). + config = \ + """ + BR2_aarch64=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.86" + BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config" + BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y + BR2_PACKAGE_AUBIO=y + BR2_PACKAGE_FLUIDSYNTH=y + BR2_PACKAGE_FLUIDSYNTH_LIBSNDFILE=y + BR2_PACKAGE_FLUID_SOUNDFONT=y + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_MIDIUTIL=y + BR2_ROOTFS_OVERLAY="{}" + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """.format( + # overlay to add helper test scripts + infra.filepath("tests/package/test_fluidsynth/rootfs-overlay")) + + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.cpio") + kern = os.path.join(self.builddir, "images", "Image") + self.emulator.boot(arch="aarch64", + kernel=kern, + kernel_cmdline=["console=ttyAMA0"], + options=["-M", "virt", "-cpu", "cortex-a57", "-m", "1G", "-initrd", img]) + self.emulator.login() + + # Test the binary executes + self.assertRunOk("fluidsynth --version") + + # Create a simple MIDI file programmatically + self.assertRunOk("/root/gen_midi_file.py /tmp/output.mid") + + # Convert the MIDI file to a WAV file + cmd = "fluidsynth" + cmd += " -F /tmp/output.wav" + cmd += " /usr/share/soundfonts/FluidR3_GM.sf2" + cmd += " /tmp/output.mid" + self.assertRunOk(cmd) + + # Extract notes in the WAV file with Aubio + self.assertRunOk("aubionotes /tmp/output.wav > /tmp/notes.txt") + + # Check the extracted notes are the expected ones + self.assertRunOk("/root/check_notes.py < /tmp/notes.txt") diff --git a/support/testing/tests/package/test_fluidsynth/rootfs-overlay/root/check_notes.py b/support/testing/tests/package/test_fluidsynth/rootfs-overlay/root/check_notes.py new file mode 100755 index 000000000000..7301e14a9f06 --- /dev/null +++ b/support/testing/tests/package/test_fluidsynth/rootfs-overlay/root/check_notes.py @@ -0,0 +1,24 @@ +#! /usr/bin/env python3 +# +# This script reads the output of the "aubionotes" command and +# validates it contains three expected notes (A2, E3, A3) in the +# correct order. Silences or other notes are allowed in between those +# notes, to allow some flexibility. + +import sys + +found = 0 +notes = [57, 64, 69] + +for line in sys.stdin: + fields = line.split() + if len(fields) >= 1: + value = round(float(fields[0])) + if value == notes[found]: + found += 1 + if found == len(notes): + print("Found all notes") + sys.exit(0) + +print("Error: all notes not found") +sys.exit(1) diff --git a/support/testing/tests/package/test_fluidsynth/rootfs-overlay/root/gen_midi_file.py b/support/testing/tests/package/test_fluidsynth/rootfs-overlay/root/gen_midi_file.py new file mode 100755 index 000000000000..aa53a25af3f8 --- /dev/null +++ b/support/testing/tests/package/test_fluidsynth/rootfs-overlay/root/gen_midi_file.py @@ -0,0 +1,23 @@ +#! /usr/bin/env python3 +# +# This script generates a MIDI file with only 3 notes: A2, E3, A3 +# usage: gen_midi_file.py [output-filename] + +import sys + +from midiutil import MIDIFile + +output_filename = "output.mid" +if len(sys.argv) >= 2: + output_filename = sys.argv[1] + +notes = [57, 64, 69] # A2, E3, A3 + +midi = MIDIFile() +midi.addTempo(track=0, time=0, tempo=60) + +for i, p in enumerate(notes): + midi.addNote(track=0, channel=0, pitch=p, time=i, duration=1, volume=100) + +with open(output_filename, "wb") as output_file: + midi.writeFile(output_file) diff --git a/support/testing/tests/package/test_flutter.py b/support/testing/tests/package/test_flutter.py new file mode 100644 index 000000000000..a3e98a43e5f2 --- /dev/null +++ b/support/testing/tests/package/test_flutter.py @@ -0,0 +1,54 @@ +import os +import infra.basetest + + +class TestFlutter(infra.basetest.BRTest): + config = f""" + BR2_aarch64=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_ROOTFS_OVERLAY="{infra.filepath("tests/package/test_flutter/overlay")}" + BR2_PER_PACKAGE_DIRECTORIES=y + BR2_INIT_SYSTEMD=y + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.54" + BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y + BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config" + BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{infra.filepath("tests/package/test_flutter/linux-vkms.fragment")}" + BR2_PACKAGE_LIBDRM=y + BR2_PACKAGE_MESA3D=y + BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST=y + BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VIRGL=y + BR2_PACKAGE_MESA3D_OPENGL_ES=y + BR2_PACKAGE_FLUTTER_PI=y + BR2_PACKAGE_FLUTTER_PI_RAW_KEYBOARD_PLUGIN=y + BR2_PACKAGE_FLUTTER_PI_TEXT_INPUT_PLUGIN=y + BR2_PACKAGE_FLUTTER_GALLERY=y + BR2_PACKAGE_FLUTTER_ENGINE=y + BR2_TARGET_ROOTFS_EXT2=y + BR2_TARGET_ROOTFS_EXT2_4=y + BR2_TARGET_ROOTFS_EXT2_SIZE="512M" + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.ext2") + kern = os.path.join(self.builddir, "images", "Image") + self.emulator.boot( + arch="aarch64", + kernel=kern, + kernel_cmdline=["root=/dev/vda console=ttyAMA0"], + options=["-M", "virt", + "-cpu", "cortex-a57", + "-m", "512M", + "-smp", "4", + "-vga", "std", + "-vnc", "none", + "-drive", f"file={img},if=virtio,format=raw"]) + self.emulator.login() + cmd = "systemctl is-active flutter-gallery" + output, exit_code = self.emulator.run(cmd, 10) + self.assertEqual(exit_code, 0) + self.assertEqual(output[0], "active") diff --git a/support/testing/tests/package/test_flutter/linux-vkms.fragment b/support/testing/tests/package/test_flutter/linux-vkms.fragment new file mode 100644 index 000000000000..3fc7a5dded6c --- /dev/null +++ b/support/testing/tests/package/test_flutter/linux-vkms.fragment @@ -0,0 +1,2 @@ +CONFIG_DEBUG_FS=y +CONFIG_DRM_VKMS=y diff --git a/support/testing/tests/package/test_flutter/overlay/etc/systemd/system/multi-user.target.wants/flutter-gallery.service b/support/testing/tests/package/test_flutter/overlay/etc/systemd/system/multi-user.target.wants/flutter-gallery.service new file mode 120000 index 000000000000..40993fb16c44 --- /dev/null +++ b/support/testing/tests/package/test_flutter/overlay/etc/systemd/system/multi-user.target.wants/flutter-gallery.service @@ -0,0 +1 @@ +../../../../usr/lib/systemd/system/flutter-gallery.service \ No newline at end of file diff --git a/support/testing/tests/package/test_flutter/overlay/usr/lib/systemd/system/flutter-gallery.service b/support/testing/tests/package/test_flutter/overlay/usr/lib/systemd/system/flutter-gallery.service new file mode 100644 index 000000000000..88a2bcbf0bbc --- /dev/null +++ b/support/testing/tests/package/test_flutter/overlay/usr/lib/systemd/system/flutter-gallery.service @@ -0,0 +1,11 @@ +[Unit] +Description=flutter-gallery daemon +After=dbus.service systemd-udevd.service + +[Service] +ExecStart=/usr/bin/flutter-pi --release /usr/share/flutter/gallery/release/ +Restart=always +KillMode=process + +[Install] +WantedBy=multi-user.target diff --git a/support/testing/tests/package/test_gawk.py b/support/testing/tests/package/test_gawk.py new file mode 100644 index 000000000000..7d737a96008b --- /dev/null +++ b/support/testing/tests/package/test_gawk.py @@ -0,0 +1,120 @@ +import os + +import infra.basetest + + +class TestGawk(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y + BR2_PACKAGE_GAWK=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def basic_gawk_tests(self): + # Check the program can execute + self.assertRunOk("gawk --version") + + # Check "awk" is "gawk": the Buildroot gawk package recipe is + # supposed to install the symbolic link. + output, exit_code = self.emulator.run("awk --version") + self.assertEqual(exit_code, 0) + self.assertTrue(output[0].startswith("GNU Awk")) + + # Check "gawk" can return a specific exit code + code = 123 + cmd = "gawk 'BEGIN { exit(" + str(code) + "); }'" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, code) + + # Run a basic print program + test_string = "Hello Buildroot" + cmd = "gawk 'BEGIN {print \"" + test_string + "\"; }'" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + self.assertEqual(output[0], test_string) + + def create_test_data(self): + # Create some test data + entries = ["one", "two", "three", "four"] + for entry in entries: + self.assertRunOk(f"echo {entry} >> data1.txt") + + def add_line_numbers(self): + # Add line numbers with gawk + cmd = "gawk '{ print NR \"\\t\" $1; }' data1.txt > data2.txt" + self.assertRunOk(cmd) + + def sum_column(self): + # Check the sum of the first column is 1+2+3+4 == 10 + awk_prg = "BEGIN { SUM = 0; } { SUM = SUM + $1; } END { print SUM; }" + cmd = f"gawk '{awk_prg}' data2.txt" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + self.assertEqual(int(output[0]), 10) + + def uppercase_column(self): + # Extract only column 2 and convert it to upper case + cmd = "gawk '{ print toupper($2); }' data2.txt > data3.txt" + self.assertRunOk(cmd) + + # Prepare the same output using "data1.txt" and the "tr" command, + # for verification + cmd = "tr a-z A-Z < data1.txt > data3-tr.txt" + self.assertRunOk(cmd) + + # "gawk" and "tr" output are expected to be the same + self.assertRunOk("cmp data3.txt data3-tr.txt") + + def gawk_head(self): + # Show the first 2 lines of a file + cmd = "gawk 'NR <= 2 { print $0; }' data2.txt > data4.txt" + self.assertRunOk(cmd) + + # Prepare the same output using the "head" command + cmd = "head -2 data2.txt > data4-head.txt" + self.assertRunOk(cmd) + + # "gawk" and "tr" output are expected to be the same + self.assertRunOk("cmp data4.txt data4-head.txt") + + def gawk_specific(self): + # Use PROCINFO, which is a gawk specific feature: + # https://www.gnu.org/software/gawk/manual/gawk.html#POSIX_002fGNU + awk_platform_prog = "BEGIN { print PROCINFO[\"platform\"]; }" + cmd = f"gawk '{awk_platform_prog}'" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + self.assertEqual(output[0], "posix") + + # Using the same gawk feature when running in POSIX mode should not + # produce output. + cmd = f"gawk --posix '{awk_platform_prog}'" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + self.assertTrue(len(output) == 1 and len(output[0]) == 0) + + def gawk_numeric(self): + value = 1234 + squared_value = value * value + cmd = "gawk 'BEGIN { print sqrt(" + str(squared_value) + "); }'" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + self.assertEqual(int(output[0]), value) + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + self.basic_gawk_tests() + self.create_test_data() + self.add_line_numbers() + self.sum_column() + self.uppercase_column() + self.gawk_head() + self.gawk_specific() + self.gawk_numeric() diff --git a/support/testing/tests/package/test_glslsandbox_player.py b/support/testing/tests/package/test_glslsandbox_player.py new file mode 100644 index 000000000000..3b0dd60395b1 --- /dev/null +++ b/support/testing/tests/package/test_glslsandbox_player.py @@ -0,0 +1,50 @@ +import os + +import infra.basetest + + +class TestGlslsandboxPlayer(infra.basetest.BRTest): + config = \ + """ + BR2_aarch64=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.32" + BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config" + BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{}" + BR2_PACKAGE_LIBDRM=y + BR2_PACKAGE_MESA3D=y + BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST=y + BR2_PACKAGE_MESA3D_LLVM=y + BR2_PACKAGE_MESA3D_OPENGL_EGL=y + BR2_PACKAGE_MESA3D_OPENGL_ES=y + BR2_PACKAGE_GLSLSANDBOX_PLAYER=y + BR2_PACKAGE_GLSLSANDBOX_PLAYER_KMS=y + BR2_TARGET_ROOTFS_CPIO=y + BR2_TARGET_ROOTFS_CPIO_GZIP=y + # BR2_TARGET_ROOTFS_TAR is not set + """.format( + infra.filepath("tests/package/test_glslsandbox_player/linux-vkms.fragment")) + + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.cpio.gz") + kern = os.path.join(self.builddir, "images", "Image") + self.emulator.boot(arch="aarch64", + kernel=kern, + kernel_cmdline=["console=ttyAMA0"], + options=["-M", "virt", "-cpu", "cortex-a57", "-m", "256M", "-initrd", img]) + self.emulator.login() + + # We force a small resolution in order to keep a relatively + # fast software rendering + cmd = "GSP_DRM_MODE=640x480 " + # We run 3 frames of a reduced resolution of SimpleMandel + cmd += "glslsandbox-player -S SimpleMandel -w0 -f3 -R8 -N -vv -r1 -D" + self.assertRunOk(cmd, timeout=30) + + # Since we render 3 frames and request a dump of the last one, + # a ppm image file is expected to be present + self.assertRunOk("test -s SimpleMandel-00002.ppm") diff --git a/support/testing/tests/package/test_glslsandbox_player/linux-vkms.fragment b/support/testing/tests/package/test_glslsandbox_player/linux-vkms.fragment new file mode 100644 index 000000000000..ec2ed4460c79 --- /dev/null +++ b/support/testing/tests/package/test_glslsandbox_player/linux-vkms.fragment @@ -0,0 +1 @@ +CONFIG_DRM_VKMS=y diff --git a/support/testing/tests/package/test_glxinfo.py b/support/testing/tests/package/test_glxinfo.py index 79be596635b8..6bedee52983a 100644 --- a/support/testing/tests/package/test_glxinfo.py +++ b/support/testing/tests/package/test_glxinfo.py @@ -10,17 +10,11 @@ class TestGlxinfo(infra.basetest.BRTest): """ BR2_x86_core2=y BR2_TOOLCHAIN_EXTERNAL=y - BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y - BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y - BR2_TOOLCHAIN_EXTERNAL_URL="http://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--glibc--bleeding-edge-2018.11-1.tar.bz2" - BR2_TOOLCHAIN_EXTERNAL_GCC_8=y - BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_14=y - BR2_TOOLCHAIN_EXTERNAL_CXX=y - BR2_TOOLCHAIN_EXTERNAL_HAS_SSP=y - BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_GLIBC_STABLE=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y - BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.204" + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.26" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/x86/linux.config" BR2_PACKAGE_MESA3D_DEMOS=y diff --git a/support/testing/tests/package/test_gnuradio.py b/support/testing/tests/package/test_gnuradio.py new file mode 100644 index 000000000000..1fc0479d21f8 --- /dev/null +++ b/support/testing/tests/package/test_gnuradio.py @@ -0,0 +1,42 @@ +import os + +import infra.basetest + + +class TestGnuradio(infra.basetest.BRTest): + # infra.basetest.BASIC_TOOLCHAIN_CONFIG cannot be used as it does + # not include: BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS + # needed by gnuradio + config = \ + """ + BR2_aarch64=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.39" + BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config" + BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y + BR2_PACKAGE_GNURADIO=y + BR2_PACKAGE_GNURADIO_BLOCKS=y + BR2_PACKAGE_GNURADIO_PYTHON=y + BR2_PACKAGE_PYTHON3=y + BR2_ROOTFS_OVERLAY="{}" + BR2_TARGET_ROOTFS_CPIO=y + BR2_TARGET_ROOTFS_CPIO_GZIP=y + # BR2_TARGET_ROOTFS_TAR is not set + """.format( + # overlay to add a gnuradio python test script + infra.filepath("tests/package/test_gnuradio/rootfs-overlay")) + + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.cpio.gz") + kern = os.path.join(self.builddir, "images", "Image") + self.emulator.boot(arch="aarch64", + kernel=kern, + kernel_cmdline=["console=ttyAMA0"], + options=["-M", "virt", "-cpu", "cortex-a57", "-m", "256M", "-initrd", img]) + self.emulator.login() + + self.assertRunOk("/root/test_gnuradio.py", timeout=30) diff --git a/support/testing/tests/package/test_gnuradio/rootfs-overlay/root/test_gnuradio.py b/support/testing/tests/package/test_gnuradio/rootfs-overlay/root/test_gnuradio.py new file mode 100755 index 000000000000..4b63674533ed --- /dev/null +++ b/support/testing/tests/package/test_gnuradio/rootfs-overlay/root/test_gnuradio.py @@ -0,0 +1,68 @@ +#! /usr/bin/env python3 + +from gnuradio import blocks +from gnuradio import gr + +INPUT_LENGTH = 100 +MUL_CONST = 3 +ADD_CONST = 5 + + +def compute_expected_data(input_data): + # demux input + even = input_data[::2] + odd = input_data[1::2] + + # multiply "even" list by MUL_CONST + even = [x * MUL_CONST for x in even] + + # add 5 to all "odd" elements + odd = [y + ADD_CONST for y in odd] + + # mux the two lists + mux = [v for t in zip(even, odd) for v in t] + + return mux + + +def main(): + + gr.log.info("Starting Buildroot Test for GNU Radio " + gr.version()) + + input_data = list(range(INPUT_LENGTH)) + + tb = gr.top_block() + + # Create Gnuradio Blocks + src = blocks.vector_source_i(input_data) + demux = blocks.deinterleave(gr.sizeof_int) + mul = blocks.multiply_const_ii(MUL_CONST) + add = blocks.add_const_ii(ADD_CONST) + mux = blocks.interleave(gr.sizeof_int) + sink = blocks.vector_sink_i() + + # Create connection in top block + tb.connect(src, demux) + tb.connect((demux, 0), mul) + tb.connect((demux, 1), add) + tb.connect(mul, (mux, 0)) + tb.connect(add, (mux, 1)) + tb.connect(mux, sink) + + tb.run() + + gnuradio_data = sink.data() + expected_data = compute_expected_data(input_data) + + # For easy debugging + if gnuradio_data != expected_data: + print("Gnuradio output:", gnuradio_data) + print("Expected output:", expected_data) + + assert gnuradio_data == expected_data + + gr.log.info("Test PASSED") + + +if __name__ == "__main__": + main() diff --git a/support/testing/tests/package/test_gzip.py b/support/testing/tests/package/test_gzip.py new file mode 100644 index 000000000000..1d5f37485396 --- /dev/null +++ b/support/testing/tests/package/test_gzip.py @@ -0,0 +1,13 @@ +from tests.package.test_compressor_base import TestCompressorBase + + +class TestGzip(TestCompressorBase): + __test__ = True + config = TestCompressorBase.config + \ + """ + BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y + BR2_PACKAGE_GZIP=y + """ + compress_cmd = "gzip" + decompress_cmd = "gunzip" + compressed_file_ext = ".gz" diff --git a/support/testing/tests/package/test_iperf3.py b/support/testing/tests/package/test_iperf3.py new file mode 100644 index 000000000000..9aac4c6fd0b8 --- /dev/null +++ b/support/testing/tests/package/test_iperf3.py @@ -0,0 +1,23 @@ +import os + +import infra.basetest + + +class TestIperf3(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_PACKAGE_IPERF3=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + self.assertRunOk("iperf3 --version") + self.assertRunOk("iperf3 -s -D") + self.assertRunOk("iperf3 -c 127.0.0.1 -t 3") diff --git a/support/testing/tests/package/test_kexec.py b/support/testing/tests/package/test_kexec.py new file mode 100644 index 000000000000..51d43b0572f3 --- /dev/null +++ b/support/testing/tests/package/test_kexec.py @@ -0,0 +1,100 @@ +import os + +import infra.basetest + + +class TestKexec(infra.basetest.BRTest): + + # A specific configuration is needed for using kexec: + # - We use Aarch64 since it is well supported for kexec, + # - A kernel config fragment enables all the kexec parts, + # - The kernel Image is installed on target filesystem to be + # reloaded through kexec, + # - We use a ext4 rootfs image exposed as a virtio storage (rather + # than cpio initrd). This avoids needing to install the initrd + # inside the rootfs. + config = \ + """ + BR2_aarch64=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.15" + BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config" + BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{}" + BR2_LINUX_KERNEL_DTS_SUPPORT=y + BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="{}" + BR2_LINUX_KERNEL_INSTALL_TARGET=y + BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y + BR2_PACKAGE_KEXEC=y + BR2_TARGET_ROOTFS_EXT2=y + BR2_TARGET_ROOTFS_EXT2_4=y + # BR2_TARGET_ROOTFS_TAR is not set + """.format( + infra.filepath("tests/package/test_kexec/linux-kexec.fragment"), + infra.filepath("tests/package/test_kexec/qemu-aarch64-virt-5.2-machine.dts") + ) + + def test_run(self): + hda = os.path.join(self.builddir, "images", "rootfs.ext4") + kern = os.path.join(self.builddir, "images", "Image") + dtb = os.path.join(self.builddir, "images", "qemu-aarch64-virt-5.2-machine.dtb") + # Notes: + # Sufficient memory is needed to load the kernel: having at + # least 512MB works. kexec could silently fail if not enough + # memory is present. KASLR needs to be disabled for the test: + # we pass "nokaslr" to kernel bootargs, and also pass a custom + # devicetree to qemu virt machine. This devicetree is based on + # qemu aarch64 5.2 dts with kaslr-seed set 0. + # With newer qemu >= 7.0 we can disable KASLR from the qemu + # command line using "dtb-kaslr-seed=off". + bootargs = ["root=/dev/vda console=ttyAMA0 nokaslr"] + qemu_opts = ["-M", "virt", "-dtb", dtb, "-cpu", "cortex-a57", "-m", "512M", + "-drive", f"file={hda},if=virtio,format=raw"] + self.emulator.boot(arch="aarch64", + kernel=kern, + kernel_cmdline=bootargs, + options=qemu_opts) + self.emulator.login() + + # Test the program can execute + self.assertRunOk("kexec --version") + + # Check the kexec kernel is NOT loaded: + self.assertRunOk("test \"$(cat /sys/kernel/kexec_loaded)\" -eq 0") + + # Load the Kernel: + # "--append br-test" adds a dummy kernel args we'll be able to + # check in the second executed kernel. + # We use the dtb image from /sys/firmware/fdt (since we don't + # have the dtb file in the system) + self.assertRunOk("kexec -d -l --dtb=/sys/firmware/fdt --reuse-cmdline --serial=ttyAMA0 --append=br-test /boot/Image") + + # Check the kexec kernel IS loaded: + self.assertRunOk("test \"$(cat /sys/kernel/kexec_loaded)\" -eq 1") + + # Create a marker file in tmpfs which is supposed to disappear + # after kexec kernel restart. + self.assertRunOk("touch /dev/shm/br-kexec-marker") + + # Execute the loaded kernel (i.e perform a kexec reboot) + # qemu.sendline() is used here because no exit code nor + # program return is expected, since kexec is like a + # reboot. The login is expected to be reached after the + # command is issued. + self.emulator.qemu.sendline("kexec -d -e") + + # Wait for the login, and log again + self.emulator.login() + + # Check the "br-test" dummy kernel arg is present + self.assertRunOk("grep br-test /proc/cmdline") + + # Check the test marker file is no longer here + self.assertRunOk("test ! -e /dev/shm/br-kexec-marker") + + # After restart, the kernel is not supposed to have a kexec + # loaded image: + self.assertRunOk("test \"$(cat /sys/kernel/kexec_loaded)\" -eq 0") diff --git a/support/testing/tests/package/test_kexec/linux-kexec.fragment b/support/testing/tests/package/test_kexec/linux-kexec.fragment new file mode 100644 index 000000000000..04c65f5cae1b --- /dev/null +++ b/support/testing/tests/package/test_kexec/linux-kexec.fragment @@ -0,0 +1,5 @@ +CONFIG_KEXEC=y +CONFIG_KEXEC_FILE=y +CONFIG_PROC_KCORE=y +CONFIG_DEBUG_KERNEL=y +CONFIG_KALLSYMS_ALL=y diff --git a/support/testing/tests/package/test_kexec/qemu-aarch64-virt-5.2-machine.dts b/support/testing/tests/package/test_kexec/qemu-aarch64-virt-5.2-machine.dts new file mode 100644 index 000000000000..ad96a51c40c8 --- /dev/null +++ b/support/testing/tests/package/test_kexec/qemu-aarch64-virt-5.2-machine.dts @@ -0,0 +1,373 @@ +/dts-v1/; + +/ { + interrupt-parent = <0x8001>; + #size-cells = <0x02>; + #address-cells = <0x02>; + compatible = "linux,dummy-virt"; + + psci { + migrate = <0x84000005>; + cpu_on = <0x84000003>; + cpu_off = <0x84000002>; + cpu_suspend = <0x84000001>; + method = "hvc"; + compatible = "arm,psci-0.2\0arm,psci"; + }; + + memory@40000000 { + reg = <0x00 0x40000000 0x00 0x8000000>; + device_type = "memory"; + }; + + platform@c000000 { + interrupt-parent = <0x8001>; + ranges = <0x00 0x00 0xc000000 0x2000000>; + #address-cells = <0x01>; + #size-cells = <0x01>; + compatible = "qemu,platform\0simple-bus"; + }; + + fw-cfg@9020000 { + dma-coherent; + reg = <0x00 0x9020000 0x00 0x18>; + compatible = "qemu,fw-cfg-mmio"; + }; + + virtio_mmio@a000000 { + dma-coherent; + interrupts = <0x00 0x10 0x01>; + reg = <0x00 0xa000000 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a000200 { + dma-coherent; + interrupts = <0x00 0x11 0x01>; + reg = <0x00 0xa000200 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a000400 { + dma-coherent; + interrupts = <0x00 0x12 0x01>; + reg = <0x00 0xa000400 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a000600 { + dma-coherent; + interrupts = <0x00 0x13 0x01>; + reg = <0x00 0xa000600 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a000800 { + dma-coherent; + interrupts = <0x00 0x14 0x01>; + reg = <0x00 0xa000800 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a000a00 { + dma-coherent; + interrupts = <0x00 0x15 0x01>; + reg = <0x00 0xa000a00 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a000c00 { + dma-coherent; + interrupts = <0x00 0x16 0x01>; + reg = <0x00 0xa000c00 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a000e00 { + dma-coherent; + interrupts = <0x00 0x17 0x01>; + reg = <0x00 0xa000e00 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a001000 { + dma-coherent; + interrupts = <0x00 0x18 0x01>; + reg = <0x00 0xa001000 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a001200 { + dma-coherent; + interrupts = <0x00 0x19 0x01>; + reg = <0x00 0xa001200 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a001400 { + dma-coherent; + interrupts = <0x00 0x1a 0x01>; + reg = <0x00 0xa001400 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a001600 { + dma-coherent; + interrupts = <0x00 0x1b 0x01>; + reg = <0x00 0xa001600 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a001800 { + dma-coherent; + interrupts = <0x00 0x1c 0x01>; + reg = <0x00 0xa001800 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a001a00 { + dma-coherent; + interrupts = <0x00 0x1d 0x01>; + reg = <0x00 0xa001a00 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a001c00 { + dma-coherent; + interrupts = <0x00 0x1e 0x01>; + reg = <0x00 0xa001c00 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a001e00 { + dma-coherent; + interrupts = <0x00 0x1f 0x01>; + reg = <0x00 0xa001e00 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a002000 { + dma-coherent; + interrupts = <0x00 0x20 0x01>; + reg = <0x00 0xa002000 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a002200 { + dma-coherent; + interrupts = <0x00 0x21 0x01>; + reg = <0x00 0xa002200 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a002400 { + dma-coherent; + interrupts = <0x00 0x22 0x01>; + reg = <0x00 0xa002400 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a002600 { + dma-coherent; + interrupts = <0x00 0x23 0x01>; + reg = <0x00 0xa002600 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a002800 { + dma-coherent; + interrupts = <0x00 0x24 0x01>; + reg = <0x00 0xa002800 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a002a00 { + dma-coherent; + interrupts = <0x00 0x25 0x01>; + reg = <0x00 0xa002a00 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a002c00 { + dma-coherent; + interrupts = <0x00 0x26 0x01>; + reg = <0x00 0xa002c00 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a002e00 { + dma-coherent; + interrupts = <0x00 0x27 0x01>; + reg = <0x00 0xa002e00 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a003000 { + dma-coherent; + interrupts = <0x00 0x28 0x01>; + reg = <0x00 0xa003000 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a003200 { + dma-coherent; + interrupts = <0x00 0x29 0x01>; + reg = <0x00 0xa003200 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a003400 { + dma-coherent; + interrupts = <0x00 0x2a 0x01>; + reg = <0x00 0xa003400 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a003600 { + dma-coherent; + interrupts = <0x00 0x2b 0x01>; + reg = <0x00 0xa003600 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a003800 { + dma-coherent; + interrupts = <0x00 0x2c 0x01>; + reg = <0x00 0xa003800 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a003a00 { + dma-coherent; + interrupts = <0x00 0x2d 0x01>; + reg = <0x00 0xa003a00 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a003c00 { + dma-coherent; + interrupts = <0x00 0x2e 0x01>; + reg = <0x00 0xa003c00 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + virtio_mmio@a003e00 { + dma-coherent; + interrupts = <0x00 0x2f 0x01>; + reg = <0x00 0xa003e00 0x00 0x200>; + compatible = "virtio,mmio"; + }; + + gpio-keys { + #address-cells = <0x01>; + #size-cells = <0x00>; + compatible = "gpio-keys"; + + poweroff { + gpios = <0x8003 0x03 0x00>; + linux,code = <0x74>; + label = "GPIO Key Poweroff"; + }; + }; + + pl061@9030000 { + phandle = <0x8003>; + clock-names = "apb_pclk"; + clocks = <0x8000>; + interrupts = <0x00 0x07 0x04>; + gpio-controller; + #gpio-cells = <0x02>; + compatible = "arm,pl061\0arm,primecell"; + reg = <0x00 0x9030000 0x00 0x1000>; + }; + + pcie@10000000 { + interrupt-map-mask = <0x1800 0x00 0x00 0x07>; + interrupt-map = <0x00 0x00 0x00 0x01 0x8001 0x00 0x00 0x00 0x03 0x04 0x00 0x00 0x00 0x02 0x8001 0x00 0x00 0x00 0x04 0x04 0x00 0x00 0x00 0x03 0x8001 0x00 0x00 0x00 0x05 0x04 0x00 0x00 0x00 0x04 0x8001 0x00 0x00 0x00 0x06 0x04 0x800 0x00 0x00 0x01 0x8001 0x00 0x00 0x00 0x04 0x04 0x800 0x00 0x00 0x02 0x8001 0x00 0x00 0x00 0x05 0x04 0x800 0x00 0x00 0x03 0x8001 0x00 0x00 0x00 0x06 0x04 0x800 0x00 0x00 0x04 0x8001 0x00 0x00 0x00 0x03 0x04 0x1000 0x00 0x00 0x01 0x8001 0x00 0x00 0x00 0x05 0x04 0x1000 0x00 0x00 0x02 0x8001 0x00 0x00 0x00 0x06 0x04 0x1000 0x00 0x00 0x03 0x8001 0x00 0x00 0x00 0x03 0x04 0x1000 0x00 0x00 0x04 0x8001 0x00 0x00 0x00 0x04 0x04 0x1800 0x00 0x00 0x01 0x8001 0x00 0x00 0x00 0x06 0x04 0x1800 0x00 0x00 0x02 0x8001 0x00 0x00 0x00 0x03 0x04 0x1800 0x00 0x00 0x03 0x8001 0x00 0x00 0x00 0x04 0x04 0x1800 0x00 0x00 0x04 0x8001 0x00 0x00 0x00 0x05 0x04>; + #interrupt-cells = <0x01>; + ranges = <0x1000000 0x00 0x00 0x00 0x3eff0000 0x00 0x10000 0x2000000 0x00 0x10000000 0x00 0x10000000 0x00 0x2eff0000 0x3000000 0x80 0x00 0x80 0x00 0x80 0x00>; + reg = <0x40 0x10000000 0x00 0x10000000>; + msi-parent = <0x8002>; + dma-coherent; + bus-range = <0x00 0xff>; + linux,pci-domain = <0x00>; + #size-cells = <0x02>; + #address-cells = <0x03>; + device_type = "pci"; + compatible = "pci-host-ecam-generic"; + }; + + pl031@9010000 { + clock-names = "apb_pclk"; + clocks = <0x8000>; + interrupts = <0x00 0x02 0x04>; + reg = <0x00 0x9010000 0x00 0x1000>; + compatible = "arm,pl031\0arm,primecell"; + }; + + pl011@9000000 { + clock-names = "uartclk\0apb_pclk"; + clocks = <0x8000 0x8000>; + interrupts = <0x00 0x01 0x04>; + reg = <0x00 0x9000000 0x00 0x1000>; + compatible = "arm,pl011\0arm,primecell"; + }; + + pmu { + }; + + intc@8000000 { + phandle = <0x8001>; + reg = <0x00 0x8000000 0x00 0x10000 0x00 0x8010000 0x00 0x10000>; + compatible = "arm,cortex-a15-gic"; + ranges; + #size-cells = <0x02>; + #address-cells = <0x02>; + interrupt-controller; + #interrupt-cells = <0x03>; + + v2m@8020000 { + phandle = <0x8002>; + reg = <0x00 0x8020000 0x00 0x1000>; + msi-controller; + compatible = "arm,gic-v2m-frame"; + }; + }; + + flash@0 { + bank-width = <0x04>; + reg = <0x00 0x00 0x00 0x4000000 0x00 0x4000000 0x00 0x4000000>; + compatible = "cfi-flash"; + }; + + cpus { + #size-cells = <0x00>; + #address-cells = <0x01>; + + cpu@0 { + reg = <0x00>; + compatible = "arm,cortex-a15"; + device_type = "cpu"; + }; + }; + + timer { + interrupts = <0x01 0x0d 0x104 0x01 0x0e 0x104 0x01 0x0b 0x104 0x01 0x0a 0x104>; + always-on; + compatible = "arm,armv7-timer"; + }; + + apb-pclk { + phandle = <0x8000>; + clock-output-names = "clk24mhz"; + clock-frequency = <0x16e3600>; + #clock-cells = <0x00>; + compatible = "fixed-clock"; + }; + + chosen { + stdout-path = "/pl011@9000000"; + /* Buildroot specific: KASLR needs to be disabled for the Kexec test. */ + kaslr-seed = <0 0>; + }; +}; diff --git a/support/testing/tests/package/test_kmscube.py b/support/testing/tests/package/test_kmscube.py new file mode 100644 index 000000000000..0ddeb6793920 --- /dev/null +++ b/support/testing/tests/package/test_kmscube.py @@ -0,0 +1,45 @@ +import os + +import infra.basetest + + +class TestKmsCube(infra.basetest.BRTest): + config = \ + """ + BR2_aarch64=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" + BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config" + BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{}" + BR2_PACKAGE_KMSCUBE=y + BR2_PACKAGE_LIBDRM=y + BR2_PACKAGE_MESA3D=y + BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST=y + BR2_PACKAGE_MESA3D_LLVM=y + BR2_PACKAGE_MESA3D_OPENGL_EGL=y + BR2_PACKAGE_MESA3D_OPENGL_ES=y + BR2_TARGET_ROOTFS_CPIO=y + BR2_TARGET_ROOTFS_CPIO_GZIP=y + # BR2_TARGET_ROOTFS_TAR is not set + """.format( + infra.filepath("tests/package/test_kmscube/linux-vkms.fragment")) + + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.cpio.gz") + kern = os.path.join(self.builddir, "images", "Image") + self.emulator.boot(arch="aarch64", + kernel=kern, + kernel_cmdline=["console=ttyAMA0"], + options=["-M", "virt", + "-cpu", "cortex-a57", + "-smp", "4", + "-m", "256M", + "-initrd", img]) + self.emulator.login() + + cmd = "kmscube --vmode=640x480 --count=10" + self.assertRunOk(cmd, timeout=30) diff --git a/support/testing/tests/package/test_kmscube/linux-vkms.fragment b/support/testing/tests/package/test_kmscube/linux-vkms.fragment new file mode 100644 index 000000000000..ec2ed4460c79 --- /dev/null +++ b/support/testing/tests/package/test_kmscube/linux-vkms.fragment @@ -0,0 +1 @@ +CONFIG_DRM_VKMS=y diff --git a/support/testing/tests/package/test_less.py b/support/testing/tests/package/test_less.py new file mode 100644 index 000000000000..3d8c4fc94c04 --- /dev/null +++ b/support/testing/tests/package/test_less.py @@ -0,0 +1,57 @@ +import os + +import infra.basetest + + +class TestLess(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y + BR2_PACKAGE_LESS=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + # Check the program can execute. This command also checks that + # the "less" program is from the actual "less" package, rather + # than the Busybox implementation (the Busybox "less" applet + # does not recognize the "--version" option and would fail). + self.assertRunOk("less --version") + + # We create a test file. + ref_txt = "Hello Buildroot!" + input_fname = "input.txt" + self.assertRunOk(f"echo \'{ref_txt}\' > {input_fname}") + + # "less" is mainly an interactive user program and uses + # terminal control characters. This test checks a basic "less" + # invocation in which there is no user interaction. The + # program is expected to give back the input data. + output, exit_code = self.emulator.run(f"less -F {input_fname}") + self.assertEqual(exit_code, 0) + # "less" might insert a carriage-return ^M control character, + # which will be converted to a new-line (by the + # str.splitlines() in Emulator.run()). We check that our + # reference text line is in the output (rather than only + # testing output[0]). + self.assertIn(ref_txt, output) + + # We redo about the same test, with "less" reading stdin this + # time. We also use the "less -o log" option to log the output + # into a file. We expect to see our reference text on stdout. + output_fname = "output.txt" + cmd = f"cat {input_fname} | less -F -o {output_fname}" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + self.assertIn(ref_txt, output) + + # The output file content which logged the output is also + # expected to be the same as the input. + self.assertRunOk(f"cmp {input_fname} {output_fname}") diff --git a/support/testing/tests/package/test_libgpgme.py b/support/testing/tests/package/test_libgpgme.py new file mode 100644 index 000000000000..28a33bab0362 --- /dev/null +++ b/support/testing/tests/package/test_libgpgme.py @@ -0,0 +1,88 @@ +import os + +import infra.basetest + + +class TestLibGpgme(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_PACKAGE_LIBGPGME=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + # We check the binary program can execute. + self.assertRunOk("gpgme-tool --version") + + # Some common data for all the tests. + plain_data = "Hello Buildroot!" + gpg_userid = "br-test@buildroot" + plain_file = "reference-plain.txt" + enc_file = "encrypted.dat" + dec_file = "decrypted.txt" + + # We did not create a gpg key yet. We should not be able to + # list our key. + gpgme_listkey = f"echo LISTKEYS | gpgme-tool | grep '{gpg_userid}'" + _, exit_code = self.emulator.run(gpgme_listkey) + self.assertNotEqual(exit_code, 0) + + # We now create our gpg key. + cmd = "gpg --batch --passphrase ''" + cmd += f" --quick-generate-key {gpg_userid} default default" + self.assertRunOk(cmd) + + # We should now see our key in the list. + self.assertRunOk(gpgme_listkey) + + # We generate a plain text data file. + cmd = f"echo '{plain_data}' > {plain_file}" + self.assertRunOk(cmd) + + # We encrypt the plain text file using gpgme-tool commands. + gpgme_enc_cmds = [ + "RESET", + f"INPUT FILE={plain_file}", + f"OUTPUT FILE={enc_file}", + f"RECIPIENT {gpg_userid}", + "ENCRYPT", + "BYE" + ] + cmd = "gpgme-tool < {}".format(test_file)) + + # Check that lsof now show the file + output, exit_code = self.emulator.run("lsof {}".format(test_file)) + self.assertEqual(exit_code, 0) + # output[0] is the lsof header line + self.assertIn(test_file, output[1]) diff --git a/support/testing/tests/package/test_lxc.py b/support/testing/tests/package/test_lxc.py index f66b31f3bac2..0d03087a2cb2 100644 --- a/support/testing/tests/package/test_lxc.py +++ b/support/testing/tests/package/test_lxc.py @@ -10,6 +10,7 @@ class TestLxc(infra.basetest.BRTest): BR2_cortex_a9=y BR2_ARM_ENABLE_VFP=y BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.38" @@ -32,9 +33,9 @@ def run_ok(self, cmd): self.assertRunOk(cmd, 120) def wait_boot(self): - # the complete boot with systemd takes more time than what the default multipler permits - self.emulator.timeout_multiplier *= 10 - self.emulator.login() + # the complete boot with systemd takes more time than what the + # default typically allows + self.emulator.login(timeout=600) def setup_run_test_container(self): self.run_ok("lxc-create -n lxc_iperf3 -t none -f /usr/share/lxc/config/minimal-iperf3.conf") diff --git a/support/testing/tests/package/test_lz4.py b/support/testing/tests/package/test_lz4.py new file mode 100644 index 000000000000..988200250a9e --- /dev/null +++ b/support/testing/tests/package/test_lz4.py @@ -0,0 +1,11 @@ +from tests.package.test_compressor_base import TestCompressorBase + + +class TestLz4(TestCompressorBase): + __test__ = True + config = TestCompressorBase.config + \ + """ + BR2_PACKAGE_LZ4=y + BR2_PACKAGE_LZ4_PROGS=y + """ + compress_cmd = "lz4" diff --git a/support/testing/tests/package/test_lzip.py b/support/testing/tests/package/test_lzip.py new file mode 100644 index 000000000000..374e9e79e0fa --- /dev/null +++ b/support/testing/tests/package/test_lzip.py @@ -0,0 +1,12 @@ +from tests.package.test_compressor_base import TestCompressorBase + + +class TestLzip(TestCompressorBase): + __test__ = True + config = TestCompressorBase.config + \ + """ + BR2_PACKAGE_LZIP=y + """ + compress_cmd = "lzip" + decompress_cmd = "lzip -d" + compressed_file_ext = ".lz" diff --git a/support/testing/tests/package/test_lzop.py b/support/testing/tests/package/test_lzop.py new file mode 100644 index 000000000000..8d20ece3d69b --- /dev/null +++ b/support/testing/tests/package/test_lzop.py @@ -0,0 +1,12 @@ +from tests.package.test_compressor_base import TestCompressorBase + + +class TestLzop(TestCompressorBase): + __test__ = True + config = TestCompressorBase.config + \ + """ + BR2_PACKAGE_LZOP=y + """ + compress_cmd = "lzop" + decompress_cmd = "lzop -d" + compressed_file_ext = ".lzo" diff --git a/support/testing/tests/package/test_mtools.py b/support/testing/tests/package/test_mtools.py new file mode 100644 index 000000000000..4a232bc92680 --- /dev/null +++ b/support/testing/tests/package/test_mtools.py @@ -0,0 +1,66 @@ +import os + +import infra.basetest + + +class TestMtools(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_PACKAGE_MTOOLS=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + dos_img = "dos-fat.img" + mtools_opts = f"-i {dos_img}" + + self.assertRunOk("mtools --version") + + # Create an empty image file to hold the FAT partition + self.assertRunOk(f"dd if=/dev/zero of={dos_img} bs=1M count=1") + + # Any Mtools command is expected to fail on an unformated + # partition. + cmd = f"minfo {mtools_opts} ::" + _, exit_code = self.emulator.run(cmd) + self.assertNotEqual(exit_code, 0) + + # Now, let's format the partition file to FAT + self.assertRunOk(f"mformat {mtools_opts} ::") + + # Run some Mtools commands on this empty partition + self.assertRunOk(f"minfo {mtools_opts} ::") + self.assertRunOk(f"mdir {mtools_opts} ::") + self.assertRunOk(f"mlabel {mtools_opts} -N 12345678 ::BUILDROOT") + + # Create a reference file on our Linux filesystem + self.assertRunOk("echo 'Hello Buildroot!' > file1.txt") + + # Copy the reference file into the DOS image, then perform + # various file manipulations + self.assertRunOk(f"mcopy {mtools_opts} file1.txt ::file2.txt") + self.assertRunOk(f"mcopy {mtools_opts} ::file2.txt ::file3.txt") + self.assertRunOk(f"mdel {mtools_opts} ::file2.txt") + self.assertRunOk(f"mren {mtools_opts} ::file3.txt ::file4.txt") + self.assertRunOk(f"mmd {mtools_opts} ::dir1") + self.assertRunOk(f"mmove {mtools_opts} ::file4.txt ::dir1") + self.assertRunOk(f"mdir {mtools_opts} ::dir1") + self.assertRunOk(f"mdu {mtools_opts} -a ::") + + # Copy back the file from the DOS image to the Linux + # filesystem + self.assertRunOk(f"mcopy {mtools_opts} ::dir1/file4.txt file5.txt") + + # We expect this last copied file to have the same content as + # the reference one created at the beginning + self.assertRunOk("cmp file1.txt file5.txt") + + # Delete a directory tree containing a file + self.assertRunOk(f"mdeltree {mtools_opts} ::dir1") diff --git a/support/testing/tests/package/test_nftables.py b/support/testing/tests/package/test_nftables.py new file mode 100644 index 000000000000..142e7d03529c --- /dev/null +++ b/support/testing/tests/package/test_nftables.py @@ -0,0 +1,109 @@ +import os + +import infra.basetest + + +class TestNftables(infra.basetest.BRTest): + config = \ + """ + BR2_aarch64=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.46" + BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config" + BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y + BR2_PACKAGE_NFTABLES=y + BR2_PACKAGE_PYTHON3=y + BR2_ROOTFS_OVERLAY="{}" + BR2_TARGET_ROOTFS_CPIO=y + BR2_TARGET_ROOTFS_CPIO_GZIP=y + # BR2_TARGET_ROOTFS_TAR is not set + """.format( + infra.filepath("tests/package/test_nftables/rootfs-overlay")) + + def nftables_test(self, prog="nft"): + # Table/Chain names for the test + nft_table = "br_ip_table" + nft_chain = "br_ip_chain_in" + + # We flush all nftables rules, to start from a known state. + self.assertRunOk(f"{prog} flush ruleset") + + # We create an ip table. + self.assertRunOk(f"{prog} add table ip {nft_table}") + + # We should be able to list this table. + list_cmd = f"{prog} list tables ip" + output, exit_code = self.emulator.run(list_cmd) + self.assertEqual(exit_code, 0) + self.assertIn(nft_table, output[0]) + + # We create an ip input chain in our table. + cmd = f"{prog} add chain ip" + cmd += f" {nft_table} {nft_chain}" + cmd += " { type filter hook input priority 0 \\; }" + self.assertRunOk(cmd) + + # We list our chain. + cmd = f"{prog} list chain ip {nft_table} {nft_chain}" + self.assertRunOk(cmd) + + # We add a filter rule to drop pings (icmp echo-requests) to + # the 127.0.0.2 destination. + cmd = f"{prog} add rule ip {nft_table} {nft_chain}" + cmd += " ip daddr 127.0.0.2 icmp type echo-request drop" + self.assertRunOk(cmd) + + # We list our rule. + self.assertRunOk(f"{prog} list ruleset ip") + + # A ping to 127.0.0.1 is expected to work, because it's not + # matching our rule. We expect 3 replies (-c), with 0.5s + # internal (-i), and set a maximum timeout of 2s. + ping_cmd_prefix = "ping -c 3 -i 0.5 -W 2 " + self.assertRunOk(ping_cmd_prefix + "127.0.0.1") + + # A ping to 127.0.0.2 is expected to fail, because our rule is + # supposed to drop it. + ping_test_cmd = ping_cmd_prefix + "127.0.0.2" + _, exit_code = self.emulator.run(ping_test_cmd) + self.assertNotEqual(exit_code, 0) + + # We completely delete the table. This should also delete the + # chain and the rule. + self.assertRunOk(f"{prog} delete table ip {nft_table}") + + # We should no longer see the table in the list. + output, exit_code = self.emulator.run(list_cmd) + self.assertEqual(exit_code, 0) + self.assertNotIn(nft_table, "\n".join(output)) + + # Since we deleted the rule, the ping test command which was + # supposed to fail earlier is now supposed to succeed. + self.assertRunOk(ping_test_cmd) + + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.cpio.gz") + kern = os.path.join(self.builddir, "images", "Image") + self.emulator.boot(arch="aarch64", + kernel=kern, + kernel_cmdline=["console=ttyAMA0"], + options=["-M", "virt", + "-cpu", "cortex-a57", + "-m", "256M", + "-initrd", img]) + self.emulator.login() + + # We check the program can execute. + self.assertRunOk("nft --version") + + # We run the nftables test sequence using the default "nft" + # user space configuration tool. + self.nftables_test() + + # We run again the same test sequence using our simple nft + # python implementation, to check the language bindings. + self.nftables_test(prog="/root/nft.py") diff --git a/support/testing/tests/package/test_nftables/rootfs-overlay/root/nft.py b/support/testing/tests/package/test_nftables/rootfs-overlay/root/nft.py new file mode 100755 index 000000000000..89de8e25d1a3 --- /dev/null +++ b/support/testing/tests/package/test_nftables/rootfs-overlay/root/nft.py @@ -0,0 +1,22 @@ +#! /usr/bin/env python3 +# +# This is a simple reimplementation of the "nft" user-space tool in +# Python, in order to test language bindings. It does not support any +# command line argument supported by the nftables "nft" tool, but +# supports all nftables commands used in the Buildroot runtime test. + +import sys + +import nftables + + +nft = nftables.nftables.Nftables() +cmd = " ".join(sys.argv[1:]) +ret_code, output, error = nft.cmd(cmd) + +if len(output) > 0: + print(output.strip()) +if len(error) > 0: + print(error.strip()) + +sys.exit(ret_code) diff --git a/support/testing/tests/package/test_nodejs.py b/support/testing/tests/package/test_nodejs.py index 9463c76b7246..2884529c6eff 100644 --- a/support/testing/tests/package/test_nodejs.py +++ b/support/testing/tests/package/test_nodejs.py @@ -10,6 +10,7 @@ class TestNodeJSBasic(infra.basetest.BRTest): BR2_cortex_a9=y BR2_ARM_ENABLE_VFP=y BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_PACKAGE_NODEJS=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set @@ -27,15 +28,44 @@ def test_run(self): self.assertRunOk("node sample_nodejs_basic.js") -class TestNodeJSModule(infra.basetest.BRTest): +class TestNodeJSModuleHostBin(infra.basetest.BRTest): config = \ """ BR2_arm=y BR2_cortex_a9=y BR2_ARM_ENABLE_VFP=y BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_PACKAGE_NODEJS=y BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL="lodash" + BR2_PACKAGE_HOST_NODEJS_BIN=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + BR2_ROOTFS_POST_BUILD_SCRIPT="{}" + BR2_ROOTFS_POST_SCRIPT_ARGS="{}" + """.format(infra.filepath("tests/package/copy-sample-script-to-target.sh"), + infra.filepath("tests/package/sample_nodejs_module.js")) + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv7", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + self.assertRunOk("node sample_nodejs_module.js") + + +class TestNodeJSModuleHostSrc(infra.basetest.BRTest): + config = \ + """ + BR2_arm=y + BR2_cortex_a9=y + BR2_ARM_ENABLE_VFP=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_PACKAGE_NODEJS=y + BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL="lodash" + BR2_PACKAGE_HOST_NODEJS_SRC=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set BR2_ROOTFS_POST_BUILD_SCRIPT="{}" diff --git a/support/testing/tests/package/test_nu.py b/support/testing/tests/package/test_nu.py new file mode 100644 index 000000000000..14ddacfbc881 --- /dev/null +++ b/support/testing/tests/package/test_nu.py @@ -0,0 +1,32 @@ +import os + +import infra.basetest + + +class TestNu(infra.basetest.BRTest): + # infra.basetest.BASIC_TOOLCHAIN_CONFIG cannot be used as it doesn't + # support a host rustc which is necessary for nushell + config = \ + """ + BR2_arm=y + BR2_cortex_a9=y + BR2_ARM_ENABLE_NEON=y + BR2_ARM_ENABLE_VFP=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_SYSTEM_DHCP="eth0" + BR2_PACKAGE_NUSHELL=y + BR2_TARGET_ROOTFS_CPIO=y + BR2_ROOTFS_POST_BUILD_SCRIPT="{}" + BR2_ROOTFS_POST_SCRIPT_ARGS="{}" + """.format(infra.filepath("tests/package/copy-sample-script-to-target.sh"), + infra.filepath("tests/package/sample_nu.nu")) + + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv7", + kernel="builtin", + options=["-initrd", img]) + self.emulator.login() + cmd = "nu sample_nu.nu" + self.assertRunOk(cmd) diff --git a/support/testing/tests/package/test_openblas.py b/support/testing/tests/package/test_openblas.py new file mode 100644 index 000000000000..9cfe08ef2c56 --- /dev/null +++ b/support/testing/tests/package/test_openblas.py @@ -0,0 +1,56 @@ +import os + +import infra.basetest + + +class TestOpenBLAS(infra.basetest.BRTest): + config = \ + """ + BR2_aarch64=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.27" + BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config" + BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y + BR2_TARGET_ROOTFS_CPIO=y + BR2_TARGET_ROOTFS_CPIO_GZIP=y + # BR2_TARGET_ROOTFS_TAR is not set + BR2_PACKAGE_OPENBLAS=y + BR2_PACKAGE_OPENBLAS_INSTALL_TESTS=y + """ + + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.cpio.gz") + kern = os.path.join(self.builddir, "images", "Image") + self.emulator.boot(arch="aarch64", + kernel=kern, + kernel_cmdline=["console=ttyAMA0"], + options=["-M", "virt", "-cpu", "cortex-a57", "-smp", "2", "-m", "512M", "-initrd", img]) + self.emulator.login() + + test_prefix = "/usr/libexec/openblas/tests" + + # BLAS data types: + blas_data_types = [ + "s", # Single precision (32bit) float + "d", # Double precision (64bit) double + "c", # Single precision (32bit) complex + "z" # Double precision (64bit) complex + ] + + # BLAS routine levels: + # Level 1: Vector operations, + # Level 2: Matrix-Vector operations, + # Level 3: Matrix-Matrix operations. + for blas_level in range(1, 4): + for blas_data_type in blas_data_types: + test_name = f"x{blas_data_type}cblat{blas_level}" + cmd = test_prefix + "/" + test_name + + if blas_level > 1: + cmd += f" < {test_prefix}/{blas_data_type}in{blas_level}" + + self.assertRunOk(cmd, timeout=30) diff --git a/support/testing/tests/package/test_openssh.py b/support/testing/tests/package/test_openssh.py index 4b48059573c5..a28c28f79761 100644 --- a/support/testing/tests/package/test_openssh.py +++ b/support/testing/tests/package/test_openssh.py @@ -32,9 +32,13 @@ def openssh_test(self): class TestOpenSshuClibc(TestOpensshBase): - config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + config = \ TestOpensshBase.opensshconfig + \ """ + BR2_arm=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_UCLIBC_STABLE=y BR2_TARGET_ROOTFS_CPIO=y """ @@ -43,12 +47,14 @@ def test_run(self): class TestOpenSshGlibc(TestOpensshBase): + config = \ TestOpensshBase.opensshconfig + \ """ BR2_arm=y BR2_TOOLCHAIN_EXTERNAL=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_BLEEDING_EDGE=y BR2_PACKAGE_RNG_TOOLS=y BR2_TARGET_ROOTFS_CPIO=y """ diff --git a/support/testing/tests/package/test_perftest.py b/support/testing/tests/package/test_perftest.py index 680b70d7841d..08089456c273 100644 --- a/support/testing/tests/package/test_perftest.py +++ b/support/testing/tests/package/test_perftest.py @@ -12,7 +12,7 @@ class TestPerftest(infra.basetest.BRTest): BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y - BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.91" + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.33" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{}" diff --git a/support/testing/tests/package/test_pigz.py b/support/testing/tests/package/test_pigz.py new file mode 100644 index 000000000000..92a4170265db --- /dev/null +++ b/support/testing/tests/package/test_pigz.py @@ -0,0 +1,12 @@ +from tests.package.test_compressor_base import TestCompressorBase + + +class TestPigz(TestCompressorBase): + __test__ = True + config = TestCompressorBase.config + \ + """ + BR2_PACKAGE_PIGZ=y + """ + compress_cmd = "pigz -p3" + decompress_cmd = "pigz -d -p3" + compressed_file_ext = ".gz" diff --git a/support/testing/tests/package/test_pixz.py b/support/testing/tests/package/test_pixz.py index eeff10eaa1b0..6620bd4a8271 100644 --- a/support/testing/tests/package/test_pixz.py +++ b/support/testing/tests/package/test_pixz.py @@ -1,40 +1,18 @@ -import os +from tests.package.test_compressor_base import TestCompressorBase -import infra.basetest - -class TestPixz(infra.basetest.BRTest): - config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ +class TestPixz(TestCompressorBase): + __test__ = True + config = TestCompressorBase.config + \ """ BR2_PACKAGE_PIXZ=y - BR2_TARGET_ROOTFS_CPIO=y - # BR2_TARGET_ROOTFS_TAR is not set """ - - def test_run(self): - cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") - self.emulator.boot(arch="armv5", - kernel="builtin", - options=["-initrd", cpio_file]) - self.emulator.login() - - # Prepare input file with random data and zeroes. - # We keep the size small (4 MB) for the sake of test time. - cmd = "dd if=/dev/urandom of=orig bs=1M count=2 && " \ - "dd if=/dev/zero of=orig bs=1M count=2 seek=2" - self.assertRunOk(cmd) - - # Compress. - # We ask for 3 threads for good measure but with a very small file on a - # uniprocessor qemu this is only a light validation. - cmd = "cp -v orig compressed && pixz -p 3 compressed" - self.assertRunOk(cmd, timeout=60) - - # Uncompress. - cmd = "cp -v compressed.xz uncompressed.xz && pixz -d uncompressed.xz" - self.assertRunOk(cmd) - - # Verify. - # The ls is there for debugging. - cmd = "ls -l && cmp orig uncompressed" - self.assertRunOk(cmd) + compress_cmd = "pixz -p3" + decompress_cmd = "pixz -d" + compressed_file_ext = ".xz" + + def check_integrity_test(self): + # Do nothing for the integrity test because "pixz" does not + # implement this feature. The "-t" option has other functions: + # https://github.com/vasi/pixz/blob/v1.0.7/src/pixz.1.asciidoc#options + pass diff --git a/support/testing/tests/package/test_polkit.py b/support/testing/tests/package/test_polkit.py index 3da63c437b42..3414fd515978 100644 --- a/support/testing/tests/package/test_polkit.py +++ b/support/testing/tests/package/test_polkit.py @@ -44,7 +44,7 @@ def test_run(self): for rule_path in TestPolkitInfra.rule_paths: cmd = "su brtest -c '/bin/systemctl restart systemd-timesyncd.service'" _, exit_code = self.emulator.run(cmd, 10) - self.assertEqual(exit_code, 1) + self.assertNotEqual(exit_code, 0) cmd = "cp /root/{file} {path}".format(file=rule_file, path=rule_path) _, exit_code = self.emulator.run(cmd, 10) diff --git a/support/testing/tests/package/test_python.py b/support/testing/tests/package/test_python.py index d6f69a83c769..c9ecf9acda6c 100644 --- a/support/testing/tests/package/test_python.py +++ b/support/testing/tests/package/test_python.py @@ -29,7 +29,7 @@ def math_floor_test(self, timeout=-1): def libc_time_test(self, timeout=-1): cmd = self.interpreter + " -c '" cmd += "import ctypes;" - cmd += "libc = ctypes.cdll.LoadLibrary(\"libc.so.1\");" + cmd += "libc = ctypes.cdll.LoadLibrary(\"libc.so.6\");" cmd += "print(libc.time(None))'" self.assertRunOk(cmd, timeout) diff --git a/support/testing/tests/package/test_python_autobahn.py b/support/testing/tests/package/test_python_autobahn.py index 6c1678a6152f..f785b1af975e 100644 --- a/support/testing/tests/package/test_python_autobahn.py +++ b/support/testing/tests/package/test_python_autobahn.py @@ -3,14 +3,8 @@ class TestPythonPy3Autobahn(TestPythonPackageBase): __test__ = True - # Need to use a different toolchain than the default due to - # python-cryptography using Rust (not available with uclibc) - config = \ + config = TestPythonPackageBase.config + \ """ - BR2_arm=y - BR2_TOOLCHAIN_EXTERNAL=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_AUTOBAHN=y BR2_TARGET_ROOTFS_CPIO=y diff --git a/support/testing/tests/package/test_python_boto3.py b/support/testing/tests/package/test_python_boto3.py index 126ddae63a97..02a1f69d407b 100644 --- a/support/testing/tests/package/test_python_boto3.py +++ b/support/testing/tests/package/test_python_boto3.py @@ -9,7 +9,7 @@ class TestPythonPy3Boto3(TestPythonPackageBase): BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_BOTO3=y BR2_TARGET_ROOTFS_EXT2=y - BR2_TARGET_ROOTFS_EXT2_SIZE="120M" + BR2_TARGET_ROOTFS_EXT2_SIZE="250M" """ sample_scripts = ["tests/package/sample_python_boto3.py"] timeout = 10 diff --git a/support/testing/tests/package/test_python_botocore.py b/support/testing/tests/package/test_python_botocore.py index 48c2f3cc025e..0f3dc93a37a7 100644 --- a/support/testing/tests/package/test_python_botocore.py +++ b/support/testing/tests/package/test_python_botocore.py @@ -9,10 +9,10 @@ class TestPythonPy3Botocore(TestPythonPackageBase): BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_BOTOCORE=y BR2_TARGET_ROOTFS_EXT2=y - BR2_TARGET_ROOTFS_EXT2_SIZE="120M" + BR2_TARGET_ROOTFS_EXT2_SIZE="250M" """ sample_scripts = ["tests/package/sample_python_botocore.py"] - timeout = 10 + timeout = 30 def login(self): ext2_file = os.path.join(self.builddir, "images", "rootfs.ext2") diff --git a/support/testing/tests/package/test_python_crossbar.py b/support/testing/tests/package/test_python_crossbar.py index 178b16be8291..e67ab9ff6e82 100644 --- a/support/testing/tests/package/test_python_crossbar.py +++ b/support/testing/tests/package/test_python_crossbar.py @@ -4,14 +4,8 @@ class TestPythonPy3Crossbar(TestPythonPackageBase): __test__ = True - # Need to use a different toolchain than the default due to - # python-cryptography using Rust (not available with uclibc) - config = \ + config = TestPythonPackageBase.config + \ """ - BR2_arm=y - BR2_TOOLCHAIN_EXTERNAL=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_CROSSBAR=y BR2_TARGET_ROOTFS_EXT2=y diff --git a/support/testing/tests/package/test_python_cryptography.py b/support/testing/tests/package/test_python_cryptography.py index bf11c02e5c09..ee8e75f88536 100644 --- a/support/testing/tests/package/test_python_cryptography.py +++ b/support/testing/tests/package/test_python_cryptography.py @@ -3,14 +3,8 @@ class TestPythonPy3Cryptography(TestPythonPackageBase): __test__ = True - # Need to use a different toolchain than the default due to - # python-cryptography using Rust (not available with uclibc) - config = \ + config = TestPythonPackageBase.config + \ """ - BR2_arm=y - BR2_TOOLCHAIN_EXTERNAL=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_CRYPTOGRAPHY=y BR2_TARGET_ROOTFS_CPIO=y diff --git a/support/testing/tests/package/test_python_django.py b/support/testing/tests/package/test_python_django.py index 0b7d35bb6a1e..e1ca50f6d8dc 100644 --- a/support/testing/tests/package/test_python_django.py +++ b/support/testing/tests/package/test_python_django.py @@ -6,7 +6,7 @@ class TestPythonDjango(TestPythonPackageBase): sample_scripts = ["tests/package/sample_python_django.py"] def run_sample_scripts(self): - timeout = 35 * self.emulator.timeout_multiplier + timeout = 35 cmd = "cd /opt && /usr/bin/django-admin startproject testsite" self.assertRunOk(cmd, timeout=timeout) diff --git a/support/testing/tests/package/test_python_evdev.py b/support/testing/tests/package/test_python_evdev.py new file mode 100644 index 000000000000..162e53072ed6 --- /dev/null +++ b/support/testing/tests/package/test_python_evdev.py @@ -0,0 +1,11 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy3Evdev(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_EVDEV=y + """ + sample_scripts = ["tests/package/sample_python_evdev.py"] diff --git a/support/testing/tests/package/test_python_hwdata.py b/support/testing/tests/package/test_python_hwdata.py new file mode 100644 index 000000000000..7028d1dd59dd --- /dev/null +++ b/support/testing/tests/package/test_python_hwdata.py @@ -0,0 +1,12 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonHwdata(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_HWDATA=y + """ + sample_scripts = ["tests/package/sample_python_hwdata.py"] + timeout = 10 diff --git a/support/testing/tests/package/test_python_magic_wormhole.py b/support/testing/tests/package/test_python_magic_wormhole.py index d6541a248011..5a0f0277b052 100644 --- a/support/testing/tests/package/test_python_magic_wormhole.py +++ b/support/testing/tests/package/test_python_magic_wormhole.py @@ -5,14 +5,8 @@ class TestPythonPy3MagicWormhole(TestPythonPackageBase): __test__ = True - # Need to use a different toolchain than the default due to - # python-cryptography using Rust (not available with uclibc) - config = \ + config = TestPythonPackageBase.config + \ """ - BR2_arm=y - BR2_TOOLCHAIN_EXTERNAL=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_MAGIC_WORMHOLE=y BR2_PACKAGE_PYTHON_MAGIC_WORMHOLE_MAILBOX_SERVER=y @@ -56,7 +50,9 @@ def test_run(self): cmd += "sleep 25" self.assertRunOk(cmd, timeout=30) - cmd = wormhole_cmd + " receive {}".format(code) + wormhole_env = "_MAGIC_WORMHOLE_TEST_KEY_TIMER=100 " + wormhole_env += "_MAGIC_WORMHOLE_TEST_VERIFY_TIMER=100 " + cmd = wormhole_env + wormhole_cmd + " receive {}".format(code) output, exit_code = self.emulator.run(cmd, timeout=35) self.assertEqual(exit_code, 0) self.assertEqual(output[0], text) diff --git a/support/testing/tests/package/test_python_mako.py b/support/testing/tests/package/test_python_mako.py new file mode 100644 index 000000000000..ea8fe57a5bb5 --- /dev/null +++ b/support/testing/tests/package/test_python_mako.py @@ -0,0 +1,25 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy3Mako(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_MAKO=y + """ + sample_scripts = ["tests/package/sample_python_mako.py"] + timeout = 30 + + +class TestPythonPy3MakoExt(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_MAKO=y + BR2_PACKAGE_PYTHON_MAKO_EXT_PYGMENTPLUGIN=y + BR2_PACKAGE_PYTHON_MAKO_EXT_BABELPLUGIN=y + """ + sample_scripts = ["tests/package/sample_python_mako_ext.py"] + timeout = 30 diff --git a/support/testing/tests/package/test_python_midiutil.py b/support/testing/tests/package/test_python_midiutil.py new file mode 100644 index 000000000000..302fbfb1ed3e --- /dev/null +++ b/support/testing/tests/package/test_python_midiutil.py @@ -0,0 +1,11 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy3MidiUtil(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_MIDIUTIL=y + """ + sample_scripts = ["tests/package/sample_python_midiutil.py"] diff --git a/support/testing/tests/package/test_python_pysmb.py b/support/testing/tests/package/test_python_pysmb.py new file mode 100644 index 000000000000..cc4c7fb1e57b --- /dev/null +++ b/support/testing/tests/package/test_python_pysmb.py @@ -0,0 +1,12 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy3Pysmb(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_PYSMB=y + """ + sample_scripts = ["tests/package/sample_python_pysmb.py"] + timeout = 40 diff --git a/support/testing/tests/package/test_python_s3transfer.py b/support/testing/tests/package/test_python_s3transfer.py index d81560aeb174..1578f3aa74bb 100644 --- a/support/testing/tests/package/test_python_s3transfer.py +++ b/support/testing/tests/package/test_python_s3transfer.py @@ -9,7 +9,7 @@ class TestPythonPy3S3transfer(TestPythonPackageBase): BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_S3TRANSFER=y BR2_TARGET_ROOTFS_EXT2=y - BR2_TARGET_ROOTFS_EXT2_SIZE="120M" + BR2_TARGET_ROOTFS_EXT2_SIZE="250M" """ sample_scripts = ["tests/package/sample_python_s3transfer.py"] timeout = 10 diff --git a/support/testing/tests/package/test_python_scipy.py b/support/testing/tests/package/test_python_scipy.py index 007bc9ffa5b0..06297763c3f2 100644 --- a/support/testing/tests/package/test_python_scipy.py +++ b/support/testing/tests/package/test_python_scipy.py @@ -5,14 +5,8 @@ class TestPythonPy3SciPy(TestPythonPackageBase): __test__ = True - # We can't use the base configuration, as we need a glibc - # toolchain for scipy - config = \ + config = TestPythonPackageBase.config + \ """ - BR2_arm=y - BR2_TOOLCHAIN_EXTERNAL=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_SCIPY=y BR2_TARGET_ROOTFS_EXT2=y diff --git a/support/testing/tests/package/test_python_segno.py b/support/testing/tests/package/test_python_segno.py new file mode 100644 index 000000000000..75e712439979 --- /dev/null +++ b/support/testing/tests/package/test_python_segno.py @@ -0,0 +1,11 @@ +from tests.package.test_python import TestPythonPackageBase + + +class TestPythonPy3Segno(TestPythonPackageBase): + __test__ = True + config = TestPythonPackageBase.config + \ + """ + BR2_PACKAGE_PYTHON3=y + BR2_PACKAGE_PYTHON_SEGNO=y + """ + sample_scripts = ["tests/package/sample_python_segno.py"] diff --git a/support/testing/tests/package/test_python_service_identity.py b/support/testing/tests/package/test_python_service_identity.py index dbad5f931f83..16ea943d41f9 100644 --- a/support/testing/tests/package/test_python_service_identity.py +++ b/support/testing/tests/package/test_python_service_identity.py @@ -3,14 +3,8 @@ class TestPythonPy3ServiceIdentity(TestPythonPackageBase): __test__ = True - # Need to use a different toolchain than the default due to - # python-cryptography using Rust (not available with uclibc) - config = \ + config = TestPythonPackageBase.config + \ """ - BR2_arm=y - BR2_TOOLCHAIN_EXTERNAL=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_SERVICE_IDENTITY=y BR2_TARGET_ROOTFS_CPIO=y diff --git a/support/testing/tests/package/test_python_treq.py b/support/testing/tests/package/test_python_treq.py index 515f1ea304ef..bd472d3b39b7 100644 --- a/support/testing/tests/package/test_python_treq.py +++ b/support/testing/tests/package/test_python_treq.py @@ -14,14 +14,8 @@ def run_sample_scripts(self): class TestPythonPy3Treq(TestPythonTreq): __test__ = True - # Need to use a different toolchain than the default due to - # python-cryptography using Rust (not available with uclibc) - config = \ + config = TestPythonPackageBase.config + \ """ - BR2_arm=y - BR2_TOOLCHAIN_EXTERNAL=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_TREQ=y BR2_TARGET_ROOTFS_CPIO=y diff --git a/support/testing/tests/package/test_python_txtorcon.py b/support/testing/tests/package/test_python_txtorcon.py index 6f0c4ca1edbc..107f53c6a322 100644 --- a/support/testing/tests/package/test_python_txtorcon.py +++ b/support/testing/tests/package/test_python_txtorcon.py @@ -3,14 +3,8 @@ class TestPythonPy3Txtorcon(TestPythonPackageBase): __test__ = True - # Need to use a different toolchain than the default due to - # python-cryptography using Rust (not available with uclibc) - config = \ + config = TestPythonPackageBase.config + \ """ - BR2_arm=y - BR2_TOOLCHAIN_EXTERNAL=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_TXTORCON=y BR2_TARGET_ROOTFS_CPIO=y diff --git a/support/testing/tests/package/test_ruby.py b/support/testing/tests/package/test_ruby.py new file mode 100644 index 000000000000..5d4c0031fb7e --- /dev/null +++ b/support/testing/tests/package/test_ruby.py @@ -0,0 +1,34 @@ +import os +import infra.basetest + + +class TestRuby(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + BR2_PACKAGE_RUBY=y + BR2_PACKAGE_ZLIB=y + """ + + def version_test(self): + cmd = "ruby -v" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + + def zlib_test(self, timeout=-1): + cmd = "ruby -e 'require \"zlib\"'" + _, exit_code = self.emulator.run(cmd, timeout) + self.assertEqual(exit_code, 0) + + def login(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + def test_run(self): + self.login() + self.version_test() + self.zlib_test() diff --git a/support/testing/tests/package/test_screen.py b/support/testing/tests/package/test_screen.py new file mode 100644 index 000000000000..b6264d34dfe7 --- /dev/null +++ b/support/testing/tests/package/test_screen.py @@ -0,0 +1,61 @@ +import os + +import infra.basetest + + +class TestScreen(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_PACKAGE_SCREEN=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + session_name = "BuildrootSession" + message = "HelloBuildroot" + screen_dump = "screen.dump.txt" + + # Check the program can execute + self.assertRunOk("screen --version") + + # There is no "screen" running yet. Listing sessions is + # expected to fail. + _, exit_code = self.emulator.run("screen -ls") + self.assertNotEqual(exit_code, 0) + + # We now start a detached and named session. + self.assertRunOk(f"screen -dmS {session_name}") + + # Since we are supposed to have a running session, it should + # appear in the list. + output, exit_code = self.emulator.run("screen -ls") + self.assertEqual(exit_code, 0) + self.assertIn(session_name, "\n".join(output)) + + # We send an exec command to print a message in the "screen" + # display running in background. + cmd = f"screen -S {session_name} -X exec printf {message}" + self.assertRunOk(cmd) + + # We request a hardcopy of this "screen" display. + cmd = f"screen -S {session_name} -X hardcopy {screen_dump}" + self.assertRunOk(cmd) + + # The dump file is supposed to contain our message. + self.assertRunOk(f"grep -Fo '{message}' {screen_dump}") + + # We request "screen" to quit... + cmd = f"screen -S {session_name} -X quit" + self.assertRunOk(cmd) + + # Since the session is supposed to be terminated, listing + # sessions is expected to fail (again). + _, exit_code = self.emulator.run("screen -ls") + self.assertNotEqual(exit_code, 0) diff --git a/support/testing/tests/package/test_shadow.py b/support/testing/tests/package/test_shadow.py new file mode 100644 index 000000000000..9991a57d1d82 --- /dev/null +++ b/support/testing/tests/package/test_shadow.py @@ -0,0 +1,59 @@ +import os + +from infra.basetest import BRTest + + +class TestShadow(BRTest): + username = 'user_test' + # Need to use a different toolchain than the default due to + # shadow package requiring a toolchain w/ headers >= 4.14 + config = \ + """ + BR2_arm=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_BLEEDING_EDGE=y + BR2_PACKAGE_SHADOW=y + BR2_TARGET_ROOTFS_EXT2=y + BR2_TARGET_ROOTFS_EXT2_4=y + BR2_TARGET_ROOTFS_EXT2_SIZE="65536" + """ + timeout = 60 + + def login(self): + img = os.path.join(self.builddir, "images", "rootfs.ext4") + self.emulator.boot(arch="armv7", + kernel="builtin", + kernel_cmdline=["root=/dev/mmcblk0", + "rootfstype=ext4"], + options=["-drive", f"file={img},if=sd,format=raw"]) + self.emulator.login() + + def test_nologin(self): + self.login() + + self.assertRunOk("! nologin") + cmd = 'test "$(nologin)" = "This account is currently not available."' + self.assertRunOk(cmd) + + def test_useradd_del(self): + username = self.username + self.login() + + self.assertRunOk(f'userdel {username} || true') + self.assertRunOk(f'groupdel {username} || true') + self.assertRunOk(f'useradd -s /bin/sh {username}') + self.assertRunOk(f'test $(su {username} -c "whoami") = {username}') + self.assertRunOk(f'userdel {username}') + + def test_usermod(self): + username = self.username + new_home = '/tmp' + self.login() + + self.assertRunOk(f'userdel {username} || true') + self.assertRunOk(f'groupdel {username} || true') + self.assertRunOk(f'useradd -s /bin/sh {username}') + self.assertRunOk(f'usermod {username} --home {new_home}') + self.assertRunOk(f'test $(su {username} -c \'echo $HOME\') = {new_home}') + self.assertRunOk(f'userdel {username}') diff --git a/support/testing/tests/package/test_stress_ng.py b/support/testing/tests/package/test_stress_ng.py new file mode 100644 index 000000000000..12fd6ec9e646 --- /dev/null +++ b/support/testing/tests/package/test_stress_ng.py @@ -0,0 +1,22 @@ +import os + +import infra.basetest + + +class TestStressNG(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + """ + BR2_PACKAGE_STRESS_NG=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + self.assertRunOk("stress-ng --version") + self.assertRunOk("stress-ng --cpu 1 --timeout 3") diff --git a/support/testing/tests/package/test_tcl.py b/support/testing/tests/package/test_tcl.py new file mode 100644 index 000000000000..ae94e80a92c5 --- /dev/null +++ b/support/testing/tests/package/test_tcl.py @@ -0,0 +1,50 @@ +import math +import os + +import infra.basetest + + +class TestTcl(infra.basetest.BRTest): + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ + f""" + BR2_PACKAGE_TCL=y + # BR2_PACKAGE_TCL_SHLIB_ONLY is not set + BR2_ROOTFS_OVERLAY="{infra.filepath("tests/package/test_tcl/rootfs-overlay")}" + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + self.emulator.boot(arch="armv5", + kernel="builtin", + options=["-initrd", cpio_file]) + self.emulator.login() + + # Print tcl the interpreter version and patchlevel. + tcl_cmds = "puts \"tcl_version: $tcl_version\";" + tcl_cmds += "puts \"patchlevel: [info patchlevel]\";" + tcl_cmds += "exit 0" + cmd = f"echo '{tcl_cmds}' | tclsh" + self.assertRunOk(cmd) + + # We check tclsh correctly print a string. + txt = "Hello Buildroot" + cmd = f"echo 'puts \"{txt}\"; exit 0' | tclsh" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + self.assertEqual(output[0], txt) + + # We check tclsh can return a non-zero exit code. + expected_code = 123 + cmd = f"echo 'exit {expected_code}' | tclsh" + _, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, expected_code) + + # We check a tcl program computing factorial run correctly. + input_value = 12 + expected_output = str(math.factorial(input_value)) + cmd = f"/root/factorial.tcl {input_value}" + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + self.assertEqual(output[0], expected_output) diff --git a/support/testing/tests/package/test_tcl/rootfs-overlay/root/factorial.tcl b/support/testing/tests/package/test_tcl/rootfs-overlay/root/factorial.tcl new file mode 100755 index 000000000000..0398f24ceb94 --- /dev/null +++ b/support/testing/tests/package/test_tcl/rootfs-overlay/root/factorial.tcl @@ -0,0 +1,11 @@ +#! /usr/bin/env tclsh + +proc factorial {n} { + set f 1 + for {set i 1} {$i <= $n} {incr i} { + set f [expr {$f * $i}] + } + return $f +} + +puts [factorial [lindex $argv 0]] diff --git a/support/testing/tests/package/test_tmux.py b/support/testing/tests/package/test_tmux.py index 7a10b7a2b044..f2c620d5caca 100644 --- a/support/testing/tests/package/test_tmux.py +++ b/support/testing/tests/package/test_tmux.py @@ -9,6 +9,7 @@ class TestTmux(infra.basetest.BRTest): BR2_PACKAGE_TMUX=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set + BR2_GENERATE_LOCALE="C.UTF-8" """ def test_run(self): diff --git a/support/testing/tests/package/test_weston.py b/support/testing/tests/package/test_weston.py new file mode 100644 index 000000000000..df1b7a41358b --- /dev/null +++ b/support/testing/tests/package/test_weston.py @@ -0,0 +1,178 @@ +import os +import time + +import infra.basetest + + +class TestWeston(infra.basetest.BRTest): + config = \ + """ + BR2_aarch64=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_ROOTFS_OVERLAY="{}" + BR2_PER_PACKAGE_DIRECTORIES=y + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" + BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config" + BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{}" + BR2_PACKAGE_LIBDRM=y + BR2_PACKAGE_MESA3D=y + BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST=y + BR2_PACKAGE_MESA3D_LLVM=y + BR2_PACKAGE_MESA3D_OPENGL_EGL=y + BR2_PACKAGE_MESA3D_OPENGL_ES=y + BR2_PACKAGE_WAYLAND_UTILS=y + BR2_PACKAGE_WESTON=y + BR2_PACKAGE_WESTON_SIMPLE_CLIENTS=y + BR2_TARGET_ROOTFS_CPIO=y + BR2_TARGET_ROOTFS_CPIO_GZIP=y + # BR2_TARGET_ROOTFS_TAR is not set + """.format( + infra.filepath("tests/package/test_weston/overlay"), + infra.filepath("tests/package/test_weston/linux-vkms.fragment") + ) + + def gen_read_disp_crcs_cmd(self, count=1): + # DRM CRCs are exposed through a sysfs pseudo file, one measure + # per line. The first column is the frame number, the second + # column is the CRC measure. We use "head" to get the needed + # CRC count. + disp_crc_path = "/sys/kernel/debug/dri/0/crtc-0/crc/data" + cmd = f"head -{count} {disp_crc_path}" + + # The DRM CRC sysfs pseudo file lines are terminated by '\n' + # and '\0'. We remove the '\0' to have a text-only output. + cmd += " | tr -d '\\000'" + + # Finally, we drop the frame counter, and keep only the second + # column (CRC values) + cmd += " | cut -f 2 -d ' '" + + return cmd + + def gen_count_unique_disp_crcs_cmd(self, count=10): + # We get the command generating one CRC per line... + cmd = self.gen_read_disp_crcs_cmd(count) + # ...then count the number of unique values + cmd += " | uniq | wc -l" + return cmd + + def start_weston(self): + self.assertRunOk("export XDG_RUNTIME_DIR=/tmp") + + cmd = "weston" + cmd += " --config=/etc/weston.ini" + cmd += " --continue-without-input" + cmd += " --log=/tmp/weston.log" + cmd += " &> /dev/null &" + self.assertRunOk(cmd) + + self.assertRunOk("export WAYLAND_DISPLAY=wayland-1") + + def wait_for_weston(self): + # We wait for the wayland socket to appear... + wayland_socket = "${XDG_RUNTIME_DIR}/${WAYLAND_DISPLAY}" + cmd = f"while [ ! -e \"{wayland_socket}\" ] ; do sleep 1 ; done" + self.assertRunOk(cmd, timeout=10) + time.sleep(4) + + def stop_weston(self): + cmd = "killall weston && sleep 3" + self.assertRunOk(cmd) + + def test_run(self): + img = os.path.join(self.builddir, "images", "rootfs.cpio.gz") + kern = os.path.join(self.builddir, "images", "Image") + self.emulator.boot(arch="aarch64", + kernel=kern, + kernel_cmdline=["console=ttyAMA0"], + options=["-M", "virt", + "-cpu", "cortex-a57", + "-smp", "4", + "-m", "256M", + "-initrd", img]) + self.emulator.login() + + # Check the weston binary can execute + self.assertRunOk("weston --version") + + self.start_weston() + self.wait_for_weston() + + # Check a simple info client can communicate with the compositor + self.assertRunOk("wayland-info", timeout=10) + + # This test will use the Kernel VKMS DRM Display CRC support, + # which is exposed in debugfs. See: + # https://docs.kernel.org/gpu/drm-uapi.html#display-crc-support + self.assertRunOk("mount -t debugfs none /sys/kernel/debug/") + + # We get 10 consecutive DRM frame CRCs and count how many + # unique CRCs we have. Since weston is supposed to run idle, + # we should have 10 times the same display CRC. + cmd = self.gen_count_unique_disp_crcs_cmd() + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + self.assertEqual(int(output[0]), 1) + + # We save the CRC value of an empty weston desktop for + # later... + cmd = self.gen_read_disp_crcs_cmd() + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + weston_desktop_crc = int(output[0], 16) + + # We start the weston-simple-egl in background... Every + # rendered frame is supposed to be different (as the triangle + # animation is derived from the system time). Since all the + # rendering (client application and compositor) is in + # software, we sleep a bit to let those program to settle. + self.assertRunOk("weston-simple-egl >/dev/null 2>&1 &") + time.sleep(8) + + # Since the weston-simple-egl client is supposed to run and + # display something, we are now supposed to measure a + # different display CRC than the one we measured when the + # desktop was empty. + cmd = self.gen_read_disp_crcs_cmd() + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + self.assertNotEqual(int(output[0], 16), weston_desktop_crc) + + # While weston-simple-egl is running, we check the VKMS DRM + # CRCs are now changing. We get many CRCs, one per display + # driver refresh (at ~60Hz). Since all the rendering is in + # software, we can expect a slow frame rate. In 300 captured + # CRCs (5s), we expect at least 5 different values (i.e. 1 fps). + # This guarantees the rendering pipeline is working, while we + # remain very permissive to slow emulation situations. + # Increase timeout, as the command is expected to run about 5s, + # which is the default timeout. + cmd = self.gen_count_unique_disp_crcs_cmd(300) + output, exit_code = self.emulator.run(cmd, timeout=10) + self.assertEqual(exit_code, 0) + self.assertGreaterEqual(int(output[0]), 5) + + # We stop weston-simple-egl, and sleep a bit to let Weston do + # its cleanup and desktop repaint refresh... + self.assertRunOk("killall weston-simple-egl") + time.sleep(4) + + # After we stopped the application, we should have the initial + # weston desktop background. The CRC we measure now should be + # the same as the one we saved earlier. + cmd = self.gen_read_disp_crcs_cmd() + output, exit_code = self.emulator.run(cmd) + self.assertEqual(exit_code, 0) + self.assertEqual(int(output[0], 16), weston_desktop_crc) + + self.stop_weston() + + # Now weston is supposed to be stopped, + # a simple client is expected to fail. + _, exit_code = self.emulator.run("wayland-info") + self.assertNotEqual(exit_code, 0) diff --git a/support/testing/tests/package/test_weston/linux-vkms.fragment b/support/testing/tests/package/test_weston/linux-vkms.fragment new file mode 100644 index 000000000000..3fc7a5dded6c --- /dev/null +++ b/support/testing/tests/package/test_weston/linux-vkms.fragment @@ -0,0 +1,2 @@ +CONFIG_DEBUG_FS=y +CONFIG_DRM_VKMS=y diff --git a/support/testing/tests/package/test_weston/overlay/etc/weston.ini b/support/testing/tests/package/test_weston/overlay/etc/weston.ini new file mode 100644 index 000000000000..534b5c1f4ad7 --- /dev/null +++ b/support/testing/tests/package/test_weston/overlay/etc/weston.ini @@ -0,0 +1,15 @@ +# The shell "clock-format" is set to "none", in order to have stable +# display output, independant from the time. The display output can +# then be reliably checked with VKMS CRC. +# "startup-animation" and "close-animation" are set to "none" for +# faster transitions (fade animations with a software GLES +# implementation tend to be slow). +# Finally, we force the smallest standard display output mode +# resolution, again for faster test execution. +[shell] +clock-format=none +startup-animation=none +close-animation=none +[output] +name=Virtual-1 +mode=640x480 diff --git a/support/testing/tests/package/test_xz.py b/support/testing/tests/package/test_xz.py new file mode 100644 index 000000000000..7776c1608fab --- /dev/null +++ b/support/testing/tests/package/test_xz.py @@ -0,0 +1,10 @@ +from tests.package.test_compressor_base import TestCompressorBase + + +class TestXz(TestCompressorBase): + __test__ = True + config = TestCompressorBase.config + \ + """ + BR2_PACKAGE_XZ=y + """ + compress_cmd = "xz" diff --git a/support/testing/tests/package/test_z3.py b/support/testing/tests/package/test_z3.py index 71b074a587a2..30794a250b58 100644 --- a/support/testing/tests/package/test_z3.py +++ b/support/testing/tests/package/test_z3.py @@ -4,14 +4,8 @@ class TestZ3(infra.basetest.BRTest): - # Need to use a different toolchain than the default due to - # z3 requiring fenv.h not provided by uclibc. - config = \ + config = infra.basetest.BASIC_TOOLCHAIN_CONFIG + \ """ - BR2_arm=y - BR2_TOOLCHAIN_EXTERNAL=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y - BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_Z3=y BR2_PACKAGE_Z3_PYTHON=y diff --git a/support/testing/tests/package/test_zchunk.py b/support/testing/tests/package/test_zchunk.py new file mode 100644 index 000000000000..c250b748ef17 --- /dev/null +++ b/support/testing/tests/package/test_zchunk.py @@ -0,0 +1,16 @@ +from tests.package.test_compressor_base import TestCompressorBase + + +class TestZchunk(TestCompressorBase): + __test__ = True + config = TestCompressorBase.config + \ + """ + BR2_PACKAGE_ZCHUNK=y + BR2_PACKAGE_ZSTD=y + """ + compress_cmd = "zck" + + def check_integrity_test(self): + # Do nothing for the integrity test, because "zck" does not + # implement this feature. + pass diff --git a/support/testing/tests/package/test_zfs.py b/support/testing/tests/package/test_zfs.py index 1f01ddd76835..27dbc2869bc9 100644 --- a/support/testing/tests/package/test_zfs.py +++ b/support/testing/tests/package/test_zfs.py @@ -40,11 +40,11 @@ def base_test_run(self): cmds = [ # Init - "modprobe zfs", + "modprobe zfs && sleep 2", "mount -o remount,size=132M /tmp", "fallocate -l 64M /tmp/container1.raw", "fallocate -l 64M /tmp/container2.raw", - "zpool create -m /pool pool raidz /tmp/container1.raw /tmp/container2.raw", + "zpool create pool raidz /tmp/container1.raw /tmp/container2.raw", "dd if=/dev/urandom bs=1M count=8 of=/pool/urandom", "sha256sum /pool/urandom > /tmp/urandom.sha256", # Check ZFS diff --git a/support/testing/tests/package/test_zstd.py b/support/testing/tests/package/test_zstd.py new file mode 100644 index 000000000000..24dc5fb90dd9 --- /dev/null +++ b/support/testing/tests/package/test_zstd.py @@ -0,0 +1,11 @@ +from tests.package.test_compressor_base import TestCompressorBase + + +class TestZstd(TestCompressorBase): + __test__ = True + config = TestCompressorBase.config + \ + """ + BR2_PACKAGE_ZSTD=y + """ + compress_cmd = "zstd" + compressed_file_ext = ".zst" diff --git a/support/testing/tests/toolchain/test_external_bootlin.py b/support/testing/tests/toolchain/test_external_bootlin.py index 96a8780d361a..fb82a0a37726 100644 --- a/support/testing/tests/toolchain/test_external_bootlin.py +++ b/support/testing/tests/toolchain/test_external_bootlin.py @@ -115,6 +115,34 @@ def test_run(self): TestExternalToolchain.common_check(self) +class TestExternalToolchainBootlinAarch64beMuslBleedingEdge(TestExternalToolchain): + config = """ + BR2_aarch64_be=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_MUSL_BLEEDING_EDGE=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + toolchain_prefix = "aarch64_be-linux" + + def test_run(self): + TestExternalToolchain.common_check(self) + + +class TestExternalToolchainBootlinAarch64beMuslStable(TestExternalToolchain): + config = """ + BR2_aarch64_be=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_MUSL_STABLE=y + # BR2_TARGET_ROOTFS_TAR is not set + """ + toolchain_prefix = "aarch64_be-linux" + + def test_run(self): + TestExternalToolchain.common_check(self) + + class TestExternalToolchainBootlinAarch64beUclibcBleedingEdge(TestExternalToolchain): config = """ BR2_aarch64_be=y diff --git a/support/testing/tests/utils/br2-external/utils/x-python b/support/testing/tests/utils/br2-external/utils/x-python new file mode 100644 index 000000000000..da7c36c7e0ac --- /dev/null +++ b/support/testing/tests/utils/br2-external/utils/x-python @@ -0,0 +1,3 @@ +#!/usr/bin/env python3 +# Trigger flake8 warning "W391 blank line at end of file" + diff --git a/support/testing/tests/utils/test_check_package.py b/support/testing/tests/utils/test_check_package.py index d2c155684586..9aa117d21121 100644 --- a/support/testing/tests/utils/test_check_package.py +++ b/support/testing/tests/utils/test_check_package.py @@ -228,9 +228,9 @@ def test_run(self): self.WITH_UTILS_IN_PATH, subdir_path) self.assert_file_was_processed(m) self.assert_warnings_generated_for_file(m) - self.assertIn("{}:0: Indent was expected to fail, did you fixed the file and forgot to update .checkpackageignore_outdated?" + self.assertIn("{}:0: Indent was expected to fail, did you fix the file and forget to update .checkpackageignore_outdated?" .format(subdir_file), w) - self.assertIn("{}:0: NewlineAtEof was expected to fail, did you fixed the file and forgot to update " + self.assertIn("{}:0: NewlineAtEof was expected to fail, did you fix the file and forget to update " ".checkpackageignore_outdated?" .format(subdir_file), w) @@ -250,3 +250,20 @@ def test_run(self): self.assert_file_was_processed(m) self.assert_warnings_generated_for_file(m) self.assertIn("{}:0: run 'shellcheck' and fix the warnings".format(abs_file), w) + + # python scripts are tested using flake8 + rel_file = "utils/x-python" + abs_path = infra.filepath("tests/utils/br2-external") + abs_file = os.path.join(abs_path, rel_file) + + w, m = call_script(["check-package", "-vvv", "-b", rel_file], + self.WITH_UTILS_IN_PATH, abs_path) + self.assert_file_was_processed(m) + self.assert_warnings_generated_for_file(m) + self.assertIn("{}:0: run 'flake8' and fix the warnings".format(rel_file), w) + + w, m = call_script(["check-package", "-b", abs_file], + self.WITH_UTILS_IN_PATH, infra.basepath()) + self.assert_file_was_processed(m) + self.assert_warnings_generated_for_file(m) + self.assertIn("{}:0: run 'flake8' and fix the warnings".format(abs_file), w) diff --git a/system/Config.in b/system/Config.in index 1ca7690ea3ba..33ca69b9339e 100644 --- a/system/Config.in +++ b/system/Config.in @@ -105,12 +105,13 @@ config BR2_INIT_OPENRC bool "OpenRC" depends on BR2_USE_MMU depends on !BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_USES_UCLIBC # openrc select BR2_PACKAGE_OPENRC select BR2_PACKAGE_SKELETON_INIT_OPENRC if BR2_ROOTFS_SKELETON_DEFAULT -comment "openrc needs a toolchain w/ dynamic library" +comment "openrc needs a glibc or musl toolchain w/ dynamic library" depends on BR2_USE_MMU - depends on BR2_STATIC_LIBS + depends on BR2_STATIC_LIBS && BR2_TOOLCHAIN_USES_UCLIBC # In Buildroot, we decided not to support a split-usr when systemd is # used as an init system. This is a design decision, not a systemd @@ -124,19 +125,19 @@ config BR2_INIT_SYSTEMD depends on BR2_TOOLCHAIN_USES_GLIBC depends on BR2_TOOLCHAIN_HAS_SSP depends on BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15 + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 depends on BR2_HOST_GCC_AT_LEAST_5 select BR2_ROOTFS_MERGED_USR select BR2_PACKAGE_SYSTEMD select BR2_PACKAGE_SKELETON_INIT_SYSTEMD if BR2_ROOTFS_SKELETON_DEFAULT -comment "systemd needs a glibc toolchain w/ SSP, headers >= 3.15, host and target gcc >= 5" +comment "systemd needs a glibc toolchain w/ SSP, headers >= 4.14, host and target gcc >= 5" depends on BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS depends on BR2_USE_MMU depends on !BR2_TOOLCHAIN_USES_GLIBC || \ !BR2_TOOLCHAIN_HAS_SSP || \ - !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15 || \ + !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_5 || \ !BR2_HOST_GCC_AT_LEAST_5 @@ -159,10 +160,24 @@ endchoice if BR2_INIT_SYSTEMD -config BR2_INIT_SYSTEMD_VAR_FACTORY - bool "build a factory to populate a tmpfs on /var" - default y # legacy +choice + bool "/var management" + default BR2_INIT_SYSTEMD_VAR_FACTORY # legacy depends on !BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW + help + Select how Buildroot provides a read-write /var when the + rootfs is not remounted read-write. + + Note: Buildroot uses a tmpfs, either as a mount point or as + the upper of an overlayfs, so as to at least make the system + bootable out of the box; mounting a filesystem from actual + storage is left to the integration, as it is too specific and + may need preparatory work like partitionning a device and/or + formatting a filesystem first, which falls out of the scope + of Buildroot. + +config BR2_INIT_SYSTEMD_VAR_FACTORY + bool "build a factory to populate a tmpfs" help Build a factory of the content of /var as installed by packages, mount a tmpfs on /var at runtime, so that @@ -173,17 +188,31 @@ config BR2_INIT_SYSTEMD_VAR_FACTORY It probably does not play very well with triggering a call to systemd-tmpfiles at build time (below). - Note: Buildroot mounts a tmpfs on /var to at least make the - system bootable out of the box; mounting a filesystem from - actual storage is left to the integration, as it is too - specific and may need preparatory work like partitionning a - device and/or formatting a filesystem first, so that falls - out of the scope of Buildroot. - To use persistent storage, provide a systemd dropin for the var.mount unit, that overrides the What and Type, and possibly the Options and After, fields. +config BR2_INIT_SYSTEMD_VAR_OVERLAYFS + bool "mount an overlayfs backed by a tmpfs" + select BR2_INIT_SYSTEMD_POPULATE_TMPFILES + help + Mount an overlayfs on /var, with the upper as a tmpfs. + + To use a persistent storage, provide either a mount unit or a + fstab line to mount it on /run/buildroot/mounts/var, e.g. + + /dev/sdc1 /run/buildroot/mounts/var ext4 defaults + +config BR2_INIT_SYSTEMD_VAR_NONE + bool "do nothing" + help + Choose this if you have custom dispositions (like one or more + of a post-build script, a fakeroot script, systemd units, an + initramfs, or something else) that prepare /var to be writable + on a read-only rootfs. + +endchoice + config BR2_INIT_SYSTEMD_POPULATE_TMPFILES bool "trigger systemd-tmpfiles during build" default y # legacy @@ -375,7 +404,7 @@ config BR2_SYSTEM_BIN_SH menuconfig BR2_TARGET_GENERIC_GETTY bool "Run a getty (login prompt) after boot" - default y + default y if !BR2_PACKAGE_PETITBOOT if BR2_TARGET_GENERIC_GETTY config BR2_TARGET_GENERIC_GETTY_PORT diff --git a/toolchain/Config.in b/toolchain/Config.in index 08e4ccad9ead..34e0ae2c5f78 100644 --- a/toolchain/Config.in +++ b/toolchain/Config.in @@ -77,6 +77,12 @@ config BR2_TOOLCHAIN_HAS_BINUTILS_BUG_27597 bool default y if BR2_nios2 +# https://sourceware.org/bugzilla/show_bug.cgi?id=30730 +# Affect toolchains built with binutils 2.40, still not fixed. +config BR2_TOOLCHAIN_HAS_BINUTILS_BUG_30730 + bool + default y if BR2_m68k_cf + # Atomic types can be: # - never lock-free # - sometimes lock-free @@ -244,6 +250,24 @@ config BR2_TOOLCHAIN_HAS_GCC_BUG_107728 depends on BR2_TOOLCHAIN_USES_GLIBC depends on BR2_OPTIMIZE_0 +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110934 +# ICE: on M68K: in change_address_1, at emit-rtl.cc:2287 +# This bug exists in gcc = 12.3.0 and gcc = 13.2.0 +config BR2_TOOLCHAIN_HAS_GCC_BUG_110934 + bool + default y if BR2_m68k + +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111001 +# ICE: on SH4: during RTL pass: sh_treg_combine2 +# This bug exist in gcc = 13.2.0 +config BR2_TOOLCHAIN_HAS_GCC_BUG_111001 + bool + default y if BR2_sh + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_13 + depends on BR2_OPTIMIZE_1 || \ + BR2_OPTIMIZE_2 || \ + BR2_OPTIMIZE_3 + config BR2_TOOLCHAIN_HAS_NATIVE_RPC bool @@ -600,6 +624,26 @@ config BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_0 config BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_1 bool select BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_0 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_2 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_1 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_3 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_2 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_4 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_3 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_5 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_4 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_6 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_5 select BR2_TOOLCHAIN_HEADERS_LATEST # This should be selected by the latest version, above, to indicate that @@ -613,6 +657,11 @@ config BR2_TOOLCHAIN_HEADERS_LATEST # stops affecting a value on the first matching default. config BR2_TOOLCHAIN_HEADERS_AT_LEAST string + default "6.6" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_6 + default "6.5" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_5 + default "6.4" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_4 + default "6.3" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_3 + default "6.2" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_2 default "6.1" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_1 default "6.0" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_0 default "5.19" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_19 @@ -737,10 +786,15 @@ config BR2_TOOLCHAIN_GCC_AT_LEAST_12 bool select BR2_TOOLCHAIN_GCC_AT_LEAST_11 +config BR2_TOOLCHAIN_GCC_AT_LEAST_13 + bool + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + # This order guarantees that the highest version is set, as kconfig # stops affecting a value on the first matching default. config BR2_TOOLCHAIN_GCC_AT_LEAST string + default "13" if BR2_TOOLCHAIN_GCC_AT_LEAST_13 default "12" if BR2_TOOLCHAIN_GCC_AT_LEAST_12 default "11" if BR2_TOOLCHAIN_GCC_AT_LEAST_11 default "10" if BR2_TOOLCHAIN_GCC_AT_LEAST_10 diff --git a/toolchain/helpers.mk b/toolchain/helpers.mk index 24c482923ab0..e5c838c0afcf 100644 --- a/toolchain/helpers.mk +++ b/toolchain/helpers.mk @@ -307,7 +307,7 @@ check_uclibc = \ $(call check_uclibc_feature,__UCLIBC_HAS_LFS__,,$${UCLIBC_CONFIG_FILE},Large file support) ;\ $(call check_uclibc_feature,__UCLIBC_HAS_IPV6__,,$${UCLIBC_CONFIG_FILE},IPv6 support) ;\ $(call check_uclibc_feature,__UCLIBC_HAS_RPC__,BR2_TOOLCHAIN_HAS_NATIVE_RPC,$${UCLIBC_CONFIG_FILE},RPC support) ;\ - $(call check_uclibc_feature,__UCLIBC_HAS_LOCALE__,BR2_ENABLE_LOCALE,$${UCLIBC_CONFIG_FILE},Locale support) ;\ + $(call check_uclibc_feature,__UCLIBC_HAS_XLOCALE__,BR2_ENABLE_LOCALE,$${UCLIBC_CONFIG_FILE},Locale support) ;\ $(call check_uclibc_feature,__UCLIBC_HAS_WCHAR__,BR2_USE_WCHAR,$${UCLIBC_CONFIG_FILE},Wide char support) ;\ $(call check_uclibc_feature,__UCLIBC_HAS_THREADS__,BR2_TOOLCHAIN_HAS_THREADS,$${UCLIBC_CONFIG_FILE},Thread support) ;\ $(call check_uclibc_feature,__PTHREADS_DEBUG_SUPPORT__,BR2_TOOLCHAIN_HAS_THREADS_DEBUG,$${UCLIBC_CONFIG_FILE},Thread debugging support) ;\ @@ -343,11 +343,14 @@ check_arm_abi = \ # check_cplusplus = \ __CROSS_CXX=$(strip $1) ; \ - $${__CROSS_CXX} -v > /dev/null 2>&1 ; \ - if test $$? -ne 0 ; then \ + __HAS_CXX=`$${__CROSS_CXX} -v > /dev/null 2>&1 && echo y`; \ + if [ "$${__HAS_CXX}" != "y" -a "$(BR2_INSTALL_LIBSTDCPP)" = y ] ; then \ echo "C++ support is selected but is not available in external toolchain" ; \ exit 1 ; \ - fi + elif [ "$${__HAS_CXX}" = "y" -a "$(BR2_INSTALL_LIBSTDCPP)" != y ] ; then \ + echo "C++ support is not selected but is available in external toolchain" ; \ + exit 1 ; \ + fi \ # # @@ -358,14 +361,16 @@ check_cplusplus = \ check_dlang = \ __CROSS_GDC=$(strip $1) ; \ __o=$(BUILD_DIR)/.br-toolchain-test-dlang.tmp ; \ - printf 'import std.stdio;\nvoid main() { writeln("Hello World!"); }\n' | \ - $${__CROSS_GDC} -x d -o $${__o} - ; \ - if test $$? -ne 0 ; then \ - rm -f $${__o}* ; \ + __HAS_DLANG=`printf 'import std.stdio;\nvoid main() { writeln("Hello World!"); }\n' | \ + $${__CROSS_GDC} -x d -o $${__o} - >/dev/null 2>&1 && echo y`; \ + rm -f $${__o}* ; \ + if [ "$${__HAS_DLANG}" != "y" -a "$(BR2_TOOLCHAIN_HAS_DLANG)" = y ] ; then \ echo "D language support is selected but is not available in external toolchain" ; \ exit 1 ; \ - fi ; \ - rm -f $${__o}* \ + elif [ "$${__HAS_DLANG}" = "y" -a "$(BR2_TOOLCHAIN_HAS_DLANG)" != y ] ; then \ + echo "D language support is not selected but is available in external toolchain" ; \ + exit 1 ; \ + fi \ # # @@ -376,14 +381,16 @@ check_dlang = \ check_fortran = \ __CROSS_FC=$(strip $1) ; \ __o=$(BUILD_DIR)/.br-toolchain-test-fortran.tmp ; \ - printf 'program hello\n\tprint *, "Hello Fortran!\\n"\nend program hello\n' | \ - $${__CROSS_FC} -x f95 -o $${__o} - ; \ - if test $$? -ne 0 ; then \ - rm -f $${__o}* ; \ + __HAS_FORTRAN=`printf 'program hello\n\tprint *, "Hello Fortran!\\\n"\nend program hello\n' | \ + $${__CROSS_FC} -x f95 -ffree-form -o $${__o} - 2>/dev/null && echo y`; \ + rm -f $${__o}* ; \ + if [ "$${__HAS_FORTRAN}" != "y" -a "$(BR2_TOOLCHAIN_HAS_FORTRAN)" = y ] ; then \ echo "Fortran support is selected but is not available in external toolchain" ; \ exit 1 ; \ - fi ; \ - rm -f $${__o}* \ + elif [ "$${__HAS_FORTRAN}" = "y" -a "$(BR2_TOOLCHAIN_HAS_FORTRAN)" != y ] ; then \ + echo "Fortran support is not selected but is available in external toolchain" ; \ + exit 1 ; \ + fi \ # # @@ -394,14 +401,16 @@ check_fortran = \ check_openmp = \ __CROSS_CC=$(strip $1) ; \ __o=$(BUILD_DIR)/.br-toolchain-test-openmp.tmp ; \ - printf '\#include \nint main(void) { return omp_get_thread_num(); }' | \ - $${__CROSS_CC} -fopenmp -x c -o $${__o} - ; \ - if test $$? -ne 0 ; then \ - rm -f $${__o}* ; \ + __HAS_OPENMP=`printf '\#include \nint main(void) { return omp_get_thread_num(); }' | \ + $${__CROSS_CC} -fopenmp -x c -o $${__o} - >/dev/null 2>&1 && echo y` ; \ + rm -f $${__o}* ; \ + if [ "$${__HAS_OPENMP}" != "y" -a "$(BR2_TOOLCHAIN_HAS_OPENMP)" = y ] ; then \ echo "OpenMP support is selected but is not available in external toolchain"; \ exit 1 ; \ - fi ; \ - rm -f $${__o}* \ + elif [ "$${__HAS_OPENMP}" = "y" -a "$(BR2_TOOLCHAIN_HAS_OPENMP)" != y ] ; then \ + echo "OpenMP support is not selected but is available in external toolchain"; \ + exit 1 ; \ + fi \ # # Check that the cross-compiler given in the configuration exists diff --git a/toolchain/toolchain-buildroot/Config.in b/toolchain/toolchain-buildroot/Config.in index 64f7892f98bb..0173f40d9768 100644 --- a/toolchain/toolchain-buildroot/Config.in +++ b/toolchain/toolchain-buildroot/Config.in @@ -111,4 +111,5 @@ source "package/uclibc/Config.in" source "package/glibc/Config.in" source "package/binutils/Config.in.host" source "package/gcc/Config.in.host" +source "package/gcc/Config.in" endif diff --git a/toolchain/toolchain-buildroot/toolchain-buildroot.mk b/toolchain/toolchain-buildroot/toolchain-buildroot.mk index 6da64b7c77c2..76862fa2e3d7 100644 --- a/toolchain/toolchain-buildroot/toolchain-buildroot.mk +++ b/toolchain/toolchain-buildroot/toolchain-buildroot.mk @@ -6,11 +6,11 @@ BR_LIBC = $(call qstrip,$(BR2_TOOLCHAIN_BUILDROOT_LIBC)) -# Triggering the build of the host-gcc-final will automatically do the +# Triggering the build of the gcc-final will automatically do the # build of binutils, uClibc, kernel headers and all the intermediate # gcc steps. -TOOLCHAIN_BUILDROOT_DEPENDENCIES = host-gcc-final +TOOLCHAIN_BUILDROOT_DEPENDENCIES = gcc-final TOOLCHAIN_BUILDROOT_ADD_TOOLCHAIN_DEPENDENCY = NO diff --git a/toolchain/toolchain-external/pkg-toolchain-external.mk b/toolchain/toolchain-external/pkg-toolchain-external.mk index c37f3500d9b6..ddf1d70ab429 100644 --- a/toolchain/toolchain-external/pkg-toolchain-external.mk +++ b/toolchain/toolchain-external/pkg-toolchain-external.mk @@ -576,18 +576,10 @@ define $(2)_CONFIGURE_CMDS $$(call check_arm_abi,\ "$$(TOOLCHAIN_EXTERNAL_CC) $$(TOOLCHAIN_EXTERNAL_CFLAGS)") ; \ fi ; \ - if test "$$(BR2_INSTALL_LIBSTDCPP)" = "y" ; then \ - $$(call check_cplusplus,$$(TOOLCHAIN_EXTERNAL_CXX)) ; \ - fi ; \ - if test "$$(BR2_TOOLCHAIN_HAS_DLANG)" = "y" ; then \ - $$(call check_dlang,$$(TOOLCHAIN_EXTERNAL_GDC)) ; \ - fi ; \ - if test "$$(BR2_TOOLCHAIN_HAS_FORTRAN)" = "y" ; then \ - $$(call check_fortran,$$(TOOLCHAIN_EXTERNAL_FC)) ; \ - fi ; \ - if test "$$(BR2_TOOLCHAIN_HAS_OPENMP)" = "y" ; then \ - $$(call check_openmp,$$(TOOLCHAIN_EXTERNAL_CC)) ; \ - fi ; \ + $$(call check_cplusplus,$$(TOOLCHAIN_EXTERNAL_CXX)) ; \ + $$(call check_dlang,$$(TOOLCHAIN_EXTERNAL_GDC)) ; \ + $$(call check_fortran,$$(TOOLCHAIN_EXTERNAL_FC)) ; \ + $$(call check_openmp,$$(TOOLCHAIN_EXTERNAL_CC)) ; \ if test "$$(BR2_TOOLCHAIN_EXTERNAL_UCLIBC)" = "y" ; then \ $$(call check_uclibc,$$$${SYSROOT_DIR}) ; \ elif test "$$(BR2_TOOLCHAIN_EXTERNAL_MUSL)" = "y" ; then \ diff --git a/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/Config.in b/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/Config.in index eeb88579feb3..466b1587c367 100644 --- a/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/Config.in +++ b/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/Config.in @@ -1,12 +1,13 @@ config BR2_TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE - bool "Arm AArch64 BE 2021.07" + bool "Arm AArch64 BE 12.2.rel1" depends on BR2_aarch64_be depends on BR2_HOSTARCH = "x86_64" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_SSP select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_20 - select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 select BR2_TOOLCHAIN_HAS_FORTRAN select BR2_TOOLCHAIN_HAS_OPENMP help diff --git a/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/toolchain-external-arm-aarch64-be.hash b/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/toolchain-external-arm-aarch64-be.hash index 1079917c98a9..f148d6326d16 100644 --- a/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/toolchain-external-arm-aarch64-be.hash +++ b/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/toolchain-external-arm-aarch64-be.hash @@ -1,4 +1,2 @@ -# From https://developer.arm.com/-/media/Files/downloads/gnu-a/10.3-2021.07/binrel/gcc-arm-10.3-2021.07-x86_64-aarch64_be-none-linux-gnu.tar.xz.asc -md5 54cbaef7db7eb3de27732500f9da9c6f gcc-arm-10.3-2021.07-x86_64-aarch64_be-none-linux-gnu.tar.xz -# locally calculated -sha256 63c34cac07ceadd74620ea87f27af1aa6a6f55c20a5bc116af21a59ddb6b6a6a gcc-arm-10.3-2021.07-x86_64-aarch64_be-none-linux-gnu.tar.xz +# From https://developer.arm.com/-/media/Files/downloads/gnu/12.2.rel1/binrel/arm-gnu-toolchain-12.2.rel1-x86_64-aarch64_be-none-linux-gnu.tar.xz.sha256asc +sha256 47632b5594ed6c3efda92a55c4c330263fc22f5d845d9e1c7d969ce24fcedeea arm-gnu-toolchain-12.2.rel1-x86_64-aarch64_be-none-linux-gnu.tar.xz diff --git a/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/toolchain-external-arm-aarch64-be.mk b/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/toolchain-external-arm-aarch64-be.mk index 5a6dbc60d5b1..d35b945b0495 100644 --- a/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/toolchain-external-arm-aarch64-be.mk +++ b/toolchain/toolchain-external/toolchain-external-arm-aarch64-be/toolchain-external-arm-aarch64-be.mk @@ -4,9 +4,9 @@ # ################################################################################ -TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE_VERSION = 2021.07 -TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE_SITE = https://developer.arm.com/-/media/Files/downloads/gnu-a/10.3-$(TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE_VERSION)/binrel +TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE_VERSION = 12.2.rel1 +TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE_SITE = https://developer.arm.com/-/media/Files/downloads/gnu/$(TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE_VERSION)/binrel -TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE_SOURCE = gcc-arm-10.3-$(TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE_VERSION)-x86_64-aarch64_be-none-linux-gnu.tar.xz +TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE_SOURCE = arm-gnu-toolchain-$(TOOLCHAIN_EXTERNAL_ARM_AARCH64_BE_VERSION)-x86_64-aarch64_be-none-linux-gnu.tar.xz $(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-arm-aarch64/Config.in b/toolchain/toolchain-external/toolchain-external-arm-aarch64/Config.in index 9eb5d64a9d17..fc62b759e5b6 100644 --- a/toolchain/toolchain-external/toolchain-external-arm-aarch64/Config.in +++ b/toolchain/toolchain-external/toolchain-external-arm-aarch64/Config.in @@ -1,12 +1,13 @@ config BR2_TOOLCHAIN_EXTERNAL_ARM_AARCH64 - bool "Arm AArch64 2021.07" + bool "Arm AArch64 12.2.rel1" depends on BR2_aarch64 depends on BR2_HOSTARCH = "x86_64" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_SSP select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_20 - select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 select BR2_TOOLCHAIN_HAS_FORTRAN select BR2_TOOLCHAIN_HAS_OPENMP help diff --git a/toolchain/toolchain-external/toolchain-external-arm-aarch64/toolchain-external-arm-aarch64.hash b/toolchain/toolchain-external/toolchain-external-arm-aarch64/toolchain-external-arm-aarch64.hash index ca1ea48bcb60..6c4847831ebf 100644 --- a/toolchain/toolchain-external/toolchain-external-arm-aarch64/toolchain-external-arm-aarch64.hash +++ b/toolchain/toolchain-external/toolchain-external-arm-aarch64/toolchain-external-arm-aarch64.hash @@ -1,4 +1,2 @@ -# From https://developer.arm.com/-/media/Files/downloads/gnu-a/10.3-2021.07/binrel/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu.tar.xz.asc -md5 07bbe2b5277b75ba36a924e9136366a4 gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu.tar.xz -# locally calculated -sha256 1e33d53dea59c8de823bbdfe0798280bdcd138636c7060da9d77a97ded095a84 gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu.tar.xz +# From https://developer.arm.com/-/media/Files/downloads/gnu/12.2.rel1/binrel/arm-gnu-toolchain-12.2.rel1-x86_64-aarch64-none-linux-gnu.tar.xz.sha256asc +sha256 6e8112dce0d4334d93bd3193815f16abe6a2dd5e7872697987a0b12308f876a4 arm-gnu-toolchain-12.2.rel1-x86_64-aarch64-none-linux-gnu.tar.xz diff --git a/toolchain/toolchain-external/toolchain-external-arm-aarch64/toolchain-external-arm-aarch64.mk b/toolchain/toolchain-external/toolchain-external-arm-aarch64/toolchain-external-arm-aarch64.mk index 356e0810b3f9..9cdf58305b90 100644 --- a/toolchain/toolchain-external/toolchain-external-arm-aarch64/toolchain-external-arm-aarch64.mk +++ b/toolchain/toolchain-external/toolchain-external-arm-aarch64/toolchain-external-arm-aarch64.mk @@ -4,9 +4,9 @@ # ################################################################################ -TOOLCHAIN_EXTERNAL_ARM_AARCH64_VERSION = 2021.07 -TOOLCHAIN_EXTERNAL_ARM_AARCH64_SITE = https://developer.arm.com/-/media/Files/downloads/gnu-a/10.3-$(TOOLCHAIN_EXTERNAL_ARM_AARCH64_VERSION)/binrel +TOOLCHAIN_EXTERNAL_ARM_AARCH64_VERSION = 12.2.rel1 +TOOLCHAIN_EXTERNAL_ARM_AARCH64_SITE = https://developer.arm.com/-/media/Files/downloads/gnu/$(TOOLCHAIN_EXTERNAL_ARM_AARCH64_VERSION)/binrel -TOOLCHAIN_EXTERNAL_ARM_AARCH64_SOURCE = gcc-arm-10.3-$(TOOLCHAIN_EXTERNAL_ARM_AARCH64_VERSION)-x86_64-aarch64-none-linux-gnu.tar.xz +TOOLCHAIN_EXTERNAL_ARM_AARCH64_SOURCE = arm-gnu-toolchain-$(TOOLCHAIN_EXTERNAL_ARM_AARCH64_VERSION)-x86_64-aarch64-none-linux-gnu.tar.xz $(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-arm-arm/Config.in b/toolchain/toolchain-external/toolchain-external-arm-arm/Config.in index 28c6541406e9..9b314795cb44 100644 --- a/toolchain/toolchain-external/toolchain-external-arm-arm/Config.in +++ b/toolchain/toolchain-external/toolchain-external-arm-arm/Config.in @@ -3,22 +3,23 @@ comment "Arm toolchains available for Cortex-A with NEON + EABIhf" depends on !BR2_ARM_CPU_ARMV7A || !BR2_ARM_EABIHF || !BR2_ARM_CPU_HAS_NEON config BR2_TOOLCHAIN_EXTERNAL_ARM_ARM - bool "Arm ARM 2021.07" + bool "Arm ARM 12.2.rel1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV7A || BR2_ARM_CPU_ARMV8A depends on BR2_ARM_CPU_HAS_NEON depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "aarch64" depends on BR2_ARM_EABIHF + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_SSP select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_20 - select BR2_TOOLCHAIN_GCC_AT_LEAST_10 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 select BR2_TOOLCHAIN_HAS_FORTRAN select BR2_TOOLCHAIN_HAS_OPENMP help - Arm toolchain for the ARM architecture. It uses GCC 10.3, - GDB 10.2, glibc 2.33, Binutils 2.36.1. It generates code + Arm toolchain for the ARM architecture. It uses GCC 12.2, + GDB 12, glibc 2.36, Binutils 2.39. It generates code that runs on all Cortex-A profile devices. The code generated uses the hard floating point calling convention, and uses the NEON FPU instructions. diff --git a/toolchain/toolchain-external/toolchain-external-arm-arm/toolchain-external-arm-arm.hash b/toolchain/toolchain-external/toolchain-external-arm-arm/toolchain-external-arm-arm.hash index 1fc2c5de57de..2c1af4cfccca 100644 --- a/toolchain/toolchain-external/toolchain-external-arm-arm/toolchain-external-arm-arm.hash +++ b/toolchain/toolchain-external/toolchain-external-arm-arm/toolchain-external-arm-arm.hash @@ -1,7 +1,4 @@ -# From https://developer.arm.com/-/media/Files/downloads/gnu-a/10.3-2021.07/binrel/gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf.tar.xz.asc -md5 87ec580b290df2febc7c476f59484635 gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf.tar.xz -# From https://developer.arm.com/-/media/Files/downloads/gnu-a/10.3-2021.07/binrel/gcc-arm-10.3-2021.07-aarch64-arm-none-linux-gnueabihf.tar.xz.asc -md5 0f1c5c90f5c62e1d1066f75fb3e51e21 gcc-arm-10.3-2021.07-aarch64-arm-none-linux-gnueabihf.tar.xz -# locally calculated -sha256 aa074fa8371a4f73fecbd16bd62c8b1945f23289e26414794f130d6ccdf8e39c gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf.tar.xz -sha256 fccd7af76988da2b077f939eb2a78baa9935810918d2bf3f837bc74f52efa825 gcc-arm-10.3-2021.07-aarch64-arm-none-linux-gnueabihf.tar.xz +# From https://developer.arm.com/-/media/Files/downloads/gnu/12.2.rel1/binrel/arm-gnu-toolchain-12.2.rel1-x86_64-arm-none-linux-gnueabihf.tar.xz.sha256asc +sha256 d73f230bb946231b648a960b719f2cc1afc792ec2e36f9abc25552f00923a926 arm-gnu-toolchain-12.2.rel1-x86_64-arm-none-linux-gnueabihf.tar.xz +# From https://developer.arm.com/-/media/Files/downloads/gnu/12.2.rel1/binrel/arm-gnu-toolchain-12.2.rel1-aarch64-arm-none-linux-gnueabihf.tar.xz.sha256asc +sha256 860f49bc60d559f06408f07a24bc2a09e5b8f9118cfe1daed521ab321c03c78e arm-gnu-toolchain-12.2.rel1-aarch64-arm-none-linux-gnueabihf.tar.xz diff --git a/toolchain/toolchain-external/toolchain-external-arm-arm/toolchain-external-arm-arm.mk b/toolchain/toolchain-external/toolchain-external-arm-arm/toolchain-external-arm-arm.mk index 8731a4f0e5dc..164b60e6cae8 100644 --- a/toolchain/toolchain-external/toolchain-external-arm-arm/toolchain-external-arm-arm.mk +++ b/toolchain/toolchain-external/toolchain-external-arm-arm/toolchain-external-arm-arm.mk @@ -4,9 +4,9 @@ # ################################################################################ -TOOLCHAIN_EXTERNAL_ARM_ARM_VERSION = 2021.07 -TOOLCHAIN_EXTERNAL_ARM_ARM_SITE = https://developer.arm.com/-/media/Files/downloads/gnu-a/10.3-$(TOOLCHAIN_EXTERNAL_ARM_ARM_VERSION)/binrel +TOOLCHAIN_EXTERNAL_ARM_ARM_VERSION = 12.2.rel1 +TOOLCHAIN_EXTERNAL_ARM_ARM_SITE = https://developer.arm.com/-/media/Files/downloads/gnu/$(TOOLCHAIN_EXTERNAL_ARM_ARM_VERSION)/binrel -TOOLCHAIN_EXTERNAL_ARM_ARM_SOURCE = gcc-arm-10.3-$(TOOLCHAIN_EXTERNAL_ARM_ARM_VERSION)-$(HOSTARCH)-arm-none-linux-gnueabihf.tar.xz +TOOLCHAIN_EXTERNAL_ARM_ARM_SOURCE = arm-gnu-toolchain-$(TOOLCHAIN_EXTERNAL_ARM_ARM_VERSION)-$(HOSTARCH)-arm-none-linux-gnueabihf.tar.xz $(eval $(toolchain-external-package)) diff --git a/toolchain/toolchain-external/toolchain-external-bootlin/Config.in.options b/toolchain/toolchain-external/toolchain-external-bootlin/Config.in.options index 7ae56a9d7908..eb6ed5a865a6 100644 --- a/toolchain/toolchain-external/toolchain-external-bootlin/Config.in.options +++ b/toolchain/toolchain-external/toolchain-external-bootlin/Config.in.options @@ -58,13 +58,14 @@ config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL choice prompt "Bootlin toolchain variant" config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_BLEEDING_EDGE - bool "aarch64 glibc bleeding-edge 2022.08-1" + bool "aarch64 glibc bleeding-edge 2023.08-1" depends on BR2_aarch64 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -81,13 +82,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE - bool "aarch64 glibc stable 2022.08-1" + bool "aarch64 glibc stable 2023.08-1" depends on BR2_aarch64 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -104,13 +107,14 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_MUSL_BLEEDING_EDGE - bool "aarch64 musl bleeding-edge 2022.08-1" + bool "aarch64 musl bleeding-edge 2023.08-1" depends on BR2_aarch64 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -127,13 +131,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_MUSL_STABLE - bool "aarch64 musl stable 2022.08-2" + bool "aarch64 musl stable 2023.08-1" depends on BR2_aarch64 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -149,14 +155,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_UCLIBC_BLEEDING_EDGE - bool "aarch64 uclibc bleeding-edge 2022.08-1" + bool "aarch64 uclibc bleeding-edge 2023.08-1" depends on BR2_aarch64 - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -172,14 +179,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_UCLIBC_STABLE - bool "aarch64 uclibc stable 2022.08-1" + bool "aarch64 uclibc stable 2023.08-1" depends on BR2_aarch64 - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -195,13 +204,14 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_GLIBC_BLEEDING_EDGE - bool "aarch64be glibc bleeding-edge 2022.08-1" + bool "aarch64be glibc bleeding-edge 2023.08-1" depends on BR2_aarch64_be depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -218,13 +228,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_GLIBC_STABLE - bool "aarch64be glibc stable 2022.08-1" + bool "aarch64be glibc stable 2023.08-1" depends on BR2_aarch64_be + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -240,15 +252,64 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_GLIBC_STABLE https://toolchains.bootlin.com/ -config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_UCLIBC_BLEEDING_EDGE - bool "aarch64be uclibc bleeding-edge 2022.08-1" +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_MUSL_BLEEDING_EDGE + bool "aarch64be musl bleeding-edge 2023.08-1" depends on BR2_aarch64_be + depends on BR2_USE_MMU + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the aarch64be architecture, using the + musl C library. This is a bleeding-edge version, which + means it is using the latest versions of gcc, gdb and + binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_MUSL_STABLE + bool "aarch64be musl stable 2023.08-1" + depends on BR2_aarch64_be + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + depends on BR2_USE_MMU select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_19 + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP + select BR2_TOOLCHAIN_HAS_SSP + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_DEBUG + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS + select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_EXTERNAL_MUSL + help + Bootlin toolchain for the aarch64be architecture, using the + musl C library. This is a stable version, which means it is + using stable and proven versions of gcc, gdb and binutils. + + https://toolchains.bootlin.com/ + +config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_UCLIBC_BLEEDING_EDGE + bool "aarch64be uclibc bleeding-edge 2023.08-1" + depends on BR2_aarch64_be + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -264,14 +325,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_UCLIBC_STABLE - bool "aarch64be uclibc stable 2022.08-1" + bool "aarch64be uclibc stable 2023.08-1" depends on BR2_aarch64_be - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -287,11 +350,11 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_750D_UCLIBC_BLEEDING_EDGE - bool "arcle-750d uclibc bleeding-edge 2022.08-1" + bool "arcle-750d uclibc bleeding-edge 2023.08-1" depends on BR2_arcle depends on BR2_arc750d - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP @@ -311,11 +374,12 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_750D_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_750D_UCLIBC_STABLE - bool "arcle-750d uclibc stable 2022.08-1" + bool "arcle-750d uclibc stable 2023.08-1" depends on BR2_arcle depends on BR2_arc750d + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_11 select BR2_TOOLCHAIN_GCC_AT_LEAST_10 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP @@ -335,12 +399,12 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_750D_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_GLIBC_BLEEDING_EDGE - bool "arcle-hs38 glibc bleeding-edge 2022.08-1" + bool "arcle-hs38 glibc bleeding-edge 2023.08-1" depends on BR2_arcle depends on BR2_archs38 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN select BR2_TOOLCHAIN_HAS_SSP @@ -359,9 +423,10 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_GLIBC_STABLE - bool "arcle-hs38 glibc stable 2022.08-1" + bool "arcle-hs38 glibc stable 2023.08-1" depends on BR2_arcle depends on BR2_archs38 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_11 depends on BR2_USE_MMU select BR2_TOOLCHAIN_GCC_AT_LEAST_10 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 @@ -383,11 +448,11 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_UCLIBC_BLEEDING_EDGE - bool "arcle-hs38 uclibc bleeding-edge 2022.08-1" + bool "arcle-hs38 uclibc bleeding-edge 2023.08-1" depends on BR2_arcle depends on BR2_archs38 - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP @@ -407,11 +472,12 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_UCLIBC_STABLE - bool "arcle-hs38 uclibc stable 2022.08-1" + bool "arcle-hs38 uclibc stable 2023.08-1" depends on BR2_arcle depends on BR2_archs38 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_11 select BR2_TOOLCHAIN_GCC_AT_LEAST_10 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP @@ -431,15 +497,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_BLEEDING_EDGE - bool "armv5-eabi glibc bleeding-edge 2022.08-1" + bool "armv5-eabi glibc bleeding-edge 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV5 depends on BR2_ARM_EABI depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -456,15 +523,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE - bool "armv5-eabi glibc stable 2022.08-1" + bool "armv5-eabi glibc stable 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV5 depends on BR2_ARM_EABI + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -481,15 +550,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_MUSL_BLEEDING_EDGE - bool "armv5-eabi musl bleeding-edge 2022.08-1" + bool "armv5-eabi musl bleeding-edge 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV5 depends on BR2_ARM_EABI depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -506,15 +576,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_MUSL_STABLE - bool "armv5-eabi musl stable 2022.08-1" + bool "armv5-eabi musl stable 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV5 depends on BR2_ARM_EABI + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -531,16 +603,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_UCLIBC_BLEEDING_EDGE - bool "armv5-eabi uclibc bleeding-edge 2022.08-1" + bool "armv5-eabi uclibc bleeding-edge 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV5 depends on BR2_ARM_EABI - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -556,16 +629,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_UCLIBC_STABLE - bool "armv5-eabi uclibc stable 2022.08-1" + bool "armv5-eabi uclibc stable 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV5 depends on BR2_ARM_EABI - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -581,15 +656,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_GLIBC_BLEEDING_EDGE - bool "armv6-eabihf glibc bleeding-edge 2022.08-1" + bool "armv6-eabihf glibc bleeding-edge 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV6 depends on BR2_ARM_EABIHF depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -606,15 +682,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_GLIBC_STABLE - bool "armv6-eabihf glibc stable 2022.08-1" + bool "armv6-eabihf glibc stable 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV6 depends on BR2_ARM_EABIHF + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -631,15 +709,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_MUSL_BLEEDING_EDGE - bool "armv6-eabihf musl bleeding-edge 2022.08-1" + bool "armv6-eabihf musl bleeding-edge 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV6 depends on BR2_ARM_EABIHF depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -656,15 +735,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_MUSL_STABLE - bool "armv6-eabihf musl stable 2022.08-1" + bool "armv6-eabihf musl stable 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV6 depends on BR2_ARM_EABIHF + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -681,16 +762,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_UCLIBC_BLEEDING_EDGE - bool "armv6-eabihf uclibc bleeding-edge 2022.08-1" + bool "armv6-eabihf uclibc bleeding-edge 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV6 depends on BR2_ARM_EABIHF - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -706,16 +788,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_UCLIBC_STABLE - bool "armv6-eabihf uclibc stable 2022.08-1" + bool "armv6-eabihf uclibc stable 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV6 depends on BR2_ARM_EABIHF - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -731,15 +815,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_GLIBC_BLEEDING_EDGE - bool "armv7-eabihf glibc bleeding-edge 2022.08-1" + bool "armv7-eabihf glibc bleeding-edge 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV7A depends on BR2_ARM_EABIHF depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -756,15 +841,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_GLIBC_STABLE - bool "armv7-eabihf glibc stable 2022.08-1" + bool "armv7-eabihf glibc stable 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV7A depends on BR2_ARM_EABIHF + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -781,15 +868,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_MUSL_BLEEDING_EDGE - bool "armv7-eabihf musl bleeding-edge 2022.08-1" + bool "armv7-eabihf musl bleeding-edge 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV7A depends on BR2_ARM_EABIHF depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -806,15 +894,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_MUSL_STABLE - bool "armv7-eabihf musl stable 2022.08-1" + bool "armv7-eabihf musl stable 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV7A depends on BR2_ARM_EABIHF + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -831,16 +921,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_UCLIBC_BLEEDING_EDGE - bool "armv7-eabihf uclibc bleeding-edge 2022.08-1" + bool "armv7-eabihf uclibc bleeding-edge 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV7A depends on BR2_ARM_EABIHF - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -856,16 +947,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_UCLIBC_STABLE - bool "armv7-eabihf uclibc stable 2022.08-1" + bool "armv7-eabihf uclibc stable 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV7A depends on BR2_ARM_EABIHF - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -881,15 +974,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_GLIBC_BLEEDING_EDGE - bool "armebv7-eabihf glibc bleeding-edge 2022.08-1" + bool "armebv7-eabihf glibc bleeding-edge 2023.08-1" depends on BR2_armeb depends on BR2_ARM_CPU_ARMV7A depends on BR2_ARM_EABIHF depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -906,15 +1000,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_GLIBC_STABLE - bool "armebv7-eabihf glibc stable 2022.08-1" + bool "armebv7-eabihf glibc stable 2023.08-1" depends on BR2_armeb depends on BR2_ARM_CPU_ARMV7A depends on BR2_ARM_EABIHF + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -931,15 +1027,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_MUSL_BLEEDING_EDGE - bool "armebv7-eabihf musl bleeding-edge 2022.08-1" + bool "armebv7-eabihf musl bleeding-edge 2023.08-1" depends on BR2_armeb depends on BR2_ARM_CPU_ARMV7A depends on BR2_ARM_EABIHF depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -956,15 +1053,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_MUSL_STABLE - bool "armebv7-eabihf musl stable 2022.08-1" + bool "armebv7-eabihf musl stable 2023.08-1" depends on BR2_armeb depends on BR2_ARM_CPU_ARMV7A depends on BR2_ARM_EABIHF + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -981,16 +1080,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_UCLIBC_BLEEDING_EDGE - bool "armebv7-eabihf uclibc bleeding-edge 2022.08-1" + bool "armebv7-eabihf uclibc bleeding-edge 2023.08-1" depends on BR2_armeb depends on BR2_ARM_CPU_ARMV7A depends on BR2_ARM_EABIHF - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -1006,16 +1106,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_UCLIBC_STABLE - bool "armebv7-eabihf uclibc stable 2022.08-1" + bool "armebv7-eabihf uclibc stable 2023.08-1" depends on BR2_armeb depends on BR2_ARM_CPU_ARMV7A depends on BR2_ARM_EABIHF - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -1031,15 +1133,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7M_UCLIBC_BLEEDING_EDGE - bool "armv7m uclibc bleeding-edge 2022.08-1" + bool "armv7m uclibc bleeding-edge 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV7M - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -1053,15 +1156,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7M_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7M_UCLIBC_STABLE - bool "armv7m uclibc stable 2022.08-1" + bool "armv7m uclibc stable 2023.08-1" depends on BR2_arm depends on BR2_ARM_CPU_ARMV7M - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -1075,14 +1180,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7M_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_68XXX_UCLIBC_BLEEDING_EDGE - bool "m68k-68xxx uclibc bleeding-edge 2022.08-1" + bool "m68k-68xxx uclibc bleeding-edge 2023.08-1" depends on BR2_m68k_m68k - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -1098,14 +1204,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_68XXX_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_68XXX_UCLIBC_STABLE - bool "m68k-68xxx uclibc stable 2022.08-1" + bool "m68k-68xxx uclibc stable 2023.08-1" depends on BR2_m68k_m68k - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -1121,14 +1229,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_68XXX_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_COLDFIRE_UCLIBC_BLEEDING_EDGE - bool "m68k-coldfire uclibc bleeding-edge 2021.11-1" + bool "m68k-coldfire uclibc bleeding-edge 2023.08-1" depends on BR2_m68k_cf - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -1142,14 +1251,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_COLDFIRE_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_COLDFIRE_UCLIBC_STABLE - bool "m68k-coldfire uclibc stable 2021.11-1" + bool "m68k-coldfire uclibc stable 2023.08-1" depends on BR2_m68k_cf - select BR2_TOOLCHAIN_GCC_AT_LEAST_10 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -1163,12 +1274,12 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_COLDFIRE_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_GLIBC_BLEEDING_EDGE - bool "microblazebe glibc bleeding-edge 2022.08-1" + bool "microblazebe glibc bleeding-edge 2023.08-1" depends on BR2_microblazebe depends on BR2_USE_MMU select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN select BR2_TOOLCHAIN_HAS_THREADS @@ -1186,12 +1297,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_GLIBC_STABLE - bool "microblazebe glibc stable 2022.08-1" + bool "microblazebe glibc stable 2023.08-1" depends on BR2_microblazebe + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN select BR2_TOOLCHAIN_HAS_THREADS @@ -1209,12 +1321,12 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_MUSL_BLEEDING_EDGE - bool "microblazebe musl bleeding-edge 2022.08-1" + bool "microblazebe musl bleeding-edge 2023.08-1" depends on BR2_microblazebe depends on BR2_USE_MMU select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN select BR2_TOOLCHAIN_HAS_THREADS @@ -1232,12 +1344,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_MUSL_STABLE - bool "microblazebe musl stable 2022.08-1" + bool "microblazebe musl stable 2023.08-1" depends on BR2_microblazebe + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN select BR2_TOOLCHAIN_HAS_THREADS @@ -1255,11 +1368,11 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_UCLIBC_BLEEDING_EDGE - bool "microblazebe uclibc bleeding-edge 2022.08-1" + bool "microblazebe uclibc bleeding-edge 2023.08-1" depends on BR2_microblazebe select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP @@ -1279,11 +1392,12 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_UCLIBC_STABLE - bool "microblazebe uclibc stable 2022.08-1" + bool "microblazebe uclibc stable 2023.08-1" depends on BR2_microblazebe + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP @@ -1303,12 +1417,12 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_GLIBC_BLEEDING_EDGE - bool "microblazeel glibc bleeding-edge 2022.08-1" + bool "microblazeel glibc bleeding-edge 2023.08-1" depends on BR2_microblazeel depends on BR2_USE_MMU select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN select BR2_TOOLCHAIN_HAS_THREADS @@ -1326,12 +1440,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_GLIBC_STABLE - bool "microblazeel glibc stable 2022.08-1" + bool "microblazeel glibc stable 2023.08-1" depends on BR2_microblazeel + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN select BR2_TOOLCHAIN_HAS_THREADS @@ -1349,12 +1464,12 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_MUSL_BLEEDING_EDGE - bool "microblazeel musl bleeding-edge 2022.08-1" + bool "microblazeel musl bleeding-edge 2023.08-1" depends on BR2_microblazeel depends on BR2_USE_MMU select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN select BR2_TOOLCHAIN_HAS_THREADS @@ -1372,12 +1487,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_MUSL_STABLE - bool "microblazeel musl stable 2022.08-1" + bool "microblazeel musl stable 2023.08-1" depends on BR2_microblazeel + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN select BR2_TOOLCHAIN_HAS_THREADS @@ -1395,11 +1511,11 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_UCLIBC_BLEEDING_EDGE - bool "microblazeel uclibc bleeding-edge 2022.08-1" + bool "microblazeel uclibc bleeding-edge 2023.08-1" depends on BR2_microblazeel select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP @@ -1419,11 +1535,12 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_UCLIBC_STABLE - bool "microblazeel uclibc stable 2022.08-1" + bool "microblazeel uclibc stable 2023.08-1" depends on BR2_microblazeel + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP @@ -1443,15 +1560,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_GLIBC_BLEEDING_EDGE - bool "mips32 glibc bleeding-edge 2022.08-1" + bool "mips32 glibc bleeding-edge 2023.08-1" depends on BR2_mips depends on BR2_mips_32 depends on !BR2_MIPS_SOFT_FLOAT depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -1468,15 +1586,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_GLIBC_STABLE - bool "mips32 glibc stable 2022.08-1" + bool "mips32 glibc stable 2023.08-1" depends on BR2_mips depends on BR2_mips_32 depends on !BR2_MIPS_SOFT_FLOAT + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -1493,15 +1613,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_MUSL_BLEEDING_EDGE - bool "mips32 musl bleeding-edge 2022.08-1" + bool "mips32 musl bleeding-edge 2023.08-1" depends on BR2_mips depends on BR2_mips_32 depends on !BR2_MIPS_SOFT_FLOAT depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -1518,15 +1639,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_MUSL_STABLE - bool "mips32 musl stable 2022.08-1" + bool "mips32 musl stable 2023.08-1" depends on BR2_mips depends on BR2_mips_32 depends on !BR2_MIPS_SOFT_FLOAT + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -1542,16 +1665,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_UCLIBC_BLEEDING_EDGE - bool "mips32 uclibc bleeding-edge 2022.08-1" + bool "mips32 uclibc bleeding-edge 2023.08-1" depends on BR2_mips depends on BR2_mips_32 depends on !BR2_MIPS_SOFT_FLOAT - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -1567,16 +1691,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_UCLIBC_STABLE - bool "mips32 uclibc stable 2022.08-1" + bool "mips32 uclibc stable 2023.08-1" depends on BR2_mips depends on BR2_mips_32 depends on !BR2_MIPS_SOFT_FLOAT - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -1592,15 +1718,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_GLIBC_BLEEDING_EDGE - bool "mips32el glibc bleeding-edge 2022.08-1" + bool "mips32el glibc bleeding-edge 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32 depends on !BR2_MIPS_SOFT_FLOAT depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -1617,15 +1744,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_GLIBC_STABLE - bool "mips32el glibc stable 2022.08-1" + bool "mips32el glibc stable 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32 depends on !BR2_MIPS_SOFT_FLOAT + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -1642,15 +1771,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_MUSL_BLEEDING_EDGE - bool "mips32el musl bleeding-edge 2022.08-1" + bool "mips32el musl bleeding-edge 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32 depends on !BR2_MIPS_SOFT_FLOAT depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -1667,15 +1797,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_MUSL_STABLE - bool "mips32el musl stable 2022.08-1" + bool "mips32el musl stable 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32 depends on !BR2_MIPS_SOFT_FLOAT + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -1691,16 +1823,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_UCLIBC_BLEEDING_EDGE - bool "mips32el uclibc bleeding-edge 2022.08-1" + bool "mips32el uclibc bleeding-edge 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32 depends on !BR2_MIPS_SOFT_FLOAT - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -1716,16 +1849,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_UCLIBC_STABLE - bool "mips32el uclibc stable 2022.08-1" + bool "mips32el uclibc stable 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32 depends on !BR2_MIPS_SOFT_FLOAT - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -1741,15 +1876,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_GLIBC_BLEEDING_EDGE - bool "mips32r5el glibc bleeding-edge 2022.08-1" + bool "mips32r5el glibc bleeding-edge 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32r5 depends on !BR2_MIPS_SOFT_FLOAT depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -1766,15 +1902,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_GLIBC_STABLE - bool "mips32r5el glibc stable 2022.08-1" + bool "mips32r5el glibc stable 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32r5 depends on !BR2_MIPS_SOFT_FLOAT + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -1791,15 +1929,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_MUSL_BLEEDING_EDGE - bool "mips32r5el musl bleeding-edge 2022.08-1" + bool "mips32r5el musl bleeding-edge 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32r5 depends on !BR2_MIPS_SOFT_FLOAT depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -1816,15 +1955,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_MUSL_STABLE - bool "mips32r5el musl stable 2022.08-1" + bool "mips32r5el musl stable 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32r5 depends on !BR2_MIPS_SOFT_FLOAT + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -1841,16 +1982,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_UCLIBC_BLEEDING_EDGE - bool "mips32r5el uclibc bleeding-edge 2022.08-1" + bool "mips32r5el uclibc bleeding-edge 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32r5 depends on !BR2_MIPS_SOFT_FLOAT - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -1866,16 +2008,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_UCLIBC_STABLE - bool "mips32r5el uclibc stable 2022.08-1" + bool "mips32r5el uclibc stable 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32r5 depends on !BR2_MIPS_SOFT_FLOAT - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -1891,15 +2035,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_GLIBC_BLEEDING_EDGE - bool "mips32r6el glibc bleeding-edge 2022.08-1" + bool "mips32r6el glibc bleeding-edge 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32r6 depends on !BR2_MIPS_SOFT_FLOAT depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -1916,15 +2061,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_GLIBC_STABLE - bool "mips32r6el glibc stable 2022.08-1" + bool "mips32r6el glibc stable 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32r6 depends on !BR2_MIPS_SOFT_FLOAT + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -1941,15 +2088,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_MUSL_BLEEDING_EDGE - bool "mips32r6el musl bleeding-edge 2022.08-1" + bool "mips32r6el musl bleeding-edge 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32r6 depends on !BR2_MIPS_SOFT_FLOAT depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -1966,15 +2114,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_MUSL_STABLE - bool "mips32r6el musl stable 2022.08-1" + bool "mips32r6el musl stable 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32r6 depends on !BR2_MIPS_SOFT_FLOAT + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -1991,16 +2141,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_UCLIBC_BLEEDING_EDGE - bool "mips32r6el uclibc bleeding-edge 2022.08-1" + bool "mips32r6el uclibc bleeding-edge 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32r6 depends on !BR2_MIPS_SOFT_FLOAT - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2016,16 +2167,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_UCLIBC_STABLE - bool "mips32r6el uclibc stable 2022.08-1" + bool "mips32r6el uclibc stable 2023.08-1" depends on BR2_mipsel depends on BR2_mips_32r6 depends on !BR2_MIPS_SOFT_FLOAT - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2041,16 +2194,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_GLIBC_BLEEDING_EDGE - bool "mips64-n32 glibc bleeding-edge 2022.08-1" + bool "mips64-n32 glibc bleeding-edge 2023.08-1" depends on BR2_mips64 depends on BR2_mips_64 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2067,16 +2221,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_GLIBC_STABLE - bool "mips64-n32 glibc stable 2022.08-1" + bool "mips64-n32 glibc stable 2023.08-1" depends on BR2_mips64 depends on BR2_mips_64 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2093,16 +2249,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_MUSL_BLEEDING_EDGE - bool "mips64-n32 musl bleeding-edge 2022.08-1" + bool "mips64-n32 musl bleeding-edge 2023.08-1" depends on BR2_mips64 depends on BR2_mips_64 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2119,16 +2276,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_MUSL_STABLE - bool "mips64-n32 musl stable 2022.08-1" + bool "mips64-n32 musl stable 2023.08-1" depends on BR2_mips64 depends on BR2_mips_64 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2145,17 +2304,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_UCLIBC_BLEEDING_EDGE - bool "mips64-n32 uclibc bleeding-edge 2022.08-1" + bool "mips64-n32 uclibc bleeding-edge 2023.08-1" depends on BR2_mips64 depends on BR2_mips_64 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2171,17 +2331,19 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_UCLIBC_STABLE - bool "mips64-n32 uclibc stable 2022.08-1" + bool "mips64-n32 uclibc stable 2023.08-1" depends on BR2_mips64 depends on BR2_mips_64 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2197,16 +2359,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_GLIBC_BLEEDING_EDGE - bool "mips64el-n32 glibc bleeding-edge 2022.08-1" + bool "mips64el-n32 glibc bleeding-edge 2023.08-1" depends on BR2_mips64el depends on BR2_mips_64 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2223,16 +2386,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_GLIBC_STABLE - bool "mips64el-n32 glibc stable 2022.08-1" + bool "mips64el-n32 glibc stable 2023.08-1" depends on BR2_mips64el depends on BR2_mips_64 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2249,16 +2414,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_MUSL_BLEEDING_EDGE - bool "mips64el-n32 musl bleeding-edge 2022.08-1" + bool "mips64el-n32 musl bleeding-edge 2023.08-1" depends on BR2_mips64el depends on BR2_mips_64 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2275,16 +2441,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_MUSL_STABLE - bool "mips64el-n32 musl stable 2022.08-1" + bool "mips64el-n32 musl stable 2023.08-1" depends on BR2_mips64el depends on BR2_mips_64 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2301,17 +2469,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_UCLIBC_BLEEDING_EDGE - bool "mips64el-n32 uclibc bleeding-edge 2022.08-1" + bool "mips64el-n32 uclibc bleeding-edge 2023.08-1" depends on BR2_mips64el depends on BR2_mips_64 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2327,17 +2496,19 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_UCLIBC_STABLE - bool "mips64el-n32 uclibc stable 2022.08-1" + bool "mips64el-n32 uclibc stable 2023.08-1" depends on BR2_mips64el depends on BR2_mips_64 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2353,16 +2524,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_GLIBC_BLEEDING_EDGE - bool "mips64r6el-n32 glibc bleeding-edge 2022.08-1" + bool "mips64r6el-n32 glibc bleeding-edge 2023.08-1" depends on BR2_mips64el depends on BR2_mips_64r6 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2379,16 +2551,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_GLIBC_STABLE - bool "mips64r6el-n32 glibc stable 2022.08-1" + bool "mips64r6el-n32 glibc stable 2023.08-1" depends on BR2_mips64el depends on BR2_mips_64r6 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2405,16 +2579,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_MUSL_BLEEDING_EDGE - bool "mips64r6el-n32 musl bleeding-edge 2022.08-1" + bool "mips64r6el-n32 musl bleeding-edge 2023.08-1" depends on BR2_mips64el depends on BR2_mips_64r6 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2431,16 +2606,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_MUSL_STABLE - bool "mips64r6el-n32 musl stable 2022.08-1" + bool "mips64r6el-n32 musl stable 2023.08-1" depends on BR2_mips64el depends on BR2_mips_64r6 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2457,17 +2634,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_UCLIBC_BLEEDING_EDGE - bool "mips64r6el-n32 uclibc bleeding-edge 2022.08-1" + bool "mips64r6el-n32 uclibc bleeding-edge 2023.08-1" depends on BR2_mips64el depends on BR2_mips_64r6 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2483,17 +2661,19 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_UCLIBC_STABLE - bool "mips64r6el-n32 uclibc stable 2022.08-1" + bool "mips64r6el-n32 uclibc stable 2023.08-1" depends on BR2_mips64el depends on BR2_mips_64r6 depends on BR2_MIPS_NABI32 depends on !BR2_MIPS_SOFT_FLOAT - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2509,13 +2689,14 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_NIOS2_GLIBC_BLEEDING_EDGE - bool "nios2 glibc bleeding-edge 2022.08-1" + bool "nios2 glibc bleeding-edge 2023.08-1" depends on BR2_nios2 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2532,13 +2713,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_NIOS2_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_NIOS2_GLIBC_STABLE - bool "nios2 glibc stable 2022.08-1" + bool "nios2 glibc stable 2023.08-1" depends on BR2_nios2 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2555,14 +2738,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_NIOS2_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_GLIBC_BLEEDING_EDGE - bool "openrisc glibc bleeding-edge 2022.08-1" + bool "openrisc glibc bleeding-edge 2023.08-1" depends on BR2_or1k depends on BR2_USE_MMU select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2579,14 +2763,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_GLIBC_STABLE - bool "openrisc glibc stable 2022.08-1" + bool "openrisc glibc stable 2023.08-1" depends on BR2_or1k + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2603,14 +2789,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_MUSL_BLEEDING_EDGE - bool "openrisc musl bleeding-edge 2022.08-1" + bool "openrisc musl bleeding-edge 2023.08-1" depends on BR2_or1k depends on BR2_USE_MMU select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2627,14 +2814,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_MUSL_STABLE - bool "openrisc musl stable 2022.08-1" + bool "openrisc musl stable 2023.08-1" depends on BR2_or1k + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2650,15 +2839,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_UCLIBC_BLEEDING_EDGE - bool "openrisc uclibc bleeding-edge 2022.08-1" + bool "openrisc uclibc bleeding-edge 2023.08-1" depends on BR2_or1k select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2674,15 +2864,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_UCLIBC_STABLE - bool "openrisc uclibc stable 2022.08-1" + bool "openrisc uclibc stable 2023.08-1" depends on BR2_or1k + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2698,14 +2890,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_GLIBC_BLEEDING_EDGE - bool "powerpc-440fp glibc bleeding-edge 2022.08-1" + bool "powerpc-440fp glibc bleeding-edge 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_440fp depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2722,14 +2915,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_GLIBC_STABLE - bool "powerpc-440fp glibc stable 2022.08-1" + bool "powerpc-440fp glibc stable 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_440fp + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2746,14 +2941,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_MUSL_BLEEDING_EDGE - bool "powerpc-440fp musl bleeding-edge 2022.08-1" + bool "powerpc-440fp musl bleeding-edge 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_440fp depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2769,14 +2965,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_MUSL_STABLE - bool "powerpc-440fp musl stable 2022.08-1" + bool "powerpc-440fp musl stable 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_440fp + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2792,15 +2990,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_UCLIBC_BLEEDING_EDGE - bool "powerpc-440fp uclibc bleeding-edge 2022.08-1" + bool "powerpc-440fp uclibc bleeding-edge 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_440fp - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2816,15 +3015,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_UCLIBC_STABLE - bool "powerpc-440fp uclibc stable 2022.08-1" + bool "powerpc-440fp uclibc stable 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_440fp - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2840,14 +3041,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_GLIBC_BLEEDING_EDGE - bool "powerpc-e300c3 glibc bleeding-edge 2022.08-1" + bool "powerpc-e300c3 glibc bleeding-edge 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_e300c3 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2864,14 +3066,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_GLIBC_STABLE - bool "powerpc-e300c3 glibc stable 2022.08-1" + bool "powerpc-e300c3 glibc stable 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_e300c3 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -2888,14 +3092,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_MUSL_BLEEDING_EDGE - bool "powerpc-e300c3 musl bleeding-edge 2022.08-1" + bool "powerpc-e300c3 musl bleeding-edge 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_e300c3 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2911,14 +3116,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_MUSL_STABLE - bool "powerpc-e300c3 musl stable 2022.08-1" + bool "powerpc-e300c3 musl stable 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_e300c3 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2934,15 +3141,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_UCLIBC_BLEEDING_EDGE - bool "powerpc-e300c3 uclibc bleeding-edge 2022.08-1" + bool "powerpc-e300c3 uclibc bleeding-edge 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_e300c3 - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2958,15 +3166,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_UCLIBC_STABLE - bool "powerpc-e300c3 uclibc stable 2022.08-1" + bool "powerpc-e300c3 uclibc stable 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_e300c3 - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -2982,14 +3192,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_GLIBC_BLEEDING_EDGE - bool "powerpc-e500mc glibc bleeding-edge 2022.08-1" + bool "powerpc-e500mc glibc bleeding-edge 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_e500mc depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3006,14 +3217,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_GLIBC_STABLE - bool "powerpc-e500mc glibc stable 2022.08-1" + bool "powerpc-e500mc glibc stable 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_e500mc + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3030,14 +3243,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_MUSL_BLEEDING_EDGE - bool "powerpc-e500mc musl bleeding-edge 2022.08-1" + bool "powerpc-e500mc musl bleeding-edge 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_e500mc depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -3053,14 +3267,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_MUSL_STABLE - bool "powerpc-e500mc musl stable 2022.08-1" + bool "powerpc-e500mc musl stable 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_e500mc + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -3076,15 +3292,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_UCLIBC_BLEEDING_EDGE - bool "powerpc-e500mc uclibc bleeding-edge 2022.08-1" + bool "powerpc-e500mc uclibc bleeding-edge 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_e500mc - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -3100,15 +3317,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_UCLIBC_STABLE - bool "powerpc-e500mc uclibc stable 2022.08-1" + bool "powerpc-e500mc uclibc stable 2023.08-1" depends on BR2_powerpc depends on BR2_powerpc_e500mc - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -3124,14 +3343,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E5500_GLIBC_BLEEDING_EDGE - bool "powerpc64-e5500 glibc bleeding-edge 2022.08-1" + bool "powerpc64-e5500 glibc bleeding-edge 2023.08-1" depends on BR2_powerpc64 depends on BR2_powerpc_e5500 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3148,14 +3368,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E5500_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E5500_GLIBC_STABLE - bool "powerpc64-e5500 glibc stable 2022.08-1" + bool "powerpc64-e5500 glibc stable 2023.08-1" depends on BR2_powerpc64 depends on BR2_powerpc_e5500 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3172,14 +3394,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E5500_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_GLIBC_BLEEDING_EDGE - bool "powerpc64-e6500 glibc bleeding-edge 2022.08-1" + bool "powerpc64-e6500 glibc bleeding-edge 2023.08-1" depends on BR2_powerpc64 depends on BR2_powerpc_e6500 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3196,14 +3419,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_GLIBC_STABLE - bool "powerpc64-e6500 glibc stable 2022.08-1" + bool "powerpc64-e6500 glibc stable 2023.08-1" depends on BR2_powerpc64 depends on BR2_powerpc_e6500 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3220,14 +3445,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_MUSL_BLEEDING_EDGE - bool "powerpc64-e6500 musl bleeding-edge 2022.08-1" + bool "powerpc64-e6500 musl bleeding-edge 2023.08-1" depends on BR2_powerpc64 depends on BR2_powerpc_e6500 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3244,14 +3470,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_MUSL_STABLE - bool "powerpc64-e6500 musl stable 2022.08-1" + bool "powerpc64-e6500 musl stable 2023.08-1" depends on BR2_powerpc64 depends on BR2_powerpc_e6500 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3268,14 +3496,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_GLIBC_BLEEDING_EDGE - bool "powerpc64-power8 glibc bleeding-edge 2022.08-1" + bool "powerpc64-power8 glibc bleeding-edge 2023.08-1" depends on BR2_powerpc64 depends on BR2_powerpc_power8 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3292,14 +3521,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_GLIBC_STABLE - bool "powerpc64-power8 glibc stable 2022.08-1" + bool "powerpc64-power8 glibc stable 2023.08-1" depends on BR2_powerpc64 depends on BR2_powerpc_power8 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3316,14 +3547,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_MUSL_BLEEDING_EDGE - bool "powerpc64-power8 musl bleeding-edge 2022.08-1" + bool "powerpc64-power8 musl bleeding-edge 2023.08-1" depends on BR2_powerpc64 depends on BR2_powerpc_power8 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3340,14 +3572,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_MUSL_STABLE - bool "powerpc64-power8 musl stable 2022.08-1" + bool "powerpc64-power8 musl stable 2023.08-1" depends on BR2_powerpc64 depends on BR2_powerpc_power8 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3364,14 +3598,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_GLIBC_BLEEDING_EDGE - bool "powerpc64le-power8 glibc bleeding-edge 2022.08-1" + bool "powerpc64le-power8 glibc bleeding-edge 2023.08-1" depends on BR2_powerpc64le depends on BR2_powerpc_power8 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3388,14 +3623,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_GLIBC_STABLE - bool "powerpc64le-power8 glibc stable 2022.08-1" + bool "powerpc64le-power8 glibc stable 2023.08-1" depends on BR2_powerpc64le depends on BR2_powerpc_power8 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3412,14 +3649,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_MUSL_BLEEDING_EDGE - bool "powerpc64le-power8 musl bleeding-edge 2022.08-1" + bool "powerpc64le-power8 musl bleeding-edge 2023.08-1" depends on BR2_powerpc64le depends on BR2_powerpc_power8 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3436,14 +3674,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_MUSL_STABLE - bool "powerpc64le-power8 musl stable 2022.08-1" + bool "powerpc64le-power8 musl stable 2023.08-1" depends on BR2_powerpc64le depends on BR2_powerpc_power8 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3460,16 +3700,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV32_ILP32D_GLIBC_BLEEDING_EDGE - bool "riscv32-ilp32d glibc bleeding-edge 2022.08-1" + bool "riscv32-ilp32d glibc bleeding-edge 2023.08-1" depends on BR2_riscv depends on BR2_riscv_g depends on BR2_RISCV_32 depends on BR2_RISCV_ABI_ILP32D depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3486,16 +3727,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV32_ILP32D_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_GLIBC_BLEEDING_EDGE - bool "riscv64-lp64d glibc bleeding-edge 2022.08-1" + bool "riscv64-lp64d glibc bleeding-edge 2023.08-1" depends on BR2_riscv depends on BR2_riscv_g depends on BR2_RISCV_64 depends on BR2_RISCV_ABI_LP64D depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3512,16 +3754,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_GLIBC_STABLE - bool "riscv64-lp64d glibc stable 2022.08-1" + bool "riscv64-lp64d glibc stable 2023.08-1" depends on BR2_riscv depends on BR2_riscv_g depends on BR2_RISCV_64 depends on BR2_RISCV_ABI_LP64D depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3538,16 +3782,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_MUSL_BLEEDING_EDGE - bool "riscv64-lp64d musl bleeding-edge 2022.08-1" + bool "riscv64-lp64d musl bleeding-edge 2023.08-1" depends on BR2_riscv depends on BR2_riscv_g depends on BR2_RISCV_64 depends on BR2_RISCV_ABI_LP64D depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3564,16 +3809,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_MUSL_STABLE - bool "riscv64-lp64d musl stable 2022.08-1" + bool "riscv64-lp64d musl stable 2023.08-1" depends on BR2_riscv depends on BR2_riscv_g depends on BR2_RISCV_64 depends on BR2_RISCV_ABI_LP64D depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3590,18 +3837,19 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_UCLIBC_BLEEDING_EDGE - bool "riscv64-lp64d uclibc bleeding-edge 2022.08-1" + bool "riscv64-lp64d uclibc bleeding-edge 2023.08-1" depends on BR2_riscv depends on BR2_riscv_g depends on BR2_RISCV_64 depends on BR2_RISCV_ABI_LP64D depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -3617,18 +3865,20 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_UCLIBC_STABLE - bool "riscv64-lp64d uclibc stable 2022.08-1" + bool "riscv64-lp64d uclibc stable 2023.08-1" depends on BR2_riscv depends on BR2_riscv_g depends on BR2_RISCV_64 depends on BR2_RISCV_ABI_LP64D depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -3644,14 +3894,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_S390X_Z13_GLIBC_BLEEDING_EDGE - bool "s390x-z13 glibc bleeding-edge 2022.08-1" + bool "s390x-z13 glibc bleeding-edge 2023.08-1" depends on BR2_s390x depends on BR2_s390x_z13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3668,14 +3919,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_S390X_Z13_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_S390X_Z13_GLIBC_STABLE - bool "s390x-z13 glibc stable 2022.08-1" + bool "s390x-z13 glibc stable 2023.08-1" depends on BR2_s390x depends on BR2_s390x_z13 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3692,14 +3945,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_S390X_Z13_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_GLIBC_BLEEDING_EDGE - bool "sh-sh4 glibc bleeding-edge 2022.08-1" + bool "sh-sh4 glibc bleeding-edge 2023.08-1" depends on BR2_sh depends on BR2_sh4 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3716,14 +3970,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_GLIBC_STABLE - bool "sh-sh4 glibc stable 2022.08-1" + bool "sh-sh4 glibc stable 2023.08-1" depends on BR2_sh depends on BR2_sh4 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3740,14 +3996,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_MUSL_BLEEDING_EDGE - bool "sh-sh4 musl bleeding-edge 2022.08-1" + bool "sh-sh4 musl bleeding-edge 2023.08-1" depends on BR2_sh depends on BR2_sh4 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3764,14 +4021,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_MUSL_STABLE - bool "sh-sh4 musl stable 2022.08-1" + bool "sh-sh4 musl stable 2023.08-1" depends on BR2_sh depends on BR2_sh4 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3787,15 +4046,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_UCLIBC_BLEEDING_EDGE - bool "sh-sh4 uclibc bleeding-edge 2022.08-1" + bool "sh-sh4 uclibc bleeding-edge 2023.08-1" depends on BR2_sh depends on BR2_sh4 - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -3811,15 +4071,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_UCLIBC_STABLE - bool "sh-sh4 uclibc stable 2022.08-1" + bool "sh-sh4 uclibc stable 2023.08-1" depends on BR2_sh depends on BR2_sh4 - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -3835,14 +4097,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_GLIBC_BLEEDING_EDGE - bool "sh-sh4aeb glibc bleeding-edge 2022.08-1" + bool "sh-sh4aeb glibc bleeding-edge 2023.08-1" depends on BR2_sh depends on BR2_sh4aeb depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3859,14 +4122,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_GLIBC_STABLE - bool "sh-sh4aeb glibc stable 2022.08-1" + bool "sh-sh4aeb glibc stable 2023.08-1" depends on BR2_sh depends on BR2_sh4aeb + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3883,14 +4148,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_MUSL_BLEEDING_EDGE - bool "sh-sh4aeb musl bleeding-edge 2022.08-1" + bool "sh-sh4aeb musl bleeding-edge 2023.08-1" depends on BR2_sh depends on BR2_sh4aeb depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3907,14 +4173,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_MUSL_STABLE - bool "sh-sh4aeb musl stable 2022.08-1" + bool "sh-sh4aeb musl stable 2023.08-1" depends on BR2_sh depends on BR2_sh4aeb + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3930,14 +4198,15 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARC64_GLIBC_BLEEDING_EDGE - bool "sparc64 glibc bleeding-edge 2022.08-1" + bool "sparc64 glibc bleeding-edge 2023.08-1" depends on BR2_sparc64 depends on BR2_sparc_v9 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3954,14 +4223,16 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARC64_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARC64_GLIBC_STABLE - bool "sparc64 glibc stable 2022.08-1" + bool "sparc64 glibc stable 2023.08-1" depends on BR2_sparc64 depends on BR2_sparc_v9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -3981,12 +4252,14 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARCV8_UCLIBC_BLEEDING_EDGE bool "sparcv8 uclibc bleeding-edge 2022.08-2" depends on BR2_sparc depends on BR2_sparc_v8 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_12 select BR2_TOOLCHAIN_GCC_AT_LEAST_11 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -4005,12 +4278,14 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARCV8_UCLIBC_STABLE bool "sparcv8 uclibc stable 2022.08-1" depends on BR2_sparc depends on BR2_sparc_v8 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_11 select BR2_TOOLCHAIN_GCC_AT_LEAST_10 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -4026,16 +4301,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARCV8_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_GLIBC_BLEEDING_EDGE - bool "x86-64 glibc bleeding-edge 2022.08-1" + bool "x86-64 glibc bleeding-edge 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE depends on BR2_X86_CPU_HAS_SSE2 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4052,16 +4328,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_GLIBC_STABLE - bool "x86-64 glibc stable 2022.08-1" + bool "x86-64 glibc stable 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE depends on BR2_X86_CPU_HAS_SSE2 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4078,16 +4356,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_MUSL_BLEEDING_EDGE - bool "x86-64 musl bleeding-edge 2022.08-1" + bool "x86-64 musl bleeding-edge 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE depends on BR2_X86_CPU_HAS_SSE2 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4104,16 +4383,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_MUSL_STABLE - bool "x86-64 musl stable 2022.08-1" + bool "x86-64 musl stable 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE depends on BR2_X86_CPU_HAS_SSE2 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4129,17 +4410,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_UCLIBC_BLEEDING_EDGE - bool "x86-64 uclibc bleeding-edge 2022.08-1" + bool "x86-64 uclibc bleeding-edge 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE depends on BR2_X86_CPU_HAS_SSE2 - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -4155,17 +4437,19 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_UCLIBC_STABLE - bool "x86-64 uclibc stable 2022.08-1" + bool "x86-64 uclibc stable 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE depends on BR2_X86_CPU_HAS_SSE2 - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -4181,7 +4465,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_GLIBC_BLEEDING_EDGE - bool "x86-64-v2 glibc bleeding-edge 2022.08-1" + bool "x86-64-v2 glibc bleeding-edge 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4191,10 +4475,11 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_GLIBC_BLEEDING_EDGE depends on BR2_X86_CPU_HAS_SSE4 depends on BR2_X86_CPU_HAS_SSE42 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4211,7 +4496,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_GLIBC_STABLE - bool "x86-64-v2 glibc stable 2022.08-1" + bool "x86-64-v2 glibc stable 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4220,11 +4505,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_GLIBC_STABLE depends on BR2_X86_CPU_HAS_SSSE3 depends on BR2_X86_CPU_HAS_SSE4 depends on BR2_X86_CPU_HAS_SSE42 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4241,7 +4528,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_MUSL_BLEEDING_EDGE - bool "x86-64-v2 musl bleeding-edge 2022.08-1" + bool "x86-64-v2 musl bleeding-edge 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4251,10 +4538,11 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_MUSL_BLEEDING_EDGE depends on BR2_X86_CPU_HAS_SSE4 depends on BR2_X86_CPU_HAS_SSE42 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4271,7 +4559,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_MUSL_STABLE - bool "x86-64-v2 musl stable 2022.08-1" + bool "x86-64-v2 musl stable 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4280,11 +4568,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_MUSL_STABLE depends on BR2_X86_CPU_HAS_SSSE3 depends on BR2_X86_CPU_HAS_SSE4 depends on BR2_X86_CPU_HAS_SSE42 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4300,7 +4590,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_UCLIBC_BLEEDING_EDGE - bool "x86-64-v2 uclibc bleeding-edge 2022.08-1" + bool "x86-64-v2 uclibc bleeding-edge 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4309,12 +4599,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_UCLIBC_BLEEDING_EDGE depends on BR2_X86_CPU_HAS_SSSE3 depends on BR2_X86_CPU_HAS_SSE4 depends on BR2_X86_CPU_HAS_SSE42 - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -4330,7 +4621,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_UCLIBC_STABLE - bool "x86-64-v2 uclibc stable 2022.08-1" + bool "x86-64-v2 uclibc stable 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4339,12 +4630,14 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_UCLIBC_STABLE depends on BR2_X86_CPU_HAS_SSSE3 depends on BR2_X86_CPU_HAS_SSE4 depends on BR2_X86_CPU_HAS_SSE42 - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -4360,7 +4653,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_GLIBC_BLEEDING_EDGE - bool "x86-64-v3 glibc bleeding-edge 2022.08-1" + bool "x86-64-v3 glibc bleeding-edge 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4372,10 +4665,11 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_GLIBC_BLEEDING_EDGE depends on BR2_X86_CPU_HAS_AVX depends on BR2_X86_CPU_HAS_AVX2 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4392,7 +4686,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_GLIBC_STABLE - bool "x86-64-v3 glibc stable 2022.08-1" + bool "x86-64-v3 glibc stable 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4403,11 +4697,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_GLIBC_STABLE depends on BR2_X86_CPU_HAS_SSE42 depends on BR2_X86_CPU_HAS_AVX depends on BR2_X86_CPU_HAS_AVX2 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4424,7 +4720,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_MUSL_BLEEDING_EDGE - bool "x86-64-v3 musl bleeding-edge 2022.08-1" + bool "x86-64-v3 musl bleeding-edge 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4436,10 +4732,11 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_MUSL_BLEEDING_EDGE depends on BR2_X86_CPU_HAS_AVX depends on BR2_X86_CPU_HAS_AVX2 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4456,7 +4753,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_MUSL_STABLE - bool "x86-64-v3 musl stable 2022.08-1" + bool "x86-64-v3 musl stable 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4467,11 +4764,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_MUSL_STABLE depends on BR2_X86_CPU_HAS_SSE42 depends on BR2_X86_CPU_HAS_AVX depends on BR2_X86_CPU_HAS_AVX2 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4487,7 +4786,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_UCLIBC_BLEEDING_EDGE - bool "x86-64-v3 uclibc bleeding-edge 2022.08-1" + bool "x86-64-v3 uclibc bleeding-edge 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4498,12 +4797,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_UCLIBC_BLEEDING_EDGE depends on BR2_X86_CPU_HAS_SSE42 depends on BR2_X86_CPU_HAS_AVX depends on BR2_X86_CPU_HAS_AVX2 - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -4519,7 +4819,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_UCLIBC_STABLE - bool "x86-64-v3 uclibc stable 2022.08-1" + bool "x86-64-v3 uclibc stable 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4530,12 +4830,14 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_UCLIBC_STABLE depends on BR2_X86_CPU_HAS_SSE42 depends on BR2_X86_CPU_HAS_AVX depends on BR2_X86_CPU_HAS_AVX2 - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -4551,7 +4853,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_GLIBC_BLEEDING_EDGE - bool "x86-64-v4 glibc bleeding-edge 2022.08-1" + bool "x86-64-v4 glibc bleeding-edge 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4564,10 +4866,11 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_GLIBC_BLEEDING_EDGE depends on BR2_X86_CPU_HAS_AVX2 depends on BR2_X86_CPU_HAS_AVX512 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4584,7 +4887,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_GLIBC_STABLE - bool "x86-64-v4 glibc stable 2022.08-1" + bool "x86-64-v4 glibc stable 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4596,11 +4899,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_GLIBC_STABLE depends on BR2_X86_CPU_HAS_AVX depends on BR2_X86_CPU_HAS_AVX2 depends on BR2_X86_CPU_HAS_AVX512 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4617,7 +4922,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_MUSL_BLEEDING_EDGE - bool "x86-64-v4 musl bleeding-edge 2022.08-1" + bool "x86-64-v4 musl bleeding-edge 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4630,10 +4935,11 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_MUSL_BLEEDING_EDGE depends on BR2_X86_CPU_HAS_AVX2 depends on BR2_X86_CPU_HAS_AVX512 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4650,7 +4956,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_MUSL_STABLE - bool "x86-64-v4 musl stable 2022.08-1" + bool "x86-64-v4 musl stable 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4662,11 +4968,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_MUSL_STABLE depends on BR2_X86_CPU_HAS_AVX depends on BR2_X86_CPU_HAS_AVX2 depends on BR2_X86_CPU_HAS_AVX512 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4682,7 +4990,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_UCLIBC_BLEEDING_EDGE - bool "x86-64-v4 uclibc bleeding-edge 2022.08-1" + bool "x86-64-v4 uclibc bleeding-edge 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4694,12 +5002,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_UCLIBC_BLEEDING_EDGE depends on BR2_X86_CPU_HAS_AVX depends on BR2_X86_CPU_HAS_AVX2 depends on BR2_X86_CPU_HAS_AVX512 - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -4715,7 +5024,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_UCLIBC_STABLE - bool "x86-64-v4 uclibc stable 2022.08-1" + bool "x86-64-v4 uclibc stable 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4727,12 +5036,14 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_UCLIBC_STABLE depends on BR2_X86_CPU_HAS_AVX depends on BR2_X86_CPU_HAS_AVX2 depends on BR2_X86_CPU_HAS_AVX512 - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -4748,7 +5059,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_GLIBC_BLEEDING_EDGE - bool "x86-64-core-i7 glibc bleeding-edge 2022.08-1" + bool "x86-64-core-i7 glibc bleeding-edge 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4758,10 +5069,11 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_GLIBC_BLEEDING_EDGE depends on BR2_X86_CPU_HAS_SSE4 depends on BR2_X86_CPU_HAS_SSE42 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4778,7 +5090,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_GLIBC_STABLE - bool "x86-64-core-i7 glibc stable 2022.08-1" + bool "x86-64-core-i7 glibc stable 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4787,11 +5099,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_GLIBC_STABLE depends on BR2_X86_CPU_HAS_SSSE3 depends on BR2_X86_CPU_HAS_SSE4 depends on BR2_X86_CPU_HAS_SSE42 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4808,7 +5122,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_MUSL_BLEEDING_EDGE - bool "x86-64-core-i7 musl bleeding-edge 2022.08-1" + bool "x86-64-core-i7 musl bleeding-edge 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4818,10 +5132,11 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_MUSL_BLEEDING_EDGE depends on BR2_X86_CPU_HAS_SSE4 depends on BR2_X86_CPU_HAS_SSE42 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4838,7 +5153,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_MUSL_STABLE - bool "x86-64-core-i7 musl stable 2022.08-1" + bool "x86-64-core-i7 musl stable 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4847,11 +5162,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_MUSL_STABLE depends on BR2_X86_CPU_HAS_SSSE3 depends on BR2_X86_CPU_HAS_SSE4 depends on BR2_X86_CPU_HAS_SSE42 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4868,7 +5185,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_UCLIBC_BLEEDING_EDGE - bool "x86-64-core-i7 uclibc bleeding-edge 2022.08-1" + bool "x86-64-core-i7 uclibc bleeding-edge 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4877,12 +5194,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_UCLIBC_BLEEDING_EDGE depends on BR2_X86_CPU_HAS_SSSE3 depends on BR2_X86_CPU_HAS_SSE4 depends on BR2_X86_CPU_HAS_SSE42 - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -4898,7 +5216,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_UCLIBC_STABLE - bool "x86-64-core-i7 uclibc stable 2022.08-1" + bool "x86-64-core-i7 uclibc stable 2023.08-1" depends on BR2_x86_64 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4907,12 +5225,14 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_UCLIBC_STABLE depends on BR2_X86_CPU_HAS_SSSE3 depends on BR2_X86_CPU_HAS_SSE4 depends on BR2_X86_CPU_HAS_SSE42 - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -4928,7 +5248,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_GLIBC_BLEEDING_EDGE - bool "x86-core2 glibc bleeding-edge 2022.08-1" + bool "x86-core2 glibc bleeding-edge 2023.08-1" depends on BR2_i386 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4936,10 +5256,11 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_GLIBC_BLEEDING_EDGE depends on BR2_X86_CPU_HAS_SSE3 depends on BR2_X86_CPU_HAS_SSSE3 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4956,18 +5277,20 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_GLIBC_STABLE - bool "x86-core2 glibc stable 2022.08-1" + bool "x86-core2 glibc stable 2023.08-1" depends on BR2_i386 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE depends on BR2_X86_CPU_HAS_SSE2 depends on BR2_X86_CPU_HAS_SSE3 depends on BR2_X86_CPU_HAS_SSSE3 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -4984,7 +5307,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_MUSL_BLEEDING_EDGE - bool "x86-core2 musl bleeding-edge 2022.08-1" + bool "x86-core2 musl bleeding-edge 2023.08-1" depends on BR2_i386 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE @@ -4992,10 +5315,11 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_MUSL_BLEEDING_EDGE depends on BR2_X86_CPU_HAS_SSE3 depends on BR2_X86_CPU_HAS_SSSE3 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -5011,18 +5335,20 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_MUSL_STABLE - bool "x86-core2 musl stable 2022.08-1" + bool "x86-core2 musl stable 2023.08-1" depends on BR2_i386 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE depends on BR2_X86_CPU_HAS_SSE2 depends on BR2_X86_CPU_HAS_SSE3 depends on BR2_X86_CPU_HAS_SSSE3 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -5037,19 +5363,20 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_UCLIBC_BLEEDING_EDGE - bool "x86-core2 uclibc bleeding-edge 2022.08-1" + bool "x86-core2 uclibc bleeding-edge 2023.08-1" depends on BR2_i386 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE depends on BR2_X86_CPU_HAS_SSE2 depends on BR2_X86_CPU_HAS_SSE3 depends on BR2_X86_CPU_HAS_SSSE3 - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -5065,19 +5392,21 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_UCLIBC_STABLE - bool "x86-core2 uclibc stable 2022.08-1" + bool "x86-core2 uclibc stable 2023.08-1" depends on BR2_i386 depends on BR2_X86_CPU_HAS_MMX depends on BR2_X86_CPU_HAS_SSE depends on BR2_X86_CPU_HAS_SSE2 depends on BR2_X86_CPU_HAS_SSE3 depends on BR2_X86_CPU_HAS_SSSE3 - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -5093,7 +5422,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_GLIBC_BLEEDING_EDGE - bool "x86-i686 glibc bleeding-edge 2022.08-1" + bool "x86-i686 glibc bleeding-edge 2023.08-1" depends on BR2_i386 depends on !BR2_x86_i486 depends on !BR2_x86_i586 @@ -5104,10 +5433,11 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_GLIBC_BLEEDING_EDGE depends on !BR2_x86_winchip_c6 depends on !BR2_x86_winchip2 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -5124,7 +5454,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_GLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_GLIBC_STABLE - bool "x86-i686 glibc stable 2022.08-1" + bool "x86-i686 glibc stable 2023.08-1" depends on BR2_i386 depends on !BR2_x86_i486 depends on !BR2_x86_i586 @@ -5134,11 +5464,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_GLIBC_STABLE depends on !BR2_x86_c3 depends on !BR2_x86_winchip_c6 depends on !BR2_x86_winchip2 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG @@ -5155,7 +5487,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_GLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_MUSL_BLEEDING_EDGE - bool "x86-i686 musl bleeding-edge 2022.08-1" + bool "x86-i686 musl bleeding-edge 2023.08-1" depends on BR2_i386 depends on !BR2_x86_i486 depends on !BR2_x86_i586 @@ -5166,10 +5498,11 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_MUSL_BLEEDING_EDGE depends on !BR2_x86_winchip_c6 depends on !BR2_x86_winchip2 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -5185,7 +5518,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_MUSL_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_MUSL_STABLE - bool "x86-i686 musl stable 2022.08-1" + bool "x86-i686 musl stable 2023.08-1" depends on BR2_i386 depends on !BR2_x86_i486 depends on !BR2_x86_i586 @@ -5195,11 +5528,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_MUSL_STABLE depends on !BR2_x86_c3 depends on !BR2_x86_winchip_c6 depends on !BR2_x86_winchip2 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 depends on BR2_USE_MMU - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -5214,7 +5549,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_MUSL_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_UCLIBC_BLEEDING_EDGE - bool "x86-i686 uclibc bleeding-edge 2022.08-1" + bool "x86-i686 uclibc bleeding-edge 2023.08-1" depends on BR2_i386 depends on !BR2_x86_i486 depends on !BR2_x86_i586 @@ -5224,12 +5559,13 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_UCLIBC_BLEEDING_EDGE depends on !BR2_x86_c3 depends on !BR2_x86_winchip_c6 depends on !BR2_x86_winchip2 - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -5245,7 +5581,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_UCLIBC_STABLE - bool "x86-i686 uclibc stable 2022.08-1" + bool "x86-i686 uclibc stable 2023.08-1" depends on BR2_i386 depends on !BR2_x86_i486 depends on !BR2_x86_i586 @@ -5255,12 +5591,14 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_UCLIBC_STABLE depends on !BR2_x86_c3 depends on !BR2_x86_winchip_c6 depends on !BR2_x86_winchip2 - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -5276,16 +5614,17 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_UCLIBC_STABLE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_XTENSA_LX60_UCLIBC_BLEEDING_EDGE - bool "xtensa-lx60 uclibc bleeding-edge 2022.08-1" + bool "xtensa-lx60 uclibc bleeding-edge 2023.08-1" depends on BR2_xtensa depends on BR2_XTENSA_CUSTOM depends on BR2_XTENSA_LITTLE_ENDIAN - select BR2_TOOLCHAIN_GCC_AT_LEAST_12 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_4 + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_10 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS @@ -5301,16 +5640,18 @@ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_XTENSA_LX60_UCLIBC_BLEEDING_EDGE https://toolchains.bootlin.com/ config BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_XTENSA_LX60_UCLIBC_STABLE - bool "xtensa-lx60 uclibc stable 2022.08-1" + bool "xtensa-lx60 uclibc stable 2023.08-1" depends on BR2_xtensa depends on BR2_XTENSA_CUSTOM depends on BR2_XTENSA_LITTLE_ENDIAN - select BR2_TOOLCHAIN_GCC_AT_LEAST_11 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9 + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 + select BR2_TOOLCHAIN_GCC_AT_LEAST_12 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_14 select BR2_USE_WCHAR select BR2_ENABLE_LOCALE select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_FORTRAN + select BR2_TOOLCHAIN_HAS_OPENMP select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS diff --git a/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.hash b/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.hash index 9565ab1c1ee4..29bbdf56c2bb 100644 --- a/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.hash +++ b/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.hash @@ -1,416 +1,420 @@ # This file was auto-generated by support/scripts/gen-bootlin-toolchains # Do not edit -# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--glibc--bleeding-edge-2022.08-1.sha256 -sha256 d11a94113dc92fe1c141096dbeb1c3fe2adb0552b495bb9e3e41fad96b4b429a aarch64--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--glibc--stable-2022.08-1.sha256 -sha256 844df3c99508030ee9cb1152cb182500bb9816ff01968f2e18591d51d766c9e7 aarch64--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--musl--bleeding-edge-2022.08-1.sha256 -sha256 20d9b6cca203d18355a57cc8014ebf701e548922149aeec0d6109399bcc37b42 aarch64--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--musl--stable-2022.08-2.sha256 -sha256 06f5e1d63be86dfbe3c8f7508164464116d43a044b9bef20fe97277f34400bc2 aarch64--musl--stable-2022.08-2.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 24d3c9c294ef15669fa6182dff951f3850320e590b869587cc1650633f6c9b7f aarch64--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--uclibc--stable-2022.08-1.sha256 -sha256 b448a1752a58d6bb118c030028cd26f070cedccc0edc95ce8d684cced1bd1c0d aarch64--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs/aarch64be--glibc--bleeding-edge-2022.08-1.sha256 -sha256 456b684924d581749fc6c2889320170b1bb5e3227324922109432e2a1dd54d91 aarch64be--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs/aarch64be--glibc--stable-2022.08-1.sha256 -sha256 6cbc48f30cc0e8178cf083eeb48123c519f6e5e0a628a531a415d8907027b2d3 aarch64be--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs/aarch64be--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 923441910c0d132e94a0f0681c403feea78d84a47b593f7946640c2e687771b0 aarch64be--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs/aarch64be--uclibc--stable-2022.08-1.sha256 -sha256 b29fc8d852f531aaa094cda9ab08d0f28817f7404990f3b3a20b2ce180091566 aarch64be--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-750d/tarballs/arcle-750d--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 bea37db5d3f229318c44d59efa444f5c2012bc773dbf23f1914669110c931f9b arcle-750d--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-750d/tarballs/arcle-750d--uclibc--stable-2022.08-1.sha256 -sha256 b333bfbb6b664f7f38a36a5648bac3567cec3f3672c12eadb368b3fc773e5570 arcle-750d--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs/arcle-hs38--glibc--bleeding-edge-2022.08-1.sha256 -sha256 2c5fd77f67f2126412fcc7b163e492452f8bb0a2c7fa943cb7350387d00e2a46 arcle-hs38--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs/arcle-hs38--glibc--stable-2022.08-1.sha256 -sha256 af8295901ad4bd359dc3e5da442ad9e6d0474e96cd38f31479d8c714bf4315e2 arcle-hs38--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs/arcle-hs38--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 c6a00bae6d5e1bb343c339a942466f5f0de7d736671a6ba2d3f76890d9b0d486 arcle-hs38--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs/arcle-hs38--uclibc--stable-2022.08-1.sha256 -sha256 8fbe4086d5dafb1e0cd69f3762cb4d8c1273ee8b6bbbd8850fce54a5a8dad374 arcle-hs38--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--glibc--bleeding-edge-2022.08-1.sha256 -sha256 4c015e4fcee7eab2782f6be04acdb15c55986b98f6e1f4c0e23458461f76c84f armv5-eabi--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--glibc--stable-2022.08-1.sha256 -sha256 6230d9835894347f5c2b84e81d6d4825bb5315908a4ab50edd6270c8ba4477bf armv5-eabi--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--musl--bleeding-edge-2022.08-1.sha256 -sha256 fbc0db4138768433fc1704e2d7a82c7f527c82549c1562d09e12c154037a4f2c armv5-eabi--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--musl--stable-2022.08-1.sha256 -sha256 74c4d7969e8c92b3ce848e957fc0aae3238eb826e0707692adf4993de5323a72 armv5-eabi--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 5072d99dc06123d197fc171d3dcfc15d7c1767dbcba0f0b95ed3b8de7fb78d2d armv5-eabi--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--uclibc--stable-2022.08-1.sha256 -sha256 6a39098391ecaab84c090fb7aba02e595ea07d4916b687bc1e2a6731a4c60506 armv5-eabi--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--glibc--bleeding-edge-2022.08-1.sha256 -sha256 123e69824b789c752c980f36fb3923bb88baa23c05beff138c8fe119d3a2d1f3 armv6-eabihf--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--glibc--stable-2022.08-1.sha256 -sha256 474167bc7f97af44a73a1f96ed088d201a42645af2e99f7c9c57bf0d45966407 armv6-eabihf--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--musl--bleeding-edge-2022.08-1.sha256 -sha256 f971220c45074a93ec52298917a30a93f541599c545c389618984e2b603ee34b armv6-eabihf--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--musl--stable-2022.08-1.sha256 -sha256 91cc2a45cccd9eb89b2737fbd4461c73bb589882d1a377408d0e3cefc24ca59a armv6-eabihf--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 320df86444cced5d346f7bd5baa9b3cab04ffe5004feab16286ee7b25b14e2cf armv6-eabihf--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--uclibc--stable-2022.08-1.sha256 -sha256 80a3ca5009440e2a0924eea60f915c75f10067427fb0312591b0936a8146cec0 armv6-eabihf--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--glibc--bleeding-edge-2022.08-1.sha256 -sha256 7a3ceba0e5ed7ccb16da16e630a905c76c2ea58f66d161d6d45dce33321e70f6 armv7-eabihf--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--glibc--stable-2022.08-1.sha256 -sha256 64329b3e72350ceda65997368395a945ef83769013d82414dc5f2021c33f2d44 armv7-eabihf--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--musl--bleeding-edge-2022.08-1.sha256 -sha256 9f9837426dc798d8bd70458b6eb1f7c8f278a5bba5a212462bd8672d61177d83 armv7-eabihf--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--musl--stable-2022.08-1.sha256 -sha256 71f156ab45a9d9790d3b36ff970d9ce2e476e96b2ea94eb17aac632777e14eca armv7-eabihf--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 01182a4fcdfcffe53bb2ade152e0bca40b36c1817c78cfb155306ae5250e0e7b armv7-eabihf--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--uclibc--stable-2022.08-1.sha256 -sha256 9e4191ab996fdf5f4e8de7e4617c67cbf46127ca2754fca0ad45d60e393ace05 armv7-eabihf--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--glibc--bleeding-edge-2022.08-1.sha256 -sha256 d5dff34e074b56a6132361415e8416c0efec583b2a001005d51ff54f2eaed4d4 armebv7-eabihf--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--glibc--stable-2022.08-1.sha256 -sha256 ba6916b3045cdbaa251673acf1585254b929b2ee641282ce0c4d694211489fb4 armebv7-eabihf--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--musl--bleeding-edge-2022.08-1.sha256 -sha256 f33c5cdedb914e11f2c7c0095c476f410e0d1d231848b2efbac1cb53f0262625 armebv7-eabihf--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--musl--stable-2022.08-1.sha256 -sha256 7cec24dbf74fed46d461cc92aae0147069f13f1fa55ec76b317c2d3fa8398570 armebv7-eabihf--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 e469ec0b72464c8722cf51c2ed09fc435815b72a4e82011843ecba75d99c30f7 armebv7-eabihf--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--uclibc--stable-2022.08-1.sha256 -sha256 7f95f52d5a56f824269effc28cfbd9c8722de6d612899e888b5651c762a4d800 armebv7-eabihf--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7m/tarballs/armv7m--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 8eb72d7d9585b7305112d9c2ad3e6156b148f88acdf933381a414cb2c77ff797 armv7m--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7m/tarballs/armv7m--uclibc--stable-2022.08-1.sha256 -sha256 f6ae943fe56fbda046b27015e5b1bab6fc647b29f65d2d1720afc43ab36e876e armv7m--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-68xxx/tarballs/m68k-68xxx--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 cf4a2e56a0f325db586f80cef6bb252eff70d34981445e1bb77336fd03617df4 m68k-68xxx--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-68xxx/tarballs/m68k-68xxx--uclibc--stable-2022.08-1.sha256 -sha256 885983f2c4273934018ade58b33863b43bf69d05a95342526b4ef4da7bdd7ab0 m68k-68xxx--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-coldfire/tarballs/m68k-coldfire--uclibc--bleeding-edge-2021.11-1.sha256 -sha256 0e6743d8679cfe197223e011a2e1e064a213f6032d2f4b0d922b9124fe981d84 m68k-coldfire--uclibc--bleeding-edge-2021.11-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-coldfire/tarballs/m68k-coldfire--uclibc--stable-2021.11-1.sha256 -sha256 27ed1e76826a8824d72ef702d3a770544757a0d297c9992eb623012f1d9b387c m68k-coldfire--uclibc--stable-2021.11-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--glibc--bleeding-edge-2022.08-1.sha256 -sha256 e0af9e5a647b432c22693c6a7e7114ecd5475007b2b17d10075d61509246d81d microblazebe--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--glibc--stable-2022.08-1.sha256 -sha256 1b73e8ef541ab0a43314ec8354368adfb333657f3ae3e2ef4cb966721db2d068 microblazebe--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--musl--bleeding-edge-2022.08-1.sha256 -sha256 8a2570a5f490249a7a02afef62c00140e2eb3fa2cdf41e5897f484e41f5c55a1 microblazebe--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--musl--stable-2022.08-1.sha256 -sha256 90c26fedc85eba703e37e85036e284bb73475bb07d004ceedc27a4e64110ecad microblazebe--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 44b04fb51396e84b51f395bf1f08176b759cc8a85080980c45653ff0bd8b3602 microblazebe--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--uclibc--stable-2022.08-1.sha256 -sha256 23189d4f0ec2a1de15d7e30e7d12327fe7c620b395b6e402b6be42c3ad148656 microblazebe--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--glibc--bleeding-edge-2022.08-1.sha256 -sha256 2371b597fad7ec6092e1417c21343cd78f59c0b68c189d77a306bfcebd1dda31 microblazeel--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--glibc--stable-2022.08-1.sha256 -sha256 9507f13355a37ab0401c3225251d9760a0e40475243744b2e9bd5f11113ca8a0 microblazeel--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--musl--bleeding-edge-2022.08-1.sha256 -sha256 b67eef1613e960df351a4600c845d6ac24c60a3b2362f195c4b69bf21f7874e0 microblazeel--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--musl--stable-2022.08-1.sha256 -sha256 44b767649a3d8a9546dd27c1b53aea8a3f106e99d9ae650e1746551c78f7cf8c microblazeel--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 08e0a44f0beb4675745d25a1f98afa31a672caec5150da73a8b23038e931426e microblazeel--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--uclibc--stable-2022.08-1.sha256 -sha256 70883813924f9a1756e08258d8c41e06bb6d4e9571fdb020b2097dd4823ffb9f microblazeel--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--glibc--bleeding-edge-2022.08-1.sha256 -sha256 69f8608d78e295bc9c78a57f47d3f2aa1d74a8ee69307e1f112588dc08c29adc mips32--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--glibc--stable-2022.08-1.sha256 -sha256 27fdea806e3d02441ed034f500843b9137b34ec144cab9d2aeb991644f32af5b mips32--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--musl--bleeding-edge-2022.08-1.sha256 -sha256 190023be69fdedbcc758184cbd02e0e64df99c5d1d2f9330c239c97cdca4928e mips32--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--musl--stable-2022.08-1.sha256 -sha256 5e971b1420f29c5c694a93591f7eda5048d7dc792bff6d2117b6f2866970fd5a mips32--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 c937259732031ca4c640257774e80b0d6b42cc3e90e6677d6b3a014b0e3fd155 mips32--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--uclibc--stable-2022.08-1.sha256 -sha256 e670cf475c47dabac6e8fb4ffc0df5bb9c4ffeb55aeff55099ffd0b969e919ce mips32--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--glibc--bleeding-edge-2022.08-1.sha256 -sha256 0984a478a526e943e22fbe979bd083acf34bcd99e1366c8aca11d4ed43af8b66 mips32el--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--glibc--stable-2022.08-1.sha256 -sha256 8e5d9b8ba0b4f7add2001143ffd92718c037c27aa2cef64d79aa577e6b0bf2e1 mips32el--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--musl--bleeding-edge-2022.08-1.sha256 -sha256 89b6b64b9839c506e38e5c57d01de0a15018a6d82c41cc3b001708725032ecba mips32el--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--musl--stable-2022.08-1.sha256 -sha256 ca6ddc1ec4b053116f854767c04c49ebd3442e15ad6529eaeafa4fd0272021ff mips32el--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 dd0d1144113a79aa32457d008302e11e354d949a63718f0984a5dbe185099275 mips32el--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--uclibc--stable-2022.08-1.sha256 -sha256 f20f373afdec0e36afefd0b1eec7dfb9609e110ef19feb40df7e37196a23ccbf mips32el--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--glibc--bleeding-edge-2022.08-1.sha256 -sha256 dc6cee7db89c2263c8de0a8c902dabfed02186ccb9b6f643bf2b3fcaa6f694d3 mips32r5el--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--glibc--stable-2022.08-1.sha256 -sha256 d7e14faebf10897799426c8579b9e01c3479a290bb6b30ef37a2b4e1fbe4e440 mips32r5el--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--musl--bleeding-edge-2022.08-1.sha256 -sha256 d6aa828f18fddb4a4bdb78720ac1ecca76f0a0941d2fc3854a75a10ffe5069f3 mips32r5el--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--musl--stable-2022.08-1.sha256 -sha256 c29003698f82de6a6c5a3b4b4029e1a6f563d4417296941d84882f9e3cf4c573 mips32r5el--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 38fbc1b77e010723ef939ee52e6fc42adc0042139fe61f018c4b67767966e36f mips32r5el--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--uclibc--stable-2022.08-1.sha256 -sha256 f04408f2903b0488392cc097062d0295d6d2d02000f09edfe63a33237a09695c mips32r5el--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--glibc--bleeding-edge-2022.08-1.sha256 -sha256 be3eb28eff19cfe7471e92716cfce112eddb13a27322f7abd0987b3864b33776 mips32r6el--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--glibc--stable-2022.08-1.sha256 -sha256 4c89db5c2548d1fda32c61f86399d5c53749becfb260e22776866b3b0343deed mips32r6el--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--musl--bleeding-edge-2022.08-1.sha256 -sha256 4f3312d85183c8ac83e793ec4f8788053215381edca1904b1286bc0eca0dab36 mips32r6el--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--musl--stable-2022.08-1.sha256 -sha256 46b7d074f395cf1264109b78053c944b54c580812999b017fee60ecf196efda6 mips32r6el--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 5adc9fffcca0e6ea08edccfc72ff5330ffd7949c0f236ff198f93afba29d308e mips32r6el--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--uclibc--stable-2022.08-1.sha256 -sha256 03d90d509f745f29ad04ebc9ef29e38b8d015c25c5bb0d5e0ddd214a1d28b26d mips32r6el--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--glibc--bleeding-edge-2022.08-1.sha256 -sha256 764aef21ef143613595595ed0ff81491636b2381b77ef082dbb4a2e2f17542a8 mips64-n32--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--glibc--stable-2022.08-1.sha256 -sha256 4bc1a70194be6d87502f403ab59d95bfeacbdc3903f8b45464734f7447301cd3 mips64-n32--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--musl--bleeding-edge-2022.08-1.sha256 -sha256 f50358647c98c6b4eb373e732187e3b405402487b5e55d2ef63481d4a4ed017b mips64-n32--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--musl--stable-2022.08-1.sha256 -sha256 fa77ef0623b92baf20405cee90d52c6d91e2daddfed0a89a28b781fd36a4279c mips64-n32--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 f03f7070063921143cc01d9591b10abfa185617c71008adc2c7e059202d42c43 mips64-n32--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--uclibc--stable-2022.08-1.sha256 -sha256 892f2e5912c48901e2c40df7eac1109d7fd02c6b2aa9b6c13d8659dae50e781f mips64-n32--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--glibc--bleeding-edge-2022.08-1.sha256 -sha256 5c9e79402471f35401ac8737fdee39156f1db1e72f5c9c4c2b4fea988fbc0c72 mips64el-n32--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--glibc--stable-2022.08-1.sha256 -sha256 59e2fe9b268fdbd8b4bcba14574c1293171675249a0e6913e1525adee66a7b36 mips64el-n32--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--musl--bleeding-edge-2022.08-1.sha256 -sha256 c6c76749c40d41a020bf0943bb5f3d67ad0a9a9994a4883c73c7302944f87814 mips64el-n32--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--musl--stable-2022.08-1.sha256 -sha256 6e0cd1b77c9333807fa575aff24a7274817840442f9cd32c653a70a07d3b5b55 mips64el-n32--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 b9c573bfbda5ba60bb80652879664cb0d515b179c9d06ca1321f506d26f7a7af mips64el-n32--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--uclibc--stable-2022.08-1.sha256 -sha256 850817e5d1f99c11dae52abdd35518b855382587ffd4345c44131d26b04d6dcd mips64el-n32--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--glibc--bleeding-edge-2022.08-1.sha256 -sha256 a665beeacd598da7de8f4ae44b938fb374d4a301daeae99de14e67d3fd5696c0 mips64r6el-n32--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--glibc--stable-2022.08-1.sha256 -sha256 8a0f0a4fc4e1a09f20ec45005dcf6f074be416fa26838eb19831a47f00da6391 mips64r6el-n32--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--musl--bleeding-edge-2022.08-1.sha256 -sha256 ed9b42fb60074f31664626796b1a47f9ec4b46a25dee78904dbda93613b50bae mips64r6el-n32--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--musl--stable-2022.08-1.sha256 -sha256 03e4d97084f8f5cc7bb1452a862e1e3856b2a63b903779be0cda0577195603c0 mips64r6el-n32--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 e5aeb7b0bd9bbc5c283eeb28545f35f3fcec43e72ed9c7d0e8fa9fd112ec20eb mips64r6el-n32--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--uclibc--stable-2022.08-1.sha256 -sha256 7d523cea26e84487860de83556c10d790876c98f27d9e7987c1b1ecdcc4a43e7 mips64r6el-n32--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/nios2/tarballs/nios2--glibc--bleeding-edge-2022.08-1.sha256 -sha256 bbb95de0b45d06429b9212682df0392f1c8255aaae9febeef586ed556c0cb537 nios2--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/nios2/tarballs/nios2--glibc--stable-2022.08-1.sha256 -sha256 bcc84bf3a37c1d19e4de21d0eee6848d9917b5cc6cba7e734ce2fffa4aefc2bd nios2--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs/openrisc--glibc--bleeding-edge-2022.08-1.sha256 -sha256 69461f231e4d994a6b0fa6dc2e71610037f277d7bccb7b43acef43a3245bff7f openrisc--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs/openrisc--glibc--stable-2022.08-1.sha256 -sha256 e8122c2b52ed2ebf7b65384f9fe0782b95cb541702341ea73046165acc80cf4b openrisc--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs/openrisc--musl--bleeding-edge-2022.08-1.sha256 -sha256 562582da8b5a386624a7c18cbe0511f8f4bed206f2de7009e66b75214f56dd32 openrisc--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs/openrisc--musl--stable-2022.08-1.sha256 -sha256 cf2b57067d9621f0eb74622412e8ca3eaa85e98a2044e5974cfc573eeb6cc8f0 openrisc--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs/openrisc--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 b9125cb9d238100a4ab88795f55d5e92e5cd43e302d7f306dbad0e1900976892 openrisc--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs/openrisc--uclibc--stable-2022.08-1.sha256 -sha256 cdb6df4a341d8d30b005f8175fb79fdbb3fff08b363d83d2bf39bf216f22410f openrisc--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--glibc--bleeding-edge-2022.08-1.sha256 -sha256 d21b08f39f6f6b038fb37e3c71130c8db86c76a060b4b9980efd083bcb9c2b21 powerpc-440fp--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--glibc--stable-2022.08-1.sha256 -sha256 5d891f8fae87fcd0736e3250864bec3199a03bbce66c21a3b145e34de80c4c7a powerpc-440fp--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--musl--bleeding-edge-2022.08-1.sha256 -sha256 322acf83e10c951ac8fa1b7826d4d0ae041c1a9ad2c1df45ea9cadf5cbb76922 powerpc-440fp--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--musl--stable-2022.08-1.sha256 -sha256 60298c1c675467ccfef3d7021c7d16beff59c4bc10ff86b07b07ed9bc9342903 powerpc-440fp--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 dd3a795f3079d8f559bd81c5ea35b20355c0b2188a5d75c493f7a75da83fde6d powerpc-440fp--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--uclibc--stable-2022.08-1.sha256 -sha256 61be67b9dc19e764791190d0cae4b23a620ccf9b1715e3e4700983a15ebdca49 powerpc-440fp--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--glibc--bleeding-edge-2022.08-1.sha256 -sha256 2b4feb8fe946c4571639590ad7972fccd860b153aa192826861f6a40ba46531f powerpc-e300c3--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--glibc--stable-2022.08-1.sha256 -sha256 f4fcbefcf0748198b0fed7b27a7f45023067b8550d1b29857e3de8b3e394d44e powerpc-e300c3--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--musl--bleeding-edge-2022.08-1.sha256 -sha256 6e8e152d4bc58891c9b93b98e2d4a15ab26f9ceee00725092c0f9c2aff4ed503 powerpc-e300c3--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--musl--stable-2022.08-1.sha256 -sha256 0c2418120d9b32faddb59570e18d700c5d17396e6287a368263b59eea1895f08 powerpc-e300c3--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 07a8e609ee1ab8b5aa4c8a2fa07a6c7a2ba47f387ef180e33f8b3972a976a138 powerpc-e300c3--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--uclibc--stable-2022.08-1.sha256 -sha256 a755ab1c79099e089aa238ff5dc012fea756076fb60f39fbf53d151985825eb1 powerpc-e300c3--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--glibc--bleeding-edge-2022.08-1.sha256 -sha256 e932a8f76e00140b246ea3a925f6eafc4921cb974b527336ec737be9f1b7ff31 powerpc-e500mc--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--glibc--stable-2022.08-1.sha256 -sha256 fce8332a339732350350d06340003d450a7ba315cf8c03655be5377b953a843e powerpc-e500mc--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--musl--bleeding-edge-2022.08-1.sha256 -sha256 33600548051fae6e44fbf34fcf2116ab0c8dc8db79e51d2ed8ffe23baac04447 powerpc-e500mc--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--musl--stable-2022.08-1.sha256 -sha256 1c2fea3db1c5fb058b56739b2e716f8ce8e1e4a605e5a46c45abfcb1a36103ea powerpc-e500mc--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 6d622a86574d29b1e84aadad1a1a58737c9b0068fcb8093739684ceea949b089 powerpc-e500mc--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--uclibc--stable-2022.08-1.sha256 -sha256 cd3c1a34d7825b268cf1a2aaa906aabcb6ea9a1cb3764efe5efad7d6d56567a4 powerpc-e500mc--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e5500/tarballs/powerpc64-e5500--glibc--bleeding-edge-2022.08-1.sha256 -sha256 d05d7d247d53b552fa3656384a4c4252a09aa3b58004854f315f2e576c833fe9 powerpc64-e5500--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e5500/tarballs/powerpc64-e5500--glibc--stable-2022.08-1.sha256 -sha256 d754ce34ea8d028abed71672c92530a4d1839e4108323f2ff7d6e71d60e4f23a powerpc64-e5500--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs/powerpc64-e6500--glibc--bleeding-edge-2022.08-1.sha256 -sha256 f601c50d1d1eb6fc9d8162270c5fc631f86cc622d7d732100d2764a31a3a2c41 powerpc64-e6500--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs/powerpc64-e6500--glibc--stable-2022.08-1.sha256 -sha256 3327d4b9c27a51efa6f5128d2f582c8685df1a5a095a7fd316ab78573d9d13ec powerpc64-e6500--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs/powerpc64-e6500--musl--bleeding-edge-2022.08-1.sha256 -sha256 ee6f75dfde53782763a9d39f8293f93b44e2e1685db967530c3b6011771337e3 powerpc64-e6500--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs/powerpc64-e6500--musl--stable-2022.08-1.sha256 -sha256 66e358b0a46593f32aab0aa942f327787f3d99a55c3ff063001cabcc04deb85c powerpc64-e6500--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs/powerpc64-power8--glibc--bleeding-edge-2022.08-1.sha256 -sha256 0cf79c59189f1c9e5b058986b5535b845c53d787a9879923b20ccd4b6561cc3c powerpc64-power8--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs/powerpc64-power8--glibc--stable-2022.08-1.sha256 -sha256 ece83b6b7ad026eb769d555264dc7565cb7c04f9742355a171882a1817e98b73 powerpc64-power8--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs/powerpc64-power8--musl--bleeding-edge-2022.08-1.sha256 -sha256 3eade3adc05e3b09f7b65d31e724d37ceac7c81d78afecf3394a7ad0c84972b5 powerpc64-power8--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs/powerpc64-power8--musl--stable-2022.08-1.sha256 -sha256 5196955f9f4b46d12d8e0211ae64902a73bc491cfced31e2d85865bda5ed3443 powerpc64-power8--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs/powerpc64le-power8--glibc--bleeding-edge-2022.08-1.sha256 -sha256 9882709003776bf8da785a30bbd1b75b64d9752ef70bface22ff6434be136682 powerpc64le-power8--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs/powerpc64le-power8--glibc--stable-2022.08-1.sha256 -sha256 37e404425c3d8176b3a19b5a2ae8b57460871f9aec4e6491ded638f5115f5081 powerpc64le-power8--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs/powerpc64le-power8--musl--bleeding-edge-2022.08-1.sha256 -sha256 9eb4ca911853d259228229490af9ae6eaf30d79b8d41a29f807cc27979cd9104 powerpc64le-power8--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs/powerpc64le-power8--musl--stable-2022.08-1.sha256 -sha256 c1bce8d56c1b667a382eccc4a061d35add21a68d7479e9c62f8c35271d8c5f32 powerpc64le-power8--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv32-ilp32d/tarballs/riscv32-ilp32d--glibc--bleeding-edge-2022.08-1.sha256 -sha256 47a4b8365d5d772de4b4b1100a221421c5a3cb8ff09d366d4578df2c0cdf23bb riscv32-ilp32d--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs/riscv64-lp64d--glibc--bleeding-edge-2022.08-1.sha256 -sha256 a5ceafc2d1dbe2598ed9c8018f8f7108b7d5cb4847303842e924976a4cfe14be riscv64-lp64d--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs/riscv64-lp64d--glibc--stable-2022.08-1.sha256 -sha256 556c860783c69f21d77be8b2856e7dd24f66b115775bb5ef6c8de5f4a6b1b861 riscv64-lp64d--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs/riscv64-lp64d--musl--bleeding-edge-2022.08-1.sha256 -sha256 3e8d0ac53b9188d46630fe8ade2794e05ae9a2636a45c60b89b62ac1a3f6e6c5 riscv64-lp64d--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs/riscv64-lp64d--musl--stable-2022.08-1.sha256 -sha256 fd2d6b2ac2b2e02caabd9fa43b506dcc87eb1afbe475999180891a5e0208c436 riscv64-lp64d--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs/riscv64-lp64d--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 8469a9c7ec50a401fc6466e81dc0d7032648c4e7f1b602afcf5ddab2ffabaac4 riscv64-lp64d--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs/riscv64-lp64d--uclibc--stable-2022.08-1.sha256 -sha256 002e98d438519f62a2b2de42acac226051b1887a98523f02d54322275c3ffd25 riscv64-lp64d--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/s390x-z13/tarballs/s390x-z13--glibc--bleeding-edge-2022.08-1.sha256 -sha256 295e281935dd22433d1a819a7a010356fdf6e19cea27631fdc884d3251c344a0 s390x-z13--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/s390x-z13/tarballs/s390x-z13--glibc--stable-2022.08-1.sha256 -sha256 965c7ab533e7e4812fc515badc595f0e4f79ab7986eef992889f6a1a225d4c19 s390x-z13--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--glibc--bleeding-edge-2022.08-1.sha256 -sha256 413703c54af9fdceb955a311f5db4f3fa34b4170dc5f12b99da3c464915bcbfa sh-sh4--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--glibc--stable-2022.08-1.sha256 -sha256 5084c4545a60bdec153bcef7dd52a824c3937c85686b223a6e92667d71850963 sh-sh4--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--musl--bleeding-edge-2022.08-1.sha256 -sha256 243079028e9155c7dfcb1c67ae9bd42bfcb9d5a23f9e9078c9ca53613c5d607b sh-sh4--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--musl--stable-2022.08-1.sha256 -sha256 46ad264d4074ca4ac0ab4acd244145e4820aef315a14bdd9a6e54e888c04b630 sh-sh4--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 7c7a009e0335396839ab1be8b7817084414792ef04aa25df4c178c9d2ec0aa13 sh-sh4--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--uclibc--stable-2022.08-1.sha256 -sha256 1b1c22ebf92664df828151eaec3c7fe9a6bb1c48fa177c85a62418ec627b2756 sh-sh4--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs/sh-sh4aeb--glibc--bleeding-edge-2022.08-1.sha256 -sha256 5765af1f25bcc34e31561b7cf955dabae5a3fb1650148a60915cbb4ccd87e49a sh-sh4aeb--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs/sh-sh4aeb--glibc--stable-2022.08-1.sha256 -sha256 47f9694a263af6e943acf59d8da9af34b6f9a562d67883f4298b4cc4469fdcff sh-sh4aeb--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs/sh-sh4aeb--musl--bleeding-edge-2022.08-1.sha256 -sha256 fa519ec4e29701de84af63943c51c0f740620ce3577ae689d89c2a578ed425de sh-sh4aeb--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs/sh-sh4aeb--musl--stable-2022.08-1.sha256 -sha256 f3ca7d35bd5ce1b99dd1395b8f2a7c162b23a60eed6ae938cfa2fbd20d25a470 sh-sh4aeb--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/sparc64/tarballs/sparc64--glibc--bleeding-edge-2022.08-1.sha256 -sha256 bb08735ffbb2c0e60bd5b1fa1d65fe44f7781a4c57872ede0797a9a495ed575e sparc64--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/sparc64/tarballs/sparc64--glibc--stable-2022.08-1.sha256 -sha256 9c14934230a73f4ca99d4452dd0f24a033e3843fe2be28cb723f0d66635d4a4f sparc64--glibc--stable-2022.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--glibc--bleeding-edge-2023.08-1.sha256 +sha256 62094460b853970dcba91cae4314bfd1210bb2963be540f7b69be882f5f795ba aarch64--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--glibc--stable-2023.08-1.sha256 +sha256 aed4223eadef27c1a84676333cbbdb75cbb5ee5a4a0cfc3ec5a491c6a6179de8 aarch64--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--musl--bleeding-edge-2023.08-1.sha256 +sha256 6e3f69eb9b85d8672805220c7af10bc7a761eb67504931b092d840dc4e1afa90 aarch64--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--musl--stable-2023.08-1.sha256 +sha256 25767ae9ca70a76e9a71a13c6bc145532066a36d118d8f0ef14bd474784095ce aarch64--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 7ca79cbebf0143d89734765b259b5b261a22ecd4cde37f8dda0a02a152f49296 aarch64--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs/aarch64--uclibc--stable-2023.08-1.sha256 +sha256 4c05602d75bc97a9acdcba3e94ed14d6452f176970a1e446bdb5a672fe2b77fb aarch64--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs/aarch64be--glibc--bleeding-edge-2023.08-1.sha256 +sha256 a1df95eb94350b77c32d84dc9a1730f541d29ce6679331ea6eebe803a28427c7 aarch64be--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs/aarch64be--glibc--stable-2023.08-1.sha256 +sha256 f03d955da294083b62505d7c0d0093fb289ab51377b8be980b537f8a3da6f34e aarch64be--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs/aarch64be--musl--bleeding-edge-2023.08-1.sha256 +sha256 b2b30d563559664d0efc23eb00bc469c808bdfd400198967ba1255863301efc0 aarch64be--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs/aarch64be--musl--stable-2023.08-1.sha256 +sha256 d24322115bffa3bde073a39149527cb212a9d07b2bc8cfad57145c13ec60ece5 aarch64be--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs/aarch64be--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 8d3f1b453643a80331543688e08c2a979a83eef59f7a9db1ec9a4dab8fe868a5 aarch64be--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs/aarch64be--uclibc--stable-2023.08-1.sha256 +sha256 6f92269995e4e028a3b0d7982827fcff415b56fae34a61d845775332f981061d aarch64be--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-750d/tarballs/arcle-750d--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 7129cef2a9c3c511c6c7f025cfe526be9d30150707e1e400780c611369b5ed02 arcle-750d--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-750d/tarballs/arcle-750d--uclibc--stable-2023.08-1.sha256 +sha256 1e1ce3fb4eda609dc73df731a7192cf1fcaabade8ea65f9bce6d9e9be41633b9 arcle-750d--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs/arcle-hs38--glibc--bleeding-edge-2023.08-1.sha256 +sha256 69e9c144a86931eba4b56873e8973f018d4edc2151aa8fdbefb4f2948a1af8f9 arcle-hs38--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs/arcle-hs38--glibc--stable-2023.08-1.sha256 +sha256 71a078574d1ab044a04b1e79d10af46a6334ad43d82ff4b76b5547d70b9ef4b7 arcle-hs38--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs/arcle-hs38--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 ce56ea212cad7d23fd9544d60916808762c21a32b2492ca96e94b07d1762bbcd arcle-hs38--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs/arcle-hs38--uclibc--stable-2023.08-1.sha256 +sha256 b0835a1eda4c9a0b82fcfe053a7f879dbb2518fc9311229d015ac43354413479 arcle-hs38--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--glibc--bleeding-edge-2023.08-1.sha256 +sha256 79e017a9f7455a679eeb734c029cf17b32c62c30e85e39d48154645f2bef7f11 armv5-eabi--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--glibc--stable-2023.08-1.sha256 +sha256 65eee9d2e60a2ad78a4bb852eaf1039f26ede6bb04292999b384b1cc0178ec58 armv5-eabi--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--musl--bleeding-edge-2023.08-1.sha256 +sha256 7ad1405bb5407f890d1958abaab0c9ae47ab30c4120aed98d3ed88e9915c749d armv5-eabi--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--musl--stable-2023.08-1.sha256 +sha256 15c5e09b21328e1a8bfa641fac208934b32bc2e4c1ebab9e9343ad59ed30e869 armv5-eabi--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 d7be53ed9bdf7c56c8cba39580d1528aad6fa4dd79d75a836adfe454b3cfd5ab armv5-eabi--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs/armv5-eabi--uclibc--stable-2023.08-1.sha256 +sha256 b8e4a8426819eb226d30facf93288855b7710165b5aecc2224b65936b64bc3ad armv5-eabi--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--glibc--bleeding-edge-2023.08-1.sha256 +sha256 7d72017f0e8da2f9804ffe913d1e7a9b1fe8629c107354cb3c84bc08acf58f0b armv6-eabihf--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--glibc--stable-2023.08-1.sha256 +sha256 fc2bc606081754dbfb8fbb955d66a9d07bce844777ba6501d2c31763a17cc86f armv6-eabihf--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--musl--bleeding-edge-2023.08-1.sha256 +sha256 23bb6e3ded0399604cb810d903f3d7bbdde13274575f8e91da094045044cd910 armv6-eabihf--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--musl--stable-2023.08-1.sha256 +sha256 7f8a93f39d7470e5587c05e74780fcdcb49165fcaf7436ff4e4fe301a0ff3f93 armv6-eabihf--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 f06216aa73f8d02a34e09a3db79d3d34fbc31ecde7883896d497dbc10c60a636 armv6-eabihf--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs/armv6-eabihf--uclibc--stable-2023.08-1.sha256 +sha256 f0f77ddb287d64a0ddcf07241dab9afeeda7cf02f0959e85f7048564c0b1bcff armv6-eabihf--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--glibc--bleeding-edge-2023.08-1.sha256 +sha256 fe0b14d6c92ab939d47dcff1f39552aa299d9bbdf0a4571428c56daf69246e70 armv7-eabihf--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--glibc--stable-2023.08-1.sha256 +sha256 8b87e1694e3554260d31583d19201a5d420c4c0a903396aea2d29bbce104c8ec armv7-eabihf--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--musl--bleeding-edge-2023.08-1.sha256 +sha256 6422c3fe6cb66694a0c3384e39ffe352b3e69cf4035e64180765a23973bb00d1 armv7-eabihf--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--musl--stable-2023.08-1.sha256 +sha256 4f06ed760d3b2e779f0d8aec73becd21edce9d04560d2fba53549ca8c12f51ba armv7-eabihf--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 4a5b34842986fb0c2e08c67ecb2c35ddf9576ae0b575ae40ab7d887d4ef24a42 armv7-eabihf--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs/armv7-eabihf--uclibc--stable-2023.08-1.sha256 +sha256 45b079fe0bb57ce5d8ae2d0e8d675b7abac7f5de58570a084df61a992224a961 armv7-eabihf--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--glibc--bleeding-edge-2023.08-1.sha256 +sha256 c70e70ae5ed56752ad55b5b989f385378d5a11e8f0e3e6ee88476db81c459ab0 armebv7-eabihf--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--glibc--stable-2023.08-1.sha256 +sha256 d762a7abeac58dad63f6beec5e867243259779124531c1d7507ea95b68e884d3 armebv7-eabihf--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--musl--bleeding-edge-2023.08-1.sha256 +sha256 57aaad8d2d8f6b28d95132f7dff3963264d441155e06d4605c11a32e62e255a0 armebv7-eabihf--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--musl--stable-2023.08-1.sha256 +sha256 c707a9ba4bedc4db3e23653038c17ee7ee55e1d8c8bb2cc14cf47d5c3dcc4b9d armebv7-eabihf--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 bf69352181139d7c206841e5a3d6d671b75db42c6311e5ec6825d574317c637f armebv7-eabihf--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs/armebv7-eabihf--uclibc--stable-2023.08-1.sha256 +sha256 8223fd5853298060e253b595615bedaa0c43a957d630133e99cd63c0d600e402 armebv7-eabihf--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7m/tarballs/armv7m--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 94583517119f1d02ca205787bda91252a7693a3c1895e34057fcb48b66115032 armv7m--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/armv7m/tarballs/armv7m--uclibc--stable-2023.08-1.sha256 +sha256 e903697238d4c75595bf9ca112e2b09c3a1457f0142d39c5bab523650a327994 armv7m--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-68xxx/tarballs/m68k-68xxx--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 61c7953c741113f30ff643fa846713c8b88bd2c4a91de26349e504d553e8ca9c m68k-68xxx--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-68xxx/tarballs/m68k-68xxx--uclibc--stable-2023.08-1.sha256 +sha256 e631e9fea5fad6db056e9028c17e41abca9f7bb6463950045756d040dfb34a6f m68k-68xxx--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-coldfire/tarballs/m68k-coldfire--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 59dc6c063a9e982042bbfde36b5cbe263b3130e6ee04df8b8503cfde0cbcc43d m68k-coldfire--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-coldfire/tarballs/m68k-coldfire--uclibc--stable-2023.08-1.sha256 +sha256 25d516ad069fd64f6d891606455cc9e5584b002a658e2dbbfbb1cdd2fa2cddd4 m68k-coldfire--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--glibc--bleeding-edge-2023.08-1.sha256 +sha256 52964e876701c8d8cceaf241720741b290b32cf3aeff04e5c0a9b2bb8867e00c microblazebe--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--glibc--stable-2023.08-1.sha256 +sha256 f83fe1e9788c43c502322d7b1dff57030718fd461b9df06d27ce69653b234489 microblazebe--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--musl--bleeding-edge-2023.08-1.sha256 +sha256 66455c641d0d7dd61c01a9791d9225e4a02d9f33571993bdf53b07f5ce85d112 microblazebe--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--musl--stable-2023.08-1.sha256 +sha256 0605fcdc0b8be08a1737b73f090782b16c5f905996a14a2a587c99d3bf6a76b2 microblazebe--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 384f1b9573e9e187407b2b2afc88ca5161de866ef792928b856972bfb6abc3b3 microblazebe--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs/microblazebe--uclibc--stable-2023.08-1.sha256 +sha256 8e432dd0fbc4c4ea0e64bd8bfa37c17cdcc4f6b1ccb6a78a68dc21bfc00590f1 microblazebe--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--glibc--bleeding-edge-2023.08-1.sha256 +sha256 5abe0a6cc448284bc0442b49e7266acf73cffe2c10e7c4472346c3a4ac810ce9 microblazeel--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--glibc--stable-2023.08-1.sha256 +sha256 72f0efd879d97cbdfb2b362d2f1f7f53cfaf5254ebb4928e503e74f65ab578de microblazeel--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--musl--bleeding-edge-2023.08-1.sha256 +sha256 923616f2c14a571cc9257f81b9373a49b86997c6cbe8ecf5cd816527d04dd321 microblazeel--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--musl--stable-2023.08-1.sha256 +sha256 69cef52cf75cb9c1b127a3c7a657aef98d0c419188b3cbb1a3a79b61a7327b30 microblazeel--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 f9f41a97c6a3278d6d9c62280f40c13684addf31a29cc81813fa899ccd2aacc4 microblazeel--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs/microblazeel--uclibc--stable-2023.08-1.sha256 +sha256 cccb9cd740adb524d144967d5bd2382a88b5f1c737c6dd38981c462dc86ea162 microblazeel--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--glibc--bleeding-edge-2023.08-1.sha256 +sha256 93a266be4d77df50112274830358160252c618217a28b5bdc1a2944e97e1bc9b mips32--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--glibc--stable-2023.08-1.sha256 +sha256 6b84446398d4c3241fdec0f8f4933b88df9b2c119845390a6d3afc76c092c750 mips32--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--musl--bleeding-edge-2023.08-1.sha256 +sha256 4dbb260e89f95c851ccf29a729f15725112b361d9ab93ba4f732548c76bc6c39 mips32--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--musl--stable-2023.08-1.sha256 +sha256 4b7004efce6d23b4c90e2ac1e8ba98d835ea61b1c36adddf688efe891c75fe9b mips32--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 b243c072465bee94cdac3af715eab513d07fc41fe067dc5d19cec0cb8acc53c8 mips32--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs/mips32--uclibc--stable-2023.08-1.sha256 +sha256 dd5b0a4ae492e5023029cef073e43621c83d6b4858cda4cdf148b0e2e9ad468b mips32--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--glibc--bleeding-edge-2023.08-1.sha256 +sha256 190300b5a7056f3b5cc5de1637fe8f52d74aad1b0335b2291c46341c6e4589e4 mips32el--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--glibc--stable-2023.08-1.sha256 +sha256 5594d9f0ab8c14b4eed181c7a383399fadeb56b84e4fa5f22460dfaf68ab819e mips32el--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--musl--bleeding-edge-2023.08-1.sha256 +sha256 d267cbc5ecb9e22bab2edd95450ae314f7d75d2eac34574f8df87d5778d8ae07 mips32el--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--musl--stable-2023.08-1.sha256 +sha256 818b57f58b2b03b2246a561c1ec427bab87158cbb99e1ccce5c814774cdc791b mips32el--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 5ba6bab76c827870f5da94cc125b77144e5e7abf2bbbea348ccebdb60084a857 mips32el--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs/mips32el--uclibc--stable-2023.08-1.sha256 +sha256 98ec0d45de93f531896f4273f206ff1fe10d87bd728d11945c5a9f8cfff3de16 mips32el--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--glibc--bleeding-edge-2023.08-1.sha256 +sha256 ddf0f8b760422ceebb1a797ae9e75001a77b8a67cb5ba8737e409d1a3491c9ae mips32r5el--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--glibc--stable-2023.08-1.sha256 +sha256 18127d0728f1200483ec6739357e4d19cc2df9de33f76bf70598b78b43ff2496 mips32r5el--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--musl--bleeding-edge-2023.08-1.sha256 +sha256 7a8e20d4dfb7e75f4d1c032ebb0ee36aab321797ed21a2cc325ea819fd569c3b mips32r5el--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--musl--stable-2023.08-1.sha256 +sha256 8b8e6b402ac3343d37e766907d4871512b1ffe3cd9079a3ca226eeba290d2a5d mips32r5el--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 e0d320e1bb1c4d7f0f6724368cbd4f79868123e1b8cfd06ee14c2a20d69484ff mips32r5el--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs/mips32r5el--uclibc--stable-2023.08-1.sha256 +sha256 883d72f17f040410b9ff05aaee6cf6ccda46ae2e99fe9ffbc03a72f0a4789096 mips32r5el--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--glibc--bleeding-edge-2023.08-1.sha256 +sha256 4924db22355c9f797dc6776b426ce72618a1803b225370519e7dfe44c2957094 mips32r6el--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--glibc--stable-2023.08-1.sha256 +sha256 2f4b44733eb26884a4d941dcd5f5ea88f7b17f8b1b68cf799e047a55ab7b7e65 mips32r6el--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--musl--bleeding-edge-2023.08-1.sha256 +sha256 1a3c850dd6619791ca32042e3b3f52f25e33c8b050a6f102efb2a3568a63a43f mips32r6el--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--musl--stable-2023.08-1.sha256 +sha256 ec544f499dc7f1713f09c2424844228183cf68ff77061bc6c65821855a7228cd mips32r6el--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 9e046c31cd9d59fb7126693644a722cd9141381ddeda69a7c8e648aa65037c41 mips32r6el--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs/mips32r6el--uclibc--stable-2023.08-1.sha256 +sha256 901d78b12dcab01006616ccc8797d593c53d361752b4cd04791495a3470dfe12 mips32r6el--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--glibc--bleeding-edge-2023.08-1.sha256 +sha256 94a2afea880a378a82c3f146671ad9b86f6e05bb13f97573d26c9214adb5b064 mips64-n32--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--glibc--stable-2023.08-1.sha256 +sha256 83f673bebab7df55324362f97a483490a27199faf336780866d2de84b9f76895 mips64-n32--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--musl--bleeding-edge-2023.08-1.sha256 +sha256 178b2702d652bffd8d8f7ca7e0a756ce044485b7e26f29db47d19c9a3b700869 mips64-n32--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--musl--stable-2023.08-1.sha256 +sha256 49fb59b0ce83ce0f60fda437c43f107519f538aadaf0c029f65c32f279852a6e mips64-n32--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 6d3825d31c0f91f0d319517ebbf67bb9c44d779224ebd8e90e88c9a7d75bc07b mips64-n32--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs/mips64-n32--uclibc--stable-2023.08-1.sha256 +sha256 b2d87b8d501570fc07e19d6fd78d41c7be891c64cb9565c827eaa4b16a4212ae mips64-n32--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--glibc--bleeding-edge-2023.08-1.sha256 +sha256 d7ed3131fc1eab9dde7a242652043756caa09848f7c63cb283f79f42e38ffdab mips64el-n32--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--glibc--stable-2023.08-1.sha256 +sha256 d23f56b610be40774f41af5b96cffdd8dd35b983a0e5ed42b2a1a88ddafce6c9 mips64el-n32--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--musl--bleeding-edge-2023.08-1.sha256 +sha256 f1d63dfa8615d6ffec4d66751e483623de0ccdf1fdb70d1981104457ba5cf4ff mips64el-n32--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--musl--stable-2023.08-1.sha256 +sha256 2a558c0665497bb7976d02a3fd5c1e7b8a61c753373cebbef799b1aae2e7d307 mips64el-n32--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 25599336b65c1d0ede5d02b128bac0f4d3b21ec5d21c260c702849e94317adfc mips64el-n32--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs/mips64el-n32--uclibc--stable-2023.08-1.sha256 +sha256 220d8dbbd81d71cb4d6345757ea78ab03a263bf664bc7a1732450da3555c18b1 mips64el-n32--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--glibc--bleeding-edge-2023.08-1.sha256 +sha256 09d36c965e88e413604820c53118f999ad0552422e15c27d34b0ef182c620c89 mips64r6el-n32--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--glibc--stable-2023.08-1.sha256 +sha256 ef65c7717cd1560c08097f669244515b8261e5f4df4cda1780c507f43b98ada7 mips64r6el-n32--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--musl--bleeding-edge-2023.08-1.sha256 +sha256 b6d673e2e742dda1e2865759737419781190df06f57db4d6a3945dd4be161bd9 mips64r6el-n32--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--musl--stable-2023.08-1.sha256 +sha256 cd879a9cba5ebb5ad1e5ea93dc0465661a38af8a5b968c06043ce259f612f903 mips64r6el-n32--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 46471513a3ed2fe2b5f18e27d6f314d50b2799e85714ee2610276c01caeb3580 mips64r6el-n32--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs/mips64r6el-n32--uclibc--stable-2023.08-1.sha256 +sha256 c6525bb93fcac16a354e039abd47ebdd33c379a364c812bab3b8dd69ab27dcb2 mips64r6el-n32--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/nios2/tarballs/nios2--glibc--bleeding-edge-2023.08-1.sha256 +sha256 b4278214069a381ac8979e0d957ca6a122b92e54bf3d443845ae421f96259b59 nios2--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/nios2/tarballs/nios2--glibc--stable-2023.08-1.sha256 +sha256 427c9c52209927883865b74d0c1310b47148013832069359da6d9fd23654b2be nios2--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs/openrisc--glibc--bleeding-edge-2023.08-1.sha256 +sha256 6d94154ffcce33d0f24fc7bf0a0ac3dcf794aecabc42d126e8fca772d55dcec3 openrisc--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs/openrisc--glibc--stable-2023.08-1.sha256 +sha256 bae2a29dcff4606c40766da9cae88be0846b5bdc870e83e282ffde1f93be1c1b openrisc--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs/openrisc--musl--bleeding-edge-2023.08-1.sha256 +sha256 c663809a5f5ec6c23eefd85f0eb0b341d3ca5b782adb243c16ab3cd6ef3db93d openrisc--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs/openrisc--musl--stable-2023.08-1.sha256 +sha256 88fd3eb838a2527980aba33403c7654b156665aafe825a4f86f1af2007277e15 openrisc--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs/openrisc--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 6fd48b14f900ef94cb7763eef9e2a4cd5f55a02591050be9bf7286fb53f7a073 openrisc--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs/openrisc--uclibc--stable-2023.08-1.sha256 +sha256 6857723b0fc53465d2d2a7a32efc694443dd0a1ba4d1abebc5b9d2f7a9389b76 openrisc--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--glibc--bleeding-edge-2023.08-1.sha256 +sha256 860e79fd5e3e65094e26af8c08273b5cb25b416ed33d95f0d30ce01751c61bc6 powerpc-440fp--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--glibc--stable-2023.08-1.sha256 +sha256 e8b0ecf725c48794f8fa33b05725cbb8f988b364c66a371c414c6cf0118669f4 powerpc-440fp--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--musl--bleeding-edge-2023.08-1.sha256 +sha256 bb55c1a0b4cce5ea40b6fbbd81259bb295c31e71e150dfd4df8f27add4fd75fb powerpc-440fp--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--musl--stable-2023.08-1.sha256 +sha256 c95aafaf7257a9ba125d2ff7a126c5f31123db45c200a63549e13b17526e091f powerpc-440fp--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 ca1f56e00b2b4163fb82a011e1ca9d7d2463332aa483321b850395cb8f8686fd powerpc-440fp--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs/powerpc-440fp--uclibc--stable-2023.08-1.sha256 +sha256 94f5cdc6aed04d46d8bec86e7109b8195c0f8d373478724f9af2bedeac57543d powerpc-440fp--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--glibc--bleeding-edge-2023.08-1.sha256 +sha256 6fa51b33d4ee181f82179e56c410e752dddc809dd2dac748686d1a414ae4dfb1 powerpc-e300c3--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--glibc--stable-2023.08-1.sha256 +sha256 c997956cb53d65491557aeca2fcff951348b12d07764057d4942d58accad4925 powerpc-e300c3--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--musl--bleeding-edge-2023.08-1.sha256 +sha256 f158d1d49b1578ce36261a26d82e221937e2c11575bb25133e69fd3dfc43a8d9 powerpc-e300c3--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--musl--stable-2023.08-1.sha256 +sha256 49bf91af733b5efc107f8d1764959feeb5de0fa10b3f80e60cbb167aaef3d1ab powerpc-e300c3--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 b4b0d05b9b81be8ab0b0bfc2aae08aeb7adf1c9dbf9f78a7311c5caf30f03869 powerpc-e300c3--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs/powerpc-e300c3--uclibc--stable-2023.08-1.sha256 +sha256 75acfa5021ba296b069aa787cf3cf84c950eaff87e201494dea530bf4d503556 powerpc-e300c3--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--glibc--bleeding-edge-2023.08-1.sha256 +sha256 ca322217020237d0c728119654337857e2643ae848f808eb575a2223f191f89b powerpc-e500mc--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--glibc--stable-2023.08-1.sha256 +sha256 7c767173e9d96c11927be890fd34052873406c5c707ac031aaf5c6f956c2fee9 powerpc-e500mc--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--musl--bleeding-edge-2023.08-1.sha256 +sha256 a47518b65c9d866b7d61b1382149b7c63da1a5166e3291096b34cb6407f5382d powerpc-e500mc--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--musl--stable-2023.08-1.sha256 +sha256 b65e2912928838d6bee32a724bf25a53810ee2dfcff2954702057d2f9fce3f72 powerpc-e500mc--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 4281a38e79f2a32dcb9b51f379c78ca98cd982d4272449a9c7a4890d8402f7c2 powerpc-e500mc--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs/powerpc-e500mc--uclibc--stable-2023.08-1.sha256 +sha256 4a37d3dd4eee82fcc5d2d0fcf71831d8efca601abfee236c49a5a7bd064d27f4 powerpc-e500mc--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e5500/tarballs/powerpc64-e5500--glibc--bleeding-edge-2023.08-1.sha256 +sha256 2e6b3d79ddd8de8a4e99b39dbf9990deacf1c2b6114d1686f49cbcfd949f229c powerpc64-e5500--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e5500/tarballs/powerpc64-e5500--glibc--stable-2023.08-1.sha256 +sha256 f3094cb9cc065c36ae6407c80002dc22b996c895ce74261902e5a3e5bca12579 powerpc64-e5500--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs/powerpc64-e6500--glibc--bleeding-edge-2023.08-1.sha256 +sha256 7761a61fc413683f1190275ef6d7438351da133bbfaaa83af336432ec2b2a0a4 powerpc64-e6500--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs/powerpc64-e6500--glibc--stable-2023.08-1.sha256 +sha256 e95b5afc2cbb7b510009e552477e20c806262615a85e03d0e89330574eab7330 powerpc64-e6500--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs/powerpc64-e6500--musl--bleeding-edge-2023.08-1.sha256 +sha256 18572cbbfd25426666594c1f4758beb57983e457487bcf0036b57e31b92d41bd powerpc64-e6500--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs/powerpc64-e6500--musl--stable-2023.08-1.sha256 +sha256 596b2369457e6155420d97c3d67646eb94e5cace277aa943010cd1bc29191322 powerpc64-e6500--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs/powerpc64-power8--glibc--bleeding-edge-2023.08-1.sha256 +sha256 7af62a63e0e9ebec8d020f017e8053c44e9c3bbdb418de5b1a7a6bf6b6ebb958 powerpc64-power8--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs/powerpc64-power8--glibc--stable-2023.08-1.sha256 +sha256 ee974fe55cd465145efb0ffe01e64f9488bf4d4c3d6abe17c74b4822e8158415 powerpc64-power8--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs/powerpc64-power8--musl--bleeding-edge-2023.08-1.sha256 +sha256 680c70daafe2f19a450d5a64694f758407abc71cfeaa385c7bb8af428ef0d11a powerpc64-power8--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs/powerpc64-power8--musl--stable-2023.08-1.sha256 +sha256 c1116ad8c2c34ab964fee09e2cb95537701ec65f11b40ea8da08ba9140928af5 powerpc64-power8--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs/powerpc64le-power8--glibc--bleeding-edge-2023.08-1.sha256 +sha256 6b0f83a79375774eeff1c67de6b22610833be9f4ef75535368f2c6d1e14ec4ca powerpc64le-power8--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs/powerpc64le-power8--glibc--stable-2023.08-1.sha256 +sha256 b9ed7a538472df2c727f8133ccd8166f5ea26fbd09ec0729b577c89ced0a87c4 powerpc64le-power8--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs/powerpc64le-power8--musl--bleeding-edge-2023.08-1.sha256 +sha256 69dd5562fe86154a7d749bd414949cbca5e9e6eda370cb4188de5493b682431f powerpc64le-power8--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs/powerpc64le-power8--musl--stable-2023.08-1.sha256 +sha256 f01de6d7ea263e1343b771b95a9b8848c767be45d43e10550c3d23a15e749d83 powerpc64le-power8--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv32-ilp32d/tarballs/riscv32-ilp32d--glibc--bleeding-edge-2023.08-1.sha256 +sha256 b5a674b07be757639885bde165244ab85c26db2d7e39284d897175701f6f16c3 riscv32-ilp32d--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs/riscv64-lp64d--glibc--bleeding-edge-2023.08-1.sha256 +sha256 9eda527aea5ce7da27957c3b8e4adb65430be046b713dca25432a09cb6675976 riscv64-lp64d--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs/riscv64-lp64d--glibc--stable-2023.08-1.sha256 +sha256 97d7f95ced5852e3fa0119fd5370356df0b652844a76ad9a1c88caa8dd09f367 riscv64-lp64d--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs/riscv64-lp64d--musl--bleeding-edge-2023.08-1.sha256 +sha256 3687ddfbc6d4008e6b5fa2533a6e651d6db7281014917de8d2200b320f440633 riscv64-lp64d--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs/riscv64-lp64d--musl--stable-2023.08-1.sha256 +sha256 09e2fa682043c4ac6378887468085a333d07734edac2b784ade2aacc0a815bb3 riscv64-lp64d--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs/riscv64-lp64d--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 612ddd98eacb4bd1e575c3376bbc709e16d4617b49789f8b9663eaa1e13799b6 riscv64-lp64d--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs/riscv64-lp64d--uclibc--stable-2023.08-1.sha256 +sha256 47830bb06baaf351735729672a3b866c123ef6ad6151869a1fc0135396e7a360 riscv64-lp64d--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/s390x-z13/tarballs/s390x-z13--glibc--bleeding-edge-2023.08-1.sha256 +sha256 38edb78e044ce8c47214452084d5ce38c8b94a2484b296972a764da701ca738a s390x-z13--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/s390x-z13/tarballs/s390x-z13--glibc--stable-2023.08-1.sha256 +sha256 a31927e8331f986ee753edbb931495d03ff00290e5b61618b1e897ed980481b9 s390x-z13--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--glibc--bleeding-edge-2023.08-1.sha256 +sha256 11da1e48d2a7aebfd0f0280d830bd98423620afc82a7bd62671333661e9cb438 sh-sh4--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--glibc--stable-2023.08-1.sha256 +sha256 91f6eeb80d4ceb5ee49221708e543a0d312a7e16d7b9bdd47db48098a034b17d sh-sh4--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--musl--bleeding-edge-2023.08-1.sha256 +sha256 cff9a006550ca7f6d5e71b10043b2ade1d379ad5859202f7ff9dc460348c7f82 sh-sh4--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--musl--stable-2023.08-1.sha256 +sha256 e76eee2ac9b04926d0cd8699c11abe09194e235117985fa6f65b16221889823f sh-sh4--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 0b8b94a26d66168173797d212fc8a5da0c8d239607208661201c413c61056c00 sh-sh4--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs/sh-sh4--uclibc--stable-2023.08-1.sha256 +sha256 d08f583f45f61c72c187754a330d82d4ac9f81a91c998820663d884363a27877 sh-sh4--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs/sh-sh4aeb--glibc--bleeding-edge-2023.08-1.sha256 +sha256 32efc818e2a09ae5af5756c3fac89832743b6f03ad7414c5f6c6abb238cbcc64 sh-sh4aeb--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs/sh-sh4aeb--glibc--stable-2023.08-1.sha256 +sha256 4b5f36bcb32a23b40c04117b549fc571c0f1b40ae29c7a69a78e9d014efb55ea sh-sh4aeb--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs/sh-sh4aeb--musl--bleeding-edge-2023.08-1.sha256 +sha256 16f82d8ce61fe30b26ad75e716418c57d8669d7a7fbc63a131f8be00ba7ec305 sh-sh4aeb--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs/sh-sh4aeb--musl--stable-2023.08-1.sha256 +sha256 2f4af8a25bd24888149f5772413c3f8ce1ee40a16b2a4aec5fc4b4382d021d4f sh-sh4aeb--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sparc64/tarballs/sparc64--glibc--bleeding-edge-2023.08-1.sha256 +sha256 8c29c6f65204a2940012384b769fb5d5848498c47d243a9accf530fe74665dc2 sparc64--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/sparc64/tarballs/sparc64--glibc--stable-2023.08-1.sha256 +sha256 643acebd4fd6ed1b1ee8dfcb6ab3066e4f2c42aee7754ebea7825ecfeabf32ed sparc64--glibc--stable-2023.08-1.tar.bz2 # From https://toolchains.bootlin.com/downloads/releases/toolchains/sparcv8/tarballs/sparcv8--uclibc--bleeding-edge-2022.08-2.sha256 sha256 ccd4110fa574d2323f038394c0603245384002fbe906204db36fe200c9c8f886 sparcv8--uclibc--bleeding-edge-2022.08-2.tar.bz2 # From https://toolchains.bootlin.com/downloads/releases/toolchains/sparcv8/tarballs/sparcv8--uclibc--stable-2022.08-1.sha256 sha256 da3b9f0a936401cbd3cc305b86d3611531391354cc0226a0eeb3ce4ddcc7b7dc sparcv8--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs/x86-64--glibc--bleeding-edge-2022.08-1.sha256 -sha256 9a09ac03001ef2a6cab391cc658fc2a32730b6a8f25614e97a91b9a79537fe33 x86-64--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs/x86-64--glibc--stable-2022.08-1.sha256 -sha256 861c1e8ad0a66e4c28e7a1f8319d68080ab0ff8d16a765e65540f1957203a190 x86-64--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs/x86-64--musl--bleeding-edge-2022.08-1.sha256 -sha256 18149a2d69d1cd392536a97f53d6a02b90887c7e8b86db871b80396d46b9142d x86-64--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs/x86-64--musl--stable-2022.08-1.sha256 -sha256 6a47708f72d2c01721e31907ceb524b7980764d3546b9aca4a6804f6d8db2676 x86-64--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs/x86-64--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 ef40c02af986bb3e4d14c76a3bc60285f5249d0676fb01400081f87b2414438b x86-64--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs/x86-64--uclibc--stable-2022.08-1.sha256 -sha256 d4fbec618e17a70521c0b6339c9889f298b9806ee342e29ffe05ac76ee87c83c x86-64--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs/x86-64-v2--glibc--bleeding-edge-2022.08-1.sha256 -sha256 7ac996b2ca1acdcdaddce38a3fd19bc30b864f6b73f8e6d0537243e912b5d36f x86-64-v2--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs/x86-64-v2--glibc--stable-2022.08-1.sha256 -sha256 4313a04996173bd79935ffaec48b97ba7c32332880774ec61b40ab76804b8fbb x86-64-v2--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs/x86-64-v2--musl--bleeding-edge-2022.08-1.sha256 -sha256 83c57b50ba00555c4e2d7fdfa700b69032f06bfe743b5022a69036b0f18fbfdf x86-64-v2--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs/x86-64-v2--musl--stable-2022.08-1.sha256 -sha256 a76ebe570be5e74875d8f0b82aba3ad055679e734af5c6bdac036ef5f7c7b6fd x86-64-v2--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs/x86-64-v2--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 ab395da0c3d64a8a7121f640d16c8e79d4c187dbd866b42e4456f8c26eeadf4a x86-64-v2--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs/x86-64-v2--uclibc--stable-2022.08-1.sha256 -sha256 f64742f3c5cfdde7e068c3694e86d9df1b5a5ad8e4b0c9542c1e7de55951459a x86-64-v2--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs/x86-64-v3--glibc--bleeding-edge-2022.08-1.sha256 -sha256 40196066dcd7b6d52b956de823f7840fcae76207030d885bb4d07b692505f71f x86-64-v3--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs/x86-64-v3--glibc--stable-2022.08-1.sha256 -sha256 97e43a5e7059a6262278795a102c6b0a2895731ba6aba8125ccd8a354cc68216 x86-64-v3--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs/x86-64-v3--musl--bleeding-edge-2022.08-1.sha256 -sha256 6a26d96022edde94de3b2ec9b414b2865cb99430b0eef4b3f263b0f0713875ac x86-64-v3--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs/x86-64-v3--musl--stable-2022.08-1.sha256 -sha256 082b698fdf995806a4b94c30c7a3c90755747a5cbd73e5f89423052063c7b562 x86-64-v3--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs/x86-64-v3--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 1102391f5c03c335f7a27d2bf67818f67b675768c9e4fb1beb826624cc468033 x86-64-v3--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs/x86-64-v3--uclibc--stable-2022.08-1.sha256 -sha256 c9f0fb4ea32d5d878ef8b719b750904ad4779a01c54a186a05f0e15f5257a653 x86-64-v3--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs/x86-64-v4--glibc--bleeding-edge-2022.08-1.sha256 -sha256 95d25e92e4b4d1b93da6667e61615457d2086efa2ea9f1fbd73404bcad1f3456 x86-64-v4--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs/x86-64-v4--glibc--stable-2022.08-1.sha256 -sha256 93b31a24c7ec8b1d4fc8343edf506b78e2b15d017e7436bf28be4e888af183a1 x86-64-v4--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs/x86-64-v4--musl--bleeding-edge-2022.08-1.sha256 -sha256 e67339ac587bc8815a2ee7fa2e74240ffacae75c26a785d4f3404766c550e15a x86-64-v4--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs/x86-64-v4--musl--stable-2022.08-1.sha256 -sha256 d20b1866f77a9ea4789404610859ea08e76803bbfca3d92627c9a7ae036eb13f x86-64-v4--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs/x86-64-v4--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 4c0ae459a70134fe61b0cb32bfb94e61504efd3e8860cc265dfb3043ec140929 x86-64-v4--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs/x86-64-v4--uclibc--stable-2022.08-1.sha256 -sha256 bec5542fe02be69e4ef8d0722d3c920b64a06206adc580434f2d0088eaa9effa x86-64-v4--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--glibc--bleeding-edge-2022.08-1.sha256 -sha256 995dcaf678cf37b193be86ce6733c0402129fc22eee6a45f76acb86deb8c481d x86-64-core-i7--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--glibc--stable-2022.08-1.sha256 -sha256 7a31f72e6dc378eac8a97b0915b3619ba95c79f73046d052539c44f91bee9a02 x86-64-core-i7--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--musl--bleeding-edge-2022.08-1.sha256 -sha256 2ff43343f39f99a238502293b6ce20b0324f850c1b606ad4772d7d54f2b73206 x86-64-core-i7--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--musl--stable-2022.08-1.sha256 -sha256 fbfdf31724e24a19af4f83e3a9bc766f8fc455f4c4e912401aec1e81f2e71b4c x86-64-core-i7--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 86e9c65eebf909f7deae7d75ef3af4fc6bcee51ef21c92f0ed6fa1ae7206ae50 x86-64-core-i7--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--uclibc--stable-2022.08-1.sha256 -sha256 cc06ac611d1930a4a87016adfabade8b3bba5ce6ed743a60059fee9d70634de5 x86-64-core-i7--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--glibc--bleeding-edge-2022.08-1.sha256 -sha256 3c828987dcd4be469dce355d44e0c42166ab9d939a99b8f1d1463b769f6ecbea x86-core2--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--glibc--stable-2022.08-1.sha256 -sha256 5bff24ea3e83207e91cae12ca5929da823f3caf2a035ed4995658a5b7b571ecb x86-core2--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--musl--bleeding-edge-2022.08-1.sha256 -sha256 75b83133ba59c87bd060cd8f516df9685eaa70a7bda544447630c2c0b94dd1fb x86-core2--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--musl--stable-2022.08-1.sha256 -sha256 61ee5639fa9fb5b454bd675061b539c51615b4e95c7939ca5ef4d46f4e9d8b31 x86-core2--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 5107c9a89a2162393c95d9aa63ea1c85892ea9cb1393556110af844f147f8bad x86-core2--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--uclibc--stable-2022.08-1.sha256 -sha256 ce9bed3cc5d21f3b12b7780783b32498beae186e0693f57884d0cffff13d445f x86-core2--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--glibc--bleeding-edge-2022.08-1.sha256 -sha256 6eda31bf8c4504f322e1e2689beb7172f831400061168a03c0c16956a777a806 x86-i686--glibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--glibc--stable-2022.08-1.sha256 -sha256 6364eb674e5594947cc658bd7ff4928624eb03a20469395a0be93761a804723b x86-i686--glibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--musl--bleeding-edge-2022.08-1.sha256 -sha256 fd94a3905991bab90e5474e7407e6b593222e44947e70e9d0061f393ab420b0d x86-i686--musl--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--musl--stable-2022.08-1.sha256 -sha256 7cc2a015e12ac0ae1bd2050e9078fbe87241de2e30ecd4b789ba494b08b3382a x86-i686--musl--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 c61f6090e96813417880150b8c89ad34502c74e5b69b640701e98378441d9cfc x86-i686--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--uclibc--stable-2022.08-1.sha256 -sha256 a35b1f2d4ef5ce829d2211efb4735196c0c7dcb451d5d40089c126e8b8e6c02e x86-i686--uclibc--stable-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/xtensa-lx60/tarballs/xtensa-lx60--uclibc--bleeding-edge-2022.08-1.sha256 -sha256 a822972e8865b4bc9ad1a077c38fbe095c89ea018364411240da1183fcf7c2ad xtensa-lx60--uclibc--bleeding-edge-2022.08-1.tar.bz2 -# From https://toolchains.bootlin.com/downloads/releases/toolchains/xtensa-lx60/tarballs/xtensa-lx60--uclibc--stable-2022.08-1.sha256 -sha256 35df9b38a5b424cc7d18dd7d382a7962c813dcd19b0c6e9887e3fbb4e3a6d44d xtensa-lx60--uclibc--stable-2022.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs/x86-64--glibc--bleeding-edge-2023.08-1.sha256 +sha256 e896274d4c540a45da02c1a167264116314b5e3afd298b79f28554b0f4eb498d x86-64--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs/x86-64--glibc--stable-2023.08-1.sha256 +sha256 d6eca7f1ea736ef6f868a027a9d0baa875f9513755026aed2badc04a2b9cd7bd x86-64--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs/x86-64--musl--bleeding-edge-2023.08-1.sha256 +sha256 cdef47dd21b099c0b3d97e89ce2a2eb3939e6021ca8f77b8adb0f7ae36f01dc4 x86-64--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs/x86-64--musl--stable-2023.08-1.sha256 +sha256 e07d11f32a7552bd5155530333d7b3ac9ef5627e10072fd05fbc093cd1f88c50 x86-64--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs/x86-64--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 8f35f75ce07f76a776dc08fa4b5f36bb0295c62aa70db0b4eca51a99a80b3bba x86-64--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs/x86-64--uclibc--stable-2023.08-1.sha256 +sha256 cd6ead4a50380fa3346d1d20697f9ad4f3ca93f52d9e5c4000d06f340d766580 x86-64--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs/x86-64-v2--glibc--bleeding-edge-2023.08-1.sha256 +sha256 dbb470879dff87a6a99f6736959f5b38f6cce665b1f9c56c1c6450663c0f07de x86-64-v2--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs/x86-64-v2--glibc--stable-2023.08-1.sha256 +sha256 fd5a2031e1ef2d01de8ba26ce7c445ba7c7fd9ddae9507dfdde8a784d32c7bb7 x86-64-v2--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs/x86-64-v2--musl--bleeding-edge-2023.08-1.sha256 +sha256 0fca4c4eb07abd94535a961304af89a9a0e805f7f208b51d806e8ff1817e9f01 x86-64-v2--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs/x86-64-v2--musl--stable-2023.08-1.sha256 +sha256 dcb7044492f51a5bc7920b78f377d37b48dedb9082cc38c6d6ad4058373f2616 x86-64-v2--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs/x86-64-v2--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 8fa29561f0b783c88a9929cd909fdc86ca4430656c6a7887ac412fbc38892b02 x86-64-v2--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs/x86-64-v2--uclibc--stable-2023.08-1.sha256 +sha256 8c412f719f30ce1ea1f7123cdbc72a432e46d47596fb55c35d6db64e571e3c05 x86-64-v2--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs/x86-64-v3--glibc--bleeding-edge-2023.08-1.sha256 +sha256 8c2a9de04b56a33ca55190e4479d5ebea17e853fd1ad38eb4750868f2bf459ee x86-64-v3--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs/x86-64-v3--glibc--stable-2023.08-1.sha256 +sha256 fc3be4d3e6f04f48c11cd33689b9fad37af2c7b23ffc23bc2d72108b012e9b81 x86-64-v3--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs/x86-64-v3--musl--bleeding-edge-2023.08-1.sha256 +sha256 ee3c55397a4dacb12ce8dad82e9e1da6aec3014458385665892524125882a82c x86-64-v3--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs/x86-64-v3--musl--stable-2023.08-1.sha256 +sha256 b714633981e49954f0164795508710183ddfeb471c748328e5088809ca3cc588 x86-64-v3--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs/x86-64-v3--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 1954fdc6a49d0f5c784fa270269c908138518106b4e445d0961fe245b9f408a9 x86-64-v3--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs/x86-64-v3--uclibc--stable-2023.08-1.sha256 +sha256 addce3971dd028ea8772e3f683d2b65e5703de1279d4f5d0c82269570dfb98c2 x86-64-v3--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs/x86-64-v4--glibc--bleeding-edge-2023.08-1.sha256 +sha256 59cc1a8d860fd63a597efa863a47dfdecb489723678dfee6386e0970fb556693 x86-64-v4--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs/x86-64-v4--glibc--stable-2023.08-1.sha256 +sha256 48e8c2095b065a658f55a19ecf2e3c15533b5e8d4d3b7cf1676305c6b660a135 x86-64-v4--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs/x86-64-v4--musl--bleeding-edge-2023.08-1.sha256 +sha256 03ad7a76121551bce3645835286c43d75e73d397f715fb41e60635f9139711f2 x86-64-v4--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs/x86-64-v4--musl--stable-2023.08-1.sha256 +sha256 e8c74dfe36a4e6c79808d7fe10ddcee546fdbdcb2994bd60bfbf8e6a14ab7abd x86-64-v4--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs/x86-64-v4--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 6220868a0f3ba104a21eb6bdecaed30fb5e625a39899abd753b1d60ef3204196 x86-64-v4--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs/x86-64-v4--uclibc--stable-2023.08-1.sha256 +sha256 1cddc357e6af9f10814e628b92acdb3142a305f5050541eeb82463060295bc63 x86-64-v4--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--glibc--bleeding-edge-2023.08-1.sha256 +sha256 64aa0e9a7face18330aee47f4314229c10c559fea9d0ff4ccf0f8a5dbee81b94 x86-64-core-i7--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--glibc--stable-2023.08-1.sha256 +sha256 78360790108be258bd5f9d4a0dfbc7fc51159cff9943d25b2bf40db0b6530593 x86-64-core-i7--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--musl--bleeding-edge-2023.08-1.sha256 +sha256 4c49c759c7371330df3e83a28f9428a832455c9efab8450b30d124e766815ebc x86-64-core-i7--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--musl--stable-2023.08-1.sha256 +sha256 7e16c0e6f2924e0c57c3c7f7ebe48af42f97bab77978fbe72dbee49eddbbdc73 x86-64-core-i7--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 3a2aabaf3287f2c2149809cd4bfa335730edfaed13a93dcc3a3550d7a00e09d1 x86-64-core-i7--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs/x86-64-core-i7--uclibc--stable-2023.08-1.sha256 +sha256 4fd2aa823492307e840152cc5d0b56dac22b2891975c465a83e14cb42bc0caa1 x86-64-core-i7--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--glibc--bleeding-edge-2023.08-1.sha256 +sha256 4c6fa3c7f43ae68f7bff28f609176e8cd06985dd90582c27e81b2ed5f0a69dd4 x86-core2--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--glibc--stable-2023.08-1.sha256 +sha256 63a868a1813f67a1f54c6213fe2514e7f5c94bf440cff7941442e5ebe3aa0a8b x86-core2--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--musl--bleeding-edge-2023.08-1.sha256 +sha256 1d2c421fe9f2f4fb8fffb427264c7be39b9fcba1e4cb56486a6676082f07dbe3 x86-core2--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--musl--stable-2023.08-1.sha256 +sha256 74a544e52bebd8bd1aeb30838bc59c86dc220648f324a7a7b61d2cdea8fdae50 x86-core2--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 21efd75d421e72d5612b4f8b7a1daa649e5fa78c73ad47ec55629df5d486a137 x86-core2--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs/x86-core2--uclibc--stable-2023.08-1.sha256 +sha256 f161582dda7a8d4cd8fabb728dda0844f70aa0008d94be1b91d012a0a7966315 x86-core2--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--glibc--bleeding-edge-2023.08-1.sha256 +sha256 97041d43941afefc4b950623be6a364434adc6a31f5a506ea578c9530a6e0f04 x86-i686--glibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--glibc--stable-2023.08-1.sha256 +sha256 bba2e990fa8cd6a156c0a4acd909e9f8265708772f2b2c438fe2c294bdbae313 x86-i686--glibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--musl--bleeding-edge-2023.08-1.sha256 +sha256 f2efb6b34c5b04940163fa2c91b9fcc9f76c5a5532bca2f44279fd318f460123 x86-i686--musl--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--musl--stable-2023.08-1.sha256 +sha256 5109b0d57432800a34a402cea789993f0670cfeda5f174b61e0bc19c69e98078 x86-i686--musl--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 2222e4ef0e26185c4c6f39d08eacb4ce3a1dab3e0dbc09d37708d72d5df39417 x86-i686--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--uclibc--stable-2023.08-1.sha256 +sha256 294d84dbc6043e17a2e357b2a1377b2b57039dffd6d766a2851adec7d2d5da21 x86-i686--uclibc--stable-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/xtensa-lx60/tarballs/xtensa-lx60--uclibc--bleeding-edge-2023.08-1.sha256 +sha256 79b002a8d1d6dee72c75a336e0fb3b07cdf4cd373de842e5f3f6c67e502f9c94 xtensa-lx60--uclibc--bleeding-edge-2023.08-1.tar.bz2 +# From https://toolchains.bootlin.com/downloads/releases/toolchains/xtensa-lx60/tarballs/xtensa-lx60--uclibc--stable-2023.08-1.sha256 +sha256 f9f8d55ef6c29c69174084f05310cd69a1cb3626831e5c806f30d9b5a842a35a xtensa-lx60--uclibc--stable-2023.08-1.tar.bz2 diff --git a/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.mk b/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.mk index 230552af710e..6f4be09793f8 100644 --- a/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.mk +++ b/toolchain/toolchain-external/toolchain-external-bootlin/toolchain-external-bootlin.mk @@ -7,967 +7,979 @@ # This file was auto-generated by support/scripts/gen-bootlin-toolchains # Do not edit ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-2 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64be--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64be--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs endif +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_MUSL_BLEEDING_EDGE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64be--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs +endif + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_MUSL_STABLE),y) +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64be--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 +TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs +endif + ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64be--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = aarch64be--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/aarch64be/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_750D_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = arcle-750d--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-750d/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_750D_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = arcle-750d--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-750d/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = arcle-hs38--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = arcle-hs38--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = arcle-hs38--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARCLE_HS38_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = arcle-hs38--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/arcle-hs38/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv5-eabi--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv5-eabi--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv5-eabi--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv5-eabi--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv5-eabi--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv5-eabi--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv5-eabi/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv6-eabihf--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv6-eabihf--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv6-eabihf--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv6-eabihf--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv6-eabihf--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV6_EABIHF_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv6-eabihf--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv6-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7-eabihf--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7-eabihf--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7-eabihf--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7-eabihf--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7-eabihf--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7-eabihf--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armebv7-eabihf--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armebv7-eabihf--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armebv7-eabihf--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armebv7-eabihf--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armebv7-eabihf--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMEBV7_EABIHF_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armebv7-eabihf--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armebv7-eabihf/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7M_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7m--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7m/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7M_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = armv7m--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/armv7m/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_68XXX_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = m68k-68xxx--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-68xxx/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_68XXX_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = m68k-68xxx--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-68xxx/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_COLDFIRE_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2021.11-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = m68k-coldfire--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-coldfire/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_M68K_COLDFIRE_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2021.11-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = m68k-coldfire--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/m68k-coldfire/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazebe--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazebe--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazebe--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazebe--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazebe--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEBE_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazebe--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazebe/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazeel--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazeel--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazeel--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazeel--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazeel--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MICROBLAZEEL_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = microblazeel--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/microblazeel/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32el--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32el--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32el--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32el--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32el--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32el--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r5el--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r5el--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r5el--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r5el--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r5el--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R5EL_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r5el--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r5el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r6el--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r6el--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r6el--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r6el--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r6el--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32R6EL_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips32r6el--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips32r6el/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64-n32--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64-n32--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64-n32--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64-n32--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64-n32--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64_N32_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64-n32--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64el-n32--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64el-n32--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64el-n32--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64el-n32--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64el-n32--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64EL_N32_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64el-n32--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64el-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64r6el-n32--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64r6el-n32--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64r6el-n32--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64r6el-n32--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64r6el-n32--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS64R6EL_N32_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = mips64r6el-n32--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/mips64r6el-n32/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_NIOS2_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = nios2--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/nios2/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_NIOS2_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = nios2--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/nios2/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = openrisc--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = openrisc--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = openrisc--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = openrisc--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = openrisc--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_OPENRISC_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = openrisc--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/openrisc/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-440fp--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-440fp--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-440fp--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-440fp--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-440fp--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-440fp--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-440fp/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e300c3--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e300c3--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e300c3--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e300c3--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e300c3--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E300C3_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e300c3--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e300c3/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e500mc--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e500mc--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e500mc--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e500mc--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e500mc--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_E500MC_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc-e500mc--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc-e500mc/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E5500_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-e5500--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e5500/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E5500_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-e5500--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e5500/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-e6500--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-e6500--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-e6500--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_E6500_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-e6500--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-e6500/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-power8--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-power8--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-power8--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64-power8--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64-power8/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64le-power8--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64le-power8--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64le-power8--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = powerpc64le-power8--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/powerpc64le-power8/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV32_ILP32D_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = riscv32-ilp32d--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/riscv32-ilp32d/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = riscv64-lp64d--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = riscv64-lp64d--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = riscv64-lp64d--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = riscv64-lp64d--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = riscv64-lp64d--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_RISCV64_LP64D_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = riscv64-lp64d--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/riscv64-lp64d/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_S390X_Z13_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = s390x-z13--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/s390x-z13/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_S390X_Z13_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = s390x-z13--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/s390x-z13/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4aeb--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4aeb--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4aeb--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SH_SH4AEB_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sh-sh4aeb--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sh-sh4aeb/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARC64_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sparc64--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sparc64/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_SPARC64_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = sparc64--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/sparc64/tarballs endif @@ -985,265 +997,265 @@ TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/relea endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v2--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v2--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v2--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v2--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v2--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V2_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v2--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v2/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v3--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v3--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v3--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v3--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v3--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V3_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v3--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v3/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v4--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v4--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v4--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v4--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v4--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_V4_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-v4--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-v4/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-core-i7--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-core-i7--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-core-i7--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-core-i7--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-core-i7--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-64-core-i7--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-64-core-i7/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-core2--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-core2--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-core2--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-core2--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-core2--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_CORE2_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-core2--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-core2/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_GLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-i686--glibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_GLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-i686--glibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_MUSL_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-i686--musl--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_MUSL_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-i686--musl--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-i686--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = x86-i686--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_XTENSA_LX60_UCLIBC_BLEEDING_EDGE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = xtensa-lx60--uclibc--bleeding-edge-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/xtensa-lx60/tarballs endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_XTENSA_LX60_UCLIBC_STABLE),y) -TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2022.08-1 +TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION = 2023.08-1 TOOLCHAIN_EXTERNAL_BOOTLIN_SOURCE = xtensa-lx60--uclibc--stable-$(TOOLCHAIN_EXTERNAL_BOOTLIN_VERSION).tar.bz2 TOOLCHAIN_EXTERNAL_BOOTLIN_SITE = https://toolchains.bootlin.com/downloads/releases/toolchains/xtensa-lx60/tarballs endif diff --git a/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in index 2341d0883256..d49c61023754 100644 --- a/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in +++ b/toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in @@ -5,6 +5,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on BR2_MIPS_CPU_MIPS32R6 || (BR2_MIPS_CPU_MIPS64R6 && !BR2_MIPS_SOFT_FLOAT) select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7 select BR2_TOOLCHAIN_GCC_AT_LEAST_6 diff --git a/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in index 8217ddc38c73..720d705d14ba 100644 --- a/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in +++ b/toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in @@ -5,6 +5,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on BR2_MIPS_CPU_MIPS32R2 || (BR2_MIPS_CPU_MIPS64R2 && !BR2_MIPS_SOFT_FLOAT) select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_EXTERNAL_HAS_NO_GDBSERVER select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7 select BR2_TOOLCHAIN_GCC_AT_LEAST_6 diff --git a/toolchain/toolchain-external/toolchain-external-custom/Config.in.options b/toolchain/toolchain-external/toolchain-external-custom/Config.in.options index 1c39334ddd67..5554d56719ab 100644 --- a/toolchain/toolchain-external/toolchain-external-custom/Config.in.options +++ b/toolchain/toolchain-external/toolchain-external-custom/Config.in.options @@ -24,6 +24,21 @@ config BR2_TOOLCHAIN_EXTERNAL_REL_BIN_PATH config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX string "Toolchain prefix" default "$(ARCH)-linux" + help + Component name prefix used by your external toolchain. + + Typically, this is the target tuple, e.g. something that + looks like: $(ARCH)-unknown-linux-gnu. + + If unsure, look at the "bin" directory of your toolchain and + note the part of component name before the last dash, i.e. if + you call the toolchain's gcc as $(ARCH)-unknown-linux-gnu-gcc, + the prefix is $(ARCH)-unknown-linux-gnu. + + Note that Buildroot toolchains have shorter aliases that look + like $(ARCH)-linux, as symlinks to the full-tuple components, + so you can leave this option at default value if you use them + as external toolchain. choice bool "External toolchain gcc version" @@ -31,68 +46,88 @@ choice Set to the gcc version that is used by your external toolchain. +config BR2_TOOLCHAIN_EXTERNAL_GCC_13 + bool "13.x" + select BR2_TOOLCHAIN_GCC_AT_LEAST_13 + config BR2_TOOLCHAIN_EXTERNAL_GCC_12 bool "12.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_13 select BR2_TOOLCHAIN_GCC_AT_LEAST_12 config BR2_TOOLCHAIN_EXTERNAL_GCC_11 bool "11.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_12 select BR2_TOOLCHAIN_GCC_AT_LEAST_11 config BR2_TOOLCHAIN_EXTERNAL_GCC_10 bool "10.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_11 select BR2_TOOLCHAIN_GCC_AT_LEAST_10 config BR2_TOOLCHAIN_EXTERNAL_GCC_9 bool "9.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_10 select BR2_TOOLCHAIN_GCC_AT_LEAST_9 config BR2_TOOLCHAIN_EXTERNAL_GCC_8 bool "8.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_9 select BR2_TOOLCHAIN_GCC_AT_LEAST_8 config BR2_TOOLCHAIN_EXTERNAL_GCC_7 bool "7.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_7 config BR2_TOOLCHAIN_EXTERNAL_GCC_6 bool "6.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_7 select BR2_TOOLCHAIN_GCC_AT_LEAST_6 config BR2_TOOLCHAIN_EXTERNAL_GCC_5 bool "5.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_6 select BR2_TOOLCHAIN_GCC_AT_LEAST_5 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_9 bool "4.9.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_5 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_8 bool "4.8.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_7 bool "4.7.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_6 bool "4.6.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_5 bool "4.5.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_4 bool "4.4.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_4 config BR2_TOOLCHAIN_EXTERNAL_GCC_4_3 bool "4.3.x" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_3 config BR2_TOOLCHAIN_EXTERNAL_GCC_OLD bool "older" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8 help Use this option if your GCC version is older than any of the above. @@ -127,8 +162,28 @@ choice If your toolchain uses headers newer than the latest version in the choice, then select the latest version. +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_6_6 + bool "6.6.x or later" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_6 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_6_5 + bool "6.5.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_5 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_6_4 + bool "6.4.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_4 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_6_3 + bool "6.3.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_3 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_6_2 + bool "6.2.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_2 + config BR2_TOOLCHAIN_EXTERNAL_HEADERS_6_1 - bool "6.1.x or later" + bool "6.1.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_6_1 config BR2_TOOLCHAIN_EXTERNAL_HEADERS_6_0 diff --git a/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in index 53d5dfd8f2e6..295a8987f16d 100644 --- a/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in +++ b/toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in @@ -2,6 +2,7 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64_BE bool "Linaro AArch64 BE 2018.05" depends on BR2_aarch64_be depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_8 select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_SSP select BR2_INSTALL_LIBSTDCPP diff --git a/toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in b/toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in index c9b84b1d30e4..1b0ec7cd9f87 100644 --- a/toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in +++ b/toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in @@ -2,6 +2,7 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64 bool "Linaro AArch64 2018.05" depends on BR2_aarch64 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_8 select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_SSP select BR2_INSTALL_LIBSTDCPP diff --git a/toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in b/toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in index 015e92f17cd2..8b3b4c844eb9 100644 --- a/toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in +++ b/toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in @@ -8,6 +8,7 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM depends on BR2_ARM_CPU_ARMV7A || BR2_ARM_CPU_ARMV8A depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on BR2_ARM_EABIHF + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_8 select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_NATIVE_RPC diff --git a/toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in b/toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in index b338a72bffd9..b143ee5e2472 100644 --- a/toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in +++ b/toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in @@ -8,6 +8,7 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB depends on BR2_ARM_CPU_ARMV7A || BR2_ARM_CPU_ARMV8A depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on BR2_ARM_EABIHF + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_8 select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_SSP select BR2_TOOLCHAIN_HAS_NATIVE_RPC diff --git a/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in b/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in index c3483f331c77..292e652fb012 100644 --- a/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in +++ b/toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in @@ -2,9 +2,9 @@ config BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC bool "Synopsys ARC 2019.09 toolchain" depends on BR2_arc depends on BR2_HOSTARCH = "x86_64" + depends on !BR2_ARCH_NEEDS_GCC_AT_LEAST_10 select BR2_TOOLCHAIN_EXTERNAL_UCLIBC select BR2_INSTALL_LIBSTDCPP - select BR2_ENABLE_LOCALE select BR2_USE_WCHAR select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_NPTL diff --git a/utils/add-custom-hashes b/utils/add-custom-hashes new file mode 100755 index 000000000000..20e48d8ef3df --- /dev/null +++ b/utils/add-custom-hashes @@ -0,0 +1,103 @@ +#!/usr/bin/env bash +set -e + +# Add hash files for packages with custom versions for +# BR2_DOWNLOAD_FORCE_CHECK_HASHES=y +# +# Run in a configured Buildroot directory, E.G. +# make foo_defconfig; ./utils/add-custom-hashes + +# print BR-style message +# message +message() { + tput smso 2>/dev/null + echo "$*" + tput rmso 2>/dev/null +} + +# print error message and exit +# die +die() { + echo "Error: $*" >&2 + exit 1 +} + +# get package(s) for download file, if any +# get_pkgs +get_pkgs() { + jq --arg file "$2" -r \ + 'to_entries[] | select(.value.downloads[0].source == $file) | .key | strings' "$1" +} + +# get download dir for package +# get_pkg_dl_dir +get_pkg_dl_dir() { + jq --arg pkg "$2" -r '.[$pkg].dl_dir | strings' "$1" +} + +# generate hash file for download file +# gen_hash +gen_hash() { + ( + cd "$1" && printf '# Locally calculated\nsha256 ' && sha256sum "$2" + ) +} + +command -v jq >/dev/null || die 'Script needs jq' + +[ -e .config ] || \ + die "No .config found, please run this in a configured Buildroot (O=) directory" + +message Collecting data + +eval "$(make -s VARS='TOPDIR DL_DIR BR_NO_CHECK_HASH_FOR BR2_GLOBAL_PATCH_DIR' QUOTED_VARS=YES printvars)" +# global patch dir may already have quotes +BR2_GLOBAL_PATCH_DIR=$(echo "$BR2_GLOBAL_PATCH_DIR" | tr -d '"') + +[ -n "$BR2_GLOBAL_PATCH_DIR" ] || die "No BR2_GLOBAL_PATCH_DIR defined, nothing to do" +[ -n "$BR_NO_CHECK_HASH_FOR" ] || die "No packages without hashes found, nothing to do" + +[ -d "$TOPDIR" ] || die "TOPDIR ($TOPDIR) does not look correct" +[ -d "$DL_DIR" ] || die "DL_DIR ($DL_DIR) does not look correct" + +# patch dir may contain multiple dirs, use the last one +# shellcheck disable=SC2086 # we need the word splitting +set -- $BR2_GLOBAL_PATCH_DIR +if [ $# -gt 1 ]; then + BR2_GLOBAL_PATCH_DIR="${!#}"; + message BR2_GLOBAL_PATCH_DIR contains multiple directories, using "$BR2_GLOBAL_PATCH_DIR" +fi + +# patch dir may be relative to TOPDIR +case "$BR2_GLOBAL_PATCH_DIR" in + /*) ;; + *) BR2_GLOBAL_PATCH_DIR="$TOPDIR/$BR2_GLOBAL_PATCH_DIR" + ;; +esac + +[ -d "$BR2_GLOBAL_PATCH_DIR" ] \ + || die "BR2_GLOBAL_PATCH_DIR ($BR2_GLOBAL_PATCH_DIR) does not look correct" + +trap 'rm -f "$JSON"' EXIT +JSON=$(mktemp) +make show-info > "$JSON" + +# ensure files have been downloaded, but without checking +make BR2_DOWNLOAD_FORCE_CHECK_HASHES= source + +message Updating hashes + +for file in $BR_NO_CHECK_HASH_FOR; do + for pkg in $(get_pkgs "$JSON" "$file"); do + HASHFILE="$BR2_GLOBAL_PATCH_DIR/$pkg/$pkg.hash" + PKG_DL_DIR=$(get_pkg_dl_dir "$JSON" "$pkg") + message "Adding hash for $file to $HASHFILE" + mkdir -p "${HASHFILE%/*}" + gen_hash "$DL_DIR/$PKG_DL_DIR" "$file" > "$HASHFILE" + done +done + +message Verifying hashes + +make clean +make BR2_DOWNLOAD_FORCE_CHECK_HASHES=y source diff --git a/utils/check-package b/utils/check-package index 98a25bd0b2de..105902303ed7 100755 --- a/utils/check-package +++ b/utils/check-package @@ -6,14 +6,15 @@ import inspect import magic import os import re -import six import sys import checkpackagelib.base import checkpackagelib.lib_config import checkpackagelib.lib_hash +import checkpackagelib.lib_ignore import checkpackagelib.lib_mk import checkpackagelib.lib_patch +import checkpackagelib.lib_python import checkpackagelib.lib_shellscript import checkpackagelib.lib_sysv @@ -100,17 +101,22 @@ def get_lib_from_filetype(fname): filetype = get_filetype(fname) if filetype == "text/x-shellscript": return checkpackagelib.lib_shellscript + if filetype in ["text/x-python", "text/x-script.python"]: + return checkpackagelib.lib_python return None CONFIG_IN_FILENAME = re.compile(r"Config\.\S*$") DO_CHECK_INTREE = re.compile(r"|".join([ + r".checkpackageignore", r"Config.in", r"arch/", + r"board/", r"boot/", r"fs/", r"linux/", r"package/", + r"support/", r"system/", r"toolchain/", r"utils/", @@ -120,6 +126,11 @@ DO_NOT_CHECK_INTREE = re.compile(r"|".join([ r"fs/common\.mk$", r"package/doc-asciidoc\.mk$", r"package/pkg-\S*\.mk$", + r"support/dependencies/[^/]+\.mk$", + r"support/gnuconfig/config\.", + r"support/kconfig/", + r"support/misc/[^/]+\.mk$", + r"support/testing/tests/.*br2-external/", r"toolchain/helpers\.mk$", r"toolchain/toolchain-external/pkg-toolchain-external\.mk$", ])) @@ -137,6 +148,8 @@ def get_lib_from_filename(fname): if os.path.basename(fname) == "external.mk" and \ os.path.exists(fname[:-2] + "desc"): return None + if fname == ".checkpackageignore": + return checkpackagelib.lib_ignore if CONFIG_IN_FILENAME.search(fname): return checkpackagelib.lib_config if fname.endswith(".hash"): @@ -218,22 +231,21 @@ def check_file_using_lib(fname): if fail > 0: failed.add(name) nwarnings += warn - if six.PY3: - f = open(fname, "r", errors="surrogateescape") - else: - f = open(fname, "r") + lastline = "" - for lineno, text in enumerate(f.readlines()): - nlines += 1 - for name, cf in objects: - if cf.disable.search(lastline): - continue - warn, fail = print_warnings(cf.check_line(lineno + 1, text), name in xfail) - if fail > 0: - failed.add(name) - nwarnings += warn - lastline = text - f.close() + with open(fname, "r", errors="surrogateescape") as f: + for lineno, text in enumerate(f): + nlines += 1 + for name, cf in objects: + if cf.disable.search(lastline): + continue + line_sts = cf.check_line(lineno + 1, text) + warn, fail = print_warnings(line_sts, name in xfail) + if fail > 0: + failed.add(name) + nwarnings += warn + lastline = text + for name, cf in objects: warn, fail = print_warnings(cf.after(), name in xfail) if fail > 0: @@ -250,7 +262,7 @@ def check_file_using_lib(fname): for should_fail in xfail: if should_fail not in failed: - print("{}:0: {} was expected to fail, did you fixed the file and forgot to update {}?" + print("{}:0: {} was expected to fail, did you fix the file and forget to update {}?" .format(fname, should_fail, flags.ignore_filename)) nwarnings += 1 diff --git a/utils/checkpackagelib/lib_ignore.py b/utils/checkpackagelib/lib_ignore.py new file mode 100644 index 000000000000..f3698fc3b4d2 --- /dev/null +++ b/utils/checkpackagelib/lib_ignore.py @@ -0,0 +1,14 @@ +# See utils/checkpackagelib/readme.txt before editing this file. + +import os + +from checkpackagelib.base import _CheckFunction + + +class IgnoreMissingFile(_CheckFunction): + def check_line(self, lineno, text): + fields = text.split() + if not os.path.exists(fields[0]): + return ["{}:{}: ignored file {} is missing" + .format(self.filename, lineno, fields[0]), + text] diff --git a/utils/checkpackagelib/lib_mk.py b/utils/checkpackagelib/lib_mk.py index 8adf844e9a1c..d340882971f1 100644 --- a/utils/checkpackagelib/lib_mk.py +++ b/utils/checkpackagelib/lib_mk.py @@ -21,6 +21,16 @@ end_conditional = ["endif"] +class DoNotInstallToHostdirUsr(_CheckFunction): + INSTALL_TO_HOSTDIR_USR = re.compile(r"^[^#].*\$\(HOST_DIR\)/usr") + + def check_line(self, lineno, text): + if self.INSTALL_TO_HOSTDIR_USR.match(text.rstrip()): + return ["{}:{}: install files to $(HOST_DIR)/ instead of $(HOST_DIR)/usr/" + .format(self.filename, lineno), + text] + + class Ifdef(_CheckFunction): IFDEF = re.compile(r"^\s*(else\s+|)(ifdef|ifndef)\s") diff --git a/utils/checkpackagelib/lib_patch.py b/utils/checkpackagelib/lib_patch.py index caee36158fe4..1909d3acd063 100644 --- a/utils/checkpackagelib/lib_patch.py +++ b/utils/checkpackagelib/lib_patch.py @@ -61,3 +61,21 @@ def after(self): return ["{}:0: missing Signed-off-by in the header " "({}#_format_and_licensing_of_the_package_patches)" .format(self.filename, self.url_to_manual)] + +class Upstream(_CheckFunction): + UPSTREAM_ENTRY = re.compile(r"^Upstream: .*$") + + def before(self): + self.found = False + + def check_line(self, lineno, text): + if self.found: + return + if self.UPSTREAM_ENTRY.search(text): + self.found = True + + def after(self): + if not self.found: + return ["{}:0: missing Upstream in the header " + "({}#_additional_patch_documentation)" + .format(self.filename, self.url_to_manual)] diff --git a/utils/checkpackagelib/lib_python.py b/utils/checkpackagelib/lib_python.py new file mode 100644 index 000000000000..f8c17ddc1097 --- /dev/null +++ b/utils/checkpackagelib/lib_python.py @@ -0,0 +1 @@ +from checkpackagelib.tool import Flake8 # noqa: F401 diff --git a/utils/checkpackagelib/lib_sysv.py b/utils/checkpackagelib/lib_sysv.py index 386d085afc5c..dc4afd71b805 100644 --- a/utils/checkpackagelib/lib_sysv.py +++ b/utils/checkpackagelib/lib_sysv.py @@ -21,6 +21,9 @@ def check_line(self, lineno, text): class NotExecutable(checkpackagelib.tool.NotExecutable): + def ignore(self): + return 'etc/init.d/' in self.filename + def hint(self): return ", just make sure you use '$(INSTALL) -D -m 0755' in the .mk file" diff --git a/utils/checkpackagelib/test_lib_ignore.py b/utils/checkpackagelib/test_lib_ignore.py new file mode 100644 index 000000000000..6cd856d66940 --- /dev/null +++ b/utils/checkpackagelib/test_lib_ignore.py @@ -0,0 +1,18 @@ +import pytest +import checkpackagelib.test_util as util +import checkpackagelib.lib_ignore as m + + +IgnoreMissingFile = [ + ('missing ignored file', + '.checkpackageignore', + 'this-file-does-not-exist SomeTest', + [['.checkpackageignore:1: ignored file this-file-does-not-exist is missing', + 'this-file-does-not-exist SomeTest']]), + ] + + +@pytest.mark.parametrize('testname,filename,string,expected', IgnoreMissingFile) +def test_IgnoreMissingFile(testname, filename, string, expected): + warnings = util.check_file(m.IgnoreMissingFile, filename, string) + assert warnings == expected diff --git a/utils/checkpackagelib/test_lib_mk.py b/utils/checkpackagelib/test_lib_mk.py index 80a1736b4e66..2086237ebb1b 100644 --- a/utils/checkpackagelib/test_lib_mk.py +++ b/utils/checkpackagelib/test_lib_mk.py @@ -3,6 +3,29 @@ import checkpackagelib.lib_mk as m +DoNotInstallToHostdirUsr = [ + ('real case', + 'libapparmor.mk', + 'LIBAPPARMOR_CONF_OPTS += \\\n' + '\t--with-python \\\n' + '\tPYTHON=$(HOST_DIR)/usr/bin/python3 \\\n' + '\tPYTHON_CONFIG=$(STAGING_DIR)/usr/bin/python3-config \\\n' + '\tSWIG=$(SWIG)\n', + [['libapparmor.mk:3: install files to $(HOST_DIR)/ instead of $(HOST_DIR)/usr/', + '\tPYTHON=$(HOST_DIR)/usr/bin/python3 \\\n']]), + ('ignore comment', + 'any', + '# following code do not install to $(HOST_DIR)/usr/\n', + []), + ] + + +@pytest.mark.parametrize('testname,filename,string,expected', DoNotInstallToHostdirUsr) +def test_DoNotInstallToHostdirUsr(testname, filename, string, expected): + warnings = util.check_file(m.DoNotInstallToHostdirUsr, filename, string) + assert warnings == expected + + Ifdef = [ ('ignore commented line', 'any', diff --git a/utils/checkpackagelib/test_lib_patch.py b/utils/checkpackagelib/test_lib_patch.py index 3b6fadf38cfa..f7487ef3290e 100644 --- a/utils/checkpackagelib/test_lib_patch.py +++ b/utils/checkpackagelib/test_lib_patch.py @@ -94,3 +94,25 @@ def test_NumberedSubject(testname, filename, string, expected): def test_Sob(testname, filename, string, expected): warnings = util.check_file(m.Sob, filename, string) assert warnings == expected + + +Upstream = [ + ('good', + 'patch', + 'Upstream: https://some/amazing/patch/submission\n', + []), + ('empty', + 'patch', + '', + [['patch:0: missing Upstream in the header (url#_additional_patch_documentation)']]), + ('bad', + 'patch', + 'Subject: [PATCH 24/105] text\n', + [['patch:0: missing Upstream in the header (url#_additional_patch_documentation)']]), + ] + + +@pytest.mark.parametrize('testname,filename,string,expected', Upstream) +def test_Upstream(testname, filename, string, expected): + warnings = util.check_file(m.Upstream, filename, string) + assert warnings == expected diff --git a/utils/checkpackagelib/test_tool.py b/utils/checkpackagelib/test_tool.py index a0bf88001dec..cfa826f57c45 100644 --- a/utils/checkpackagelib/test_tool.py +++ b/utils/checkpackagelib/test_tool.py @@ -66,6 +66,34 @@ def hint(self): assert warnings == expected +Flake8 = [ + ('empty', + 'empty.py', + '', + []), + ('W391', + 'blank-line.py', + '\n', + ["dir/blank-line.py:0: run 'flake8' and fix the warnings", + "dir/blank-line.py:1:1: W391 blank line at end of file"]), + ('more than one warning', + 'file', + 'import os\n' + 'import re\n' + '\n', + ["dir/file:0: run 'flake8' and fix the warnings", + "dir/file:1:1: F401 'os' imported but unused\n" + "dir/file:2:1: F401 're' imported but unused\n" + 'dir/file:3:1: W391 blank line at end of file']), + ] + + +@pytest.mark.parametrize('testname,filename,string,expected', Flake8) +def test_Flake8(testname, filename, string, expected): + warnings = check_file(m.Flake8, filename, string) + assert warnings == expected + + Shellcheck = [ ('missing shebang', 'empty.sh', diff --git a/utils/checkpackagelib/tool.py b/utils/checkpackagelib/tool.py index e719fdd4079c..907ada704fe4 100644 --- a/utils/checkpackagelib/tool.py +++ b/utils/checkpackagelib/tool.py @@ -1,14 +1,34 @@ +import flake8.main.application import os import subprocess +import tempfile from checkpackagelib.base import _Tool class NotExecutable(_Tool): + def ignore(self): + return False + def run(self): + if self.ignore(): + return if os.access(self.filename, os.X_OK): return ["{}:0: This file does not need to be executable{}".format(self.filename, self.hint())] +class Flake8(_Tool): + def run(self): + with tempfile.NamedTemporaryFile() as output: + app = flake8.main.application.Application() + app.run(['--output-file={}'.format(output.name), self.filename]) + stdout = output.readlines() + processed_output = [str(line.decode().rstrip()) for line in stdout if line] + if len(stdout) == 0: + return + return ["{}:0: run 'flake8' and fix the warnings".format(self.filename), + '\n'.join(processed_output)] + + class Shellcheck(_Tool): def run(self): cmd = ['shellcheck', self.filename] diff --git a/utils/checksymbolslib/test_makefile.py b/utils/checksymbolslib/test_makefile.py index 14d07eaa4500..1dc6564b2f13 100644 --- a/utils/checksymbolslib/test_makefile.py +++ b/utils/checksymbolslib/test_makefile.py @@ -247,9 +247,6 @@ def test_populate_db(testname, filename, file_content, expected_calls): ('arch/arch.mk.riscv', 'arch/arch.mk.riscv', True), - ('boot/lpc32xxcdl/lpc32xxcdl.mk', - 'boot/lpc32xxcdl/lpc32xxcdl.mk', - True), ('fs/cramfs/cramfs.mk', 'fs/cramfs/cramfs.mk', True), diff --git a/utils/docker-run b/utils/docker-run index 164e11c0e6f1..79694474c144 100755 --- a/utils/docker-run +++ b/utils/docker-run @@ -2,12 +2,86 @@ set -o errexit -o pipefail DIR=$(dirname "${0}") MAIN_DIR=$(readlink -f "${DIR}/..") -# shellcheck disable=SC2016 -IMAGE=$(grep ^image: "${MAIN_DIR}/.gitlab-ci.yml" | \ - sed -e 's,^image: ,,g' | sed -e 's,\$CI_REGISTRY,registry.gitlab.com,g') - -exec docker run -it --rm \ - --user "$(id -u):$(id -g)" \ - --mount "type=bind,src=${MAIN_DIR},dst=${MAIN_DIR}" \ - --workdir "${MAIN_DIR}" \ - "${IMAGE}" "${@}" +if [ -L "${MAIN_DIR}/.git/config" ]; then + # Support git-new-workdir + GIT_DIR="$(dirname "$(realpath "${MAIN_DIR}/.git/config")")" +else + # Support git-worktree + GIT_DIR="$(cd "${MAIN_DIR}" && git rev-parse --no-flags --git-common-dir)" +fi +if test -z "${IMAGE}" ; then + # shellcheck disable=SC2016 + IMAGE=$(grep ^image: "${MAIN_DIR}/.gitlab-ci.yml" | \ + sed -e 's,^image: ,,g' | sed -e 's,\$CI_REGISTRY,registry.gitlab.com,g') +fi + +declare -a docker_opts=( + -i + --rm + --user "$(id -u):$(id -g)" + --workdir "$(pwd)" + --security-opt label=disable + --network host +) + +declare -a mountpoints=( + "${MAIN_DIR}" + "$(pwd)" +) + +# curl lists (and recognises and uses) other types of *_proxy variables, +# but only those make sense for Buildroot: +for env in all_proxy http_proxy https_proxy ftp_proxy no_proxy; do + if [ "${!env}" ]; then + docker_opts+=( --env "${env}" ) + # The lower-case variant takes precedence on the upper-case one + # (dixit curl) + continue + fi + # http_proxy is only lower-case (dixit curl) + if [ "${env}" = http_proxy ]; then + continue + fi + # All the others also exist in the upper-case variant + env="${env^^}" + if [ "${!env}" ]; then + docker_opts+=( --env "${env}" ) + fi +done + +# Empty GIT_DIR means that we are not in a workdir, *and* git is too old +# to know about worktrees, so we're not in a worktree either. So it means +# we're in the main git working copy, and thus we don't need to mount the +# .git directory. +if [ "${GIT_DIR}" ]; then + # GIT_DIR in the main working copy (when git supports worktrees) will + # be just '.git', but 'docker run' needs an absolute path. If it is + # not absolute, GIT_DIR is relative to MAIN_DIR. If it's an absolute + # path already (in a wordir), then that's a noop. + GIT_DIR="$(cd "${MAIN_DIR}"; readlink -e "${GIT_DIR}")" + mountpoints+=( "${GIT_DIR}" ) + + # 'repo' stores .git/objects separately. + if [ -L "${GIT_DIR}/objects" ]; then + # GITDIR is already an absolute path, but for symetry + # with the above, keep the same cd+readlink construct. + OBJECTS_DIR="$(cd "${MAIN_DIR}"; readlink -e "${GIT_DIR}/objects")" + mountpoints+=( "${OBJECTS_DIR}" ) + fi +fi + +if [ "${BR2_DL_DIR}" ]; then + mountpoints+=( "${BR2_DL_DIR}" ) + docker_opts+=( --env BR2_DL_DIR ) +fi + +# shellcheck disable=SC2013 # can't use while-read because of the assignment +for dir in $(printf '%s\n' "${mountpoints[@]}" |LC_ALL=C sort -u); do + docker_opts+=( --mount "type=bind,src=${dir},dst=${dir}" ) +done + +if tty -s; then + docker_opts+=( -t ) +fi + +exec docker run "${docker_opts[@]}" "${IMAGE}" "${@}" diff --git a/utils/genrandconfig b/utils/genrandconfig index 2b0baedf310f..52edad06d8ae 100755 --- a/utils/genrandconfig +++ b/utils/genrandconfig @@ -496,10 +496,6 @@ def fixup_config(sysinfo, configfile): 'BR2_TARGET_BOOT_WRAPPER_AARCH64_DTS=""\n' in configlines: return False - if 'BR2_TARGET_LPC32XXCDL=y\n' in configlines and \ - 'BR2_TARGET_LPC32XXCDL_BOARDNAME=""\n' in configlines: - return False - if 'BR2_TARGET_OPTEE_OS=y\n' in configlines and \ 'BR2_TARGET_OPTEE_OS_CUSTOM_TARBALL=y\n' in configlines and \ 'BR2_TARGET_OPTEE_OS_CUSTOM_TARBALL_LOCATION=""\n' in configlines: @@ -512,6 +508,9 @@ def fixup_config(sysinfo, configfile): configlines.remove('BR2_TARGET_OPTEE_OS=y\n') configlines.remove('BR2_TARGET_OPTEE_OS_PLATFORM=""\n') + if 'BR2_TARGET_ROOTFS_CRAMFS=y\n' in configlines: + configlines.remove('BR2_TARGET_ROOTFS_CRAMFS=y\n') + if 'BR2_TARGET_ROOTFS_EXT2=y\n' in configlines and \ 'BR2_TARGET_ROOTFS_EXT2_SIZE="60M"\n' in configlines: configlines.remove('BR2_TARGET_ROOTFS_EXT2_SIZE="60M"\n') @@ -522,6 +521,17 @@ def fixup_config(sysinfo, configfile): configlines.remove('BR2_TARGET_ROOTFS_F2FS_SIZE="100M"\n') configlines.append('BR2_TARGET_ROOTFS_F2FS_SIZE="%s"\n' % ROOTFS_SIZE) + if 'BR2_TARGET_ROOTFS_UBIFS=y\n' in configlines and \ + 'BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=2048\n' in configlines: + configlines.remove('BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=2048\n') + configlines.append('BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=41610\n') + + if 'BR2_TARGET_ROOTFS_UBI=y\n' in configlines and \ + 'BR2_TARGET_ROOTFS_UBI_USE_CUSTOM_CONFIG=y\n' in configlines and \ + 'BR2_TARGET_ROOTFS_UBI_CUSTOM_CONFIG_FILE=""\n' in configlines: + configlines.remove('BR2_TARGET_ROOTFS_UBI_USE_CUSTOM_CONFIG=y\n') + configlines.remove('BR2_TARGET_ROOTFS_UBI_CUSTOM_CONFIG_FILE=""\n') + if 'BR2_TARGET_S500_BOOTLOADER=y\n' in configlines and \ 'BR2_TARGET_S500_BOOTLOADER_BOARD=""\n' in configlines: configlines.remove('BR2_TARGET_S500_BOOTLOADER=y\n') diff --git a/utils/getdeveloperlib.py b/utils/getdeveloperlib.py index e7d0d23e49e8..469360b801cf 100644 --- a/utils/getdeveloperlib.py +++ b/utils/getdeveloperlib.py @@ -25,7 +25,7 @@ def analyze_patch(patch): m = FIND_INFRA_IN_PATCH.match(line) if m: infras.add(m.group(2)) - if not line.startswith("+++ "): + if not line.startswith("+++ ") and not line.startswith("--- "): continue line.strip() fname = line[line.find("/") + 1:].strip()