From c5c5b6bcbe9df30dc44eef1a5c3587b98d9d81b0 Mon Sep 17 00:00:00 2001 From: Stefan Agner Date: Mon, 4 Oct 2021 22:00:47 +0200 Subject: [PATCH] Update buildroot to 2021.02.5 (#1566) Signed-off-by: Stefan Agner --- buildroot/CHANGES | 22 + buildroot/Config.in | 8 + buildroot/Config.in.legacy | 6 + buildroot/DEVELOPERS | 37 +- buildroot/Makefile | 4 +- buildroot/boot/arm-trusted-firmware/Config.in | 5 +- .../arm-trusted-firmware.mk | 8 +- buildroot/configs/pc_x86_64_bios_defconfig | 6 +- buildroot/configs/pc_x86_64_efi_defconfig | 6 +- .../docs/manual/adding-packages-qmake.txt | 2 +- buildroot/docs/manual/manual.html | 8 +- buildroot/docs/manual/manual.pdf | Bin 584364 -> 584360 bytes buildroot/docs/manual/manual.text | 12 +- buildroot/linux/Config.in | 10 +- buildroot/linux/linux.hash | 16 +- buildroot/package/alsa-utils/alsa-utils.mk | 1 - buildroot/package/bayer2rgb-neon/Config.in | 2 +- buildroot/package/belle-sip/belle-sip.mk | 1 + buildroot/package/busybox/udhcpc.script | 5 +- ...ares_nameser-h-as-a-public-interface.patch | 1115 +++++++++++++++++ buildroot/package/c-ares/c-ares.hash | 2 +- buildroot/package/c-ares/c-ares.mk | 5 +- buildroot/package/cjson/cjson.hash | 2 +- buildroot/package/cjson/cjson.mk | 2 +- buildroot/package/coreutils/coreutils.mk | 6 +- .../0002-Rewrite-dynamic-string-support.patch | 461 +++++++ .../cpio/0003-Fix-previous-commit.patch | 40 + buildroot/package/cpio/cpio.mk | 4 + buildroot/package/eigen/eigen.mk | 3 +- .../environment-setup/environment-setup | 8 +- buildroot/package/fetchmail/fetchmail.hash | 4 +- buildroot/package/fetchmail/fetchmail.mk | 2 +- buildroot/package/fluidsynth/fluidsynth.hash | 2 +- buildroot/package/fluidsynth/fluidsynth.mk | 2 +- buildroot/package/fontconfig/fontconfig.mk | 7 +- buildroot/package/gd/gd.hash | 4 +- buildroot/package/gd/gd.mk | 2 +- ...e-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch | 0 ...-pt_-dsp-regs-uapi_pt_-dsp-regs-on-G.patch | 0 .../0003-use-asm-sgidefs.h.patch | 0 .../0004-gdbserver-fix-build-for-m68k.patch | 0 ...fork-inferior-include-linux-ptrace.h.patch | 0 buildroot/package/gdb/Config.in.host | 2 +- buildroot/package/gdb/gdb.hash | 2 +- buildroot/package/gnuradio/Config.in | 6 - buildroot/package/gnuradio/gnuradio.mk | 6 - buildroot/package/gnutls/Config.in | 2 +- buildroot/package/gnutls/gnutls.hash | 4 +- buildroot/package/gnutls/gnutls.mk | 2 +- buildroot/package/go/go.hash | 4 +- buildroot/package/go/go.mk | 7 +- buildroot/package/haproxy/haproxy.hash | 4 +- buildroot/package/haproxy/haproxy.mk | 2 +- buildroot/package/iozone/iozone.mk | 4 +- buildroot/package/ipmiutil/ipmiutil.mk | 6 + buildroot/package/iputils/iputils.mk | 2 +- ...null-prototype-object-for-this-files.patch | 56 + buildroot/package/jszip/jszip.mk | 4 + ...issue-with-the-linker-from-Fedora-32.patch | 61 + buildroot/package/libarchive/libarchive.hash | 2 +- buildroot/package/libarchive/libarchive.mk | 3 +- .../package/libargtable2/libargtable2.mk | 8 +- ...ed-another-unsigned-integer-overflow.patch | 63 - ...xif-gps-ifd.c-fix-build-with-gcc-4.8.patch | 40 + ...002-fixed-a-incorrect-overflow-check.patch | 36 - buildroot/package/libexif/libexif.hash | 2 +- buildroot/package/libexif/libexif.mk | 8 +- ...re.ac-add-an-option-to-disable-tests.patch | 4 +- buildroot/package/libgcrypt/libgcrypt.hash | 8 +- buildroot/package/libgcrypt/libgcrypt.mk | 2 +- .../package/libmodsecurity/libmodsecurity.mk | 10 + buildroot/package/libopenssl/libopenssl.hash | 4 +- buildroot/package/libopenssl/libopenssl.mk | 2 +- buildroot/package/librsvg/librsvg.hash | 4 +- buildroot/package/librsvg/librsvg.mk | 2 +- buildroot/package/libshout/libshout.mk | 3 - buildroot/package/libssh/libssh.hash | 4 +- buildroot/package/libssh/libssh.mk | 2 +- .../package/linux-headers/Config.in.host | 12 +- ...ACK-only-build-and-install-localedef.patch | 0 ...y-on-GCC-to-4.8-and-binutils-to-2.24.patch | 0 ...y-parameter-warning-for-__sigsetjmp-.patch | 0 ...overflow-warning-in-pthread_cleanup_.patch | 0 .../localedef.hash | 2 +- buildroot/package/localedef/localedef.mk | 2 +- buildroot/package/mc/Config.in | 1 + buildroot/package/mc/mc.hash | 4 +- buildroot/package/mc/mc.mk | 2 +- ...-fix-build-on-32-bit-architectures-u.patch | 43 + buildroot/package/mosquitto/mosquitto.hash | 4 +- buildroot/package/mosquitto/mosquitto.mk | 2 +- ...ibpcap-dependencies-using-pkg-config.patch | 51 + buildroot/package/netsniff-ng/netsniff-ng.mk | 2 +- ...-of-endianness-for-cross-compilation.patch | 118 ++ buildroot/package/nginx/nginx.mk | 1 + buildroot/package/nodejs/nodejs.hash | 4 +- buildroot/package/nodejs/nodejs.mk | 2 +- .../0002-Checks-for-strtol_l-function.patch | 71 ++ .../openmpi/openmpi-mips32-fortran.cache | 1 + .../openmpi/openmpi-mips64-fortran.cache | 1 + buildroot/package/openssl/Config.in | 4 +- ...FromNtTimeNsec-aware-of-64-bit-time_.patch | 80 ++ buildroot/package/php/php.hash | 2 +- buildroot/package/php/php.mk | 2 +- buildroot/package/postgresql/postgresql.hash | 4 +- buildroot/package/postgresql/postgresql.mk | 2 +- ...c-Fix-TLS-offsets-computation-for-s3.patch | 43 + .../package/prosody/0001-enable-syslog.patch | 2 +- .../package/prosody/0002-add-pidfile.patch | 2 +- buildroot/package/prosody/prosody.hash | 8 +- buildroot/package/prosody/prosody.mk | 2 +- buildroot/package/protobuf/protobuf.mk | 2 +- buildroot/package/python-keyring/Config.in | 1 + buildroot/package/python-matplotlib/Config.in | 8 +- .../package/python-pillow/python-pillow.hash | 7 +- .../package/python-pillow/python-pillow.mk | 4 +- ...ng-libudev-on-systems-without-ldconf.patch | 4 +- .../package/python-secretstorage/Config.in | 1 + buildroot/package/python3/python3.hash | 6 +- buildroot/package/python3/python3.mk | 2 +- .../qt5base/0009-Fix-build-on-riscv32.patch | 45 + buildroot/package/qt5/qt5base/qt5base.mk | 2 +- buildroot/package/samba4/samba4.hash | 4 +- buildroot/package/samba4/samba4.mk | 2 +- ...-building-with-KMSDRM-support-if-EGL.patch | 433 +++++++ ...o-kmsdrm-SDL_kmsdrmvideo.c-fix-build.patch | 39 - buildroot/package/sdl2/Config.in | 5 + buildroot/package/sdl2/sdl2.mk | 10 +- buildroot/package/sox/sox.mk | 1 + buildroot/package/sqlite/sqlite.mk | 6 +- buildroot/package/swupdate/10-mongoose-args | 1 + buildroot/package/swupdate/Config.in | 7 + buildroot/package/swupdate/swupdate.mk | 35 +- .../package/swupdate/tmpfiles-swupdate.conf | 2 + ...-link-checker-before-accepting-click.patch | 37 + buildroot/package/sylpheed/sylpheed.mk | 4 + buildroot/package/tor/tor.hash | 2 +- buildroot/package/tor/tor.mk | 2 +- buildroot/package/uboot-tools/uboot-tools.mk | 14 +- buildroot/package/uhd/Config.in | 1 + buildroot/package/unbound/unbound.hash | 4 +- buildroot/package/unbound/unbound.mk | 2 +- buildroot/package/vim/vim.hash | 4 +- buildroot/package/vim/vim.mk | 2 +- ...-Add-feature-macros-to-more-C-files-.patch | 174 +++ .../package/x11r7/xapp_xrdb/xapp_xrdb.hash | 10 +- .../package/x11r7/xapp_xrdb/xapp_xrdb.mk | 4 +- .../package/x11r7/xapp_xwd/xapp_xwd.hash | 10 +- buildroot/package/x11r7/xapp_xwd/xapp_xwd.mk | 4 +- ...ne-HAVE_LIBBSD-when-libbsd-was-found.patch | 30 - .../x11r7/xlib_libXfont2/xlib_libXfont2.hash | 11 +- .../x11r7/xlib_libXfont2/xlib_libXfont2.mk | 4 +- .../x11r7/xlib_libXft/xlib_libXft.hash | 10 +- .../package/x11r7/xlib_libXft/xlib_libXft.mk | 4 +- .../0003-Fix-build-with-64-bits-time_t.patch | 95 ++ ...-libs-light-fix-tv_sec-printf-format.patch | 63 + ...libs-light-fix-tv_sec-fprintf-format.patch | 30 + ...2-Add-disable-demo-testsuite-options.patch | 94 ++ buildroot/package/xenomai/xenomai.mk | 7 +- .../zip/0008-fix-musl-static-build.patch | 20 + buildroot/support/misc/Vagrantfile | 2 +- .../support/testing/tests/boot/test_atf.py | 2 +- .../tests/package/test_docker_compose.py | 2 +- buildroot/toolchain/Config.in | 7 +- buildroot/utils/getdeveloperlib.py | 9 +- 165 files changed, 3543 insertions(+), 433 deletions(-) create mode 100644 buildroot/package/c-ares/0001-Provide-ares_nameser-h-as-a-public-interface.patch create mode 100644 buildroot/package/cpio/0002-Rewrite-dynamic-string-support.patch create mode 100644 buildroot/package/cpio/0003-Fix-previous-commit.patch rename buildroot/package/gdb/{10.1 => 10.2}/0001-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch (100%) rename buildroot/package/gdb/{10.1 => 10.2}/0002-sh-ptrace-Define-pt_-dsp-regs-uapi_pt_-dsp-regs-on-G.patch (100%) rename buildroot/package/gdb/{10.1 => 10.2}/0003-use-asm-sgidefs.h.patch (100%) rename buildroot/package/gdb/{10.1 => 10.2}/0004-gdbserver-fix-build-for-m68k.patch (100%) rename buildroot/package/gdb/{10.1 => 10.2}/0005-nat-fork-inferior-include-linux-ptrace.h.patch (100%) create mode 100644 buildroot/package/jszip/0001-fix-Use-a-null-prototype-object-for-this-files.patch create mode 100644 buildroot/package/kvm-unit-tests/0004-Fix-powerpc-issue-with-the-linker-from-Fedora-32.patch delete mode 100644 buildroot/package/libexif/0001-fixed-another-unsigned-integer-overflow.patch create mode 100644 buildroot/package/libexif/0001-libexif-exif-gps-ifd.c-fix-build-with-gcc-4.8.patch delete mode 100644 buildroot/package/libexif/0002-fixed-a-incorrect-overflow-check.patch rename buildroot/package/localedef/{2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2 => 2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e}/0001-HACK-only-build-and-install-localedef.patch (100%) rename buildroot/package/localedef/{2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2 => 2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e}/0002-relax-dependency-on-GCC-to-4.8-and-binutils-to-2.24.patch (100%) rename buildroot/package/localedef/{2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2 => 2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e}/0003-Fix-GCC-11-Warray-parameter-warning-for-__sigsetjmp-.patch (100%) rename buildroot/package/localedef/{2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2 => 2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e}/0004-Avoid-Wstringop-overflow-warning-in-pthread_cleanup_.patch (100%) rename buildroot/package/localedef/{2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2 => 2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e}/localedef.hash (70%) create mode 100644 buildroot/package/mesa3d/0005-src-util-futex.h-fix-build-on-32-bit-architectures-u.patch create mode 100644 buildroot/package/netsniff-ng/0001-Detect-libpcap-dependencies-using-pkg-config.patch create mode 100644 buildroot/package/nginx/0010-Allow-forcing-of-endianness-for-cross-compilation.patch create mode 100644 buildroot/package/ogre/0002-Checks-for-strtol_l-function.patch create mode 100644 buildroot/package/openvmtools/0012-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch create mode 100644 buildroot/package/prelink-cross/0001-src-rtld-dl-tls.c-Fix-TLS-offsets-computation-for-s3.patch create mode 100644 buildroot/package/qt5/qt5base/0009-Fix-build-on-riscv32.patch create mode 100644 buildroot/package/sdl2/0001-Buildsystem-Add-guards-for-not-building-with-KMSDRM-support-if-EGL.patch delete mode 100644 buildroot/package/sdl2/0001-src-video-kmsdrm-SDL_kmsdrmvideo.c-fix-build.patch create mode 100644 buildroot/package/swupdate/10-mongoose-args create mode 100644 buildroot/package/swupdate/tmpfiles-swupdate.conf create mode 100644 buildroot/package/sylpheed/0001-harden-link-checker-before-accepting-click.patch create mode 100644 buildroot/package/wlroots/0001-Add-feature-macros-to-more-C-files-.patch delete mode 100644 buildroot/package/x11r7/xlib_libXfont2/0001-configure-define-HAVE_LIBBSD-when-libbsd-was-found.patch create mode 100644 buildroot/package/xen/0003-Fix-build-with-64-bits-time_t.patch create mode 100644 buildroot/package/xen/0004-libs-light-fix-tv_sec-printf-format.patch create mode 100644 buildroot/package/xen/0005-libs-light-fix-tv_sec-fprintf-format.patch create mode 100644 buildroot/package/xenomai/3.0.10/0002-Add-disable-demo-testsuite-options.patch create mode 100644 buildroot/package/zip/0008-fix-musl-static-build.patch diff --git a/buildroot/CHANGES b/buildroot/CHANGES index a692ed7ba..63cb40721 100644 --- a/buildroot/CHANGES +++ b/buildroot/CHANGES @@ -1,3 +1,25 @@ +2021.02.5, released September 15th, 2021 + + Important / security related fixes. + + Toolchain: Disable fortify support for Microblaze as it is not + currently working. + + Updated/fixed packages: alsa-utils, arm-trusted-firmware, + bayer2rgb-neon, belle-sip, busybox, c-ares, cjson, coreutils, + cpio, eigen, environt-setup, fetchmail, fluidsynth, + fontconfig, gd, gdb, gnuradio, gnutls, go, haproxy, ipmiutil, + iputils, jszip, kvm-unit-tests, libarchive, libexif, + libgcrypt, libmodsecurity, libopenssl, librsvg, libshout, + libssh, linux, localedef, mc, mesa3d, mosquitto, netsniff-ng, + nginx, nodejs, ogre, openmpi, openvmtools, php, postgresql, + prelink-cross, prosody, protobuf, python-keyring, + python-matplotlib, python-pillow, python-pyudev, + python-secretstorage, python3, qt5base, samba4, sdl2, sox, + swupdate, sylpheed, tor, uboot-tools, uhd, unbound, vim, + wlroots, xapp_xrdb, xapp_xwd, xen, xenomai, xlib_libXfont2, + xlib_libXft, zip + 2021.02.4, released August 10th, 2021 Important / security related fixes. diff --git a/buildroot/Config.in b/buildroot/Config.in index 48c373af9..dad39a583 100644 --- a/buildroot/Config.in +++ b/buildroot/Config.in @@ -835,8 +835,15 @@ endchoice comment "RELocation Read Only (RELRO) needs shared libraries" depends on !BR2_SHARED_LIBS +config BR2_FORTIFY_SOURCE_ARCH_SUPPORTS + bool + default y + # Microblaze glibc toolchains don't work with Fortify Source enabled + depends on !BR2_microblaze + choice bool "Buffer-overflow Detection (FORTIFY_SOURCE)" + depends on BR2_FORTIFY_SOURCE_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_USES_GLIBC depends on !BR2_OPTIMIZE_0 help @@ -877,6 +884,7 @@ config BR2_FORTIFY_SOURCE_2 endchoice comment "Fortify Source needs a glibc toolchain and optimization" + depends on BR2_FORTIFY_SOURCE_ARCH_SUPPORTS depends on (!BR2_TOOLCHAIN_USES_GLIBC || BR2_OPTIMIZE_0) endmenu diff --git a/buildroot/Config.in.legacy b/buildroot/Config.in.legacy index 530c2ba82..020739348 100644 --- a/buildroot/Config.in.legacy +++ b/buildroot/Config.in.legacy @@ -146,6 +146,12 @@ endif comment "Legacy options removed in 2021.02" +config BR2_PACKAGE_GNURADIO_PAGER + bool "gnuradio gr-flex support removed" + select BR2_LEGACY + help + gr-flex has been removed from gnuradio since version 3.8.0.0. + config BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE_IMAGE bool "sconeserver http::sconesite::image removed" select BR2_LEGACY diff --git a/buildroot/DEVELOPERS b/buildroot/DEVELOPERS index 3b18c5683..7018aa31b 100644 --- a/buildroot/DEVELOPERS +++ b/buildroot/DEVELOPERS @@ -1024,6 +1024,9 @@ F: package/xapian/ N: Giulio Benetti F: package/at/ +F: package/binutils/ +F: package/gcc/ +F: package/harfbuzz/ F: package/libfuse3/ F: package/libnspr/ F: package/libnss/ @@ -1032,6 +1035,7 @@ F: package/nfs-utils/ F: package/sunxi-mali-mainline/ F: package/sunxi-mali-mainline-driver/ F: package/udisks/ +F: toolchain/ N: Gregory Dymarek F: package/ding-libs/ @@ -1821,36 +1825,6 @@ F: arch/Config.in.xtensa N: Maxim Kochetkov F: package/timescaledb/ -N: Maxime Hadjinlian -F: package/babeld/ -F: package/dante/ -F: package/faifa/ -F: package/initscripts/ -F: package/intel-microcode/ -F: package/iucode-tool/ -F: package/jasper/ -F: package/kodi/ -F: package/libass/ -F: package/libbluray/ -F: package/libcdio/ -F: package/libcofi/ -F: package/libenca/ -F: package/libmodplug/ -F: package/libnfs/ -F: package/libplist/ -F: package/libshairplay/ -F: package/linux-zigbee/ -F: package/netcat-openbsd/ -F: package/open-plc-utils/ -F: package/rpi-firmware/ -F: package/rpi-userland/ -F: package/rtmpdump/ -F: package/skeleton/ -F: package/systemd/ -F: package/systemd-bootchart/ -F: package/tinyalsa/ -F: package/tinyxml/ - N: Michael Durrant F: board/arcturus/ F: configs/arcturus_ucp1020_defconfig @@ -2500,9 +2474,6 @@ F: configs/rock_pi_n10_defconfig F: configs/rockpro64_defconfig F: package/arm-gnu-a-toolchain/ -N: Sven Fischer -F: package/qt5/qt5remoteobjects/ - N: Sven Haardiek F: package/lcdproc/ F: package/python-influxdb/ diff --git a/buildroot/Makefile b/buildroot/Makefile index c6be0ca7d..013b29edb 100644 --- a/buildroot/Makefile +++ b/buildroot/Makefile @@ -92,9 +92,9 @@ all: .PHONY: all # Set and export the version string -export BR2_VERSION := 2021.02.4 +export BR2_VERSION := 2021.02.5 # Actual time the release is cut (for reproducible builds) -BR2_VERSION_EPOCH = 1628627000 +BR2_VERSION_EPOCH = 1631718000 # Save running make version since it's clobbered by the make package RUNNING_MAKE_VERSION := $(MAKE_VERSION) diff --git a/buildroot/boot/arm-trusted-firmware/Config.in b/buildroot/boot/arm-trusted-firmware/Config.in index 26c12670d..f885c7c66 100644 --- a/buildroot/boot/arm-trusted-firmware/Config.in +++ b/buildroot/boot/arm-trusted-firmware/Config.in @@ -191,7 +191,10 @@ config BR2_TARGET_ARM_TRUSTED_FIRMWARE_SSP config BR2_TARGET_ARM_TRUSTED_FIRMWARE_SSP_LEVEL string - default "none" if !BR2_TARGET_ARM_TRUSTED_FIRMWARE_SSP + # While newer versions of TF-A support "none" as + # ENABLE_STACK_PROTECTOR value, older versions (e.g 2.0) only + # supported "0" to disable SSP. + default "0" if !BR2_TARGET_ARM_TRUSTED_FIRMWARE_SSP default "default" if BR2_SSP_REGULAR default "strong" if BR2_SSP_STRONG default "all" if BR2_SSP_ALL diff --git a/buildroot/boot/arm-trusted-firmware/arm-trusted-firmware.mk b/buildroot/boot/arm-trusted-firmware/arm-trusted-firmware.mk index d06bc336e..d6979a12c 100644 --- a/buildroot/boot/arm-trusted-firmware/arm-trusted-firmware.mk +++ b/buildroot/boot/arm-trusted-firmware/arm-trusted-firmware.mk @@ -51,7 +51,10 @@ endif ARM_TRUSTED_FIRMWARE_MAKE_OPTS += \ CROSS_COMPILE="$(TARGET_CROSS)" \ $(call qstrip,$(BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES)) \ - PLAT=$(ARM_TRUSTED_FIRMWARE_PLATFORM) \ + PLAT=$(ARM_TRUSTED_FIRMWARE_PLATFORM) + +ARM_TRUSTED_FIRMWARE_MAKE_ENV += \ + $(TARGET_MAKE_ENV) \ ENABLE_STACK_PROTECTOR=$(call qstrip,$(BR2_TARGET_ARM_TRUSTED_FIRMWARE_SSP_LEVEL)) ifeq ($(BR2_ARM_CPU_ARMV7A),y) @@ -155,7 +158,8 @@ ARM_TRUSTED_FIRMWARE_MAKE_TARGETS += \ define ARM_TRUSTED_FIRMWARE_BUILD_CMDS $(ARM_TRUSTED_FIRMWARE_BUILD_FIPTOOL) - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(ARM_TRUSTED_FIRMWARE_MAKE_OPTS) \ + $(ARM_TRUSTED_FIRMWARE_MAKE_ENV) $(MAKE) -C $(@D) \ + $(ARM_TRUSTED_FIRMWARE_MAKE_OPTS) \ $(ARM_TRUSTED_FIRMWARE_MAKE_TARGETS) $(ARM_TRUSTED_FIRMWARE_BL31_UBOOT_BUILD) endef diff --git a/buildroot/configs/pc_x86_64_bios_defconfig b/buildroot/configs/pc_x86_64_bios_defconfig index 1c1f7a366..3290a1dda 100644 --- a/buildroot/configs/pc_x86_64_bios_defconfig +++ b/buildroot/configs/pc_x86_64_bios_defconfig @@ -23,13 +23,13 @@ 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.18 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_18=y +# Linux headers same as kernel, a 4.19 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.18.10" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.204" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/pc/linux.config" BR2_LINUX_KERNEL_INSTALL_TARGET=y diff --git a/buildroot/configs/pc_x86_64_efi_defconfig b/buildroot/configs/pc_x86_64_efi_defconfig index 984fc8f92..18d2c477d 100644 --- a/buildroot/configs/pc_x86_64_efi_defconfig +++ b/buildroot/configs/pc_x86_64_efi_defconfig @@ -25,13 +25,13 @@ 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.18 series -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_18=y +# Linux headers same as kernel, a 4.19 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y # Kernel BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.18.10" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.204" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/pc/linux.config" BR2_LINUX_KERNEL_INSTALL_TARGET=y diff --git a/buildroot/docs/manual/adding-packages-qmake.txt b/buildroot/docs/manual/adding-packages-qmake.txt index c7e6ff354..699d082aa 100644 --- a/buildroot/docs/manual/adding-packages-qmake.txt +++ b/buildroot/docs/manual/adding-packages-qmake.txt @@ -80,6 +80,6 @@ also be defined. to the +make+ command during the target installation step. By default, +install+. -* +LIBFOO_SYNC_HEADERS+, to run syncqt.pl before qmake. Some packages +* +LIBFOO_SYNC_QT_HEADERS+, to run syncqt.pl before qmake. Some packages need this to have a properly populated include directory before running the build. diff --git a/buildroot/docs/manual/manual.html b/buildroot/docs/manual/manual.html index 8919f2d5a..c4c26c91a 100644 --- a/buildroot/docs/manual/manual.html +++ b/buildroot/docs/manual/manual.html @@ -1,8 +1,8 @@ -The Buildroot user manual

The Buildroot user manual


Table of Contents

I. Getting started
1. About Buildroot
2. System requirements
2.1. Mandatory packages
2.2. Optional packages
3. Getting Buildroot
4. Buildroot quick start
5. Community resources
II. User guide
6. Buildroot configuration
6.1. Cross-compilation toolchain
6.2. /dev management
6.3. init system
7. Configuration of other components
8. General Buildroot usage
8.1. make tips
8.2. Understanding when a full rebuild is necessary
8.3. Understanding how to rebuild packages
8.4. Offline builds
8.5. Building out-of-tree
8.6. Environment variables
8.7. Dealing efficiently with filesystem images
8.8. Details about packages
8.9. Graphing the dependencies between packages
8.10. Graphing the build duration
8.11. Graphing the filesystem size contribution of packages
8.12. Top-level parallel build
8.13. Integration with Eclipse
8.14. Advanced usage
9. Project-specific customization
9.1. Recommended directory structure
9.2. Keeping customizations outside of Buildroot
9.3. Storing the Buildroot configuration
9.4. Storing the configuration of other components
9.5. Customizing the generated target filesystem
9.6. Adding custom user accounts
9.7. Customization after the images have been created
9.8. Adding project-specific patches
9.9. Adding project-specific packages
9.10. Quick guide to storing your project-specific customizations
10. Using SELinux in Buildroot
10.1. Enabling SELinux support
10.2. SELinux policy tweaking
11. Frequently Asked Questions & Troubleshooting
11.1. The boot hangs after Starting network…
11.2. Why is there no compiler on the target?
11.3. Why are there no development files on the target?
11.4. Why is there no documentation on the target?
11.5. Why are some packages not visible in the Buildroot config menu?
11.6. Why not use the target directory as a chroot directory?
11.7. Why doesn’t Buildroot generate binary packages (.deb, .ipkg…)?
11.8. How to speed-up the build process?
12. Known issues
13. Legal notice and licensing
13.1. Complying with open source licenses
13.2. Complying with the Buildroot license
14. Beyond Buildroot
14.1. Boot the generated images
14.2. Chroot
III. Developer guide
15. How Buildroot works
16. Coding style
16.1. Config.in file
16.2. The .mk file
16.3. The documentation
16.4. Support scripts
17. Adding support for a particular board
18. Adding new packages to Buildroot
18.1. Package directory
18.2. Config files
18.3. The .mk file
18.4. The .hash file
18.5. Infrastructure for packages with specific build systems
18.6. Infrastructure for autotools-based packages
18.7. Infrastructure for CMake-based packages
18.8. Infrastructure for Python packages
18.9. Infrastructure for LuaRocks-based packages
18.10. Infrastructure for Perl/CPAN packages
18.11. Infrastructure for virtual packages
18.12. Infrastructure for packages using kconfig for configuration files
18.13. Infrastructure for rebar-based packages
18.14. Infrastructure for Waf-based packages
18.15. Infrastructure for Meson-based packages
18.16. Integration of Cargo-based packages
18.17. Infrastructure for Go packages
18.18. Infrastructure for QMake-based packages
18.19. Infrastructure for packages building kernel modules
18.20. Infrastructure for asciidoc documents
18.21. Infrastructure specific to the Linux kernel package
18.22. Hooks available in the various build steps
18.23. Gettext integration and interaction with packages
18.24. Tips and tricks
18.25. Conclusion
19. Patching a package
19.1. Providing patches
19.2. How patches are applied
19.3. Format and licensing of the package patches
19.4. Integrating patches found on the Web
20. Download infrastructure
21. Debugging Buildroot
22. Contributing to Buildroot
22.1. Reproducing, analyzing and fixing bugs
22.2. Analyzing and fixing autobuild failures
22.3. Reviewing and testing patches
22.4. Work on items from the TODO list
22.5. Submitting patches
22.6. Reporting issues/bugs or getting help
22.7. Using the run-tests framework
23. DEVELOPERS file and get-developers
24. Release Engineering
24.1. Releases
24.2. Development
IV. Appendix
25. Makedev syntax documentation
26. Makeusers syntax documentation
27. Migrating from older Buildroot versions
27.1. Migrating to 2016.11
27.2. Migrating to 2017.08

Buildroot 2021.02.4 manual generated on 2021-08-10 -20:33:48 UTC from git revision 004a792dcf

The Buildroot manual is written by the Buildroot developers. +The Buildroot user manual

The Buildroot user manual


Table of Contents

I. Getting started
1. About Buildroot
2. System requirements
2.1. Mandatory packages
2.2. Optional packages
3. Getting Buildroot
4. Buildroot quick start
5. Community resources
II. User guide
6. Buildroot configuration
6.1. Cross-compilation toolchain
6.2. /dev management
6.3. init system
7. Configuration of other components
8. General Buildroot usage
8.1. make tips
8.2. Understanding when a full rebuild is necessary
8.3. Understanding how to rebuild packages
8.4. Offline builds
8.5. Building out-of-tree
8.6. Environment variables
8.7. Dealing efficiently with filesystem images
8.8. Details about packages
8.9. Graphing the dependencies between packages
8.10. Graphing the build duration
8.11. Graphing the filesystem size contribution of packages
8.12. Top-level parallel build
8.13. Integration with Eclipse
8.14. Advanced usage
9. Project-specific customization
9.1. Recommended directory structure
9.2. Keeping customizations outside of Buildroot
9.3. Storing the Buildroot configuration
9.4. Storing the configuration of other components
9.5. Customizing the generated target filesystem
9.6. Adding custom user accounts
9.7. Customization after the images have been created
9.8. Adding project-specific patches
9.9. Adding project-specific packages
9.10. Quick guide to storing your project-specific customizations
10. Using SELinux in Buildroot
10.1. Enabling SELinux support
10.2. SELinux policy tweaking
11. Frequently Asked Questions & Troubleshooting
11.1. The boot hangs after Starting network…
11.2. Why is there no compiler on the target?
11.3. Why are there no development files on the target?
11.4. Why is there no documentation on the target?
11.5. Why are some packages not visible in the Buildroot config menu?
11.6. Why not use the target directory as a chroot directory?
11.7. Why doesn’t Buildroot generate binary packages (.deb, .ipkg…)?
11.8. How to speed-up the build process?
12. Known issues
13. Legal notice and licensing
13.1. Complying with open source licenses
13.2. Complying with the Buildroot license
14. Beyond Buildroot
14.1. Boot the generated images
14.2. Chroot
III. Developer guide
15. How Buildroot works
16. Coding style
16.1. Config.in file
16.2. The .mk file
16.3. The documentation
16.4. Support scripts
17. Adding support for a particular board
18. Adding new packages to Buildroot
18.1. Package directory
18.2. Config files
18.3. The .mk file
18.4. The .hash file
18.5. Infrastructure for packages with specific build systems
18.6. Infrastructure for autotools-based packages
18.7. Infrastructure for CMake-based packages
18.8. Infrastructure for Python packages
18.9. Infrastructure for LuaRocks-based packages
18.10. Infrastructure for Perl/CPAN packages
18.11. Infrastructure for virtual packages
18.12. Infrastructure for packages using kconfig for configuration files
18.13. Infrastructure for rebar-based packages
18.14. Infrastructure for Waf-based packages
18.15. Infrastructure for Meson-based packages
18.16. Integration of Cargo-based packages
18.17. Infrastructure for Go packages
18.18. Infrastructure for QMake-based packages
18.19. Infrastructure for packages building kernel modules
18.20. Infrastructure for asciidoc documents
18.21. Infrastructure specific to the Linux kernel package
18.22. Hooks available in the various build steps
18.23. Gettext integration and interaction with packages
18.24. Tips and tricks
18.25. Conclusion
19. Patching a package
19.1. Providing patches
19.2. How patches are applied
19.3. Format and licensing of the package patches
19.4. Integrating patches found on the Web
20. Download infrastructure
21. Debugging Buildroot
22. Contributing to Buildroot
22.1. Reproducing, analyzing and fixing bugs
22.2. Analyzing and fixing autobuild failures
22.3. Reviewing and testing patches
22.4. Work on items from the TODO list
22.5. Submitting patches
22.6. Reporting issues/bugs or getting help
22.7. Using the run-tests framework
23. DEVELOPERS file and get-developers
24. Release Engineering
24.1. Releases
24.2. Development
IV. Appendix
25. Makedev syntax documentation
26. Makeusers syntax documentation
27. Migrating from older Buildroot versions
27.1. Migrating to 2016.11
27.2. Migrating to 2017.08

Buildroot 2021.02.5 manual generated on 2021-09-15 +15:20:55 UTC from git revision 767a2da72f

The Buildroot manual is written by the Buildroot developers. It is licensed under the GNU General Public License, version 2. Refer to the -COPYING +COPYING file in the Buildroot sources for the full text of this license.

Copyright © 2004-2020 The Buildroot developers

logo.png

Part I. Getting started

Chapter 1. About Buildroot

Buildroot is a tool that simplifies and automates the process of building a complete Linux system for an embedded system, using cross-compilation.

In order to achieve this, Buildroot is able to generate a @@ -4555,7 +4555,7 @@ also be defined.

    make command during the target installation step. By default, install.
  • -LIBFOO_SYNC_HEADERS, to run syncqt.pl before qmake. Some packages +LIBFOO_SYNC_QT_HEADERS, to run syncqt.pl before qmake. Some packages need this to have a properly populated include directory before running the build.

18.19. Infrastructure for packages building kernel modules

Buildroot offers a helper infrastructure to make it easy to write packages that diff --git a/buildroot/docs/manual/manual.pdf b/buildroot/docs/manual/manual.pdf index 9464614f635f400d4a1702cd0aa6bbbd4fcc40f1..272d1a2d7937711aee83b52f654c4dfdec6e702a 100644 GIT binary patch delta 13374 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 A$^ZZW diff --git a/buildroot/docs/manual/manual.text b/buildroot/docs/manual/manual.text index 4a303d2d5..fbf53c5ef 100644 --- a/buildroot/docs/manual/manual.text +++ b/buildroot/docs/manual/manual.text @@ -174,13 +174,13 @@ List of Examples --------------------------------------------------------------------- -Buildroot 2021.02.4 manual generated on 2021-08-10 20:33:55 UTC from -git revision 004a792dcf +Buildroot 2021.02.5 manual generated on 2021-09-15 15:21:07 UTC from +git revision 767a2da72f The Buildroot manual is written by the Buildroot developers. It is licensed under the GNU General Public License, version 2. Refer to the COPYING [http://git.buildroot.org/buildroot/tree/COPYING?id= -004a792dcf10e6c474070c9571f7504411e786cc] file in the Buildroot +767a2da72fc1690fde33b665851f20492ba5cd75] file in the Buildroot sources for the full text of this license. Copyright © 2004-2020 The Buildroot developers @@ -6517,9 +6517,9 @@ also be defined. * LIBFOO_INSTALL_TARGET_OPTS, to specify additional targets to pass to the make command during the target installation step. By default, install. - * LIBFOO_SYNC_HEADERS, to run syncqt.pl before qmake. Some packages - need this to have a properly populated include directory before - running the build. + * LIBFOO_SYNC_QT_HEADERS, to run syncqt.pl before qmake. Some + packages need this to have a properly populated include directory + before running the build. 18.19. Infrastructure for packages building kernel modules diff --git a/buildroot/linux/Config.in b/buildroot/linux/Config.in index be1a850cc..ac279aaee 100644 --- a/buildroot/linux/Config.in +++ b/buildroot/linux/Config.in @@ -31,7 +31,7 @@ config BR2_LINUX_KERNEL_LATEST_VERSION bool "Latest version (5.10)" config BR2_LINUX_KERNEL_LATEST_CIP_VERSION - bool "Latest CIP SLTS version (4.19.182-cip45)" + bool "Latest CIP SLTS version (4.19.198-cip54)" help CIP launched in the spring of 2016 to address the needs of organizations in industries such as power generation and @@ -50,7 +50,7 @@ config BR2_LINUX_KERNEL_LATEST_CIP_VERSION https://www.cip-project.org config BR2_LINUX_KERNEL_LATEST_CIP_RT_VERSION - bool "Latest CIP RT SLTS version (4.19.165-cip41-rt18)" + bool "Latest CIP RT SLTS version (4.19.198-cip54-rt21)" help Same as the CIP version, but this is the PREEMPT_RT realtime variant. @@ -125,9 +125,9 @@ endif config BR2_LINUX_KERNEL_VERSION string - default "5.10.57" if BR2_LINUX_KERNEL_LATEST_VERSION - default "4.19.182-cip45" if BR2_LINUX_KERNEL_LATEST_CIP_VERSION - default "4.19.165-cip41-rt18" if BR2_LINUX_KERNEL_LATEST_CIP_RT_VERSION + default "5.10.64" if BR2_LINUX_KERNEL_LATEST_VERSION + default "4.19.198-cip54" if BR2_LINUX_KERNEL_LATEST_CIP_VERSION + default "4.19.198-cip54-rt21" if BR2_LINUX_KERNEL_LATEST_CIP_RT_VERSION default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \ if BR2_LINUX_KERNEL_CUSTOM_VERSION default "custom" if BR2_LINUX_KERNEL_CUSTOM_TARBALL diff --git a/buildroot/linux/linux.hash b/buildroot/linux/linux.hash index 2b0240e0a..1d514eff7 100644 --- a/buildroot/linux/linux.hash +++ b/buildroot/linux/linux.hash @@ -1,14 +1,14 @@ # From https://www.kernel.org/pub/linux/kernel/v5.x/sha256sums.asc -sha256 00bbaeaac17f82d9a6d93cbc42cafd39d3b2fa3a6087333503d2344fa5e3142d linux-5.10.57.tar.xz -sha256 0471d0ccb7953cdae7d235192588ac5d72344851969962676d1703e69084a37f linux-5.4.139.tar.xz +sha256 3eb84bd24a2de2b4749314e34597c02401c5d6831b055ed5224adb405c35e30a linux-5.10.64.tar.xz +sha256 5cf7782ec2e91417edf0d5e6555da6d556962c8985e33ba9e7dadba5cbdc68f9 linux-5.4.145.tar.xz # From https://www.kernel.org/pub/linux/kernel/v4.x/sha256sums.asc -sha256 4bdf66494be66a1da857f09b40b95026a0388e373fb01a206c60f67834746cb4 linux-4.4.279.tar.xz -sha256 21edb57dea0fe04a51fcfb6d4e8c0c052787a20015bc74a0a0e63329601f2e07 linux-4.9.279.tar.xz -sha256 7f235d454d703112e86574150652807f42abead92f3837da32ea86b4f148b371 linux-4.14.243.tar.xz -sha256 f2827d0506622fcae0dae0bc72b2f016469210f50c2d3dd1bdd1211a813dca27 linux-4.19.202.tar.xz +sha256 02252f0002e65306f6765089e8bb51f621f4eaea974348c31991b0c508243bb5 linux-4.4.283.tar.xz +sha256 67727389771a858406f773b4db62d7d3248209e26120df47507ea4a8898d2e15 linux-4.9.282.tar.xz +sha256 9c5612ef428441b7c85cf211a455c06ce695b81a9a40c064d0ea424dd08bef3a linux-4.14.246.tar.xz +sha256 b7eb776f408b3ea71c97dde4888cc4549edf925a18cd158e7c9681d6ffa684c0 linux-4.19.206.tar.xz # Locally computed -sha256 9f1de83c5c2bb582a33bd4ee892d45671901cd06af9dc159f0f499f1b5265b20 linux-cip-4.19.182-cip45.tar.gz -sha256 0eeba6d6ecc45cf8f16458842b64d22e7064b9de9c31c11d1c395b08a47e3855 linux-cip-4.19.165-cip41-rt18.tar.gz +sha256 e6fc0a999a180ad272b08ff71cbc67f2d3fdc6773d4a8069aefb8781b8e07821 linux-cip-4.19.198-cip54.tar.gz +sha256 449668d678e458ddaf30f944b7ca7f5ce6ea6664f57d43ea4eb90b176e03b9cb linux-cip-4.19.198-cip54-rt21.tar.gz # Licenses hashes sha256 fb5a425bd3b3cd6071a3a9aff9909a859e7c1158d54d32e07658398cd67eb6a0 COPYING diff --git a/buildroot/package/alsa-utils/alsa-utils.mk b/buildroot/package/alsa-utils/alsa-utils.mk index 2658c827a..427280c1e 100644 --- a/buildroot/package/alsa-utils/alsa-utils.mk +++ b/buildroot/package/alsa-utils/alsa-utils.mk @@ -77,7 +77,6 @@ define ALSA_UTILS_INSTALL_TARGET_CMDS fi if [ -x "$(TARGET_DIR)/usr/sbin/alsactl" ]; then \ mkdir -p $(TARGET_DIR)/usr/share/; \ - rm -rf $(TARGET_DIR)/usr/share/alsa/; \ cp -rdpf $(STAGING_DIR)/usr/share/alsa/ $(TARGET_DIR)/usr/share/alsa/; \ fi endef diff --git a/buildroot/package/bayer2rgb-neon/Config.in b/buildroot/package/bayer2rgb-neon/Config.in index ed065c1ed..8fd18b4fa 100644 --- a/buildroot/package/bayer2rgb-neon/Config.in +++ b/buildroot/package/bayer2rgb-neon/Config.in @@ -9,7 +9,7 @@ config BR2_PACKAGE_BAYER2RGB_NEON to decode raw camera bayer to RGB using NEON hardware acceleration. - https://git.phytec.de/bayer2rgb-neon/ + https://gitlab-ext.sigma-chemnitz.de/ensc/bayer2rgb comment "bayer2rgb-neon needs a toolchain w/ C++, dynamic library, gcc >= 4.9" depends on BR2_arm && BR2_ARM_CPU_HAS_NEON diff --git a/buildroot/package/belle-sip/belle-sip.mk b/buildroot/package/belle-sip/belle-sip.mk index 23b60e51f..11b96f3fd 100644 --- a/buildroot/package/belle-sip/belle-sip.mk +++ b/buildroot/package/belle-sip/belle-sip.mk @@ -9,6 +9,7 @@ BELLE_SIP_SITE = \ https://gitlab.linphone.org/BC/public/belle-sip/-/archive/$(BELLE_SIP_VERSION) BELLE_SIP_LICENSE = GPL-3.0+ BELLE_SIP_LICENSE_FILES = LICENSE.txt +BELLE_SIP_CPE_ID_VENDOR = linphone BELLE_SIP_INSTALL_STAGING = YES BELLE_SIP_DEPENDENCIES = \ bctoolbox \ diff --git a/buildroot/package/busybox/udhcpc.script b/buildroot/package/busybox/udhcpc.script index c73ad6c2e..74dc5532b 100755 --- a/buildroot/package/busybox/udhcpc.script +++ b/buildroot/package/busybox/udhcpc.script @@ -4,6 +4,7 @@ [ -z "$1" ] && echo "Error: should be called from udhcpc" && exit 1 +ACTION="$1" RESOLV_CONF="/etc/resolv.conf" [ -e $RESOLV_CONF ] || touch $RESOLV_CONF [ -n "$broadcast" ] && BROADCAST="broadcast $broadcast" @@ -29,7 +30,7 @@ wait_for_ipv6_default_route() { printf " timeout!\n" } -case "$1" in +case "$ACTION" in deconfig) /sbin/ifconfig $interface up /sbin/ifconfig $interface 0.0.0.0 @@ -115,7 +116,7 @@ esac HOOK_DIR="$0.d" for hook in "${HOOK_DIR}/"*; do [ -f "${hook}" -a -x "${hook}" ] || continue - "${hook}" "${@}" + "${hook}" "$ACTION" done exit 0 diff --git a/buildroot/package/c-ares/0001-Provide-ares_nameser-h-as-a-public-interface.patch b/buildroot/package/c-ares/0001-Provide-ares_nameser-h-as-a-public-interface.patch new file mode 100644 index 000000000..f8fc0be25 --- /dev/null +++ b/buildroot/package/c-ares/0001-Provide-ares_nameser-h-as-a-public-interface.patch @@ -0,0 +1,1115 @@ +From 883b0dd33f62ea64f4cc826e3a8285bfe1929a7f Mon Sep 17 00:00:00 2001 +From: Felix Yan +Date: Wed, 18 Aug 2021 01:32:44 +0800 +Subject: [PATCH] Provide ares_nameser.h as a public interface (#417) + +NodeJS needs ares_nameser.h as a pubic header. + +Fixes: #415 +Fix By: Felix Yan (@felixonmars) + +[Retrieved from: +https://github.com/c-ares/c-ares/commit/7712fcd17847998cf1ee3071284ec50c5b3c1978] +Signed-off-by: Fabrice Fontaine +[Rebased on 1.17.2 and regenerated with --no-renames for stable] +Signed-off-by: Peter Korsgaard +--- + CMakeLists.txt | 6 + + configure.ac | 14 ++ + include/CMakeLists.txt | 2 +- + include/Makefile.am | 2 +- + include/ares_build.h.cmake | 2 + + include/ares_build.h.in | 3 + + include/ares_nameser.h | 484 +++++++++++++++++++++++++++++++++++++ + src/lib/Makefile.inc | 1 - + src/lib/ares_nameser.h | 482 ------------------------------------ + 9 files changed, 511 insertions(+), 485 deletions(-) + create mode 100644 include/ares_nameser.h + delete mode 100644 src/lib/ares_nameser.h + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 3f42d14..28f8e01 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -557,6 +557,12 @@ ENDIF() + IF (HAVE_WINDOWS_H) + SET (CARES_HAVE_WINDOWS_H 1) + ENDIF() ++IF (HAVE_ARPA_NAMESER_H) ++ SET (CARES_HAVE_ARPA_NAMESER_H 1) ++ENDIF() ++IF (HAVE_ARPA_NAMESER_COMPAT_H) ++ SET (CARES_HAVE_ARPA_NAMESER_COMPAT_H 1) ++ENDIF() + + # Record toplevel CMakeLists.txt path + set(CARES_TOPLEVEL_DIR "${CMAKE_CURRENT_SOURCE_DIR}") +diff --git a/configure.ac b/configure.ac +index c21b8ff..1ba8a8e 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -547,6 +547,20 @@ dnl *Sigh* these are needed in order for net/if.h to get properly detected. + ] + ) + ++dnl Test and set CARES_HAVE_ARPA_NAMESER_H / CARES_HAVE_ARPA_NAMESER_COMPAT_H ++AC_CHECK_DECL([HAVE_ARPA_NAMESER_H], ++[ ++CARES_DEFINE_UNQUOTED([CARES_HAVE_ARPA_NAMESER_H]) ++], ++[] ++) ++AC_CHECK_DECL([HAVE_ARPA_NAMESER_COMPAT_H], ++[ ++CARES_DEFINE_UNQUOTED([CARES_HAVE_ARPA_NAMESER_COMPAT_H]) ++], ++[] ++) ++ + dnl Checks for typedefs, structures, and compiler characteristics. + AC_C_CONST + AC_TYPE_SIZE_T +diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt +index 439e7bb..3321956 100644 +--- a/include/CMakeLists.txt ++++ b/include/CMakeLists.txt +@@ -3,6 +3,6 @@ CONFIGURE_FILE (ares_build.h.cmake ${PROJECT_BINARY_DIR}/ares_build.h) + + # Headers installation target + IF (CARES_INSTALL) +- SET (CARES_HEADERS ares.h ares_version.h "${PROJECT_BINARY_DIR}/ares_build.h" ares_rules.h ares_dns.h) ++ SET (CARES_HEADERS ares.h ares_version.h "${PROJECT_BINARY_DIR}/ares_build.h" ares_rules.h ares_dns.h ares_nameser.h) + INSTALL (FILES ${CARES_HEADERS} COMPONENT Devel DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) + ENDIF () +diff --git a/include/Makefile.am b/include/Makefile.am +index 125a686..d208bec 100644 +--- a/include/Makefile.am ++++ b/include/Makefile.am +@@ -2,6 +2,6 @@ AUTOMAKE_OPTIONS = foreign nostdinc 1.9.6 + ACLOCAL_AMFLAGS = -I m4 --install + + # what headers to install on 'make install': +-include_HEADERS = ares.h ares_version.h ares_build.h ares_rules.h ares_dns.h ++include_HEADERS = ares.h ares_version.h ares_build.h ares_rules.h ares_dns.h ares_nameser.h + + EXTRA_DIST = ares_build.h.cmake ares_build.h.in ares_build.h.dist CMakeLists.txt +diff --git a/include/ares_build.h.cmake b/include/ares_build.h.cmake +index ac32d47..e847f17 100644 +--- a/include/ares_build.h.cmake ++++ b/include/ares_build.h.cmake +@@ -13,6 +13,8 @@ + #cmakedefine CARES_HAVE_WS2TCPIP_H + #cmakedefine CARES_HAVE_WINSOCK2_H + #cmakedefine CARES_HAVE_WINDOWS_H ++#cmakedefine CARES_HAVE_ARPA_NAMESER_H ++#cmakedefine CARES_HAVE_ARPA_NAMESER_COMPAT_H + + #ifdef CARES_HAVE_SYS_TYPES_H + # include +diff --git a/include/ares_build.h.in b/include/ares_build.h.in +index 24e3a98..20fd28a 100644 +--- a/include/ares_build.h.in ++++ b/include/ares_build.h.in +@@ -55,6 +55,9 @@ + Error Compilation_aborted_CARES_TYPEOF_ARES_SOCKLEN_T_already_defined + #endif + ++#undef CARES_HAVE_ARPA_NAMESER_H ++#undef CARES_HAVE_ARPA_NAMESER_COMPAT_H ++ + /* ================================================================ */ + /* EXTERNAL INTERFACE SETTINGS FOR CONFIGURE CAPABLE SYSTEMS ONLY */ + /* ================================================================ */ +diff --git a/include/ares_nameser.h b/include/ares_nameser.h +new file mode 100644 +index 0000000..ca40c38 +--- /dev/null ++++ b/include/ares_nameser.h +@@ -0,0 +1,484 @@ ++ ++#ifndef ARES_NAMESER_H ++#define ARES_NAMESER_H ++ ++#include "ares_build.h" ++ ++#ifdef CARES_HAVE_ARPA_NAMESER_H ++# include ++#endif ++#ifdef CARES_HAVE_ARPA_NAMESER_COMPAT_H ++# include ++#endif ++ ++/* ============================================================================ ++ * arpa/nameser.h may or may not provide ALL of the below defines, so check ++ * each one individually and set if not ++ * ============================================================================ ++ */ ++ ++#ifndef NS_PACKETSZ ++# define NS_PACKETSZ 512 /* maximum packet size */ ++#endif ++ ++#ifndef NS_MAXDNAME ++# define NS_MAXDNAME 256 /* maximum domain name */ ++#endif ++ ++#ifndef NS_MAXCDNAME ++# define NS_MAXCDNAME 255 /* maximum compressed domain name */ ++#endif ++ ++#ifndef NS_MAXLABEL ++# define NS_MAXLABEL 63 ++#endif ++ ++#ifndef NS_HFIXEDSZ ++# define NS_HFIXEDSZ 12 /* #/bytes of fixed data in header */ ++#endif ++ ++#ifndef NS_QFIXEDSZ ++# define NS_QFIXEDSZ 4 /* #/bytes of fixed data in query */ ++#endif ++ ++#ifndef NS_RRFIXEDSZ ++# define NS_RRFIXEDSZ 10 /* #/bytes of fixed data in r record */ ++#endif ++ ++#ifndef NS_INT16SZ ++# define NS_INT16SZ 2 ++#endif ++ ++#ifndef NS_INADDRSZ ++# define NS_INADDRSZ 4 ++#endif ++ ++#ifndef NS_IN6ADDRSZ ++# define NS_IN6ADDRSZ 16 ++#endif ++ ++#ifndef NS_CMPRSFLGS ++# define NS_CMPRSFLGS 0xc0 /* Flag bits indicating name compression. */ ++#endif ++ ++#ifndef NS_DEFAULTPORT ++# define NS_DEFAULTPORT 53 /* For both TCP and UDP. */ ++#endif ++ ++/* ============================================================================ ++ * arpa/nameser.h should provide these enumerations always, so if not found, ++ * provide them ++ * ============================================================================ ++ */ ++#ifndef CARES_HAVE_ARPA_NAMESER_H ++ ++typedef enum __ns_class { ++ ns_c_invalid = 0, /* Cookie. */ ++ ns_c_in = 1, /* Internet. */ ++ ns_c_2 = 2, /* unallocated/unsupported. */ ++ ns_c_chaos = 3, /* MIT Chaos-net. */ ++ ns_c_hs = 4, /* MIT Hesiod. */ ++ /* Query class values which do not appear in resource records */ ++ ns_c_none = 254, /* for prereq. sections in update requests */ ++ ns_c_any = 255, /* Wildcard match. */ ++ ns_c_max = 65536 ++} ns_class; ++ ++typedef enum __ns_type { ++ ns_t_invalid = 0, /* Cookie. */ ++ ns_t_a = 1, /* Host address. */ ++ ns_t_ns = 2, /* Authoritative server. */ ++ ns_t_md = 3, /* Mail destination. */ ++ ns_t_mf = 4, /* Mail forwarder. */ ++ ns_t_cname = 5, /* Canonical name. */ ++ ns_t_soa = 6, /* Start of authority zone. */ ++ ns_t_mb = 7, /* Mailbox domain name. */ ++ ns_t_mg = 8, /* Mail group member. */ ++ ns_t_mr = 9, /* Mail rename name. */ ++ ns_t_null = 10, /* Null resource record. */ ++ ns_t_wks = 11, /* Well known service. */ ++ ns_t_ptr = 12, /* Domain name pointer. */ ++ ns_t_hinfo = 13, /* Host information. */ ++ ns_t_minfo = 14, /* Mailbox information. */ ++ ns_t_mx = 15, /* Mail routing information. */ ++ ns_t_txt = 16, /* Text strings. */ ++ ns_t_rp = 17, /* Responsible person. */ ++ ns_t_afsdb = 18, /* AFS cell database. */ ++ ns_t_x25 = 19, /* X_25 calling address. */ ++ ns_t_isdn = 20, /* ISDN calling address. */ ++ ns_t_rt = 21, /* Router. */ ++ ns_t_nsap = 22, /* NSAP address. */ ++ ns_t_nsap_ptr = 23, /* Reverse NSAP lookup (deprecated). */ ++ ns_t_sig = 24, /* Security signature. */ ++ ns_t_key = 25, /* Security key. */ ++ ns_t_px = 26, /* X.400 mail mapping. */ ++ ns_t_gpos = 27, /* Geographical position (withdrawn). */ ++ ns_t_aaaa = 28, /* Ip6 Address. */ ++ ns_t_loc = 29, /* Location Information. */ ++ ns_t_nxt = 30, /* Next domain (security). */ ++ ns_t_eid = 31, /* Endpoint identifier. */ ++ ns_t_nimloc = 32, /* Nimrod Locator. */ ++ ns_t_srv = 33, /* Server Selection. */ ++ ns_t_atma = 34, /* ATM Address */ ++ ns_t_naptr = 35, /* Naming Authority PoinTeR */ ++ ns_t_kx = 36, /* Key Exchange */ ++ ns_t_cert = 37, /* Certification record */ ++ ns_t_a6 = 38, /* IPv6 address (deprecates AAAA) */ ++ ns_t_dname = 39, /* Non-terminal DNAME (for IPv6) */ ++ ns_t_sink = 40, /* Kitchen sink (experimentatl) */ ++ ns_t_opt = 41, /* EDNS0 option (meta-RR) */ ++ ns_t_apl = 42, /* Address prefix list (RFC3123) */ ++ ns_t_ds = 43, /* Delegation Signer (RFC4034) */ ++ ns_t_sshfp = 44, /* SSH Key Fingerprint (RFC4255) */ ++ ns_t_rrsig = 46, /* Resource Record Signature (RFC4034) */ ++ ns_t_nsec = 47, /* Next Secure (RFC4034) */ ++ ns_t_dnskey = 48, /* DNS Public Key (RFC4034) */ ++ ns_t_tkey = 249, /* Transaction key */ ++ ns_t_tsig = 250, /* Transaction signature. */ ++ ns_t_ixfr = 251, /* Incremental zone transfer. */ ++ ns_t_axfr = 252, /* Transfer zone of authority. */ ++ ns_t_mailb = 253, /* Transfer mailbox records. */ ++ ns_t_maila = 254, /* Transfer mail agent records. */ ++ ns_t_any = 255, /* Wildcard match. */ ++ ns_t_zxfr = 256, /* BIND-specific, nonstandard. */ ++ ns_t_caa = 257, /* Certification Authority Authorization. */ ++ ns_t_max = 65536 ++} ns_type; ++ ++typedef enum __ns_opcode { ++ ns_o_query = 0, /* Standard query. */ ++ ns_o_iquery = 1, /* Inverse query (deprecated/unsupported). */ ++ ns_o_status = 2, /* Name server status query (unsupported). */ ++ /* Opcode 3 is undefined/reserved. */ ++ ns_o_notify = 4, /* Zone change notification. */ ++ ns_o_update = 5, /* Zone update message. */ ++ ns_o_max = 6 ++} ns_opcode; ++ ++typedef enum __ns_rcode { ++ ns_r_noerror = 0, /* No error occurred. */ ++ ns_r_formerr = 1, /* Format error. */ ++ ns_r_servfail = 2, /* Server failure. */ ++ ns_r_nxdomain = 3, /* Name error. */ ++ ns_r_notimpl = 4, /* Unimplemented. */ ++ ns_r_refused = 5, /* Operation refused. */ ++ /* these are for BIND_UPDATE */ ++ ns_r_yxdomain = 6, /* Name exists */ ++ ns_r_yxrrset = 7, /* RRset exists */ ++ ns_r_nxrrset = 8, /* RRset does not exist */ ++ ns_r_notauth = 9, /* Not authoritative for zone */ ++ ns_r_notzone = 10, /* Zone of record different from zone section */ ++ ns_r_max = 11, ++ /* The following are TSIG extended errors */ ++ ns_r_badsig = 16, ++ ns_r_badkey = 17, ++ ns_r_badtime = 18 ++} ns_rcode; ++ ++#endif /* CARES_HAVE_ARPA_NAMESER_H */ ++ ++ ++/* ============================================================================ ++ * arpa/nameser_compat.h typically sets these. However on some systems ++ * arpa/nameser.h does, but may not set all of them. Lets conditionally ++ * define each ++ * ============================================================================ ++ */ ++ ++#ifndef PACKETSZ ++# define PACKETSZ NS_PACKETSZ ++#endif ++ ++#ifndef MAXDNAME ++# define MAXDNAME NS_MAXDNAME ++#endif ++ ++#ifndef MAXCDNAME ++# define MAXCDNAME NS_MAXCDNAME ++#endif ++ ++#ifndef MAXLABEL ++# define MAXLABEL NS_MAXLABEL ++#endif ++ ++#ifndef HFIXEDSZ ++# define HFIXEDSZ NS_HFIXEDSZ ++#endif ++ ++#ifndef QFIXEDSZ ++# define QFIXEDSZ NS_QFIXEDSZ ++#endif ++ ++#ifndef RRFIXEDSZ ++# define RRFIXEDSZ NS_RRFIXEDSZ ++#endif ++ ++#ifndef INDIR_MASK ++# define INDIR_MASK NS_CMPRSFLGS ++#endif ++ ++#ifndef NAMESERVER_PORT ++# define NAMESERVER_PORT NS_DEFAULTPORT ++#endif ++ ++ ++/* opcodes */ ++#ifndef O_QUERY ++# define O_QUERY 0 /* ns_o_query */ ++#endif ++#ifndef O_IQUERY ++# define O_IQUERY 1 /* ns_o_iquery */ ++#endif ++#ifndef O_STATUS ++# define O_STATUS 2 /* ns_o_status */ ++#endif ++#ifndef O_NOTIFY ++# define O_NOTIFY 4 /* ns_o_notify */ ++#endif ++#ifndef O_UPDATE ++# define O_UPDATE 5 /* ns_o_update */ ++#endif ++ ++ ++/* response codes */ ++#ifndef SERVFAIL ++# define SERVFAIL ns_r_servfail ++#endif ++#ifndef NOTIMP ++# define NOTIMP ns_r_notimpl ++#endif ++#ifndef REFUSED ++# define REFUSED ns_r_refused ++#endif ++#if defined(_WIN32) && !defined(HAVE_ARPA_NAMESER_COMPAT_H) && defined(NOERROR) ++# undef NOERROR /* it seems this is already defined in winerror.h */ ++#endif ++#ifndef NOERROR ++# define NOERROR ns_r_noerror ++#endif ++#ifndef FORMERR ++# define FORMERR ns_r_formerr ++#endif ++#ifndef NXDOMAIN ++# define NXDOMAIN ns_r_nxdomain ++#endif ++/* Non-standard response codes, use numeric values */ ++#ifndef YXDOMAIN ++# define YXDOMAIN 6 /* ns_r_yxdomain */ ++#endif ++#ifndef YXRRSET ++# define YXRRSET 7 /* ns_r_yxrrset */ ++#endif ++#ifndef NXRRSET ++# define NXRRSET 8 /* ns_r_nxrrset */ ++#endif ++#ifndef NOTAUTH ++# define NOTAUTH 9 /* ns_r_notauth */ ++#endif ++#ifndef NOTZONE ++# define NOTZONE 10 /* ns_r_notzone */ ++#endif ++#ifndef TSIG_BADSIG ++# define TSIG_BADSIG 16 /* ns_r_badsig */ ++#endif ++#ifndef TSIG_BADKEY ++# define TSIG_BADKEY 17 /* ns_r_badkey */ ++#endif ++#ifndef TSIG_BADTIME ++# define TSIG_BADTIME 18 /* ns_r_badtime */ ++#endif ++ ++ ++/* classes */ ++#ifndef C_IN ++# define C_IN 1 /* ns_c_in */ ++#endif ++#ifndef C_CHAOS ++# define C_CHAOS 3 /* ns_c_chaos */ ++#endif ++#ifndef C_HS ++# define C_HS 4 /* ns_c_hs */ ++#endif ++#ifndef C_NONE ++# define C_NONE 254 /* ns_c_none */ ++#endif ++#ifndef C_ANY ++# define C_ANY 255 /* ns_c_any */ ++#endif ++ ++ ++/* types */ ++#ifndef T_A ++# define T_A 1 /* ns_t_a */ ++#endif ++#ifndef T_NS ++# define T_NS 2 /* ns_t_ns */ ++#endif ++#ifndef T_MD ++# define T_MD 3 /* ns_t_md */ ++#endif ++#ifndef T_MF ++# define T_MF 4 /* ns_t_mf */ ++#endif ++#ifndef T_CNAME ++# define T_CNAME 5 /* ns_t_cname */ ++#endif ++#ifndef T_SOA ++# define T_SOA 6 /* ns_t_soa */ ++#endif ++#ifndef T_MB ++# define T_MB 7 /* ns_t_mb */ ++#endif ++#ifndef T_MG ++# define T_MG 8 /* ns_t_mg */ ++#endif ++#ifndef T_MR ++# define T_MR 9 /* ns_t_mr */ ++#endif ++#ifndef T_NULL ++# define T_NULL 10 /* ns_t_null */ ++#endif ++#ifndef T_WKS ++# define T_WKS 11 /* ns_t_wks */ ++#endif ++#ifndef T_PTR ++# define T_PTR 12 /* ns_t_ptr */ ++#endif ++#ifndef T_HINFO ++# define T_HINFO 13 /* ns_t_hinfo */ ++#endif ++#ifndef T_MINFO ++# define T_MINFO 14 /* ns_t_minfo */ ++#endif ++#ifndef T_MX ++# define T_MX 15 /* ns_t_mx */ ++#endif ++#ifndef T_TXT ++# define T_TXT 16 /* ns_t_txt */ ++#endif ++#ifndef T_RP ++# define T_RP 17 /* ns_t_rp */ ++#endif ++#ifndef T_AFSDB ++# define T_AFSDB 18 /* ns_t_afsdb */ ++#endif ++#ifndef T_X25 ++# define T_X25 19 /* ns_t_x25 */ ++#endif ++#ifndef T_ISDN ++# define T_ISDN 20 /* ns_t_isdn */ ++#endif ++#ifndef T_RT ++# define T_RT 21 /* ns_t_rt */ ++#endif ++#ifndef T_NSAP ++# define T_NSAP 22 /* ns_t_nsap */ ++#endif ++#ifndef T_NSAP_PTR ++# define T_NSAP_PTR 23 /* ns_t_nsap_ptr */ ++#endif ++#ifndef T_SIG ++# define T_SIG 24 /* ns_t_sig */ ++#endif ++#ifndef T_KEY ++# define T_KEY 25 /* ns_t_key */ ++#endif ++#ifndef T_PX ++# define T_PX 26 /* ns_t_px */ ++#endif ++#ifndef T_GPOS ++# define T_GPOS 27 /* ns_t_gpos */ ++#endif ++#ifndef T_AAAA ++# define T_AAAA 28 /* ns_t_aaaa */ ++#endif ++#ifndef T_LOC ++# define T_LOC 29 /* ns_t_loc */ ++#endif ++#ifndef T_NXT ++# define T_NXT 30 /* ns_t_nxt */ ++#endif ++#ifndef T_EID ++# define T_EID 31 /* ns_t_eid */ ++#endif ++#ifndef T_NIMLOC ++# define T_NIMLOC 32 /* ns_t_nimloc */ ++#endif ++#ifndef T_SRV ++# define T_SRV 33 /* ns_t_srv */ ++#endif ++#ifndef T_ATMA ++# define T_ATMA 34 /* ns_t_atma */ ++#endif ++#ifndef T_NAPTR ++# define T_NAPTR 35 /* ns_t_naptr */ ++#endif ++#ifndef T_KX ++# define T_KX 36 /* ns_t_kx */ ++#endif ++#ifndef T_CERT ++# define T_CERT 37 /* ns_t_cert */ ++#endif ++#ifndef T_A6 ++# define T_A6 38 /* ns_t_a6 */ ++#endif ++#ifndef T_DNAME ++# define T_DNAME 39 /* ns_t_dname */ ++#endif ++#ifndef T_SINK ++# define T_SINK 40 /* ns_t_sink */ ++#endif ++#ifndef T_OPT ++# define T_OPT 41 /* ns_t_opt */ ++#endif ++#ifndef T_APL ++# define T_APL 42 /* ns_t_apl */ ++#endif ++#ifndef T_DS ++# define T_DS 43 /* ns_t_ds */ ++#endif ++#ifndef T_SSHFP ++# define T_SSHFP 44 /* ns_t_sshfp */ ++#endif ++#ifndef T_RRSIG ++# define T_RRSIG 46 /* ns_t_rrsig */ ++#endif ++#ifndef T_NSEC ++# define T_NSEC 47 /* ns_t_nsec */ ++#endif ++#ifndef T_DNSKEY ++# define T_DNSKEY 48 /* ns_t_dnskey */ ++#endif ++#ifndef T_TKEY ++# define T_TKEY 249 /* ns_t_tkey */ ++#endif ++#ifndef T_TSIG ++# define T_TSIG 250 /* ns_t_tsig */ ++#endif ++#ifndef T_IXFR ++# define T_IXFR 251 /* ns_t_ixfr */ ++#endif ++#ifndef T_AXFR ++# define T_AXFR 252 /* ns_t_axfr */ ++#endif ++#ifndef T_MAILB ++# define T_MAILB 253 /* ns_t_mailb */ ++#endif ++#ifndef T_MAILA ++# define T_MAILA 254 /* ns_t_maila */ ++#endif ++#ifndef T_ANY ++# define T_ANY 255 /* ns_t_any */ ++#endif ++#ifndef T_ZXFR ++# define T_ZXFR 256 /* ns_t_zxfr */ ++#endif ++#ifndef T_CAA ++# define T_CAA 257 /* ns_t_caa */ ++#endif ++#ifndef T_MAX ++# define T_MAX 65536 /* ns_t_max */ ++#endif ++ ++ ++#endif /* ARES_NAMESER_H */ +diff --git a/src/lib/Makefile.inc b/src/lib/Makefile.inc +index 51be62c..a1af4a9 100644 +--- a/src/lib/Makefile.inc ++++ b/src/lib/Makefile.inc +@@ -72,7 +72,6 @@ HHEADERS = ares_android.h \ + ares_strsplit.h \ + ares_writev.h \ + bitncmp.h \ +- ares_nameser.h \ + ares_setup.h \ + setup_once.h + +diff --git a/src/lib/ares_nameser.h b/src/lib/ares_nameser.h +deleted file mode 100644 +index 5270e5a..0000000 +--- a/src/lib/ares_nameser.h ++++ /dev/null +@@ -1,482 +0,0 @@ +- +-#ifndef ARES_NAMESER_H +-#define ARES_NAMESER_H +- +-#ifdef HAVE_ARPA_NAMESER_H +-# include +-#endif +-#ifdef HAVE_ARPA_NAMESER_COMPAT_H +-# include +-#endif +- +-/* ============================================================================ +- * arpa/nameser.h may or may not provide ALL of the below defines, so check +- * each one individually and set if not +- * ============================================================================ +- */ +- +-#ifndef NS_PACKETSZ +-# define NS_PACKETSZ 512 /* maximum packet size */ +-#endif +- +-#ifndef NS_MAXDNAME +-# define NS_MAXDNAME 256 /* maximum domain name */ +-#endif +- +-#ifndef NS_MAXCDNAME +-# define NS_MAXCDNAME 255 /* maximum compressed domain name */ +-#endif +- +-#ifndef NS_MAXLABEL +-# define NS_MAXLABEL 63 +-#endif +- +-#ifndef NS_HFIXEDSZ +-# define NS_HFIXEDSZ 12 /* #/bytes of fixed data in header */ +-#endif +- +-#ifndef NS_QFIXEDSZ +-# define NS_QFIXEDSZ 4 /* #/bytes of fixed data in query */ +-#endif +- +-#ifndef NS_RRFIXEDSZ +-# define NS_RRFIXEDSZ 10 /* #/bytes of fixed data in r record */ +-#endif +- +-#ifndef NS_INT16SZ +-# define NS_INT16SZ 2 +-#endif +- +-#ifndef NS_INADDRSZ +-# define NS_INADDRSZ 4 +-#endif +- +-#ifndef NS_IN6ADDRSZ +-# define NS_IN6ADDRSZ 16 +-#endif +- +-#ifndef NS_CMPRSFLGS +-# define NS_CMPRSFLGS 0xc0 /* Flag bits indicating name compression. */ +-#endif +- +-#ifndef NS_DEFAULTPORT +-# define NS_DEFAULTPORT 53 /* For both TCP and UDP. */ +-#endif +- +-/* ============================================================================ +- * arpa/nameser.h should provide these enumerations always, so if not found, +- * provide them +- * ============================================================================ +- */ +-#ifndef HAVE_ARPA_NAMESER_H +- +-typedef enum __ns_class { +- ns_c_invalid = 0, /* Cookie. */ +- ns_c_in = 1, /* Internet. */ +- ns_c_2 = 2, /* unallocated/unsupported. */ +- ns_c_chaos = 3, /* MIT Chaos-net. */ +- ns_c_hs = 4, /* MIT Hesiod. */ +- /* Query class values which do not appear in resource records */ +- ns_c_none = 254, /* for prereq. sections in update requests */ +- ns_c_any = 255, /* Wildcard match. */ +- ns_c_max = 65536 +-} ns_class; +- +-typedef enum __ns_type { +- ns_t_invalid = 0, /* Cookie. */ +- ns_t_a = 1, /* Host address. */ +- ns_t_ns = 2, /* Authoritative server. */ +- ns_t_md = 3, /* Mail destination. */ +- ns_t_mf = 4, /* Mail forwarder. */ +- ns_t_cname = 5, /* Canonical name. */ +- ns_t_soa = 6, /* Start of authority zone. */ +- ns_t_mb = 7, /* Mailbox domain name. */ +- ns_t_mg = 8, /* Mail group member. */ +- ns_t_mr = 9, /* Mail rename name. */ +- ns_t_null = 10, /* Null resource record. */ +- ns_t_wks = 11, /* Well known service. */ +- ns_t_ptr = 12, /* Domain name pointer. */ +- ns_t_hinfo = 13, /* Host information. */ +- ns_t_minfo = 14, /* Mailbox information. */ +- ns_t_mx = 15, /* Mail routing information. */ +- ns_t_txt = 16, /* Text strings. */ +- ns_t_rp = 17, /* Responsible person. */ +- ns_t_afsdb = 18, /* AFS cell database. */ +- ns_t_x25 = 19, /* X_25 calling address. */ +- ns_t_isdn = 20, /* ISDN calling address. */ +- ns_t_rt = 21, /* Router. */ +- ns_t_nsap = 22, /* NSAP address. */ +- ns_t_nsap_ptr = 23, /* Reverse NSAP lookup (deprecated). */ +- ns_t_sig = 24, /* Security signature. */ +- ns_t_key = 25, /* Security key. */ +- ns_t_px = 26, /* X.400 mail mapping. */ +- ns_t_gpos = 27, /* Geographical position (withdrawn). */ +- ns_t_aaaa = 28, /* Ip6 Address. */ +- ns_t_loc = 29, /* Location Information. */ +- ns_t_nxt = 30, /* Next domain (security). */ +- ns_t_eid = 31, /* Endpoint identifier. */ +- ns_t_nimloc = 32, /* Nimrod Locator. */ +- ns_t_srv = 33, /* Server Selection. */ +- ns_t_atma = 34, /* ATM Address */ +- ns_t_naptr = 35, /* Naming Authority PoinTeR */ +- ns_t_kx = 36, /* Key Exchange */ +- ns_t_cert = 37, /* Certification record */ +- ns_t_a6 = 38, /* IPv6 address (deprecates AAAA) */ +- ns_t_dname = 39, /* Non-terminal DNAME (for IPv6) */ +- ns_t_sink = 40, /* Kitchen sink (experimentatl) */ +- ns_t_opt = 41, /* EDNS0 option (meta-RR) */ +- ns_t_apl = 42, /* Address prefix list (RFC3123) */ +- ns_t_ds = 43, /* Delegation Signer (RFC4034) */ +- ns_t_sshfp = 44, /* SSH Key Fingerprint (RFC4255) */ +- ns_t_rrsig = 46, /* Resource Record Signature (RFC4034) */ +- ns_t_nsec = 47, /* Next Secure (RFC4034) */ +- ns_t_dnskey = 48, /* DNS Public Key (RFC4034) */ +- ns_t_tkey = 249, /* Transaction key */ +- ns_t_tsig = 250, /* Transaction signature. */ +- ns_t_ixfr = 251, /* Incremental zone transfer. */ +- ns_t_axfr = 252, /* Transfer zone of authority. */ +- ns_t_mailb = 253, /* Transfer mailbox records. */ +- ns_t_maila = 254, /* Transfer mail agent records. */ +- ns_t_any = 255, /* Wildcard match. */ +- ns_t_zxfr = 256, /* BIND-specific, nonstandard. */ +- ns_t_caa = 257, /* Certification Authority Authorization. */ +- ns_t_max = 65536 +-} ns_type; +- +-typedef enum __ns_opcode { +- ns_o_query = 0, /* Standard query. */ +- ns_o_iquery = 1, /* Inverse query (deprecated/unsupported). */ +- ns_o_status = 2, /* Name server status query (unsupported). */ +- /* Opcode 3 is undefined/reserved. */ +- ns_o_notify = 4, /* Zone change notification. */ +- ns_o_update = 5, /* Zone update message. */ +- ns_o_max = 6 +-} ns_opcode; +- +-typedef enum __ns_rcode { +- ns_r_noerror = 0, /* No error occurred. */ +- ns_r_formerr = 1, /* Format error. */ +- ns_r_servfail = 2, /* Server failure. */ +- ns_r_nxdomain = 3, /* Name error. */ +- ns_r_notimpl = 4, /* Unimplemented. */ +- ns_r_refused = 5, /* Operation refused. */ +- /* these are for BIND_UPDATE */ +- ns_r_yxdomain = 6, /* Name exists */ +- ns_r_yxrrset = 7, /* RRset exists */ +- ns_r_nxrrset = 8, /* RRset does not exist */ +- ns_r_notauth = 9, /* Not authoritative for zone */ +- ns_r_notzone = 10, /* Zone of record different from zone section */ +- ns_r_max = 11, +- /* The following are TSIG extended errors */ +- ns_r_badsig = 16, +- ns_r_badkey = 17, +- ns_r_badtime = 18 +-} ns_rcode; +- +-#endif /* HAVE_ARPA_NAMESER_H */ +- +- +-/* ============================================================================ +- * arpa/nameser_compat.h typically sets these. However on some systems +- * arpa/nameser.h does, but may not set all of them. Lets conditionally +- * define each +- * ============================================================================ +- */ +- +-#ifndef PACKETSZ +-# define PACKETSZ NS_PACKETSZ +-#endif +- +-#ifndef MAXDNAME +-# define MAXDNAME NS_MAXDNAME +-#endif +- +-#ifndef MAXCDNAME +-# define MAXCDNAME NS_MAXCDNAME +-#endif +- +-#ifndef MAXLABEL +-# define MAXLABEL NS_MAXLABEL +-#endif +- +-#ifndef HFIXEDSZ +-# define HFIXEDSZ NS_HFIXEDSZ +-#endif +- +-#ifndef QFIXEDSZ +-# define QFIXEDSZ NS_QFIXEDSZ +-#endif +- +-#ifndef RRFIXEDSZ +-# define RRFIXEDSZ NS_RRFIXEDSZ +-#endif +- +-#ifndef INDIR_MASK +-# define INDIR_MASK NS_CMPRSFLGS +-#endif +- +-#ifndef NAMESERVER_PORT +-# define NAMESERVER_PORT NS_DEFAULTPORT +-#endif +- +- +-/* opcodes */ +-#ifndef O_QUERY +-# define O_QUERY 0 /* ns_o_query */ +-#endif +-#ifndef O_IQUERY +-# define O_IQUERY 1 /* ns_o_iquery */ +-#endif +-#ifndef O_STATUS +-# define O_STATUS 2 /* ns_o_status */ +-#endif +-#ifndef O_NOTIFY +-# define O_NOTIFY 4 /* ns_o_notify */ +-#endif +-#ifndef O_UPDATE +-# define O_UPDATE 5 /* ns_o_update */ +-#endif +- +- +-/* response codes */ +-#ifndef SERVFAIL +-# define SERVFAIL ns_r_servfail +-#endif +-#ifndef NOTIMP +-# define NOTIMP ns_r_notimpl +-#endif +-#ifndef REFUSED +-# define REFUSED ns_r_refused +-#endif +-#if defined(_WIN32) && !defined(HAVE_ARPA_NAMESER_COMPAT_H) && defined(NOERROR) +-# undef NOERROR /* it seems this is already defined in winerror.h */ +-#endif +-#ifndef NOERROR +-# define NOERROR ns_r_noerror +-#endif +-#ifndef FORMERR +-# define FORMERR ns_r_formerr +-#endif +-#ifndef NXDOMAIN +-# define NXDOMAIN ns_r_nxdomain +-#endif +-/* Non-standard response codes, use numeric values */ +-#ifndef YXDOMAIN +-# define YXDOMAIN 6 /* ns_r_yxdomain */ +-#endif +-#ifndef YXRRSET +-# define YXRRSET 7 /* ns_r_yxrrset */ +-#endif +-#ifndef NXRRSET +-# define NXRRSET 8 /* ns_r_nxrrset */ +-#endif +-#ifndef NOTAUTH +-# define NOTAUTH 9 /* ns_r_notauth */ +-#endif +-#ifndef NOTZONE +-# define NOTZONE 10 /* ns_r_notzone */ +-#endif +-#ifndef TSIG_BADSIG +-# define TSIG_BADSIG 16 /* ns_r_badsig */ +-#endif +-#ifndef TSIG_BADKEY +-# define TSIG_BADKEY 17 /* ns_r_badkey */ +-#endif +-#ifndef TSIG_BADTIME +-# define TSIG_BADTIME 18 /* ns_r_badtime */ +-#endif +- +- +-/* classes */ +-#ifndef C_IN +-# define C_IN 1 /* ns_c_in */ +-#endif +-#ifndef C_CHAOS +-# define C_CHAOS 3 /* ns_c_chaos */ +-#endif +-#ifndef C_HS +-# define C_HS 4 /* ns_c_hs */ +-#endif +-#ifndef C_NONE +-# define C_NONE 254 /* ns_c_none */ +-#endif +-#ifndef C_ANY +-# define C_ANY 255 /* ns_c_any */ +-#endif +- +- +-/* types */ +-#ifndef T_A +-# define T_A 1 /* ns_t_a */ +-#endif +-#ifndef T_NS +-# define T_NS 2 /* ns_t_ns */ +-#endif +-#ifndef T_MD +-# define T_MD 3 /* ns_t_md */ +-#endif +-#ifndef T_MF +-# define T_MF 4 /* ns_t_mf */ +-#endif +-#ifndef T_CNAME +-# define T_CNAME 5 /* ns_t_cname */ +-#endif +-#ifndef T_SOA +-# define T_SOA 6 /* ns_t_soa */ +-#endif +-#ifndef T_MB +-# define T_MB 7 /* ns_t_mb */ +-#endif +-#ifndef T_MG +-# define T_MG 8 /* ns_t_mg */ +-#endif +-#ifndef T_MR +-# define T_MR 9 /* ns_t_mr */ +-#endif +-#ifndef T_NULL +-# define T_NULL 10 /* ns_t_null */ +-#endif +-#ifndef T_WKS +-# define T_WKS 11 /* ns_t_wks */ +-#endif +-#ifndef T_PTR +-# define T_PTR 12 /* ns_t_ptr */ +-#endif +-#ifndef T_HINFO +-# define T_HINFO 13 /* ns_t_hinfo */ +-#endif +-#ifndef T_MINFO +-# define T_MINFO 14 /* ns_t_minfo */ +-#endif +-#ifndef T_MX +-# define T_MX 15 /* ns_t_mx */ +-#endif +-#ifndef T_TXT +-# define T_TXT 16 /* ns_t_txt */ +-#endif +-#ifndef T_RP +-# define T_RP 17 /* ns_t_rp */ +-#endif +-#ifndef T_AFSDB +-# define T_AFSDB 18 /* ns_t_afsdb */ +-#endif +-#ifndef T_X25 +-# define T_X25 19 /* ns_t_x25 */ +-#endif +-#ifndef T_ISDN +-# define T_ISDN 20 /* ns_t_isdn */ +-#endif +-#ifndef T_RT +-# define T_RT 21 /* ns_t_rt */ +-#endif +-#ifndef T_NSAP +-# define T_NSAP 22 /* ns_t_nsap */ +-#endif +-#ifndef T_NSAP_PTR +-# define T_NSAP_PTR 23 /* ns_t_nsap_ptr */ +-#endif +-#ifndef T_SIG +-# define T_SIG 24 /* ns_t_sig */ +-#endif +-#ifndef T_KEY +-# define T_KEY 25 /* ns_t_key */ +-#endif +-#ifndef T_PX +-# define T_PX 26 /* ns_t_px */ +-#endif +-#ifndef T_GPOS +-# define T_GPOS 27 /* ns_t_gpos */ +-#endif +-#ifndef T_AAAA +-# define T_AAAA 28 /* ns_t_aaaa */ +-#endif +-#ifndef T_LOC +-# define T_LOC 29 /* ns_t_loc */ +-#endif +-#ifndef T_NXT +-# define T_NXT 30 /* ns_t_nxt */ +-#endif +-#ifndef T_EID +-# define T_EID 31 /* ns_t_eid */ +-#endif +-#ifndef T_NIMLOC +-# define T_NIMLOC 32 /* ns_t_nimloc */ +-#endif +-#ifndef T_SRV +-# define T_SRV 33 /* ns_t_srv */ +-#endif +-#ifndef T_ATMA +-# define T_ATMA 34 /* ns_t_atma */ +-#endif +-#ifndef T_NAPTR +-# define T_NAPTR 35 /* ns_t_naptr */ +-#endif +-#ifndef T_KX +-# define T_KX 36 /* ns_t_kx */ +-#endif +-#ifndef T_CERT +-# define T_CERT 37 /* ns_t_cert */ +-#endif +-#ifndef T_A6 +-# define T_A6 38 /* ns_t_a6 */ +-#endif +-#ifndef T_DNAME +-# define T_DNAME 39 /* ns_t_dname */ +-#endif +-#ifndef T_SINK +-# define T_SINK 40 /* ns_t_sink */ +-#endif +-#ifndef T_OPT +-# define T_OPT 41 /* ns_t_opt */ +-#endif +-#ifndef T_APL +-# define T_APL 42 /* ns_t_apl */ +-#endif +-#ifndef T_DS +-# define T_DS 43 /* ns_t_ds */ +-#endif +-#ifndef T_SSHFP +-# define T_SSHFP 44 /* ns_t_sshfp */ +-#endif +-#ifndef T_RRSIG +-# define T_RRSIG 46 /* ns_t_rrsig */ +-#endif +-#ifndef T_NSEC +-# define T_NSEC 47 /* ns_t_nsec */ +-#endif +-#ifndef T_DNSKEY +-# define T_DNSKEY 48 /* ns_t_dnskey */ +-#endif +-#ifndef T_TKEY +-# define T_TKEY 249 /* ns_t_tkey */ +-#endif +-#ifndef T_TSIG +-# define T_TSIG 250 /* ns_t_tsig */ +-#endif +-#ifndef T_IXFR +-# define T_IXFR 251 /* ns_t_ixfr */ +-#endif +-#ifndef T_AXFR +-# define T_AXFR 252 /* ns_t_axfr */ +-#endif +-#ifndef T_MAILB +-# define T_MAILB 253 /* ns_t_mailb */ +-#endif +-#ifndef T_MAILA +-# define T_MAILA 254 /* ns_t_maila */ +-#endif +-#ifndef T_ANY +-# define T_ANY 255 /* ns_t_any */ +-#endif +-#ifndef T_ZXFR +-# define T_ZXFR 256 /* ns_t_zxfr */ +-#endif +-#ifndef T_CAA +-# define T_CAA 257 /* ns_t_caa */ +-#endif +-#ifndef T_MAX +-# define T_MAX 65536 /* ns_t_max */ +-#endif +- +- +-#endif /* ARES_NAMESER_H */ +-- +2.20.1 + diff --git a/buildroot/package/c-ares/c-ares.hash b/buildroot/package/c-ares/c-ares.hash index 235b7dbc6..28657645d 100644 --- a/buildroot/package/c-ares/c-ares.hash +++ b/buildroot/package/c-ares/c-ares.hash @@ -1,5 +1,5 @@ # Locally calculated after checking pgp signature -sha256 d73dd0f6de824afd407ce10750ea081af47eba52b8a6cb307d220131ad93fc40 c-ares-1.17.1.tar.gz +sha256 4803c844ce20ce510ef0eb83f8ea41fa24ecaae9d280c468c582d2bb25b3913d c-ares-1.17.2.tar.gz # Hash for license file sha256 db4eb63fe09daebdf57d3f79b091bb5ee5070c0d761040e83264e648d307af4c LICENSE.md diff --git a/buildroot/package/c-ares/c-ares.mk b/buildroot/package/c-ares/c-ares.mk index 8f200237c..71bfa110a 100644 --- a/buildroot/package/c-ares/c-ares.mk +++ b/buildroot/package/c-ares/c-ares.mk @@ -4,12 +4,15 @@ # ################################################################################ -C_ARES_VERSION = 1.17.1 +C_ARES_VERSION = 1.17.2 C_ARES_SITE = http://c-ares.haxx.se/download C_ARES_INSTALL_STAGING = YES C_ARES_CONF_OPTS = --with-random=/dev/urandom C_ARES_LICENSE = MIT C_ARES_LICENSE_FILES = LICENSE.md +C_ARES_CPE_ID_VENDOR = c-ares_project +# We're patching configure.ac +C_ARES_AUTORECONF = YES $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/buildroot/package/cjson/cjson.hash b/buildroot/package/cjson/cjson.hash index b99fcee8b..c39e884cd 100644 --- a/buildroot/package/cjson/cjson.hash +++ b/buildroot/package/cjson/cjson.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 d4e77a38f540f2c37f55758f2666655314f1f51c716fea5f279659940efdcf04 cjson-1.7.13.tar.gz +sha256 5308fd4bd90cef7aa060558514de6a1a4a0819974a26e6ed13973c5f624c24b2 cjson-1.7.15.tar.gz sha256 a36dda207c36db5818729c54e7ad4e8b0c6fba847491ba64f372c1a2037b6d5c LICENSE diff --git a/buildroot/package/cjson/cjson.mk b/buildroot/package/cjson/cjson.mk index 47f8ecfd1..ac8db5701 100644 --- a/buildroot/package/cjson/cjson.mk +++ b/buildroot/package/cjson/cjson.mk @@ -4,7 +4,7 @@ # ################################################################################ -CJSON_VERSION = 1.7.13 +CJSON_VERSION = 1.7.15 CJSON_SITE = $(call github,DaveGamble,cjson,v$(CJSON_VERSION)) CJSON_INSTALL_STAGING = YES CJSON_LICENSE = MIT diff --git a/buildroot/package/coreutils/coreutils.mk b/buildroot/package/coreutils/coreutils.mk index 65234a113..3ec3c847c 100644 --- a/buildroot/package/coreutils/coreutils.mk +++ b/buildroot/package/coreutils/coreutils.mk @@ -154,7 +154,8 @@ COREUTILS_POST_INSTALL_TARGET_HOOKS += COREUTILS_FIX_CHROOT_LOCATION # Explicitly install ln and realpath, which we *are* insterested in. # A lot of other programs still get installed, however, but disabling # them does not gain much at build time, and is a loooong list that is -# difficult to maintain... +# difficult to maintain... Just avoid overwriting fakedate when creating +# a reproducible build HOST_COREUTILS_CONF_OPTS = \ --disable-acl \ --disable-libcap \ @@ -162,7 +163,8 @@ HOST_COREUTILS_CONF_OPTS = \ --disable-single-binary \ --disable-xattr \ --without-gmp \ - --enable-install-program=ln,realpath + --enable-install-program=ln,realpath \ + --enable-no-install-program=date $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/buildroot/package/cpio/0002-Rewrite-dynamic-string-support.patch b/buildroot/package/cpio/0002-Rewrite-dynamic-string-support.patch new file mode 100644 index 000000000..44282ae3f --- /dev/null +++ b/buildroot/package/cpio/0002-Rewrite-dynamic-string-support.patch @@ -0,0 +1,461 @@ +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/buildroot/package/cpio/0003-Fix-previous-commit.patch b/buildroot/package/cpio/0003-Fix-previous-commit.patch new file mode 100644 index 000000000..e33a8523d --- /dev/null +++ b/buildroot/package/cpio/0003-Fix-previous-commit.patch @@ -0,0 +1,40 @@ +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/buildroot/package/cpio/cpio.mk b/buildroot/package/cpio/cpio.mk index 9ce281dd1..e95ea742b 100644 --- a/buildroot/package/cpio/cpio.mk +++ b/buildroot/package/cpio/cpio.mk @@ -12,6 +12,10 @@ 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/buildroot/package/eigen/eigen.mk b/buildroot/package/eigen/eigen.mk index c9998da35..98e6c61e3 100644 --- a/buildroot/package/eigen/eigen.mk +++ b/buildroot/package/eigen/eigen.mk @@ -15,6 +15,7 @@ EIGEN_SUPPORTS_IN_SOURCE_BUILD = NO # Default Eigen CMake installs .pc file in /usr/share/pkgconfig # change it to /usr/lib/pkgconfig, to be consistent with other packages. -EIGEN_CONF_OPTS = -DPKGCONFIG_INSTALL_DIR=/usr/lib/pkgconfig +EIGEN_CONF_OPTS = -DPKGCONFIG_INSTALL_DIR=/usr/lib/pkgconfig \ + -DCMAKE_Fortran_COMPILER=$(TARGET_FC) $(eval $(cmake-package)) diff --git a/buildroot/package/environment-setup/environment-setup b/buildroot/package/environment-setup/environment-setup index e9bc36fdd..84a9843c2 100644 --- a/buildroot/package/environment-setup/environment-setup +++ b/buildroot/package/environment-setup/environment-setup @@ -16,4 +16,10 @@ Some tips: * To build CMake-based projects, use the "cmake" alias EOF -SDK_PATH=$(dirname $(realpath "${BASH_SOURCE[0]}")) +if [ x"$BASH_VERSION" != x"" ] ; then + SDK_PATH=$(dirname $(realpath "${BASH_SOURCE[0]}")) +elif [ x"$ZSH_VERSION" != x"" ] ; then + SDK_PATH=$(dirname $(realpath $0)) +else + echo "unsupported shell" +fi diff --git a/buildroot/package/fetchmail/fetchmail.hash b/buildroot/package/fetchmail/fetchmail.hash index 41d71088b..30df3eb83 100644 --- a/buildroot/package/fetchmail/fetchmail.hash +++ b/buildroot/package/fetchmail/fetchmail.hash @@ -1,6 +1,6 @@ # From https://sourceforge.net/p/fetchmail/mailman/message/37327392/ -sha256 c82141ae2e8f0039ceb0c5c2eda43c5e93ad0bf7f9c6bb628092b3be74386176 fetchmail-6.4.20.tar.xz +sha256 6a459c1cafd7a1daa5cd137140da60c18c84b5699cd8e7249a79c33342c99d1d fetchmail-6.4.21.tar.xz # From https://sourceforge.net/projects/fetchmail/files/branch_6.4/ -sha1 ac6a6c4afa105e097d025340cf78b32e0c3b0c8e fetchmail-6.4.20.tar.xz +sha1 a264c50256c2b42d2c7893f9efae7c9a29350786 fetchmail-6.4.21.tar.xz # Locally computed: sha256 6346b5aa04e258fa4326272ea92372d796b4382aa963535ae98a3bb5f8cd5aeb COPYING diff --git a/buildroot/package/fetchmail/fetchmail.mk b/buildroot/package/fetchmail/fetchmail.mk index d1c5fa370..590057e4a 100644 --- a/buildroot/package/fetchmail/fetchmail.mk +++ b/buildroot/package/fetchmail/fetchmail.mk @@ -5,7 +5,7 @@ ################################################################################ FETCHMAIL_VERSION_MAJOR = 6.4 -FETCHMAIL_VERSION = $(FETCHMAIL_VERSION_MAJOR).20 +FETCHMAIL_VERSION = $(FETCHMAIL_VERSION_MAJOR).21 FETCHMAIL_SOURCE = fetchmail-$(FETCHMAIL_VERSION).tar.xz FETCHMAIL_SITE = http://downloads.sourceforge.net/project/fetchmail/branch_$(FETCHMAIL_VERSION_MAJOR) FETCHMAIL_LICENSE = GPL-2.0; some exceptions are mentioned in COPYING diff --git a/buildroot/package/fluidsynth/fluidsynth.hash b/buildroot/package/fluidsynth/fluidsynth.hash index 17e37e247..fc6961dd0 100644 --- a/buildroot/package/fluidsynth/fluidsynth.hash +++ b/buildroot/package/fluidsynth/fluidsynth.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 b539b7c65a650b56f01cd60a4e83c6125c217c5a63c0c214ef6274894a677d00 fluidsynth-2.1.5.tar.gz +sha256 365642cc64bafe0491149ad643ef7327877f99412d5abb93f1fa54e252028484 fluidsynth-2.1.9.tar.gz sha256 9b872a8a070b8ad329c4bd380fb1bf0000f564c75023ec8e1e6803f15364b9e9 LICENSE diff --git a/buildroot/package/fluidsynth/fluidsynth.mk b/buildroot/package/fluidsynth/fluidsynth.mk index e3269f530..c3ff64532 100644 --- a/buildroot/package/fluidsynth/fluidsynth.mk +++ b/buildroot/package/fluidsynth/fluidsynth.mk @@ -4,7 +4,7 @@ # ################################################################################ -FLUIDSYNTH_VERSION = 2.1.5 +FLUIDSYNTH_VERSION = 2.1.9 FLUIDSYNTH_SITE = $(call github,FluidSynth,fluidsynth,v$(FLUIDSYNTH_VERSION)) FLUIDSYNTH_LICENSE = LGPL-2.1+ FLUIDSYNTH_LICENSE_FILES = LICENSE diff --git a/buildroot/package/fontconfig/fontconfig.mk b/buildroot/package/fontconfig/fontconfig.mk index 33218ed63..e34acde53 100644 --- a/buildroot/package/fontconfig/fontconfig.mk +++ b/buildroot/package/fontconfig/fontconfig.mk @@ -10,9 +10,12 @@ FONTCONFIG_SOURCE = fontconfig-$(FONTCONFIG_VERSION).tar.bz2 # 0002-add-pthread-as-a-dependency-of-a-static-lib.patch FONTCONFIG_AUTORECONF = YES FONTCONFIG_INSTALL_STAGING = YES -FONTCONFIG_DEPENDENCIES = freetype expat host-pkgconf host-gperf util-linux +FONTCONFIG_DEPENDENCIES = freetype expat host-pkgconf host-gperf \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LIBS),util-linux-libs,util-linux) \ + $(TARGET_NLS_DEPENDENCIES) HOST_FONTCONFIG_DEPENDENCIES = \ - host-freetype host-expat host-pkgconf host-gperf host-util-linux + host-freetype host-expat host-pkgconf host-gperf host-util-linux \ + host-gettext FONTCONFIG_LICENSE = fontconfig license FONTCONFIG_LICENSE_FILES = COPYING FONTCONFIG_CPE_ID_VENDOR = fontconfig_project diff --git a/buildroot/package/gd/gd.hash b/buildroot/package/gd/gd.hash index 5aec317f2..d0b1e9767 100644 --- a/buildroot/package/gd/gd.hash +++ b/buildroot/package/gd/gd.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 ecd9155b9a417fb3f837f29e5966323796de247789163761dd72dbf83bfcac58 libgd-2.3.0.tar.xz -sha256 4d80b4af6c38d7a65128c881623dee2a5daee6b3a6ccab74a5cdfa0dfda96da7 COPYING +sha256 3fe822ece20796060af63b7c60acb151e5844204d289da0ce08f8fdf131e5a61 libgd-2.3.3.tar.xz +sha256 005f4b6b0141d1bd11d371bbf7d4f67947f85a4906b7f5465f942204cf918ba3 COPYING diff --git a/buildroot/package/gd/gd.mk b/buildroot/package/gd/gd.mk index c7037f8db..ea8f067a8 100644 --- a/buildroot/package/gd/gd.mk +++ b/buildroot/package/gd/gd.mk @@ -4,7 +4,7 @@ # ################################################################################ -GD_VERSION = 2.3.0 +GD_VERSION = 2.3.3 GD_SOURCE = libgd-$(GD_VERSION).tar.xz GD_SITE = https://github.com/libgd/libgd/releases/download/gd-$(GD_VERSION) GD_INSTALL_STAGING = YES diff --git a/buildroot/package/gdb/10.1/0001-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch b/buildroot/package/gdb/10.2/0001-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch similarity index 100% rename from buildroot/package/gdb/10.1/0001-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch rename to buildroot/package/gdb/10.2/0001-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch diff --git a/buildroot/package/gdb/10.1/0002-sh-ptrace-Define-pt_-dsp-regs-uapi_pt_-dsp-regs-on-G.patch b/buildroot/package/gdb/10.2/0002-sh-ptrace-Define-pt_-dsp-regs-uapi_pt_-dsp-regs-on-G.patch similarity index 100% rename from buildroot/package/gdb/10.1/0002-sh-ptrace-Define-pt_-dsp-regs-uapi_pt_-dsp-regs-on-G.patch rename to buildroot/package/gdb/10.2/0002-sh-ptrace-Define-pt_-dsp-regs-uapi_pt_-dsp-regs-on-G.patch diff --git a/buildroot/package/gdb/10.1/0003-use-asm-sgidefs.h.patch b/buildroot/package/gdb/10.2/0003-use-asm-sgidefs.h.patch similarity index 100% rename from buildroot/package/gdb/10.1/0003-use-asm-sgidefs.h.patch rename to buildroot/package/gdb/10.2/0003-use-asm-sgidefs.h.patch diff --git a/buildroot/package/gdb/10.1/0004-gdbserver-fix-build-for-m68k.patch b/buildroot/package/gdb/10.2/0004-gdbserver-fix-build-for-m68k.patch similarity index 100% rename from buildroot/package/gdb/10.1/0004-gdbserver-fix-build-for-m68k.patch rename to buildroot/package/gdb/10.2/0004-gdbserver-fix-build-for-m68k.patch diff --git a/buildroot/package/gdb/10.1/0005-nat-fork-inferior-include-linux-ptrace.h.patch b/buildroot/package/gdb/10.2/0005-nat-fork-inferior-include-linux-ptrace.h.patch similarity index 100% rename from buildroot/package/gdb/10.1/0005-nat-fork-inferior-include-linux-ptrace.h.patch rename to buildroot/package/gdb/10.2/0005-nat-fork-inferior-include-linux-ptrace.h.patch diff --git a/buildroot/package/gdb/Config.in.host b/buildroot/package/gdb/Config.in.host index 21e6b34ca..0f0933aed 100644 --- a/buildroot/package/gdb/Config.in.host +++ b/buildroot/package/gdb/Config.in.host @@ -88,5 +88,5 @@ config BR2_GDB_VERSION default "4ecb98fbc2f94dbe01b69384afbc515107de73df" if BR2_csky default "8.3.1" if BR2_GDB_VERSION_8_3 default "9.2" if BR2_GDB_VERSION_9_2 || !BR2_PACKAGE_HOST_GDB - default "10.1" if BR2_GDB_VERSION_10 + default "10.2" if BR2_GDB_VERSION_10 depends on BR2_PACKAGE_GDB || BR2_PACKAGE_HOST_GDB diff --git a/buildroot/package/gdb/gdb.hash b/buildroot/package/gdb/gdb.hash index 3b4845d64..c45ee7329 100644 --- a/buildroot/package/gdb/gdb.hash +++ b/buildroot/package/gdb/gdb.hash @@ -1,7 +1,7 @@ # From ftp://gcc.gnu.org/pub/gdb/releases/sha512.sum sha512 9053a2dc6b9eb921907afbc4cecc75d635aa76df5e8c4f0e5824ccf57cb206b299c19b127fff000b65c334826ff8304a54ff6098428365a8e997cca886c39e9a gdb-8.3.1.tar.xz sha512 73635f00f343117aa5e2436f1e1597099e2bfb31ef7bb162b273fa1ea282c3fa9b0f52762e70bfc7ad0334addb8d159e9ac7cbe5998ca4f755ea8cf90714d274 gdb-9.2.tar.xz -sha512 0dc54380435c6853db60f1e388b94836d294dfa9ad7f518385a27db4edd03cb970f8717d5f1e9c9a0d4a33d7fcf91bc2e5d6c9cf9e4b561dcc74e65b806c1537 gdb-10.1.tar.xz +sha512 3653762ac008e065c37cd641653184c9ff7ce51ee2222ade1122bec9d6cc64dffd4fb74888ef11ac1942064a08910e96b7865112ad37f4602eb0a16bed074caa gdb-10.2.tar.xz # Locally calculated (fetched from Github) sha512 5a2acf2fd33ab2ff589e1037ca40abda54328997dcff26b2b49b874bd3be980be5a63342962254f3c3bda98e32ce7a33af704d37353352833dee193135600458 gdb-arc-2020.09-release-gdb.tar.gz diff --git a/buildroot/package/gnuradio/Config.in b/buildroot/package/gnuradio/Config.in index 738088802..c10e0fa3f 100644 --- a/buildroot/package/gnuradio/Config.in +++ b/buildroot/package/gnuradio/Config.in @@ -130,12 +130,6 @@ config BR2_PACKAGE_GNURADIO_FILTER help Filter signal processing blocks -config BR2_PACKAGE_GNURADIO_PAGER - bool "gr-flex support" - select BR2_PACKAGE_GNURADIO_ANALOG - help - FLEX pager decoder implementation blocks - config BR2_PACKAGE_GNURADIO_QTGUI bool "gr-qtgui" depends on BR2_PACKAGE_GNURADIO_PYTHON diff --git a/buildroot/package/gnuradio/gnuradio.mk b/buildroot/package/gnuradio/gnuradio.mk index 1f4458db9..10402da49 100644 --- a/buildroot/package/gnuradio/gnuradio.mk +++ b/buildroot/package/gnuradio/gnuradio.mk @@ -130,12 +130,6 @@ else GNURADIO_CONF_OPTS += -DENABLE_PYTHON=OFF endif -ifeq ($(BR2_PACKAGE_GNURADIO_PAGER),y) -GNURADIO_CONF_OPTS += -DENABLE_GR_PAGER=ON -else -GNURADIO_CONF_OPTS += -DENABLE_GR_PAGER=OFF -endif - ifeq ($(BR2_PACKAGE_GNURADIO_QTGUI),y) GNURADIO_DEPENDENCIES += qt5base python-pyqt5 qwt GNURADIO_CONF_OPTS += -DENABLE_GR_QTGUI=ON diff --git a/buildroot/package/gnutls/Config.in b/buildroot/package/gnutls/Config.in index cd853d1e7..cd83b375a 100644 --- a/buildroot/package/gnutls/Config.in +++ b/buildroot/package/gnutls/Config.in @@ -12,7 +12,7 @@ config BR2_PACKAGE_GNUTLS GnuTLS is a secure communications library implementing the SSL and TLS protocols and technologies around them. - http://www.gnutls.org + https://www.gnutls.org/ if BR2_PACKAGE_GNUTLS diff --git a/buildroot/package/gnutls/gnutls.hash b/buildroot/package/gnutls/gnutls.hash index 0788a7a6f..5d4fd1a0d 100644 --- a/buildroot/package/gnutls/gnutls.hash +++ b/buildroot/package/gnutls/gnutls.hash @@ -1,6 +1,6 @@ # Locally calculated after checking pgp signature -# https://www.gnupg.org/ftp/gcrypt/gnutls/v3.7/gnutls-3.7.1.tar.xz.sig -sha256 3777d7963eca5e06eb315686163b7b3f5045e2baac5e54e038ace9835e5cac6f gnutls-3.7.1.tar.xz +# https://www.gnupg.org/ftp/gcrypt/gnutls/v3.7/gnutls-3.7.2.tar.xz.sig +sha256 646e6c5a9a185faa4cea796d378a1ba8e1148dbb197ca6605f95986a25af2752 gnutls-3.7.2.tar.xz # Locally calculated sha256 e79e9c8a0c85d735ff98185918ec94ed7d175efc377012787aebcf3b80f0d90b doc/COPYING sha256 6095e9ffa777dd22839f7801aa845b31c9ed07f3d6bf8a26dc5d2dec8ccc0ef3 doc/COPYING.LESSER diff --git a/buildroot/package/gnutls/gnutls.mk b/buildroot/package/gnutls/gnutls.mk index 14855bceb..be5af1933 100644 --- a/buildroot/package/gnutls/gnutls.mk +++ b/buildroot/package/gnutls/gnutls.mk @@ -5,7 +5,7 @@ ################################################################################ GNUTLS_VERSION_MAJOR = 3.7 -GNUTLS_VERSION = $(GNUTLS_VERSION_MAJOR).1 +GNUTLS_VERSION = $(GNUTLS_VERSION_MAJOR).2 GNUTLS_SOURCE = gnutls-$(GNUTLS_VERSION).tar.xz GNUTLS_SITE = https://www.gnupg.org/ftp/gcrypt/gnutls/v$(GNUTLS_VERSION_MAJOR) GNUTLS_LICENSE = LGPL-2.1+ (core library) diff --git a/buildroot/package/go/go.hash b/buildroot/package/go/go.hash index d89c01911..bc828f41c 100644 --- a/buildroot/package/go/go.hash +++ b/buildroot/package/go/go.hash @@ -1,3 +1,3 @@ # From https://golang.org/dl/ -sha256 0662ae3813330280d5f1a97a2ee23bbdbe3a5a7cfa6001b24a9873a19a0dc7ec go1.15.15.src.tar.gz -sha256 2d36597f7117c38b006835ae7f537487207d8ec407aa9d9980794b2030cbc067 LICENSE +sha256 8f2a8c24b793375b3243df82fdb0c8387486dcc8a892ca1c991aa99ace086b98 go1.16.8.src.tar.gz +sha256 2d36597f7117c38b006835ae7f537487207d8ec407aa9d9980794b2030cbc067 LICENSE diff --git a/buildroot/package/go/go.mk b/buildroot/package/go/go.mk index 913ee6848..1921b85fc 100644 --- a/buildroot/package/go/go.mk +++ b/buildroot/package/go/go.mk @@ -4,7 +4,7 @@ # ################################################################################ -GO_VERSION = 1.15.15 +GO_VERSION = 1.16.8 GO_SITE = https://storage.googleapis.com/golang GO_SOURCE = go$(GO_VERSION).src.tar.gz @@ -49,6 +49,10 @@ else ifeq ($(BR2_aarch64),y) GO_GOARCH = arm64 else ifeq ($(BR2_i386),y) GO_GOARCH = 386 +# i386: use softfloat if no SSE2: https://golang.org/doc/go1.16#386 +ifneq ($(BR2_X86_CPU_HAS_SSE2),y) +GO_GO386 = softfloat +endif else ifeq ($(BR2_x86_64),y) GO_GOARCH = amd64 else ifeq ($(BR2_powerpc64),y) @@ -90,6 +94,7 @@ HOST_GO_CROSS_ENV = \ CC_FOR_TARGET="$(TARGET_CC)" \ CXX_FOR_TARGET="$(TARGET_CXX)" \ GOARCH=$(GO_GOARCH) \ + $(if $(GO_GO386),GO386=$(GO_GO386)) \ $(if $(GO_GOARM),GOARM=$(GO_GOARM)) \ GO_ASSUME_CROSSCOMPILING=1 diff --git a/buildroot/package/haproxy/haproxy.hash b/buildroot/package/haproxy/haproxy.hash index 66a6f40bd..92f155581 100644 --- a/buildroot/package/haproxy/haproxy.hash +++ b/buildroot/package/haproxy/haproxy.hash @@ -1,5 +1,5 @@ -# From: http://www.haproxy.org/download/2.2/src/haproxy-2.2.14.tar.gz.sha256 -sha256 6a9b702f04b07786f3e5878de8172a727acfdfdbc1cefe1c7a438df372f2fb61 haproxy-2.2.14.tar.gz +# From: http://www.haproxy.org/download/2.2/src/haproxy-2.2.17.tar.gz.sha256 +sha256 68af4aa3807d9c9f29b976d0ed57fb2e06acf7a185979059584862cc20d85be0 haproxy-2.2.17.tar.gz # Locally computed: sha256 0717ca51fceaa25ac9e5ccc62e0c727dcf27796057201fb5fded56a25ff6ca28 LICENSE sha256 5df07007198989c622f5d41de8d703e7bef3d0e79d62e24332ee739a452af62a doc/lgpl.txt diff --git a/buildroot/package/haproxy/haproxy.mk b/buildroot/package/haproxy/haproxy.mk index 6254819a9..0b3899581 100644 --- a/buildroot/package/haproxy/haproxy.mk +++ b/buildroot/package/haproxy/haproxy.mk @@ -5,7 +5,7 @@ ################################################################################ HAPROXY_VERSION_MAJOR = 2.2 -HAPROXY_VERSION = $(HAPROXY_VERSION_MAJOR).14 +HAPROXY_VERSION = $(HAPROXY_VERSION_MAJOR).17 HAPROXY_SITE = http://www.haproxy.org/download/$(HAPROXY_VERSION_MAJOR)/src HAPROXY_LICENSE = GPL-2.0+ and LGPL-2.1+ with exceptions HAPROXY_LICENSE_FILES = LICENSE doc/lgpl.txt doc/gpl.txt diff --git a/buildroot/package/iozone/iozone.mk b/buildroot/package/iozone/iozone.mk index ebb624365..32d57ea76 100644 --- a/buildroot/package/iozone/iozone.mk +++ b/buildroot/package/iozone/iozone.mk @@ -4,8 +4,8 @@ # ################################################################################ -IOZONE_VERSION = 3_490 -IOZONE_SOURCE = iozone$(IOZONE_VERSION).tar +IOZONE_VERSION = 3.490 +IOZONE_SOURCE = iozone$(subst .,_,$(IOZONE_VERSION)).tar IOZONE_SITE = http://www.iozone.org/src/current IOZONE_LICENSE = IOzone license (NO DERIVED WORKS ALLOWED) # IOzone license details can be found at: diff --git a/buildroot/package/ipmiutil/ipmiutil.mk b/buildroot/package/ipmiutil/ipmiutil.mk index d85b9643f..4c9de2658 100644 --- a/buildroot/package/ipmiutil/ipmiutil.mk +++ b/buildroot/package/ipmiutil/ipmiutil.mk @@ -11,6 +11,12 @@ IPMIUTIL_LICENSE_FILES = COPYING IPMIUTIL_MAKE = $(MAKE1) +# aclocal.m4 is newer than config.h.in. Touch the latter to avoid autoreconf +define IPMIUTIL_TOUCH_CONFIG_H_IN + touch $(@D)/config.h.in +endef +IPMIUTIL_PRE_CONFIGURE_HOOKS += IPMIUTIL_TOUCH_CONFIG_H_IN + # forgets to link against libcrypto dependencies breaking static link ifeq ($(BR2_PACKAGE_OPENSSL)x$(BR2_STATIC_LIBS),yx) # tests against distro libcrypto so it might get a false positive when diff --git a/buildroot/package/iputils/iputils.mk b/buildroot/package/iputils/iputils.mk index 715779a63..93101924a 100644 --- a/buildroot/package/iputils/iputils.mk +++ b/buildroot/package/iputils/iputils.mk @@ -23,7 +23,7 @@ IPUTILS_CONF_OPTS += \ -DBUILD_CLOCKDIFF=$(if $(BR2_PACKAGE_IPUTILS_CLOCKDIFF),true,false) \ -DBUILD_RARPD=$(if $(BR2_PACKAGE_IPUTILS_RARPD),true,false) \ -DBUILD_RDISC=$(if $(BR2_PACKAGE_IPUTILS_RDISC),true,false) \ - -DBUILD_RDISC_SERVER=$(if $(BR2_PACKAGE_IPUTILS_RDISC_SERVER),true,false) \ + -DENABLE_RDISC_SERVER=$(if $(BR2_PACKAGE_IPUTILS_RDISC_SERVER),true,false) \ -DBUILD_TRACEPATH=$(if $(BR2_PACKAGE_IPUTILS_TRACEPATH),true,false) \ -DBUILD_TRACEROUTE6=$(if $(BR2_PACKAGE_IPUTILS_TRACEROUTE6),true,false) \ -DBUILD_NINFOD=$(if $(BR2_PACKAGE_IPUTILS_NINFOD),true,false) diff --git a/buildroot/package/jszip/0001-fix-Use-a-null-prototype-object-for-this-files.patch b/buildroot/package/jszip/0001-fix-Use-a-null-prototype-object-for-this-files.patch new file mode 100644 index 000000000..969db5b40 --- /dev/null +++ b/buildroot/package/jszip/0001-fix-Use-a-null-prototype-object-for-this-files.patch @@ -0,0 +1,56 @@ +From 22357494f424178cb416cdb7d93b26dd4f824b36 Mon Sep 17 00:00:00 2001 +From: Michael Aquilina +Date: Mon, 14 Jun 2021 12:28:46 +0100 +Subject: [PATCH] fix: Use a null prototype object for this.files + +This approach is taken to prevent overriding object methods that would +exist on a normal object Object.create({}) + +[Retrieved from: +https://github.com/Stuk/jszip/commit/22357494f424178cb416cdb7d93b26dd4f824b36] +Signed-off-by: Fabrice Fontaine +--- + lib/index.js | 5 ++++- + lib/object.js | 6 +++--- + 2 files changed, 7 insertions(+), 4 deletions(-) + +diff --git a/lib/index.js b/lib/index.js +index b449877..b4c95ba 100644 +--- a/lib/index.js ++++ b/lib/index.js +@@ -19,7 +19,10 @@ function JSZip() { + // "folder/" : {...}, + // "folder/data.txt" : {...} + // } +- this.files = {}; ++ // NOTE: we use a null prototype because we do not ++ // want filenames like "toString" coming from a zip file ++ // to overwrite methods and attributes in a normal Object. ++ this.files = Object.create(null); + + this.comment = null; + +diff --git a/lib/object.js b/lib/object.js +index 1c9d8e8..aec3db7 100644 +--- a/lib/object.js ++++ b/lib/object.js +@@ -179,16 +179,16 @@ var out = { + */ + forEach: function(cb) { + var filename, relativePath, file; ++ /* jshint ignore:start */ ++ // ignore warning about unwanted properties because this.files is a null prototype object + for (filename in this.files) { +- if (!this.files.hasOwnProperty(filename)) { +- continue; +- } + file = this.files[filename]; + relativePath = filename.slice(this.root.length, filename.length); + if (relativePath && filename.slice(0, this.root.length) === this.root) { // the file is in the current root + cb(relativePath, file); // TODO reverse the parameters ? need to be clean AND consistent with the filter search fn... + } + } ++ /* jshint ignore:end */ + }, + + /** diff --git a/buildroot/package/jszip/jszip.mk b/buildroot/package/jszip/jszip.mk index 04bd0a7b3..a93766be1 100644 --- a/buildroot/package/jszip/jszip.mk +++ b/buildroot/package/jszip/jszip.mk @@ -8,6 +8,10 @@ JSZIP_VERSION = 3.2.2 JSZIP_SITE = $(call github,Stuk,jszip,v$(JSZIP_VERSION)) JSZIP_LICENSE = MIT or GPL-3.0 JSZIP_LICENSE_FILES = LICENSE.markdown +JSZIP_CPE_ID_VENDOR = jszip_project + +# 0001-fix-Use-a-null-prototype-object-for-this-files.patch +JSZIP_IGNORE_CVES += CVE-2021-23413 define JSZIP_INSTALL_TARGET_CMDS $(INSTALL) -m 0644 -D $(@D)/dist/jszip.min.js \ diff --git a/buildroot/package/kvm-unit-tests/0004-Fix-powerpc-issue-with-the-linker-from-Fedora-32.patch b/buildroot/package/kvm-unit-tests/0004-Fix-powerpc-issue-with-the-linker-from-Fedora-32.patch new file mode 100644 index 000000000..1768c668b --- /dev/null +++ b/buildroot/package/kvm-unit-tests/0004-Fix-powerpc-issue-with-the-linker-from-Fedora-32.patch @@ -0,0 +1,61 @@ +From 5126732d73aa75a0bc84f898042bfe35640624b8 Mon Sep 17 00:00:00 2001 +From: Thomas Huth +Date: Wed, 13 May 2020 13:14:46 +0200 +Subject: [PATCH] Fix powerpc issue with the linker from Fedora 32 + +The linker from Fedora 32 complains: + +powerpc64-linux-gnu-ld: powerpc/selftest.elf: error: PHDR segment not + covered by LOAD segment + +Let's introduce some fake PHDRs to the linker script to get this +working again. + +Message-Id: <20200514192626.9950-7-thuth@redhat.com> +Signed-off-by: Thomas Huth +Signed-off-by: Matthew Weber +--- + powerpc/flat.lds | 19 ++++++++++++++++--- + 1 file changed, 16 insertions(+), 3 deletions(-) + +diff --git a/powerpc/flat.lds b/powerpc/flat.lds +index 53221e8..5eed368 100644 +--- a/powerpc/flat.lds ++++ b/powerpc/flat.lds +@@ -1,7 +1,17 @@ + ++PHDRS ++{ ++ text PT_LOAD FLAGS(5); ++ data PT_LOAD FLAGS(6); ++} ++ + SECTIONS + { +- .text : { *(.init) *(.text) *(.text.*) } ++ .text : { ++ *(.init) ++ *(.text) ++ *(.text.*) ++ } :text + . = ALIGN(64K); + etext = .; + .opd : { *(.opd) } +@@ -19,9 +29,12 @@ SECTIONS + .data : { + *(.data) + *(.data.rel*) +- } ++ } :data + . = ALIGN(16); +- .rodata : { *(.rodata) *(.rodata.*) } ++ .rodata : { ++ *(.rodata) ++ *(.rodata.*) ++ } :data + . = ALIGN(16); + .bss : { *(.bss) } + . = ALIGN(256); +-- +2.17.1 + diff --git a/buildroot/package/libarchive/libarchive.hash b/buildroot/package/libarchive/libarchive.hash index bf0d6e4fd..d31e9f55f 100644 --- a/buildroot/package/libarchive/libarchive.hash +++ b/buildroot/package/libarchive/libarchive.hash @@ -1,4 +1,4 @@ # From https://www.libarchive.de/downloads/sha256sums -sha256 9015d109ec00bb9ae1a384b172bf2fc1dff41e2c66e5a9eeddf933af9db37f5a libarchive-3.5.1.tar.gz +sha256 f0b19ff39c3c9a5898a219497ababbadab99d8178acc980155c7e1271089b5a0 libarchive-3.5.2.tar.xz # Locally computed: sha256 b2cdf763345de2de34cebf54394df3c61a105c3b71288603c251f2fa638200ba COPYING diff --git a/buildroot/package/libarchive/libarchive.mk b/buildroot/package/libarchive/libarchive.mk index 9cc69fd45..eec256ba7 100644 --- a/buildroot/package/libarchive/libarchive.mk +++ b/buildroot/package/libarchive/libarchive.mk @@ -4,7 +4,8 @@ # ################################################################################ -LIBARCHIVE_VERSION = 3.5.1 +LIBARCHIVE_VERSION = 3.5.2 +LIBARCHIVE_SOURCE = libarchive-$(LIBARCHIVE_VERSION).tar.xz LIBARCHIVE_SITE = https://www.libarchive.de/downloads LIBARCHIVE_INSTALL_STAGING = YES LIBARCHIVE_LICENSE = BSD-2-Clause, BSD-3-Clause, CC0-1.0, OpenSSL, Apache-2.0 diff --git a/buildroot/package/libargtable2/libargtable2.mk b/buildroot/package/libargtable2/libargtable2.mk index 8215f552c..d033e28f4 100644 --- a/buildroot/package/libargtable2/libargtable2.mk +++ b/buildroot/package/libargtable2/libargtable2.mk @@ -4,9 +4,11 @@ # ################################################################################ -LIBARGTABLE2_VERSION = 13 -LIBARGTABLE2_SOURCE = argtable2-$(LIBARGTABLE2_VERSION).tar.gz -LIBARGTABLE2_SITE = http://downloads.sourceforge.net/project/argtable/argtable/argtable-2.13 +LIBARGTABLE2_MAJOR_VERSION = 2 +LIBARGTABLE2_MINOR_VERSION = 13 +LIBARGTABLE2_VERSION = $(LIBARGTABLE2_MAJOR_VERSION).$(LIBARGTABLE2_MINOR_VERSION) +LIBARGTABLE2_SOURCE = argtable2-$(LIBARGTABLE2_MINOR_VERSION).tar.gz +LIBARGTABLE2_SITE = http://downloads.sourceforge.net/project/argtable/argtable/argtable-$(LIBARGTABLE2_VERSION) LIBARGTABLE2_INSTALL_STAGING = YES LIBARGTABLE2_CONF_OPTS = \ --disable-example \ diff --git a/buildroot/package/libexif/0001-fixed-another-unsigned-integer-overflow.patch b/buildroot/package/libexif/0001-fixed-another-unsigned-integer-overflow.patch deleted file mode 100644 index 77bdfe89d..000000000 --- a/buildroot/package/libexif/0001-fixed-another-unsigned-integer-overflow.patch +++ /dev/null @@ -1,63 +0,0 @@ -From ce03ad7ef4e8aeefce79192bf5b6f69fae396f0c Mon Sep 17 00:00:00 2001 -From: Marcus Meissner -Date: Mon, 8 Jun 2020 17:27:06 +0200 -Subject: [PATCH] fixed another unsigned integer overflow - -first fixed by google in android fork, -https://android.googlesource.com/platform/external/libexif/+/1e187b62682ffab5003c702657d6d725b4278f16%5E%21/#F0 - -(use a more generic overflow check method, also check second overflow instance.) - -https://security-tracker.debian.org/tracker/CVE-2020-0198 - -Downloaded from upstream commit: -https://github.com/libexif/libexif/commit/ce03ad7ef4e8aeefce79192bf5b6f69fae396f0c - -Signed-off-by: Bernd Kuhls ---- - libexif/exif-data.c | 10 ++++++---- - 1 file changed, 6 insertions(+), 4 deletions(-) - -diff --git a/libexif/exif-data.c b/libexif/exif-data.c -index 8b280d3..b495726 100644 ---- a/libexif/exif-data.c -+++ b/libexif/exif-data.c -@@ -47,6 +47,8 @@ - #undef JPEG_MARKER_APP1 - #define JPEG_MARKER_APP1 0xe1 - -+#define CHECKOVERFLOW(offset,datasize,structsize) (( offset >= datasize) || (structsize > datasize) || (offset > datasize - structsize )) -+ - static const unsigned char ExifHeader[] = {0x45, 0x78, 0x69, 0x66, 0x00, 0x00}; - - struct _ExifDataPrivate -@@ -327,7 +329,7 @@ exif_data_load_data_thumbnail (ExifData *data, const unsigned char *d, - exif_log (data->priv->log, EXIF_LOG_CODE_DEBUG, "ExifData", "Bogus thumbnail offset (%u).", o); - return; - } -- if (s > ds - o) { -+ if (CHECKOVERFLOW(o,ds,s)) { - exif_log (data->priv->log, EXIF_LOG_CODE_DEBUG, "ExifData", "Bogus thumbnail size (%u), max would be %u.", s, ds-o); - return; - } -@@ -420,9 +422,9 @@ exif_data_load_data_content (ExifData *data, ExifIfd ifd, - } - - /* Read the number of entries */ -- if ((offset + 2 < offset) || (offset + 2 < 2) || (offset + 2 > ds)) { -+ if (CHECKOVERFLOW(offset, ds, 2)) { - exif_log (data->priv->log, EXIF_LOG_CODE_CORRUPT_DATA, "ExifData", -- "Tag data past end of buffer (%u > %u)", offset+2, ds); -+ "Tag data past end of buffer (%u+2 > %u)", offset, ds); - return; - } - n = exif_get_short (d + offset, data->priv->order); -@@ -431,7 +433,7 @@ exif_data_load_data_content (ExifData *data, ExifIfd ifd, - offset += 2; - - /* Check if we have enough data. */ -- if (offset + 12 * n > ds) { -+ if (CHECKOVERFLOW(offset, ds, 12*n)) { - n = (ds - offset) / 12; - exif_log (data->priv->log, EXIF_LOG_CODE_DEBUG, "ExifData", - "Short data; only loading %hu entries...", n); diff --git a/buildroot/package/libexif/0001-libexif-exif-gps-ifd.c-fix-build-with-gcc-4.8.patch b/buildroot/package/libexif/0001-libexif-exif-gps-ifd.c-fix-build-with-gcc-4.8.patch new file mode 100644 index 000000000..7bbf3b3e4 --- /dev/null +++ b/buildroot/package/libexif/0001-libexif-exif-gps-ifd.c-fix-build-with-gcc-4.8.patch @@ -0,0 +1,40 @@ +From 0c925491dea995ca96770159158bb8d57a48d84b Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Wed, 15 Sep 2021 07:56:32 +0200 +Subject: [PATCH] libexif/exif-gps-ifd.c: fix build with gcc 4.8 + +Fix the following build failure with gcc 4.8 raised since version 0.6.23 and +https://github.com/libexif/libexif/commit/e12c3529813cd16d50bf0a1c759093e1039dffec: + +exif-gps-ifd.c: In function 'exif_get_gps_tag_info': +exif-gps-ifd.c:62:3: error: 'for' loop initial declarations are only allowed in C99 mode + for (int i = 0; i < sizeof(exif_gps_ifd_tags) / sizeof(ExifGPSIfdTagInfo); ++i) { + ^ +exif-gps-ifd.c:62:3: note: use option -std=c99 or -std=gnu99 to compile your code + +Fixes: + - http://autobuild.buildroot.org/results/7dd222e06d1e6611449fb8fe7516817c9ad43d65 + +Signed-off-by: Fabrice Fontaine +[Upstream status: https://github.com/libexif/libexif/pull/72] +--- + libexif/exif-gps-ifd.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/libexif/exif-gps-ifd.c b/libexif/exif-gps-ifd.c +index 9c9ba70..de5f950 100644 +--- a/libexif/exif-gps-ifd.c ++++ b/libexif/exif-gps-ifd.c +@@ -59,7 +59,8 @@ const static struct ExifGPSIfdTagInfo exif_gps_ifd_tags[] = { + }; + + const ExifGPSIfdTagInfo *exif_get_gps_tag_info(ExifTag tag) { +- for (int i = 0; i < sizeof(exif_gps_ifd_tags) / sizeof(ExifGPSIfdTagInfo); ++i) { ++ int i; ++ for (i = 0; i < sizeof(exif_gps_ifd_tags) / sizeof(ExifGPSIfdTagInfo); ++i) { + if (tag==exif_gps_ifd_tags[i].tag) + return &exif_gps_ifd_tags[i]; + } +-- +2.33.0 + diff --git a/buildroot/package/libexif/0002-fixed-a-incorrect-overflow-check.patch b/buildroot/package/libexif/0002-fixed-a-incorrect-overflow-check.patch deleted file mode 100644 index 1946f7822..000000000 --- a/buildroot/package/libexif/0002-fixed-a-incorrect-overflow-check.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 9266d14b5ca4e29b970fa03272318e5f99386e06 Mon Sep 17 00:00:00 2001 -From: Marcus Meissner -Date: Thu, 5 Nov 2020 09:50:08 +0100 -Subject: [PATCH] fixed a incorrect overflow check that could be optimized - away. - -inspired by: -https://android.googlesource.com/platform/external/libexif/+/8e7345f3bc0bad06ac369d6cbc1124c8ceaf7d4b - -https://source.android.com/security/bulletin/2020-11-01 - -CVE-2020-0452 - -Downloaded from upstream commit, rebased for 0.6.22: -https://github.com/libexif/libexif/commit/9266d14b5ca4e29b970fa03272318e5f99386e06 - -Signed-off-by: Bernd Kuhls ---- - libexif/exif-entry.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/libexif/exif-entry.c b/libexif/exif-entry.c -index 3fc0ff9..4b866ce 100644 ---- a/libexif/exif-entry.c -+++ b/libexif/exif-entry.c -@@ -1371,8 +1371,8 @@ exif_entry_get_value (ExifEntry *e, char *val, unsigned int maxlen) - { - unsigned char *utf16; - -- /* Sanity check the size to prevent overflow */ -- if (e->size+sizeof(uint16_t)+1 < e->size) break; -+ /* Sanity check the size to prevent overflow. Note EXIF files are 64kb at most. */ -+ if (e->size >= 65536 - sizeof(uint16_t)*2) break; - - /* The tag may not be U+0000-terminated , so make a local - U+0000-terminated copy before converting it */ diff --git a/buildroot/package/libexif/libexif.hash b/buildroot/package/libexif/libexif.hash index 1a2157b3f..e087daf58 100644 --- a/buildroot/package/libexif/libexif.hash +++ b/buildroot/package/libexif/libexif.hash @@ -1,3 +1,3 @@ # Locally computed: -sha256 5048f1c8fc509cc636c2f97f4b40c293338b6041a5652082d5ee2cf54b530c56 libexif-0.6.22.tar.xz +sha256 a740a99920eb81ae0aa802bb46e683ce6e0cde061c210f5d5bde5b8572380431 libexif-0.6.23.tar.xz sha256 36b6d3fa47916943fd5fec313c584784946047ec1337a78b440e5992cb595f89 COPYING diff --git a/buildroot/package/libexif/libexif.mk b/buildroot/package/libexif/libexif.mk index 9a25e90d2..49637f151 100644 --- a/buildroot/package/libexif/libexif.mk +++ b/buildroot/package/libexif/libexif.mk @@ -4,18 +4,14 @@ # ################################################################################ -LIBEXIF_VERSION = 0.6.22 +LIBEXIF_VERSION = 0.6.23 LIBEXIF_SOURCE = libexif-$(LIBEXIF_VERSION).tar.xz LIBEXIF_SITE = \ - https://github.com/libexif/libexif/releases/download/libexif-$(subst .,_,$(LIBEXIF_VERSION))-release + https://github.com/libexif/libexif/releases/download/v$(LIBEXIF_VERSION) LIBEXIF_INSTALL_STAGING = YES LIBEXIF_DEPENDENCIES = host-pkgconf LIBEXIF_LICENSE = LGPL-2.1+ LIBEXIF_LICENSE_FILES = COPYING LIBEXIF_CPE_ID_VENDOR = libexif_project -# 0001-fixed-another-unsigned-integer-overflow.patch -LIBEXIF_IGNORE_CVES += CVE-2020-0198 -# 0002-fixed-a-incorrect-overflow-check.patch -LIBEXIF_IGNORE_CVES += CVE-2020-0452 $(eval $(autotools-package)) diff --git a/buildroot/package/libgcrypt/0001-configure.ac-add-an-option-to-disable-tests.patch b/buildroot/package/libgcrypt/0001-configure.ac-add-an-option-to-disable-tests.patch index 21ff20a47..4ef02fba6 100644 --- a/buildroot/package/libgcrypt/0001-configure.ac-add-an-option-to-disable-tests.patch +++ b/buildroot/package/libgcrypt/0001-configure.ac-add-an-option-to-disable-tests.patch @@ -24,7 +24,7 @@ diff --git a/Makefile.am b/Makefile.am index 7fa4fa4d..f0bd90e4 100644 --- a/Makefile.am +++ b/Makefile.am -@@ -39,9 +39,14 @@ else +@@ -40,9 +40,14 @@ else doc = endif @@ -44,7 +44,7 @@ diff --git a/configure.ac b/configure.ac index e8c8cd39..1a6b61e5 100644 --- a/configure.ac +++ b/configure.ac -@@ -2710,6 +2710,16 @@ AC_ARG_ENABLE([doc], AC_HELP_STRING([--disable-doc], +@@ -3198,6 +3198,16 @@ AC_ARG_ENABLE([doc], AC_HELP_STRING([--disable-doc], AM_CONDITIONAL([BUILD_DOC], [test "x$build_doc" != xno]) diff --git a/buildroot/package/libgcrypt/libgcrypt.hash b/buildroot/package/libgcrypt/libgcrypt.hash index 26ec492e1..23562d0ed 100644 --- a/buildroot/package/libgcrypt/libgcrypt.hash +++ b/buildroot/package/libgcrypt/libgcrypt.hash @@ -1,7 +1,7 @@ # From https://www.gnupg.org/download/integrity_check.html -sha1 6b18f453fee677078586279d96fb88e5df7b3f35 libgcrypt-1.9.3.tar.bz2 +sha1 1bccc8393482fa1953323ff429c6b5ba5676eb1a libgcrypt-1.9.4.tar.bz2 # Locally calculated after checking signature -# https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.9.3.tar.bz2.sig -# using key D8692123C4065DEA5E0F3AB5249B39D24F25E3B6 -sha256 97ebe4f94e2f7e35b752194ce15a0f3c66324e0ff6af26659bbfb5ff2ec328fd libgcrypt-1.9.3.tar.bz2 +# https://gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-1.9.4.tar.bz2.sig +# using key 6DAA6E64A76D2840571B4902528897B826403ADA +sha256 ea849c83a72454e3ed4267697e8ca03390aee972ab421e7df69dfe42b65caaf7 libgcrypt-1.9.4.tar.bz2 sha256 ca0061fc1381a3ab242310e4b3f56389f28e3d460eb2fd822ed7a21c6f030532 COPYING.LIB diff --git a/buildroot/package/libgcrypt/libgcrypt.mk b/buildroot/package/libgcrypt/libgcrypt.mk index 26be5d2f4..e5fdfcfc8 100644 --- a/buildroot/package/libgcrypt/libgcrypt.mk +++ b/buildroot/package/libgcrypt/libgcrypt.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBGCRYPT_VERSION = 1.9.3 +LIBGCRYPT_VERSION = 1.9.4 LIBGCRYPT_SOURCE = libgcrypt-$(LIBGCRYPT_VERSION).tar.bz2 LIBGCRYPT_LICENSE = LGPL-2.1+ LIBGCRYPT_LICENSE_FILES = COPYING.LIB diff --git a/buildroot/package/libmodsecurity/libmodsecurity.mk b/buildroot/package/libmodsecurity/libmodsecurity.mk index 66e7e522a..be46eb6e0 100644 --- a/buildroot/package/libmodsecurity/libmodsecurity.mk +++ b/buildroot/package/libmodsecurity/libmodsecurity.mk @@ -52,4 +52,14 @@ else LIBMODSECURITY_CONF_OPTS += --without-maxmind endif +LIBMODSECURITY_CXXFLAGS = $(TARGET_CXXFLAGS) + +# m68k_cf can't use -fPIC that libmodsecurity forces to use, so we need +# to disable it to avoid a build failure. +ifeq ($(BR2_m68k_cf),y) +LIBMODSECURITY_CXXFLAGS += -fno-PIC +endif + +LIBMODSECURITY_CONF_OPTS += CXXFLAGS="$(LIBMODSECURITY_CXXFLAGS)" + $(eval $(autotools-package)) diff --git a/buildroot/package/libopenssl/libopenssl.hash b/buildroot/package/libopenssl/libopenssl.hash index 585486ffb..93c688d9d 100644 --- a/buildroot/package/libopenssl/libopenssl.hash +++ b/buildroot/package/libopenssl/libopenssl.hash @@ -1,5 +1,5 @@ -# From https://www.openssl.org/source/openssl-1.1.1k.tar.gz.sha256 -sha256 892a0875b9872acd04a9fde79b1f943075d5ea162415de3047c327df33fbaee5 openssl-1.1.1k.tar.gz +# From https://www.openssl.org/source/openssl-1.1.1l.tar.gz.sha256 +sha256 0b7a3e5e59c34827fe0c3a74b7ec8baef302b98fa80088d7f9153aa16fa76bd1 openssl-1.1.1l.tar.gz # License files sha256 c32913b33252e71190af2066f08115c69bc9fddadf3bf29296e20c835389841c LICENSE diff --git a/buildroot/package/libopenssl/libopenssl.mk b/buildroot/package/libopenssl/libopenssl.mk index 487fe554c..b618e3e56 100644 --- a/buildroot/package/libopenssl/libopenssl.mk +++ b/buildroot/package/libopenssl/libopenssl.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBOPENSSL_VERSION = 1.1.1k +LIBOPENSSL_VERSION = 1.1.1l LIBOPENSSL_SITE = https://www.openssl.org/source LIBOPENSSL_SOURCE = openssl-$(LIBOPENSSL_VERSION).tar.gz LIBOPENSSL_LICENSE = OpenSSL or SSLeay diff --git a/buildroot/package/librsvg/librsvg.hash b/buildroot/package/librsvg/librsvg.hash index cb558f147..8b32c6581 100644 --- a/buildroot/package/librsvg/librsvg.hash +++ b/buildroot/package/librsvg/librsvg.hash @@ -1,5 +1,5 @@ -# From https://ftp.gnome.org/pub/gnome/sources/librsvg/2.50/librsvg-2.50.5.sha256sum -sha256 32701574c234fed352520c6d0bd5081f728184bc1a9b9c87d423dd27c32b9272 librsvg-2.50.5.tar.xz +# From https://ftp.gnome.org/pub/gnome/sources/librsvg/2.50/librsvg-2.50.7.sha256sum +sha256 fffb61b08cd5282aaae147a02b305166a7426fad22a8b9427708f0f2fc426ebc librsvg-2.50.7.tar.xz # Locally computed sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB diff --git a/buildroot/package/librsvg/librsvg.mk b/buildroot/package/librsvg/librsvg.mk index 5f3d68839..e4b1942b7 100644 --- a/buildroot/package/librsvg/librsvg.mk +++ b/buildroot/package/librsvg/librsvg.mk @@ -5,7 +5,7 @@ ################################################################################ LIBRSVG_VERSION_MAJOR = 2.50 -LIBRSVG_VERSION = $(LIBRSVG_VERSION_MAJOR).5 +LIBRSVG_VERSION = $(LIBRSVG_VERSION_MAJOR).7 LIBRSVG_SITE = http://ftp.gnome.org/pub/gnome/sources/librsvg/$(LIBRSVG_VERSION_MAJOR) LIBRSVG_SOURCE = librsvg-$(LIBRSVG_VERSION).tar.xz LIBRSVG_INSTALL_STAGING = YES diff --git a/buildroot/package/libshout/libshout.mk b/buildroot/package/libshout/libshout.mk index 57d26390c..4afb762de 100644 --- a/buildroot/package/libshout/libshout.mk +++ b/buildroot/package/libshout/libshout.mk @@ -33,9 +33,6 @@ endif ifeq ($(BR2_PACKAGE_OPENSSL),y) LIBSHOUT_CONF_OPTS += --with-openssl LIBSHOUT_DEPENDENCIES += openssl -else ifeq ($(BR2_PACKAGE_LIBRESSL),y) -LIBSHOUT_CONF_OPTS += --with-openssl=$(STAGING_DIR)/lib -LIBSHOUT_DEPENDENCIES += libressl else LIBSHOUT_CONF_OPTS += --without-openssl endif diff --git a/buildroot/package/libssh/libssh.hash b/buildroot/package/libssh/libssh.hash index bc6fa3f1f..4dbab1137 100644 --- a/buildroot/package/libssh/libssh.hash +++ b/buildroot/package/libssh/libssh.hash @@ -1,5 +1,5 @@ # Locally calculated after checking pgp signature -# https://www.libssh.org/files/0.9/libssh-0.9.5.tar.xz.asc +# https://www.libssh.org/files/0.9/libssh-0.9.6.tar.xz.asc # with key 8DFF53E18F2ABC8D8F3C92237EE0FC4DCC014E3D -sha256 acffef2da98e761fc1fd9c4fddde0f3af60ab44c4f5af05cd1b2d60a3fa08718 libssh-0.9.5.tar.xz +sha256 86bcf885bd9b80466fe0e05453c58b877df61afa8ba947a58c356d7f0fab829b libssh-0.9.6.tar.xz sha256 1656186e951db1c010a8485481fa94587f7e53a26d24976bef97945ad0c4df5a COPYING diff --git a/buildroot/package/libssh/libssh.mk b/buildroot/package/libssh/libssh.mk index eeb5d8489..4cadf83ae 100644 --- a/buildroot/package/libssh/libssh.mk +++ b/buildroot/package/libssh/libssh.mk @@ -5,7 +5,7 @@ ################################################################################ LIBSSH_VERSION_MAJOR = 0.9 -LIBSSH_VERSION = $(LIBSSH_VERSION_MAJOR).5 +LIBSSH_VERSION = $(LIBSSH_VERSION_MAJOR).6 LIBSSH_SOURCE = libssh-$(LIBSSH_VERSION).tar.xz LIBSSH_SITE = https://www.libssh.org/files/$(LIBSSH_VERSION_MAJOR) LIBSSH_LICENSE = LGPL-2.1 diff --git a/buildroot/package/linux-headers/Config.in.host b/buildroot/package/linux-headers/Config.in.host index 0567a58be..4ca942eca 100644 --- a/buildroot/package/linux-headers/Config.in.host +++ b/buildroot/package/linux-headers/Config.in.host @@ -346,12 +346,12 @@ endchoice config BR2_DEFAULT_KERNEL_HEADERS string - default "4.4.279" if BR2_KERNEL_HEADERS_4_4 - default "4.9.279" if BR2_KERNEL_HEADERS_4_9 - default "4.14.243" if BR2_KERNEL_HEADERS_4_14 - default "4.19.202" if BR2_KERNEL_HEADERS_4_19 - default "5.4.139" if BR2_KERNEL_HEADERS_5_4 - default "5.10.57" if BR2_KERNEL_HEADERS_5_10 + default "4.4.283" if BR2_KERNEL_HEADERS_4_4 + default "4.9.282" if BR2_KERNEL_HEADERS_4_9 + default "4.14.246" if BR2_KERNEL_HEADERS_4_14 + default "4.19.206" if BR2_KERNEL_HEADERS_4_19 + default "5.4.145" if BR2_KERNEL_HEADERS_5_4 + default "5.10.64" if BR2_KERNEL_HEADERS_5_10 default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION default "custom" if BR2_KERNEL_HEADERS_CUSTOM_TARBALL default BR2_KERNEL_HEADERS_CUSTOM_REPO_VERSION \ diff --git a/buildroot/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0001-HACK-only-build-and-install-localedef.patch b/buildroot/package/localedef/2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e/0001-HACK-only-build-and-install-localedef.patch similarity index 100% rename from buildroot/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0001-HACK-only-build-and-install-localedef.patch rename to buildroot/package/localedef/2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e/0001-HACK-only-build-and-install-localedef.patch diff --git a/buildroot/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0002-relax-dependency-on-GCC-to-4.8-and-binutils-to-2.24.patch b/buildroot/package/localedef/2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e/0002-relax-dependency-on-GCC-to-4.8-and-binutils-to-2.24.patch similarity index 100% rename from buildroot/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0002-relax-dependency-on-GCC-to-4.8-and-binutils-to-2.24.patch rename to buildroot/package/localedef/2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e/0002-relax-dependency-on-GCC-to-4.8-and-binutils-to-2.24.patch diff --git a/buildroot/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0003-Fix-GCC-11-Warray-parameter-warning-for-__sigsetjmp-.patch b/buildroot/package/localedef/2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e/0003-Fix-GCC-11-Warray-parameter-warning-for-__sigsetjmp-.patch similarity index 100% rename from buildroot/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0003-Fix-GCC-11-Warray-parameter-warning-for-__sigsetjmp-.patch rename to buildroot/package/localedef/2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e/0003-Fix-GCC-11-Warray-parameter-warning-for-__sigsetjmp-.patch diff --git a/buildroot/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0004-Avoid-Wstringop-overflow-warning-in-pthread_cleanup_.patch b/buildroot/package/localedef/2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e/0004-Avoid-Wstringop-overflow-warning-in-pthread_cleanup_.patch similarity index 100% rename from buildroot/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0004-Avoid-Wstringop-overflow-warning-in-pthread_cleanup_.patch rename to buildroot/package/localedef/2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e/0004-Avoid-Wstringop-overflow-warning-in-pthread_cleanup_.patch diff --git a/buildroot/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/localedef.hash b/buildroot/package/localedef/2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e/localedef.hash similarity index 70% rename from buildroot/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/localedef.hash rename to buildroot/package/localedef/2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e/localedef.hash index b1d5243fc..5e00ef7c0 100644 --- a/buildroot/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/localedef.hash +++ b/buildroot/package/localedef/2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e/localedef.hash @@ -1,5 +1,5 @@ # Locally calculated (fetched from Github) -sha256 f4710e9a435a7b83e1d23dd75434f0d36b898eba9b4249c946c32b467d852fd4 glibc-2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2.tar.gz +sha256 b634d38ace90752eeecb93246d71c0673bab0db8dfbd69333479ae7b10d63410 glibc-2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e.tar.gz # Hashes for license files sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/buildroot/package/localedef/localedef.mk b/buildroot/package/localedef/localedef.mk index 57ab5a345..4768066f6 100644 --- a/buildroot/package/localedef/localedef.mk +++ b/buildroot/package/localedef/localedef.mk @@ -7,7 +7,7 @@ # Use the same VERSION and SITE as target glibc # As in glibc.mk, generate version string using: # git describe --match 'glibc-*' --abbrev=40 origin/release/MAJOR.MINOR/master | cut -d '-' -f 2- -LOCALEDEF_VERSION = 2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2 +LOCALEDEF_VERSION = 2.32-50-g737efa27fca5c97f566a2005687fda7d6659cd2e LOCALEDEF_SOURCE = glibc-$(LOCALEDEF_VERSION).tar.gz LOCALEDEF_SITE = $(call github,bminor,glibc,$(LOCALEDEF_VERSION)) HOST_LOCALEDEF_DL_SUBDIR = glibc diff --git a/buildroot/package/mc/Config.in b/buildroot/package/mc/Config.in index 61f351c41..ac512116c 100644 --- a/buildroot/package/mc/Config.in +++ b/buildroot/package/mc/Config.in @@ -6,6 +6,7 @@ config BR2_PACKAGE_MC select BR2_PACKAGE_LIBGLIB2 # mc prefers slang, but can use ncurses too select BR2_PACKAGE_SLANG if !BR2_PACKAGE_NCURSES + select BR2_PACKAGE_NCURSES_WCHAR if BR2_PACKAGE_NCURSES help GNU Midnight Commander is a visual file manager, licensed under GNU General Public License. It can use either SLang diff --git a/buildroot/package/mc/mc.hash b/buildroot/package/mc/mc.hash index 208d0beda..6400f64b9 100644 --- a/buildroot/package/mc/mc.hash +++ b/buildroot/package/mc/mc.hash @@ -1,4 +1,4 @@ -# Hash from http://ftp.midnight-commander.org/mc-4.8.25.sha256 -sha256 ffc19617f20ebb23330acd3998b7fd559a042d172fa55746d53d246697b2548a mc-4.8.25.tar.xz +# Hash from http://ftp.midnight-commander.org/mc-4.8.27.sha256 +sha256 31be59225ffa9920816e9a8b3be0ab225a16d19e4faf46890f25bdffa02a4ff4 mc-4.8.27.tar.xz # sha256 locally computed: sha256 5576bbec76296e1c8e081f7037ebd01bdada388635f58d844a2f20d37bbe4284 COPYING diff --git a/buildroot/package/mc/mc.mk b/buildroot/package/mc/mc.mk index 00f34f81c..678d687bc 100644 --- a/buildroot/package/mc/mc.mk +++ b/buildroot/package/mc/mc.mk @@ -4,7 +4,7 @@ # ################################################################################ -MC_VERSION = 4.8.25 +MC_VERSION = 4.8.27 MC_SOURCE = mc-$(MC_VERSION).tar.xz MC_SITE = http://ftp.midnight-commander.org MC_LICENSE = GPL-3.0+ diff --git a/buildroot/package/mesa3d/0005-src-util-futex.h-fix-build-on-32-bit-architectures-u.patch b/buildroot/package/mesa3d/0005-src-util-futex.h-fix-build-on-32-bit-architectures-u.patch new file mode 100644 index 000000000..b01db8a4b --- /dev/null +++ b/buildroot/package/mesa3d/0005-src-util-futex.h-fix-build-on-32-bit-architectures-u.patch @@ -0,0 +1,43 @@ +From e501b7c17ada9c694d3f8302622b78d733485b38 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sat, 21 Aug 2021 17:55:33 +0200 +Subject: [PATCH] src/util/futex.h: fix build on 32-bit architectures using + 64-bit time_t + +Fix the following build failure on 32-bit architectures using 64-bit +time_t (e.g. riscv32): + +../src/util/futex.h: In function 'sys_futex': +../src/util/futex.h:39:19: error: 'SYS_futex' undeclared (first use in this function); did you mean 'sys_futex'? + 39 | return syscall(SYS_futex, addr1, op, val1, timeout, addr2, val3); + | ^~~~~~~~~ + | sys_futex + +Fixes: + - http://autobuild.buildroot.org/results/692700a5f967760a0b8cd358b1712f1d5a7b681e + +Signed-off-by: Fabrice Fontaine +[Upstream status: +https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12496] +--- + src/util/futex.h | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/src/util/futex.h b/src/util/futex.h +index 43097f4cd5b..221eda9db0c 100644 +--- a/src/util/futex.h ++++ b/src/util/futex.h +@@ -34,6 +34,10 @@ + #include + #include + ++#ifndef SYS_futex ++#define SYS_futex SYS_futex_time64 ++#endif ++ + static inline long sys_futex(void *addr1, int op, int val1, const struct timespec *timeout, void *addr2, int val3) + { + return syscall(SYS_futex, addr1, op, val1, timeout, addr2, val3); +-- +2.32.0 + diff --git a/buildroot/package/mosquitto/mosquitto.hash b/buildroot/package/mosquitto/mosquitto.hash index baa2a90c5..2692aa1a9 100644 --- a/buildroot/package/mosquitto/mosquitto.hash +++ b/buildroot/package/mosquitto/mosquitto.hash @@ -1,6 +1,6 @@ # Locally calculated after checking gpg signature -# from https://mosquitto.org/files/source/mosquitto-2.0.11.tar.gz.asc -sha256 7b36a7198bce85cf31b132f5c6ee36dcf5dadf86fb768501eb1e11ce95d4f78a mosquitto-2.0.11.tar.gz +# from https://mosquitto.org/files/source/mosquitto-2.0.12.tar.gz.asc +sha256 31cf0065cb431d6f4e57a5f4d56663e839c9d177362eff89582d7cfde191c933 mosquitto-2.0.12.tar.gz # License files sha256 d3c4ccace4e5d3cc89d34cf2a0bc85b8596bfc0a32b815d0d77f9b7c41b5350c LICENSE.txt diff --git a/buildroot/package/mosquitto/mosquitto.mk b/buildroot/package/mosquitto/mosquitto.mk index 52f9c9873..06b963a99 100644 --- a/buildroot/package/mosquitto/mosquitto.mk +++ b/buildroot/package/mosquitto/mosquitto.mk @@ -4,7 +4,7 @@ # ################################################################################ -MOSQUITTO_VERSION = 2.0.11 +MOSQUITTO_VERSION = 2.0.12 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/buildroot/package/netsniff-ng/0001-Detect-libpcap-dependencies-using-pkg-config.patch b/buildroot/package/netsniff-ng/0001-Detect-libpcap-dependencies-using-pkg-config.patch new file mode 100644 index 000000000..bbcbd2bfc --- /dev/null +++ b/buildroot/package/netsniff-ng/0001-Detect-libpcap-dependencies-using-pkg-config.patch @@ -0,0 +1,51 @@ +From 194ec61843b9598ce90873c812b817c4b96e2e0d Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Thu, 2 Sep 2021 12:56:00 +0300 +Subject: [PATCH] Detect libpcap dependencies using pkg-config + +When building statically the link command line must include all +dependencies of all libraries. libpcap can optionally depend on libnl. +mausezahn can't build statically in this case. + +Use pkg-config in configure and in the link command to construct the +library flags we need to link with libpcap. + +Signed-off-by: Baruch Siach +Signed-off-by: Tobias Klauser +--- +Upstream status: commit 194ec61843b9598ce90873c812b817c4b96e2e0d + + configure | 4 +++- + mausezahn/Makefile | 2 +- + 2 files changed, 4 insertions(+), 2 deletions(-) + +diff --git a/configure b/configure +index 510826a798f5..598ae2433a7a 100755 +--- a/configure ++++ b/configure +@@ -588,7 +588,9 @@ int main(void) + } + EOF + +- $CC -o $TMPDIR/pcaptest $TMPDIR/pcaptest.c -lpcap >> config.log 2>&1 ++ $CC -o $TMPDIR/pcaptest $TMPDIR/pcaptest.c \ ++ $($PKG_CONFIG --libs libpcap 2>> config.log) \ ++ >> config.log 2>&1 + if [ ! -x $TMPDIR/pcaptest ] ; then + echo "[NO]" + echo "CONFIG_LIBPCAP=0" >> Config +diff --git a/mausezahn/Makefile b/mausezahn/Makefile +index ca16b6579583..9544565355cc 100644 +--- a/mausezahn/Makefile ++++ b/mausezahn/Makefile +@@ -1,6 +1,6 @@ + mausezahn-libs = -lcli \ + -lnet \ +- -lpcap \ ++ $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) $(PKG_CONFIG) --libs libpcap 2> /dev/null ) \ + -lrt \ + -lpthread \ + -lm +-- +2.33.0 + diff --git a/buildroot/package/netsniff-ng/netsniff-ng.mk b/buildroot/package/netsniff-ng/netsniff-ng.mk index f45246da6..27bd707c8 100644 --- a/buildroot/package/netsniff-ng/netsniff-ng.mk +++ b/buildroot/package/netsniff-ng/netsniff-ng.mk @@ -13,7 +13,7 @@ NETSNIFF_NG_LICENSE_FILES = README COPYING NETSNIFF_NG_CONF_ENV = \ NACL_INC_DIR=/dev/null \ NACL_LIB_DIR=/dev/null -NETSNIFF_NG_DEPENDENCIES = libnl libpcap libnetfilter_conntrack liburcu +NETSNIFF_NG_DEPENDENCIES = host-pkgconf libnl libpcap libnetfilter_conntrack liburcu ifeq ($(BR2_PACKAGE_NETSNIFF_NG_MAUSEZAHN),y) NETSNIFF_NG_DEPENDENCIES += libcli libnet diff --git a/buildroot/package/nginx/0010-Allow-forcing-of-endianness-for-cross-compilation.patch b/buildroot/package/nginx/0010-Allow-forcing-of-endianness-for-cross-compilation.patch new file mode 100644 index 000000000..3810412b5 --- /dev/null +++ b/buildroot/package/nginx/0010-Allow-forcing-of-endianness-for-cross-compilation.patch @@ -0,0 +1,118 @@ +From 4bd8fe780ff2064f2d4e9c905d8a98dd0f9b6191 Mon Sep 17 00:00:00 2001 +From: Nevo Hed +Date: Mon, 30 Aug 2021 13:28:13 -0400 +Subject: [PATCH] Allow forcing of endianness for cross-compilation + +Upstream-status: Invalid (upstream doesn't support cross-compilation) +See https://trac.nginx.org/nginx/ticket/2240 + +Signed-off-by: Nevo Hed +--- + auto/endianness | 61 ++++++++++++++++++++++++++++++++----------------- + auto/options | 6 +++++ + 2 files changed, 46 insertions(+), 21 deletions(-) + +diff --git a/auto/endianness b/auto/endianness +index 1b552b6b..4b2a3cd7 100644 +--- a/auto/endianness ++++ b/auto/endianness +@@ -26,25 +26,44 @@ int main(void) { + + END + +-ngx_test="$CC $CC_TEST_FLAGS $CC_AUX_FLAGS \ +- -o $NGX_AUTOTEST $NGX_AUTOTEST.c $NGX_LD_OPT $ngx_feature_libs" +- +-eval "$ngx_test >> $NGX_AUTOCONF_ERR 2>&1" +- +-if [ -x $NGX_AUTOTEST ]; then +- if $NGX_AUTOTEST >/dev/null 2>&1; then +- echo " little endian" ++case "${NGX_FORCE_ENDIANNESS}" in ++ little) ++ echo " little endian (forced)" + have=NGX_HAVE_LITTLE_ENDIAN . auto/have +- else +- echo " big endian" +- fi +- +- rm -rf $NGX_AUTOTEST* +- +-else +- rm -rf $NGX_AUTOTEST* +- +- echo +- echo "$0: error: cannot detect system byte ordering" +- exit 1 +-fi ++ ;; ++ ++ big) ++ echo " big endian (forced)" ++ ;; ++ ++ "") ++ ngx_test="$CC $CC_TEST_FLAGS $CC_AUX_FLAGS \ ++ -o $NGX_AUTOTEST $NGX_AUTOTEST.c $NGX_LD_OPT $ngx_feature_libs" ++ ++ eval "$ngx_test >> $NGX_AUTOCONF_ERR 2>&1" ++ ++ if [ -x $NGX_AUTOTEST ]; then ++ if $NGX_AUTOTEST >/dev/null 2>&1; then ++ echo " little endian" ++ have=NGX_HAVE_LITTLE_ENDIAN . auto/have ++ else ++ echo " big endian" ++ fi ++ ++ rm -rf $NGX_AUTOTEST* ++ ++ else ++ rm -rf $NGX_AUTOTEST* ++ ++ echo ++ echo "$0: error: cannot detect system byte ordering" ++ exit 1 ++ fi ++ ;; ++ ++ *) ++ echo ++ echo "$0: error: invalid \"--force-endianness=${NGX_FORCE_ENDIANNESS}\"" ++ exit 1 ++ ;; ++esac +diff --git a/auto/options b/auto/options +index 80be906e..85a06456 100644 +--- a/auto/options ++++ b/auto/options +@@ -17,6 +17,8 @@ NGX_USER= + NGX_GROUP= + NGX_BUILD= + ++NGX_FORCE_ENDIANNESS= ++ + CC=${CC:-cc} + CPP= + NGX_OBJS=objs +@@ -196,6 +198,8 @@ do + --user=*) NGX_USER="$value" ;; + --group=*) NGX_GROUP="$value" ;; + ++ --force-endianness=*) NGX_FORCE_ENDIANNESS="$value" ;; ++ + --crossbuild=*) NGX_PLATFORM="$value" ;; + + --build=*) NGX_BUILD="$value" ;; +@@ -432,6 +436,8 @@ cat << END + --build=NAME set build name + --builddir=DIR set build directory + ++ --force-endianness=| force endianness ++ + --with-select_module enable select module + --without-select_module disable select module + --with-poll_module enable poll module +-- +2.31.1 + diff --git a/buildroot/package/nginx/nginx.mk b/buildroot/package/nginx/nginx.mk index e93e802fd..6e3883e13 100644 --- a/buildroot/package/nginx/nginx.mk +++ b/buildroot/package/nginx/nginx.mk @@ -52,6 +52,7 @@ NGINX_CONF_ENV += \ # prefix: nginx root configuration location NGINX_CONF_OPTS += \ + --force-endianness=$(call qstrip,$(call LOWERCASE,$(BR2_ENDIAN))) \ --prefix=/usr \ --conf-path=/etc/nginx/nginx.conf \ --sbin-path=/usr/sbin/nginx \ diff --git a/buildroot/package/nodejs/nodejs.hash b/buildroot/package/nodejs/nodejs.hash index 7d11a8d10..1552e937b 100644 --- a/buildroot/package/nodejs/nodejs.hash +++ b/buildroot/package/nodejs/nodejs.hash @@ -1,5 +1,5 @@ -# From https://nodejs.org/dist/v12.22.4/SHASUMS256.txt -sha256 44cd4eab131e5282fc923e9e720d983a0b44c12e4aa4f6c3598dc97ae1e4cd4c node-v12.22.4.tar.xz +# From https://nodejs.org/dist/v12.22.5/SHASUMS256.txt +sha256 f927ff6c2ac5a7234596031b18ba03febbcadd2650d375f1a3fd02426687fd14 node-v12.22.5.tar.xz # Hash for license file sha256 221417a7ca275112a5ac54639b36ee3c5184e74631ea1e1b01b701293b655190 LICENSE diff --git a/buildroot/package/nodejs/nodejs.mk b/buildroot/package/nodejs/nodejs.mk index 08d2f6d7c..39099b53d 100644 --- a/buildroot/package/nodejs/nodejs.mk +++ b/buildroot/package/nodejs/nodejs.mk @@ -4,7 +4,7 @@ # ################################################################################ -NODEJS_VERSION = 12.22.4 +NODEJS_VERSION = 12.22.5 NODEJS_SOURCE = node-v$(NODEJS_VERSION).tar.xz NODEJS_SITE = http://nodejs.org/dist/v$(NODEJS_VERSION) NODEJS_DEPENDENCIES = host-python host-nodejs c-ares \ diff --git a/buildroot/package/ogre/0002-Checks-for-strtol_l-function.patch b/buildroot/package/ogre/0002-Checks-for-strtol_l-function.patch new file mode 100644 index 000000000..540530ee9 --- /dev/null +++ b/buildroot/package/ogre/0002-Checks-for-strtol_l-function.patch @@ -0,0 +1,71 @@ +From 3f182b7e743662ec3fa63e1c7f213171d99485ba Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Mon, 10 Feb 2020 21:45:58 +0100 +Subject: [PATCH] Checks for strtol_l function + +strtol_l (and strtoul_l, strtoll_l, strtoull_l) are not always available +(for example on musl) so check for strtol_l and reuse android fallback if +needed to avoid the following build failure: + +/home/buildroot/autobuild/instance-1/output-1/build/ogre-1.12.0/OgreMain/src/OgreStringConverter.cpp: In static member function 'static bool Ogre::StringConverter::parse(const String&, Ogre::int32&)': +/home/buildroot/autobuild/instance-1/output-1/build/ogre-1.12.0/OgreMain/src/OgreStringConverter.cpp:253:22: error: 'strtol_l' was not declared in this scope + ret = (int32)strtol_l(val.c_str(), &end, 0, _numLocale); + ^~~~~~~~ + +Fixes: + - http://autobuild.buildroot.org/results/107cffe41081ce46441dec8699d6ad0f152bc152 + +Signed-off-by: Fabrice Fontaine +[Retrieved from: +https://github.com/OGRECave/ogre/commit/3f182b7e743662ec3fa63e1c7f213171d99485ba] +--- + CMake/ConfigureBuild.cmake | 7 +++++++ + CMake/Templates/OgreBuildSettings.h.in | 2 ++ + OgreMain/include/OgreString.h | 3 +++ + 3 files changed, 12 insertions(+) + +diff --git a/CMake/ConfigureBuild.cmake b/CMake/ConfigureBuild.cmake +index ab049a525ae..73606c997c1 100644 +--- a/CMake/ConfigureBuild.cmake ++++ b/CMake/ConfigureBuild.cmake +@@ -133,6 +133,13 @@ if(SDL2_FOUND OR EMSCRIPTEN) + set(OGRE_BITES_HAVE_SDL 1) + endif() + ++# determine if strtol_l is supported ++include(CheckFunctionExists) ++CHECK_FUNCTION_EXISTS(strtol_l HAVE_STRTOL_L) ++if (NOT HAVE_STRTOL_L) ++ set(OGRE_NO_LOCALE_STRCONVERT 1) ++endif () ++ + # generate OgreBuildSettings.h + configure_file(${OGRE_TEMPLATES_DIR}/OgreComponents.h.in ${PROJECT_BINARY_DIR}/include/OgreComponents.h @ONLY) + configure_file(${OGRE_TEMPLATES_DIR}/OgreBuildSettings.h.in ${PROJECT_BINARY_DIR}/include/OgreBuildSettings.h @ONLY) +diff --git a/CMake/Templates/OgreBuildSettings.h.in b/CMake/Templates/OgreBuildSettings.h.in +index a491d09624c..95eb1b71d64 100644 +--- a/CMake/Templates/OgreBuildSettings.h.in ++++ b/CMake/Templates/OgreBuildSettings.h.in +@@ -107,4 +107,6 @@ WARNING: Disabling this will make the samples unusable. + + #cmakedefine01 OGRE_NO_QUAD_BUFFER_STEREO + ++#cmakedefine01 OGRE_NO_LOCALE_STRCONVERT ++ + #endif +diff --git a/OgreMain/include/OgreString.h b/OgreMain/include/OgreString.h +index a81c220012e..1f544195dee 100644 +--- a/OgreMain/include/OgreString.h ++++ b/OgreMain/include/OgreString.h +@@ -46,8 +46,11 @@ THE SOFTWARE. + # define strnicmp strncasecmp + #endif + ++#if OGRE_PLATFORM == OGRE_PLATFORM_ANDROID || OGRE_PLATFORM == OGRE_PLATFORM_EMSCRIPTEN || \ ++ (OGRE_PLATFORM == OGRE_PLATFORM_LINUX && OGRE_NO_LOCALE_STRCONVERT == 1) + #if OGRE_PLATFORM == OGRE_PLATFORM_ANDROID || OGRE_PLATFORM == OGRE_PLATFORM_EMSCRIPTEN + # define locale_t int ++#endif + # define strtod_l(ptr, end, l) strtod(ptr, end) + # define strtoul_l(ptr, end, base, l) strtoul(ptr, end, base) + # define strtol_l(ptr, end, base, l) strtol(ptr, end, base) diff --git a/buildroot/package/openmpi/openmpi-mips32-fortran.cache b/buildroot/package/openmpi/openmpi-mips32-fortran.cache index 473f73a22..36f9f02bb 100644 --- a/buildroot/package/openmpi/openmpi-mips32-fortran.cache +++ b/buildroot/package/openmpi/openmpi-mips32-fortran.cache @@ -49,3 +49,4 @@ ompi_cv_fortran_kind_value_C_DOUBLE=8 ompi_cv_fortran_kind_value_C_DOUBLE_COMPLEX=8 ompi_cv_fortran_true_value=1 ompi_cv_fortran_sizeof_type_test_mpi_handle_=4 +ompi_cv_fortran_alignment_type_test_mpi_handle_=4 diff --git a/buildroot/package/openmpi/openmpi-mips64-fortran.cache b/buildroot/package/openmpi/openmpi-mips64-fortran.cache index 7f0209971..dea2ce9cd 100644 --- a/buildroot/package/openmpi/openmpi-mips64-fortran.cache +++ b/buildroot/package/openmpi/openmpi-mips64-fortran.cache @@ -58,3 +58,4 @@ ompi_cv_fortran_kind_value_0=0 ompi_cv_real16_c_equiv=yes ompi_cv_fortran_true_value=1 ompi_cv_fortran_sizeof_type_test_mpi_handle_=4 +ompi_cv_fortran_alignment_type_test_mpi_handle_=4 diff --git a/buildroot/package/openssl/Config.in b/buildroot/package/openssl/Config.in index dd4709130..daf76e706 100644 --- a/buildroot/package/openssl/Config.in +++ b/buildroot/package/openssl/Config.in @@ -62,8 +62,8 @@ config BR2_PACKAGE_HAS_OPENSSL config BR2_PACKAGE_PROVIDES_OPENSSL string - default "libopenssl" if BR2_PACKAGE_LIBOPENSSL - default "libressl" if BR2_PACKAGE_LIBRESSL + default "libopenssl" if BR2_PACKAGE_LIBOPENSSL + default "libressl" if BR2_PACKAGE_LIBRESSL endif diff --git a/buildroot/package/openvmtools/0012-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch b/buildroot/package/openvmtools/0012-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch new file mode 100644 index 000000000..dbe2c29a2 --- /dev/null +++ b/buildroot/package/openvmtools/0012-Make-HgfsConvertFromNtTimeNsec-aware-of-64-bit-time_.patch @@ -0,0 +1,80 @@ +From 3f0580f2546de8be7acf1bc78a55a257bc638ebe Mon Sep 17 00:00:00 2001 +From: Bartosz Brachaczek +Date: Tue, 12 Nov 2019 14:31:08 +0100 +Subject: [PATCH] Make HgfsConvertFromNtTimeNsec aware of 64-bit time_t on i386 + +I verified that this function behaves as expected on x86_64, i386 with +32-bit time_t, and i386 with 64-bit time_t for the following values of +ntTtime: + +UNIX_EPOCH-1, UNIX_EPOCH, UNIX_EPOCH+1, UNIX_S32_MAX-1, UNIX_S32_MAX, +UNIX_S32_MAX+1, UNIX_S32_MAX*2+1 + +I did not verify whether the use of Div643264 is optimal, performance +wise. + +Signed-off-by: Giulio Benetti +--- + lib/hgfs/hgfsUtil.c | 34 +++++++++++++++++++--------------- + 1 file changed, 19 insertions(+), 15 deletions(-) + +diff --git a/lib/hgfs/hgfsUtil.c b/lib/hgfs/hgfsUtil.c +index cc580ab8..49b10040 100644 +--- a/lib/hgfs/hgfsUtil.c ++++ b/lib/hgfs/hgfsUtil.c +@@ -110,23 +110,21 @@ HgfsConvertFromNtTimeNsec(struct timespec *unixTime, // OUT: Time in UNIX format + uint64 ntTime) // IN: Time in Windows NT format + { + #ifdef __i386__ +- uint32 sec; +- uint32 nsec; ++ uint64 sec64; ++ uint32 sec32, nsec; ++#endif + + ASSERT(unixTime); +- /* We assume that time_t is 32bit */ +- ASSERT_ON_COMPILE(sizeof (unixTime->tv_sec) == 4); + +- /* Cap NT time values that are outside of Unix time's range */ ++ if (sizeof (unixTime->tv_sec) == 4) { ++ /* Cap NT time values that are outside of Unix time's range */ + +- if (ntTime >= UNIX_S32_MAX) { +- unixTime->tv_sec = 0x7FFFFFFF; +- unixTime->tv_nsec = 0; +- return 1; ++ if (ntTime >= UNIX_S32_MAX) { ++ unixTime->tv_sec = 0x7FFFFFFF; ++ unixTime->tv_nsec = 0; ++ return 1; ++ } + } +-#else +- ASSERT(unixTime); +-#endif + + if (ntTime < UNIX_EPOCH) { + unixTime->tv_sec = 0; +@@ -135,9 +133,15 @@ HgfsConvertFromNtTimeNsec(struct timespec *unixTime, // OUT: Time in UNIX format + } + + #ifdef __i386__ +- Div643232(ntTime - UNIX_EPOCH, 10000000, &sec, &nsec); +- unixTime->tv_sec = sec; +- unixTime->tv_nsec = nsec * 100; ++ if (sizeof (unixTime->tv_sec) == 4) { ++ Div643232(ntTime - UNIX_EPOCH, 10000000, &sec32, &nsec); ++ unixTime->tv_sec = sec32; ++ unixTime->tv_nsec = nsec * 100; ++ } else { ++ Div643264(ntTime - UNIX_EPOCH, 10000000, &sec64, &nsec); ++ unixTime->tv_sec = sec64; ++ unixTime->tv_nsec = nsec * 100; ++ } + #else + unixTime->tv_sec = (ntTime - UNIX_EPOCH) / 10000000; + unixTime->tv_nsec = ((ntTime - UNIX_EPOCH) % 10000000) * 100; +-- +2.25.1 + diff --git a/buildroot/package/php/php.hash b/buildroot/package/php/php.hash index 2280b3f9b..28ac6c5d6 100644 --- a/buildroot/package/php/php.hash +++ b/buildroot/package/php/php.hash @@ -1,5 +1,5 @@ # From https://www.php.net/downloads.php -sha256 8e078cd7d2f49ac3fcff902490a5bb1addc885e7e3b0d8dd068f42c68297bde8 php-7.4.22.tar.xz +sha256 cea52313fcffe56343bcd3c66dbb23cd5507dc559cc2e3547cf8f5452e88a05d php-7.4.23.tar.xz # License file sha256 a188db807d711536f71e27b7d36879d63480f7994dc18adc08e624b3c5430fff LICENSE diff --git a/buildroot/package/php/php.mk b/buildroot/package/php/php.mk index 41075b2f7..805030d88 100644 --- a/buildroot/package/php/php.mk +++ b/buildroot/package/php/php.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_VERSION = 7.4.22 +PHP_VERSION = 7.4.23 PHP_SITE = http://www.php.net/distributions PHP_SOURCE = php-$(PHP_VERSION).tar.xz PHP_INSTALL_STAGING = YES diff --git a/buildroot/package/postgresql/postgresql.hash b/buildroot/package/postgresql/postgresql.hash index caa8a1f5e..2dcc1823d 100644 --- a/buildroot/package/postgresql/postgresql.hash +++ b/buildroot/package/postgresql/postgresql.hash @@ -1,5 +1,5 @@ -# From https://ftp.postgresql.org/pub/source/v13.3/postgresql-13.3.tar.bz2.sha256 -sha256 3cd9454fa8c7a6255b6743b767700925ead1b9ab0d7a0f9dcb1151010f8eb4a1 postgresql-13.3.tar.bz2 +# From https://ftp.postgresql.org/pub/source/v13.4/postgresql-13.4.tar.bz2.sha256 +sha256 ea93e10390245f1ce461a54eb5f99a48d8cabd3a08ce4d652ec2169a357bc0cd postgresql-13.4.tar.bz2 # License file, Locally calculated sha256 31ccadc0a70e8e0e8a35c5833567b64388dfe34987d962e1911554e271294105 COPYRIGHT diff --git a/buildroot/package/postgresql/postgresql.mk b/buildroot/package/postgresql/postgresql.mk index cab555380..b556ec2bc 100644 --- a/buildroot/package/postgresql/postgresql.mk +++ b/buildroot/package/postgresql/postgresql.mk @@ -4,7 +4,7 @@ # ################################################################################ -POSTGRESQL_VERSION = 13.3 +POSTGRESQL_VERSION = 13.4 POSTGRESQL_SOURCE = postgresql-$(POSTGRESQL_VERSION).tar.bz2 POSTGRESQL_SITE = https://ftp.postgresql.org/pub/source/v$(POSTGRESQL_VERSION) POSTGRESQL_LICENSE = PostgreSQL diff --git a/buildroot/package/prelink-cross/0001-src-rtld-dl-tls.c-Fix-TLS-offsets-computation-for-s3.patch b/buildroot/package/prelink-cross/0001-src-rtld-dl-tls.c-Fix-TLS-offsets-computation-for-s3.patch new file mode 100644 index 000000000..cea1357d1 --- /dev/null +++ b/buildroot/package/prelink-cross/0001-src-rtld-dl-tls.c-Fix-TLS-offsets-computation-for-s3.patch @@ -0,0 +1,43 @@ +From 4064f77d2f550762cbf220fec7c26a8ce4219ea4 Mon Sep 17 00:00:00 2001 +From: Alexander Egorenkov +Date: Sun, 8 Aug 2021 11:19:52 +0200 +Subject: [PATCH] src/rtld/dl-tls.c: Fix TLS offsets computation for s390 arch + +rtld_determine_tlsoffsets() didn't handle s390 arch properly by falling +back to the default case. If TLS_TCB_AT_TP is 1, then set offset to -1. + +From glibc's sysdeps/s390/nptl/tls.h: +------------------------------------- +/* The TCB can have any size and the memory following the address the + thread pointer points to is unspecified. Allocate the TCB there. */ +define TLS_TCB_AT_TP 1 +define TLS_DTV_AT_TP 0 + +This lead to the following error: +--------------------------------- +prelink-rtld: error while loading shared libraries: /lib64/libc.so.6: cannot handle TLS data + +Signed-off-by: Alexander Egorenkov +--- + src/rtld/dl-tls.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/src/rtld/dl-tls.c b/src/rtld/dl-tls.c +index 280cee45f950..29422dcfd25e 100644 +--- a/src/rtld/dl-tls.c ++++ b/src/rtld/dl-tls.c +@@ -143,6 +143,11 @@ rtld_determine_tlsoffsets (int e_machine, struct r_scope_elem *search_list) + tls_tcb_size = 0; + break; + ++ case EM_S390: ++ tls_tcb_at_tp = 1; ++ tls_tcb_size = -1; ++ break; ++ + default: + /* Hope there's no TLS! */ + for (i = 0; i < search_list->r_nlist; i++) +-- +2.31.1 + diff --git a/buildroot/package/prosody/0001-enable-syslog.patch b/buildroot/package/prosody/0001-enable-syslog.patch index 16acc89c5..5f09fa903 100644 --- a/buildroot/package/prosody/0001-enable-syslog.patch +++ b/buildroot/package/prosody/0001-enable-syslog.patch @@ -11,7 +11,7 @@ diff --git a/prosody.cfg.lua.dist b/prosody.cfg.lua.dist index a0fc6c9e..af3cc0e4 100644 --- a/prosody.cfg.lua.dist +++ b/prosody.cfg.lua.dist -@@ -155,7 +155,7 @@ archive_expires_after = "1w" -- Remove archived messages after 1 week +@@ -166,7 +166,7 @@ archive_expires_after = "1w" -- Remove archived messages after 1 week log = { info = "prosody.log"; -- Change 'info' to 'debug' for verbose logging error = "prosody.err"; diff --git a/buildroot/package/prosody/0002-add-pidfile.patch b/buildroot/package/prosody/0002-add-pidfile.patch index 6221fd085..0653ed723 100644 --- a/buildroot/package/prosody/0002-add-pidfile.patch +++ b/buildroot/package/prosody/0002-add-pidfile.patch @@ -11,7 +11,7 @@ diff --git a/prosody.cfg.lua.dist b/prosody.cfg.lua.dist index af3cc0e4..675db12f 100644 --- a/prosody.cfg.lua.dist +++ b/prosody.cfg.lua.dist -@@ -176,6 +176,9 @@ log = { +@@ -187,6 +187,9 @@ log = { -- HTTPS currently only supports a single certificate, specify it here: --https_certificate = "certs/localhost.crt" diff --git a/buildroot/package/prosody/prosody.hash b/buildroot/package/prosody/prosody.hash index 50d596471..4579545e3 100644 --- a/buildroot/package/prosody/prosody.hash +++ b/buildroot/package/prosody/prosody.hash @@ -1,8 +1,8 @@ # Locally computed: -md5 be7e1c66c06b0eb4bdce37b67bcc6b51 prosody-0.11.9.tar.gz -sha1 632c2dd7794d344d4edbcea18fc1b5f623da5ca4 prosody-0.11.9.tar.gz -sha256 ccc032aea49d858635fb93644db276de6812be83073a8d80e9b4508095deff09 prosody-0.11.9.tar.gz -sha512 fabbbbb1acb3de4ff01e3e8c6e9e4dc37cb161259f1649683a1f9d925ed9f1709e052bfc831cba3f1861a9cca599f2b725ee739bfcb57164d6f50ac07011b52a prosody-0.11.9.tar.gz +md5 6130b79fb64141909330caf83a79a131 prosody-0.11.10.tar.gz +sha1 4dc8b2f783b43e7a5e781b1fc8aee48b0e106def prosody-0.11.10.tar.gz +sha256 c6d714e6d4a6ddd1db1266b205d9d8a3ed91818f42755c9268ffb18359d204e1 prosody-0.11.10.tar.gz +sha512 419d8f8465f1807015f0a52d8f35ee89892b0869084dae38b60fc833d63c3d70892d8e59ae00039cd15e0e25f46d042954896f51f8c0520650a877f5296707cb prosody-0.11.10.tar.gz # Hash for license file: sha256 bbbdc1c5426e5944cf869fc0faeaf19d88a220cd2b39ea98b7b8e86b0e88a2ef COPYING diff --git a/buildroot/package/prosody/prosody.mk b/buildroot/package/prosody/prosody.mk index 92c812ebf..0eeb32cd3 100644 --- a/buildroot/package/prosody/prosody.mk +++ b/buildroot/package/prosody/prosody.mk @@ -4,7 +4,7 @@ # ################################################################################ -PROSODY_VERSION = 0.11.9 +PROSODY_VERSION = 0.11.10 PROSODY_SITE = https://prosody.im/downloads/source PROSODY_LICENSE = MIT PROSODY_LICENSE_FILES = COPYING diff --git a/buildroot/package/protobuf/protobuf.mk b/buildroot/package/protobuf/protobuf.mk index df708819c..9a8b8aa8c 100644 --- a/buildroot/package/protobuf/protobuf.mk +++ b/buildroot/package/protobuf/protobuf.mk @@ -9,7 +9,7 @@ # as they share the same version/site variables. PROTOBUF_VERSION = 3.14.0 PROTOBUF_SOURCE = protobuf-cpp-$(PROTOBUF_VERSION).tar.gz -PROTOBUF_SITE = https://github.com/google/protobuf/releases/download/v$(PROTOBUF_VERSION) +PROTOBUF_SITE = https://github.com/protocolbuffers/protobuf/releases/download/v$(PROTOBUF_VERSION) PROTOBUF_LICENSE = BSD-3-Clause PROTOBUF_LICENSE_FILES = LICENSE PROTOBUF_CPE_ID_VENDOR = google diff --git a/buildroot/package/python-keyring/Config.in b/buildroot/package/python-keyring/Config.in index 18fad8400..f7bb1ae82 100644 --- a/buildroot/package/python-keyring/Config.in +++ b/buildroot/package/python-keyring/Config.in @@ -11,4 +11,5 @@ config BR2_PACKAGE_PYTHON_KEYRING https://pypi.python.org/pypi/keyring comment "python-keyring needs a toolchain w/ C++" + depends on BR2_PACKAGE_PYTHON3 depends on !BR2_INSTALL_LIBSTDCPP diff --git a/buildroot/package/python-matplotlib/Config.in b/buildroot/package/python-matplotlib/Config.in index e7e2804b4..afc090856 100644 --- a/buildroot/package/python-matplotlib/Config.in +++ b/buildroot/package/python-matplotlib/Config.in @@ -34,8 +34,6 @@ config BR2_PACKAGE_PYTHON_MATPLOTLIB_QT endif -comment "python-matplotlib needs a toolchain w/ C++" - depends on !BR2_INSTALL_LIBSTDCPP - -comment "python-matplotlib needs glibc or musl" - depends on !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) +comment "python-matplotlib needs a glibc or musl toolchain w/ C++" + depends on !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) || \ + !BR2_INSTALL_LIBSTDCPP diff --git a/buildroot/package/python-pillow/python-pillow.hash b/buildroot/package/python-pillow/python-pillow.hash index 562cb2c1a..3b5bdf253 100644 --- a/buildroot/package/python-pillow/python-pillow.hash +++ b/buildroot/package/python-pillow/python-pillow.hash @@ -1,5 +1,6 @@ # md5, sha256 from https://pypi.org/pypi/pillow/json -md5 21c03274a9f59b9c00419852a8faebe7 Pillow-8.2.0.tar.gz -sha256 a787ab10d7bb5494e5f76536ac460741788f1fbce851068d73a87ca7c35fc3e1 Pillow-8.2.0.tar.gz +md5 a7fc550b80819eab11e01cc097913700 Pillow-8.3.2.tar.gz +sha256 dde3f3ed8d00c72631bc19cbfff8ad3b6215062a5eed402381ad365f82f0c18c Pillow-8.3.2.tar.gz + # Locally computed sha256 checksums -sha256 5bb11d96b393a698df70018069a986248021f286344c437a13f299c3daf1dfd4 LICENSE +sha256 5bb11d96b393a698df70018069a986248021f286344c437a13f299c3daf1dfd4 LICENSE diff --git a/buildroot/package/python-pillow/python-pillow.mk b/buildroot/package/python-pillow/python-pillow.mk index 42607e0bb..168c9d632 100644 --- a/buildroot/package/python-pillow/python-pillow.mk +++ b/buildroot/package/python-pillow/python-pillow.mk @@ -4,8 +4,8 @@ # ################################################################################ -PYTHON_PILLOW_VERSION = 8.2.0 -PYTHON_PILLOW_SITE = https://files.pythonhosted.org/packages/21/23/af6bac2a601be6670064a817273d4190b79df6f74d8012926a39bc7aa77f +PYTHON_PILLOW_VERSION = 8.3.2 +PYTHON_PILLOW_SITE = https://files.pythonhosted.org/packages/90/d4/a7c9b6c5d176654aa3dbccbfd0be4fd3a263355dc24122a5f1937bdc2689 PYTHON_PILLOW_SOURCE = Pillow-$(PYTHON_PILLOW_VERSION).tar.gz PYTHON_PILLOW_LICENSE = HPND PYTHON_PILLOW_LICENSE_FILES = LICENSE diff --git a/buildroot/package/python-pyudev/0001-Workaround-finding-libudev-on-systems-without-ldconf.patch b/buildroot/package/python-pyudev/0001-Workaround-finding-libudev-on-systems-without-ldconf.patch index 67c276649..d798f836a 100644 --- a/buildroot/package/python-pyudev/0001-Workaround-finding-libudev-on-systems-without-ldconf.patch +++ b/buildroot/package/python-pyudev/0001-Workaround-finding-libudev-on-systems-without-ldconf.patch @@ -13,6 +13,8 @@ https://github.com/pyudev/pyudev/pull/117 Signed-off-by: Yegor Yefremov [Marcin: adjust to 0.22.0] Signed-off-by: Marcin Niestroj +[Fabrice: Use %-formatting instead of f-string for python 2] +Signed-off-by: Fabrice Fontaine --- src/pyudev/_ctypeslib/utils.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) @@ -37,7 +39,7 @@ index 9dffb3c..aa9942f 100644 - library_name = find_library(name) - if not library_name: + try: -+ lib = cdll.LoadLibrary(f'lib{name}.so') ++ lib = cdll.LoadLibrary('lib%s.so' % name) + except OSError: raise ImportError('No library named %s' % name) - lib = CDLL(library_name, use_errno=True) diff --git a/buildroot/package/python-secretstorage/Config.in b/buildroot/package/python-secretstorage/Config.in index 78a0a2ae1..8ae8c2d59 100644 --- a/buildroot/package/python-secretstorage/Config.in +++ b/buildroot/package/python-secretstorage/Config.in @@ -9,4 +9,5 @@ config BR2_PACKAGE_PYTHON_SECRETSTORAGE https://github.com/mitya57/secretstorage comment "python-secretstorage needs a toolchain w/ C++" + depends on BR2_PACKAGE_PYTHON3 depends on !BR2_INSTALL_LIBSTDCPP diff --git a/buildroot/package/python3/python3.hash b/buildroot/package/python3/python3.hash index 36e89a067..444dbd982 100644 --- a/buildroot/package/python3/python3.hash +++ b/buildroot/package/python3/python3.hash @@ -1,5 +1,5 @@ -# From https://www.python.org/downloads/release/python-396/ -md5 ecc29a7688f86e550d29dba2ee66cf80 Python-3.9.6.tar.xz +# From https://www.python.org/downloads/release/python-397/ +md5 fddb060b483bc01850a3f412eea1d954 Python-3.9.7.tar.xz # Locally computed -sha256 397920af33efc5b97f2e0b57e91923512ef89fc5b3c1d21dbfc8c4828ce0108a Python-3.9.6.tar.xz +sha256 f8145616e68c00041d1a6399b76387390388f8359581abc24432bb969b5e3c57 Python-3.9.7.tar.xz sha256 599826df92bfdcd2702eac691072498bb096c55af04ee984cf90f70ed77b5a70 LICENSE diff --git a/buildroot/package/python3/python3.mk b/buildroot/package/python3/python3.mk index c289d41de..0fab0dd9b 100644 --- a/buildroot/package/python3/python3.mk +++ b/buildroot/package/python3/python3.mk @@ -5,7 +5,7 @@ ################################################################################ PYTHON3_VERSION_MAJOR = 3.9 -PYTHON3_VERSION = $(PYTHON3_VERSION_MAJOR).6 +PYTHON3_VERSION = $(PYTHON3_VERSION_MAJOR).7 PYTHON3_SOURCE = Python-$(PYTHON3_VERSION).tar.xz PYTHON3_SITE = https://python.org/ftp/python/$(PYTHON3_VERSION) PYTHON3_LICENSE = Python-2.0, others diff --git a/buildroot/package/qt5/qt5base/0009-Fix-build-on-riscv32.patch b/buildroot/package/qt5/qt5base/0009-Fix-build-on-riscv32.patch new file mode 100644 index 000000000..98c721055 --- /dev/null +++ b/buildroot/package/qt5/qt5base/0009-Fix-build-on-riscv32.patch @@ -0,0 +1,45 @@ +From 035dc537bee26e3b63a211b2835d8560439e161f Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Fri, 27 Aug 2021 16:28:32 +0200 +Subject: Fix build on riscv32 + +riscv32 fails to build because __NR_futex is not defined on this +architecture: + +In file included from thread/qmutex_linux.cpp:45, + from thread/qmutex.cpp:804: +thread/qfutex_p.h: In function 'int QtLinuxFutex::_q_futex(int*, int, int, quintptr, int*, int)': +thread/qfutex_p.h:116:30: error: '__NR_futex' was not declared in this scope; did you mean '_q_futex'? + 116 | int result = syscall(__NR_futex, addr, op | FUTEX_PRIVATE_FLAG, val, val2, addr2, val3); + | ^~~~~~~~~~ + | _q_futex + +Pick-to: 6.1 6.2 +Fixes: QTBUG-96067 +Change-Id: Ib6a9bcc496f37e69ac39362cb0a021fccaf311f5 +Reviewed-by: Thiago Macieira +[Retrieved from: +https://code.qt.io/cgit/qt/qtbase.git/commit/?id=035dc537bee26e3b63a211b2835d8560439e161f] +--- + src/corelib/thread/qfutex_p.h | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/src/corelib/thread/qfutex_p.h b/src/corelib/thread/qfutex_p.h +index 40482b6fc1..037207a5c0 100644 +--- a/src/corelib/thread/qfutex_p.h ++++ b/src/corelib/thread/qfutex_p.h +@@ -103,6 +103,11 @@ QT_END_NAMESPACE + // if not defined in linux/futex.h + # define FUTEX_PRIVATE_FLAG 128 // added in v2.6.22 + ++// RISC-V does not supply __NR_futex ++# ifndef __NR_futex ++# define __NR_futex __NR_futex_time64 ++# endif ++ + QT_BEGIN_NAMESPACE + namespace QtLinuxFutex { + constexpr inline bool futexAvailable() { return true; } +-- +cgit v1.2.1 + diff --git a/buildroot/package/qt5/qt5base/qt5base.mk b/buildroot/package/qt5/qt5base/qt5base.mk index 84e9fa4ed..7897e4294 100644 --- a/buildroot/package/qt5/qt5base/qt5base.mk +++ b/buildroot/package/qt5/qt5base/qt5base.mk @@ -277,7 +277,7 @@ QT5BASE_ARCH_CONFIG_FILE = $(@D)/mkspecs/devices/linux-buildroot-g++/arch.conf ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) # Qt 5.8 needs atomics, which on various architectures are in -latomic define QT5BASE_CONFIGURE_ARCH_CONFIG - printf 'LIBS += -latomic\n' >$(QT5BASE_ARCH_CONFIG_FILE) + printf '!host_build { \n LIBS += -latomic\n }' >$(QT5BASE_ARCH_CONFIG_FILE) endef endif diff --git a/buildroot/package/samba4/samba4.hash b/buildroot/package/samba4/samba4.hash index 5ae3e2f2b..5fb076036 100644 --- a/buildroot/package/samba4/samba4.hash +++ b/buildroot/package/samba4/samba4.hash @@ -1,4 +1,4 @@ # Locally calculated after checking pgp signature -# https://download.samba.org/pub/samba/stable/samba-4.14.6.tar.asc -sha256 86760692dd74a04705c0f6d11b31965a477265a50e79eb15838184476146f4b0 samba-4.14.6.tar.gz +# https://download.samba.org/pub/samba/stable/samba-4.14.7.tar.asc +sha256 6f50353f9602aa20245eb18ceb00e7e5ec793df0974aebd5254c38f16d8f1906 samba-4.14.7.tar.gz sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/buildroot/package/samba4/samba4.mk b/buildroot/package/samba4/samba4.mk index ffb582e14..d350574e5 100644 --- a/buildroot/package/samba4/samba4.mk +++ b/buildroot/package/samba4/samba4.mk @@ -4,7 +4,7 @@ # ################################################################################ -SAMBA4_VERSION = 4.14.6 +SAMBA4_VERSION = 4.14.7 SAMBA4_SITE = https://download.samba.org/pub/samba/stable SAMBA4_SOURCE = samba-$(SAMBA4_VERSION).tar.gz SAMBA4_INSTALL_STAGING = YES diff --git a/buildroot/package/sdl2/0001-Buildsystem-Add-guards-for-not-building-with-KMSDRM-support-if-EGL.patch b/buildroot/package/sdl2/0001-Buildsystem-Add-guards-for-not-building-with-KMSDRM-support-if-EGL.patch new file mode 100644 index 000000000..b58c989f1 --- /dev/null +++ b/buildroot/package/sdl2/0001-Buildsystem-Add-guards-for-not-building-with-KMSDRM-support-if-EGL.patch @@ -0,0 +1,433 @@ +From 2fc987c28f14668a9ce360331f591e32e20c3906 Mon Sep 17 00:00:00 2001 +From: Manuel Alfayate Corchete +Date: Tue, 22 Dec 2020 14:15:33 +0100 +Subject: [PATCH] [Buildsystem] Add guards for not building with KMSDRM support + if EGL is not available. + +Signed-off-by: Fabrice Fontaine +[Retrieved from: +https://github.com/libsdl-org/SDL/commit/2fc987c28f14668a9ce360331f591e32e20c3906] +--- + configure.ac | 29 ++++++++++++++++++- + src/video/kmsdrm/SDL_kmsdrmopengles.c | 4 +-- + src/video/kmsdrm/SDL_kmsdrmopengles.h | 4 +-- + src/video/kmsdrm/SDL_kmsdrmvideo.c | 22 +++++--------- + src/video/kmsdrm/SDL_kmsdrmvideo.h | 8 ----- + .../SDL_kmsdrm_legacy_opengles.c | 4 +-- + .../SDL_kmsdrm_legacy_opengles.h | 4 +-- + .../kmsdrm_legacy/SDL_kmsdrm_legacy_video.c | 20 ++----------- + .../kmsdrm_legacy/SDL_kmsdrm_legacy_video.h | 6 ++-- + 9 files changed, 47 insertions(+), 54 deletions(-) + +diff --git a/configure.ac b/configure.ac +index b7e519b8f..acff858ba 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2236,7 +2236,10 @@ CheckKMSDRM() + AS_HELP_STRING([--enable-video-kmsdrm], [use KMSDRM video driver [[default=no]]]), + , enable_video_kmsdrm=no) + +- if test x$enable_video = xyes -a x$enable_video_kmsdrm = xyes; then ++ if test x$enable_video = xyes && \ ++ test x$enable_video_kmsdrm = xyes && \ ++ test x$video_opengl_egl = xyes; then ++ + video_kmsdrm=no + + PKG_CHECK_MODULES([LIBDRM], [libdrm >= 1.4.82], libdrm_avail=yes, libdrm_avail=no) +@@ -2418,6 +2421,28 @@ CheckOpenGLESX11() + fi + } + ++dnl Find EGL ++CheckEGLKMSDRM() ++{ ++ AC_MSG_CHECKING(for EGL support) ++ video_opengl_egl=no ++ AC_TRY_COMPILE([ ++ #define LINUX ++ #define EGL_API_FB ++ #define MESA_EGL_NO_X11_HEADERS ++ #define EGL_NO_X11 ++ #include ++ #include ++ ],[ ++ ],[ ++ video_opengl_egl=yes ++ ]) ++ AC_MSG_RESULT($video_opengl_egl) ++ if test x$video_opengl_egl = xyes; then ++ AC_DEFINE(SDL_VIDEO_OPENGL_EGL, 1, [ ]) ++ fi ++} ++ + dnl Check for Windows OpenGL + CheckWINDOWSGL() + { +@@ -3555,6 +3580,8 @@ case "$host" in + CheckRPI + CheckX11 + CheckDirectFB ++ # Need to check for EGL first because KMSDRM depends on it. ++ CheckEGLKMSDRM + CheckKMSDRM + CheckOpenGLX11 + CheckOpenGLESX11 +diff --git a/src/video/kmsdrm/SDL_kmsdrmopengles.c b/src/video/kmsdrm/SDL_kmsdrmopengles.c +index c9ec554b4..664621d2b 100644 +--- a/src/video/kmsdrm/SDL_kmsdrmopengles.c ++++ b/src/video/kmsdrm/SDL_kmsdrmopengles.c +@@ -22,7 +22,7 @@ + + #include "../../SDL_internal.h" + +-#if SDL_VIDEO_DRIVER_KMSDRM && SDL_VIDEO_OPENGL_EGL ++#if SDL_VIDEO_DRIVER_KMSDRM + + #include "SDL_kmsdrmvideo.h" + #include "SDL_kmsdrmopengles.h" +@@ -376,6 +376,6 @@ KMSDRM_GLES_SwapWindow(_THIS, SDL_Window * window) + + SDL_EGL_MakeCurrent_impl(KMSDRM) + +-#endif /* SDL_VIDEO_DRIVER_KMSDRM && SDL_VIDEO_OPENGL_EGL */ ++#endif /* SDL_VIDEO_DRIVER_KMSDRM */ + + /* vi: set ts=4 sw=4 expandtab: */ +diff --git a/src/video/kmsdrm/SDL_kmsdrmopengles.h b/src/video/kmsdrm/SDL_kmsdrmopengles.h +index f81b0c3dc..c8db7da86 100644 +--- a/src/video/kmsdrm/SDL_kmsdrmopengles.h ++++ b/src/video/kmsdrm/SDL_kmsdrmopengles.h +@@ -24,7 +24,7 @@ + #ifndef SDL_kmsdrmopengles_h_ + #define SDL_kmsdrmopengles_h_ + +-#if SDL_VIDEO_DRIVER_KMSDRM && SDL_VIDEO_OPENGL_EGL ++#if SDL_VIDEO_DRIVER_KMSDRM + + #include "../SDL_sysvideo.h" + #include "../SDL_egl_c.h" +@@ -42,7 +42,7 @@ extern SDL_GLContext KMSDRM_GLES_CreateContext(_THIS, SDL_Window * window); + extern int KMSDRM_GLES_SwapWindow(_THIS, SDL_Window * window); + extern int KMSDRM_GLES_MakeCurrent(_THIS, SDL_Window * window, SDL_GLContext context); + +-#endif /* SDL_VIDEO_DRIVER_KMSDRM && SDL_VIDEO_OPENGL_EGL */ ++#endif /* SDL_VIDEO_DRIVER_KMSDRM */ + + #endif /* SDL_kmsdrmopengles_h_ */ + +diff --git a/src/video/kmsdrm/SDL_kmsdrmvideo.c b/src/video/kmsdrm/SDL_kmsdrmvideo.c +index e84bd5ebc..663bc2170 100644 +--- a/src/video/kmsdrm/SDL_kmsdrmvideo.c ++++ b/src/video/kmsdrm/SDL_kmsdrmvideo.c +@@ -846,7 +846,6 @@ KMSDRM_CreateDevice(int devindex) + device->SetWindowGrab = KMSDRM_SetWindowGrab; + device->DestroyWindow = KMSDRM_DestroyWindow; + device->GetWindowWMInfo = KMSDRM_GetWindowWMInfo; +-#if SDL_VIDEO_OPENGL_EGL + device->GL_DefaultProfileConfig = KMSDRM_GLES_DefaultProfileConfig; + device->GL_LoadLibrary = KMSDRM_GLES_LoadLibrary; + device->GL_GetProcAddress = KMSDRM_GLES_GetProcAddress; +@@ -857,9 +856,7 @@ KMSDRM_CreateDevice(int devindex) + device->GL_GetSwapInterval = KMSDRM_GLES_GetSwapInterval; + device->GL_SwapWindow = KMSDRM_GLES_SwapWindow; + device->GL_DeleteContext = KMSDRM_GLES_DeleteContext; +-#endif +- device->PumpEvents = KMSDRM_PumpEvents; +- device->free = KMSDRM_DeleteDevice; ++ + #if SDL_VIDEO_VULKAN + device->Vulkan_LoadLibrary = KMSDRM_Vulkan_LoadLibrary; + device->Vulkan_UnloadLibrary = KMSDRM_Vulkan_UnloadLibrary; +@@ -867,6 +864,10 @@ KMSDRM_CreateDevice(int devindex) + device->Vulkan_CreateSurface = KMSDRM_Vulkan_CreateSurface; + device->Vulkan_GetDrawableSize = KMSDRM_Vulkan_GetDrawableSize; + #endif ++ ++ device->PumpEvents = KMSDRM_PumpEvents; ++ device->free = KMSDRM_DeleteDevice; ++ + return device; + + cleanup: +@@ -1327,9 +1328,7 @@ KMSDRM_DestroySurfaces(_THIS, SDL_Window *window) + SDL_DisplayData *dispdata = (SDL_DisplayData *)SDL_GetDisplayDriverData(0); + KMSDRM_PlaneInfo plane_info = {0}; + +-#if SDL_VIDEO_OPENGL_EGL + EGLContext egl_context; +-#endif + + /********************************************************************/ + /* BLOCK 1: protect the PRIMARY PLANE before destroying the buffers */ +@@ -1380,7 +1379,6 @@ KMSDRM_DestroySurfaces(_THIS, SDL_Window *window) + /* will get wrong info and we will be in trouble. */ + /***************************************************************************/ + +-#if SDL_VIDEO_OPENGL_EGL + egl_context = (EGLContext)SDL_GL_GetCurrentContext(); + SDL_EGL_MakeCurrent(_this, EGL_NO_SURFACE, egl_context); + +@@ -1388,7 +1386,6 @@ KMSDRM_DestroySurfaces(_THIS, SDL_Window *window) + SDL_EGL_DestroySurface(_this, windata->egl_surface); + windata->egl_surface = EGL_NO_SURFACE; + } +-#endif + + if (windata->gs) { + KMSDRM_gbm_surface_destroy(windata->gs); +@@ -1431,7 +1428,6 @@ KMSDRM_CreateSurfaces(_THIS, SDL_Window * window) + return SDL_SetError("Could not create GBM surface"); + } + +-#if SDL_VIDEO_OPENGL_EGL + /* We can't get the EGL context yet because SDL_CreateRenderer has not been called, + but we need an EGL surface NOW, or GL won't be able to render into any surface + and we won't see the first frame. */ +@@ -1448,8 +1444,6 @@ KMSDRM_CreateSurfaces(_THIS, SDL_Window * window) + egl_context = (EGLContext)SDL_GL_GetCurrentContext(); + ret = SDL_EGL_MakeCurrent(_this, windata->egl_surface, egl_context); + +-#endif +- + cleanup: + + if (ret) { +@@ -1478,11 +1472,11 @@ KMSDRM_DestroyWindow(_THIS, SDL_Window *window) + + if (!is_vulkan) { + KMSDRM_DestroySurfaces(_this, window); +-#if SDL_VIDEO_OPENGL_EGL ++ + if (_this->egl_data) { + SDL_EGL_UnloadLibrary(_this); + } +-#endif ++ + if (dispdata->gbm_init) { + KMSDRM_DeinitMouse(_this); + KMSDRM_GBMDeinit(_this, dispdata); +@@ -1754,7 +1748,6 @@ KMSDRM_CreateWindow(_THIS, SDL_Window * window) + goto cleanup; + } + +-#if SDL_VIDEO_OPENGL_EGL + /* Manually load the EGL library. KMSDRM_EGL_LoadLibrary() has already + been called by SDL_CreateWindow() but we don't do anything there, + precisely to be able to load it here. +@@ -1766,7 +1759,6 @@ KMSDRM_CreateWindow(_THIS, SDL_Window * window) + goto cleanup; + } + } +-#endif + + /* Can't init mouse stuff sooner because cursor plane is not ready. */ + KMSDRM_InitMouse(_this); +diff --git a/src/video/kmsdrm/SDL_kmsdrmvideo.h b/src/video/kmsdrm/SDL_kmsdrmvideo.h +index 2cf34522b..e58c922a8 100644 +--- a/src/video/kmsdrm/SDL_kmsdrmvideo.h ++++ b/src/video/kmsdrm/SDL_kmsdrmvideo.h +@@ -34,10 +34,8 @@ + + #include + #include +-#if SDL_VIDEO_OPENGL_EGL + #include + #include +-#endif + + /****************************************************************************************/ + /* Driverdata pointers are void struct* used to store backend-specific variables */ +@@ -101,10 +99,6 @@ typedef struct SDL_DisplayData + EGLSyncKHR kms_fence; + EGLSyncKHR gpu_fence; + +-#if SDL_VIDEO_OPENGL_EGL +- EGLSurface old_egl_surface; +-#endif +- + SDL_bool modeset_pending; + SDL_bool gbm_init; + +@@ -129,9 +123,7 @@ typedef struct SDL_WindowData + struct gbm_bo *bo; + struct gbm_bo *next_bo; + +-#if SDL_VIDEO_OPENGL_EGL + EGLSurface egl_surface; +-#endif + + /* For scaling and AR correction. */ + int32_t src_w; +diff --git a/src/video/kmsdrm_legacy/SDL_kmsdrm_legacy_opengles.c b/src/video/kmsdrm_legacy/SDL_kmsdrm_legacy_opengles.c +index 890801891..a886eb326 100644 +--- a/src/video/kmsdrm_legacy/SDL_kmsdrm_legacy_opengles.c ++++ b/src/video/kmsdrm_legacy/SDL_kmsdrm_legacy_opengles.c +@@ -21,7 +21,7 @@ + + #include "../../SDL_internal.h" + +-#if SDL_VIDEO_DRIVER_KMSDRM && SDL_VIDEO_OPENGL_EGL ++#if SDL_VIDEO_DRIVER_KMSDRM + + #include "SDL_log.h" + +@@ -147,6 +147,6 @@ KMSDRM_LEGACY_GLES_SwapWindow(_THIS, SDL_Window * window) { + + SDL_EGL_MakeCurrent_impl(KMSDRM_LEGACY) + +-#endif /* SDL_VIDEO_DRIVER_KMSDRM && SDL_VIDEO_OPENGL_EGL */ ++#endif /* SDL_VIDEO_DRIVER_KMSDRM */ + + /* vi: set ts=4 sw=4 expandtab: */ +diff --git a/src/video/kmsdrm_legacy/SDL_kmsdrm_legacy_opengles.h b/src/video/kmsdrm_legacy/SDL_kmsdrm_legacy_opengles.h +index 5e5ba96dc..2926cbe58 100644 +--- a/src/video/kmsdrm_legacy/SDL_kmsdrm_legacy_opengles.h ++++ b/src/video/kmsdrm_legacy/SDL_kmsdrm_legacy_opengles.h +@@ -23,7 +23,7 @@ + #ifndef SDL_kmsdrmopengles_h_ + #define SDL_kmsdrmopengles_h_ + +-#if SDL_VIDEO_DRIVER_KMSDRM && SDL_VIDEO_OPENGL_EGL ++#if SDL_VIDEO_DRIVER_KMSDRM + + #include "../SDL_sysvideo.h" + #include "../SDL_egl_c.h" +@@ -41,7 +41,7 @@ extern SDL_GLContext KMSDRM_LEGACY_GLES_CreateContext(_THIS, SDL_Window * window + extern int KMSDRM_LEGACY_GLES_SwapWindow(_THIS, SDL_Window * window); + extern int KMSDRM_LEGACY_GLES_MakeCurrent(_THIS, SDL_Window * window, SDL_GLContext context); + +-#endif /* SDL_VIDEO_DRIVER_KMSDRM && SDL_VIDEO_OPENGL_EGL */ ++#endif /* SDL_VIDEO_DRIVER_KMSDRM */ + + #endif /* SDL_kmsdrmopengles_h_ */ + +diff --git a/src/video/kmsdrm_legacy/SDL_kmsdrm_legacy_video.c b/src/video/kmsdrm_legacy/SDL_kmsdrm_legacy_video.c +index 36b1899bd..acddfc29a 100644 +--- a/src/video/kmsdrm_legacy/SDL_kmsdrm_legacy_video.c ++++ b/src/video/kmsdrm_legacy/SDL_kmsdrm_legacy_video.c +@@ -213,7 +213,7 @@ KMSDRM_LEGACY_CreateDevice(int devindex) + device->SetWindowGrab = KMSDRM_LEGACY_SetWindowGrab; + device->DestroyWindow = KMSDRM_LEGACY_DestroyWindow; + device->GetWindowWMInfo = KMSDRM_LEGACY_GetWindowWMInfo; +-#if SDL_VIDEO_OPENGL_EGL ++ + device->GL_LoadLibrary = KMSDRM_LEGACY_GLES_LoadLibrary; + device->GL_GetProcAddress = KMSDRM_LEGACY_GLES_GetProcAddress; + device->GL_UnloadLibrary = KMSDRM_LEGACY_GLES_UnloadLibrary; +@@ -223,7 +223,7 @@ KMSDRM_LEGACY_CreateDevice(int devindex) + device->GL_GetSwapInterval = KMSDRM_LEGACY_GLES_GetSwapInterval; + device->GL_SwapWindow = KMSDRM_LEGACY_GLES_SwapWindow; + device->GL_DeleteContext = KMSDRM_LEGACY_GLES_DeleteContext; +-#endif ++ + device->PumpEvents = KMSDRM_LEGACY_PumpEvents; + device->free = KMSDRM_LEGACY_DeleteDevice; + +@@ -369,14 +369,12 @@ KMSDRM_LEGACY_DestroySurfaces(_THIS, SDL_Window * window) + windata->next_bo = NULL; + } + +-#if SDL_VIDEO_OPENGL_EGL + SDL_EGL_MakeCurrent(_this, EGL_NO_SURFACE, EGL_NO_CONTEXT); + + if (windata->egl_surface != EGL_NO_SURFACE) { + SDL_EGL_DestroySurface(_this, windata->egl_surface); + windata->egl_surface = EGL_NO_SURFACE; + } +-#endif + + if (windata->gs) { + KMSDRM_LEGACY_gbm_surface_destroy(windata->gs); +@@ -394,18 +392,14 @@ KMSDRM_LEGACY_CreateSurfaces(_THIS, SDL_Window * window) + Uint32 height = dispdata->mode.vdisplay; + Uint32 surface_fmt = GBM_FORMAT_XRGB8888; + Uint32 surface_flags = GBM_BO_USE_SCANOUT | GBM_BO_USE_RENDERING; +-#if SDL_VIDEO_OPENGL_EGL + EGLContext egl_context; +-#endif + + if (!KMSDRM_LEGACY_gbm_device_is_format_supported(viddata->gbm, surface_fmt, surface_flags)) { + SDL_LogWarn(SDL_LOG_CATEGORY_VIDEO, "GBM surface format not supported. Trying anyway."); + } + +-#if SDL_VIDEO_OPENGL_EGL + SDL_EGL_SetRequiredVisualId(_this, surface_fmt); + egl_context = (EGLContext)SDL_GL_GetCurrentContext(); +-#endif + + KMSDRM_LEGACY_DestroySurfaces(_this, window); + +@@ -415,7 +409,6 @@ KMSDRM_LEGACY_CreateSurfaces(_THIS, SDL_Window * window) + return SDL_SetError("Could not create GBM surface"); + } + +-#if SDL_VIDEO_OPENGL_EGL + windata->egl_surface = SDL_EGL_CreateSurface(_this, (NativeWindowType)windata->gs); + + if (windata->egl_surface == EGL_NO_SURFACE) { +@@ -425,7 +418,6 @@ KMSDRM_LEGACY_CreateSurfaces(_THIS, SDL_Window * window) + SDL_EGL_MakeCurrent(_this, windata->egl_surface, egl_context); + + windata->egl_surface_dirty = 0; +-#endif + + return 0; + } +@@ -734,15 +726,9 @@ KMSDRM_LEGACY_SetDisplayMode(_THIS, SDL_VideoDisplay * display, SDL_DisplayMode + SDL_Window *window = viddata->windows[i]; + SDL_WindowData *windata = (SDL_WindowData *)window->driverdata; + +-#if SDL_VIDEO_OPENGL_EGL + /* Can't recreate EGL surfaces right now, need to wait until SwapWindow + so the correct thread-local surface and context state are available */ + windata->egl_surface_dirty = 1; +-#else +- if (KMSDRM_LEGACY_CreateSurfaces(_this, window)) { +- return -1; +- } +-#endif + + /* Tell app about the resize */ + SDL_SendWindowEvent(window, SDL_WINDOWEVENT_RESIZED, mode->w, mode->h); +@@ -758,13 +744,11 @@ KMSDRM_LEGACY_CreateWindow(_THIS, SDL_Window * window) + SDL_WindowData *windata; + SDL_VideoDisplay *display; + +-#if SDL_VIDEO_OPENGL_EGL + if (!_this->egl_data) { + if (SDL_GL_LoadLibrary(NULL) < 0) { + goto error; + } + } +-#endif + + /* Allocate window internal data */ + windata = (SDL_WindowData *)SDL_calloc(1, sizeof(SDL_WindowData)); +diff --git a/src/video/kmsdrm_legacy/SDL_kmsdrm_legacy_video.h b/src/video/kmsdrm_legacy/SDL_kmsdrm_legacy_video.h +index 28e1bc4fe..9df2bcfa3 100644 +--- a/src/video/kmsdrm_legacy/SDL_kmsdrm_legacy_video.h ++++ b/src/video/kmsdrm_legacy/SDL_kmsdrm_legacy_video.h +@@ -31,9 +31,7 @@ + #include + #include + #include +-#if SDL_VIDEO_OPENGL_EGL + #include +-#endif + + typedef struct SDL_VideoData + { +@@ -71,10 +69,10 @@ typedef struct SDL_WindowData + struct gbm_bo *crtc_bo; + SDL_bool waiting_for_flip; + SDL_bool double_buffer; +-#if SDL_VIDEO_OPENGL_EGL ++ + int egl_surface_dirty; + EGLSurface egl_surface; +-#endif ++ + } SDL_WindowData; + + typedef struct KMSDRM_LEGACY_FBInfo diff --git a/buildroot/package/sdl2/0001-src-video-kmsdrm-SDL_kmsdrmvideo.c-fix-build.patch b/buildroot/package/sdl2/0001-src-video-kmsdrm-SDL_kmsdrmvideo.c-fix-build.patch deleted file mode 100644 index 47a13300e..000000000 --- a/buildroot/package/sdl2/0001-src-video-kmsdrm-SDL_kmsdrmvideo.c-fix-build.patch +++ /dev/null @@ -1,39 +0,0 @@ -From d265b1ee94aa4faf5fa405f14cc731a25d7a00ab Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -Date: Tue, 24 Mar 2020 14:11:14 +0100 -Subject: [PATCH] src/video/kmsdrm/SDL_kmsdrmvideo.c: fix build - -Build is broken without EGL since version 2.0.12 and -https://hg.libsdl.org/SDL/rev/9761858bd6a3: - -/home/giuliobenetti/autobuild/run/instance-1/output-1/build/sdl2-2.0.12/src/video/kmsdrm/SDL_kmsdrmvideo.c: In function 'KMSDRM_CreateSurfaces': -/home/giuliobenetti/autobuild/run/instance-1/output-1/build/sdl2-2.0.12/src/video/kmsdrm/SDL_kmsdrmvideo.c:394:5: error: unknown type name 'EGLContext' - EGLContext egl_context; - ^ - -Fixes: - - http://autobuild.buildroot.org/results/fafd20a01591032662f9ca025fcea3478239cf3c - -Signed-off-by: Fabrice Fontaine - -[Upstream: https://hg.libsdl.org/SDL/rev/389ce8cfa2a3] - - -Fixes: - - Update patch to version 2.0.14 - -Signed-off-by: Michael Fischer - -diff -purN a/src/video/kmsdrm/SDL_kmsdrmvideo.c b/src/video/kmsdrm/SDL_kmsdrmvideo.c ---- a/src/video/kmsdrm/SDL_kmsdrmvideo.c 2021-01-08 09:56:44.028217792 +0100 -+++ b/src/video/kmsdrm/SDL_kmsdrmvideo.c 2021-01-08 09:55:52.295932111 +0100 -@@ -1407,7 +1407,9 @@ KMSDRM_CreateSurfaces(_THIS, SDL_Window - uint32_t surface_flags = GBM_BO_USE_SCANOUT | GBM_BO_USE_RENDERING; - uint32_t width, height; - -+#if SDL_VIDEO_OPENGL_EGL - EGLContext egl_context; -+#endif - - int ret = 0; - diff --git a/buildroot/package/sdl2/Config.in b/buildroot/package/sdl2/Config.in index f29b3c7c3..07de75a4d 100644 --- a/buildroot/package/sdl2/Config.in +++ b/buildroot/package/sdl2/Config.in @@ -32,10 +32,15 @@ comment "X11 video driver needs X.org" config BR2_PACKAGE_SDL2_KMSDRM bool "KMS/DRM video driver" depends on BR2_PACKAGE_LIBDRM + # requires libgbm from mesa3d + depends on BR2_PACKAGE_MESA3D_OPENGL_EGL comment "KMS/DRM video driver needs libdrm" depends on !BR2_PACKAGE_LIBDRM +comment "KMS/DRM video driver needs an OpenGL EGL backend provided by mesa3d" + depends on !BR2_PACKAGE_MESA3D_OPENGL_EGL + config BR2_PACKAGE_SDL2_OPENGL bool "OpenGL (GLX)" depends on BR2_PACKAGE_HAS_LIBGL diff --git a/buildroot/package/sdl2/sdl2.mk b/buildroot/package/sdl2/sdl2.mk index a2e426e57..b02831cab 100644 --- a/buildroot/package/sdl2/sdl2.mk +++ b/buildroot/package/sdl2/sdl2.mk @@ -22,6 +22,14 @@ SDL2_CONF_OPTS += \ --disable-pulseaudio \ --disable-video-wayland +# We're patching configure.ac but autoreconf breaks the build +# The script only uses autoconf, not automake or libtool +SDL2_DEPENDENCIES += host-autoconf +define SDL2_RUN_AUTOGEN + cd $(@D) && PATH=$(BR_PATH) ./autogen.sh +endef +SDL2_PRE_CONFIGURE_HOOKS += SDL2_RUN_AUTOGEN + # We are using autotools build system for sdl2, so the sdl2-config.cmake # include path are not resolved like for sdl2-config script. # Remove sdl2-config.cmake file and avoid unsafe include path if this @@ -150,7 +158,7 @@ SDL2_CONF_OPTS += --disable-alsa endif ifeq ($(BR2_PACKAGE_SDL2_KMSDRM),y) -SDL2_DEPENDENCIES += libdrm +SDL2_DEPENDENCIES += libdrm mesa3d SDL2_CONF_OPTS += --enable-video-kmsdrm else SDL2_CONF_OPTS += --disable-video-kmsdrm diff --git a/buildroot/package/sox/sox.mk b/buildroot/package/sox/sox.mk index dcc1a670b..4b09b94bc 100644 --- a/buildroot/package/sox/sox.mk +++ b/buildroot/package/sox/sox.mk @@ -15,6 +15,7 @@ SOX_CPE_ID_PRODUCT = sound_exchange # From git and we're patching configure.ac SOX_AUTORECONF = YES SOX_AUTORECONF_OPTS = --include=$(HOST_DIR)/share/autoconf-archive +SOX_INSTALL_STAGING = YES SOX_IGNORE_CVES += CVE-2017-11332 CVE-2017-11358 CVE-2017-11359 \ CVE-2017-15370 CVE-2017-15371 CVE-2017-15372 CVE-2017-15642 \ diff --git a/buildroot/package/sqlite/sqlite.mk b/buildroot/package/sqlite/sqlite.mk index 2c2928f27..f04b86663 100644 --- a/buildroot/package/sqlite/sqlite.mk +++ b/buildroot/package/sqlite/sqlite.mk @@ -4,9 +4,9 @@ # ################################################################################ -SQLITE_VERSION = 3340100 -SQLITE_CPE_ID_VERSION = 3.34.1 -SQLITE_SOURCE = sqlite-autoconf-$(SQLITE_VERSION).tar.gz +SQLITE_VERSION = 3.34.1 +SQLITE_TAR_VERSION = 3340100 +SQLITE_SOURCE = sqlite-autoconf-$(SQLITE_TAR_VERSION).tar.gz SQLITE_SITE = https://www.sqlite.org/2021 SQLITE_LICENSE = Public domain SQLITE_LICENSE_FILES = tea/license.terms diff --git a/buildroot/package/swupdate/10-mongoose-args b/buildroot/package/swupdate/10-mongoose-args new file mode 100644 index 000000000..d0b0f8be9 --- /dev/null +++ b/buildroot/package/swupdate/10-mongoose-args @@ -0,0 +1 @@ +SWUPDATE_WEBSERVER_ARGS="-r /var/www/swupdate ${SWUPDATE_MONGOOSE_EXTRA_ARGS:--p 8080}" diff --git a/buildroot/package/swupdate/Config.in b/buildroot/package/swupdate/Config.in index e87f69586..188d12433 100644 --- a/buildroot/package/swupdate/Config.in +++ b/buildroot/package/swupdate/Config.in @@ -59,9 +59,16 @@ config BR2_PACKAGE_SWUPDATE_CONFIG I you wish to use your own modified swupdate configuration file specify the config file location with this option. +config BR2_PACKAGE_SWUPDATE_WEBSERVER + bool "swupdate webserver" + default y + help + Enable update from remote using a web server on the target. + config BR2_PACKAGE_SWUPDATE_INSTALL_WEBSITE bool "install default website" default y + depends on BR2_PACKAGE_SWUPDATE_WEBSERVER help Install the provided website to /var/www/swupdate. diff --git a/buildroot/package/swupdate/swupdate.mk b/buildroot/package/swupdate/swupdate.mk index d96a0c2e0..4a735c3cf 100644 --- a/buildroot/package/swupdate/swupdate.mk +++ b/buildroot/package/swupdate/swupdate.mk @@ -13,7 +13,7 @@ SWUPDATE_LICENSE_FILES = Licenses/Exceptions Licenses/gpl-2.0.txt \ # swupdate uses $CROSS-cc instead of $CROSS-gcc, which is not # available in all external toolchains, and use CC for linking. Ensure # TARGET_CC is used for both. -SWUPDATE_MAKE_ENV = CC="$(TARGET_CC)" LD="$(TARGET_CC)" +SWUPDATE_MAKE_ENV = CC="$(TARGET_CC)" LD="$(TARGET_CC)" SKIP_STRIP=y # swupdate bundles its own version of mongoose (version 6.16) @@ -112,6 +112,13 @@ endif ifeq ($(BR2_PACKAGE_SYSTEMD),y) SWUPDATE_DEPENDENCIES += systemd +define SWUPDATE_SET_SYSTEMD + $(call KCONFIG_ENABLE_OPT,CONFIG_SYSTEMD) +endef +else +define SWUPDATE_SET_SYSTEMD + $(call KCONFIG_DISABLE_OPT,CONFIG_SYSTEMD) +endef endif ifeq ($(BR2_PACKAGE_LIBUBOOTENV),y) @@ -146,6 +153,16 @@ ifeq ($(BR2_PACKAGE_LIBRSYNC),y) SWUPDATE_DEPENDENCIES += librsync endif +ifeq ($(BR2_PACKAGE_SWUPDATE_WEBSERVER),y) +define SWUPDATE_SET_WEBSERVER + $(call KCONFIG_ENABLE_OPT,CONFIG_WEBSERVER) +endef +else +define SWUPDATE_SET_WEBSERVER + $(call KCONFIG_DISABLE_OPT,CONFIG_WEBSERVER) +endef +endif + SWUPDATE_BUILD_CONFIG = $(@D)/.config SWUPDATE_KCONFIG_FILE = $(call qstrip,$(BR2_PACKAGE_SWUPDATE_CONFIG)) @@ -165,14 +182,17 @@ SWUPDATE_MAKE_OPTS = \ define SWUPDATE_KCONFIG_FIXUP_CMDS $(SWUPDATE_PREFER_STATIC) $(SWUPDATE_SET_LUA_VERSION) + $(SWUPDATE_SET_SYSTEMD) + $(SWUPDATE_SET_WEBSERVER) endef define SWUPDATE_BUILD_CMDS - $(TARGET_MAKE_ENV) $(SWUPDATE_MAKE_ENV) $(MAKE) $(SWUPDATE_MAKE_OPTS) -C $(@D) + $(TARGET_MAKE_ENV) $(SWUPDATE_MAKE_ENV) $(MAKE) -C $(@D) $(SWUPDATE_MAKE_OPTS) endef define SWUPDATE_INSTALL_TARGET_CMDS - $(INSTALL) -D -m 0755 $(@D)/swupdate $(TARGET_DIR)/usr/bin/swupdate + $(TARGET_MAKE_ENV) $(SWUPDATE_MAKE_ENV) $(MAKE) -C $(@D) \ + $(SWUPDATE_MAKE_OPTS) DESTDIR=$(TARGET_DIR) install $(if $(BR2_PACKAGE_SWUPDATE_INSTALL_WEBSITE), \ mkdir -p $(TARGET_DIR)/var/www/swupdate; \ cp -dpfr $(@D)/examples/www/v2/* $(TARGET_DIR)/var/www/swupdate) @@ -186,23 +206,28 @@ $(error No Swupdate configuration file specified, check your BR2_PACKAGE_SWUPDAT endif endif -ifeq ($(BR2_PACKAGE_SWUPDATE_INSTALL_WEBSITE),y) +# Services and configs derived from meta-swupdate(MIT license) +# https://github.com/sbabic/meta-swupdate/tree/master/recipes-support/swupdate/swupdate define SWUPDATE_INSTALL_COMMON mkdir -p $(TARGET_DIR)/etc/swupdate/conf.d \ $(TARGET_DIR)/usr/lib/swupdate/conf.d $(INSTALL) -D -m 755 package/swupdate/swupdate.sh \ $(TARGET_DIR)/usr/lib/swupdate/swupdate.sh + $(if $(BR2_PACKAGE_SWUPDATE_WEBSERVER), \ + $(INSTALL) -D -m 644 package/swupdate/10-mongoose-args \ + $(TARGET_DIR)/usr/lib/swupdate/conf.d/10-mongoose-args) endef define SWUPDATE_INSTALL_INIT_SYSTEMD $(SWUPDATE_INSTALL_COMMON) $(INSTALL) -D -m 644 package/swupdate/swupdate.service \ $(TARGET_DIR)/usr/lib/systemd/system/swupdate.service + $(INSTALL) -D -m 644 package/swupdate/tmpfiles-swupdate.conf \ + $(TARGET_DIR)/usr/lib/tmpfiles.d/tmpfiles-swupdate.conf endef define SWUPDATE_INSTALL_INIT_SYSV $(SWUPDATE_INSTALL_COMMON) $(INSTALL) -D -m 755 package/swupdate/S80swupdate \ $(TARGET_DIR)/etc/init.d/S80swupdate endef -endif $(eval $(kconfig-package)) diff --git a/buildroot/package/swupdate/tmpfiles-swupdate.conf b/buildroot/package/swupdate/tmpfiles-swupdate.conf new file mode 100644 index 000000000..4743672fc --- /dev/null +++ b/buildroot/package/swupdate/tmpfiles-swupdate.conf @@ -0,0 +1,2 @@ +X /tmp/datadst +X /tmp/scripts diff --git a/buildroot/package/sylpheed/0001-harden-link-checker-before-accepting-click.patch b/buildroot/package/sylpheed/0001-harden-link-checker-before-accepting-click.patch new file mode 100644 index 000000000..fe3375bc9 --- /dev/null +++ b/buildroot/package/sylpheed/0001-harden-link-checker-before-accepting-click.patch @@ -0,0 +1,37 @@ +From ac286a71ed78429e16c612161251b9ea90ccd431 Mon Sep 17 00:00:00 2001 +From: Paul +Date: Sun, 23 May 2021 12:16:40 +0100 +Subject: [PATCH] harden link checker before accepting click + +[Retrieved from: +https://git.claws-mail.org/?p=claws.git;a=commit;h=ac286a71ed78429e16c612161251b9ea90ccd431] +Signed-off-by: Fabrice Fontaine +--- + src/textview.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/src/textview.c b/src/textview.c +index 62ad46eaf..3cdf5d911 100644 +--- a/src/textview.c ++++ b/src/textview.c +@@ -2885,7 +2885,7 @@ gboolean textview_uri_security_check(TextView *textview, ClickableText *uri) + gboolean retval = TRUE; + + if (is_uri_string(uri->uri) == FALSE) +- return TRUE; ++ return FALSE; + + visible_str = textview_get_visible_uri(textview, uri); + if (visible_str == NULL) +@@ -2922,6 +2922,8 @@ gboolean textview_uri_security_check(TextView *textview, ClickableText *uri) + if (aval == G_ALERTALTERNATE) + retval = TRUE; + } ++ if (strlen(uri->uri) > get_uri_len(uri->uri)) ++ retval = FALSE; + + g_free(visible_str); + +-- +2.25.1 + diff --git a/buildroot/package/sylpheed/sylpheed.mk b/buildroot/package/sylpheed/sylpheed.mk index 0453fba52..a7c7adade 100644 --- a/buildroot/package/sylpheed/sylpheed.mk +++ b/buildroot/package/sylpheed/sylpheed.mk @@ -10,9 +10,13 @@ SYLPHEED_SOURCE = sylpheed-$(SYLPHEED_VERSION).tar.xz SYLPHEED_SITE = http://sylpheed.sraoss.jp/sylpheed/v$(SYLPHEED_VERSION_MAJOR) SYLPHEED_LICENSE = GPL-2.0+ (executables), LGPL-2.1+ (library, attachment plugin) SYLPHEED_LICENSE_FILES = COPYING COPYING.LIB +SYLPHEED_CPE_ID_VENDOR = sylpheed_project SYLPHEED_CONF_OPTS = --disable-gtkspell --disable-gpgme SYLPHEED_DEPENDENCIES = host-pkgconf libgtk2 +# 0001-harden-link-checker-before-accepting-click.patch +SYLPHEED_IGNORE_CVES += CVE-2021-37746 + # Remove the -I$(includedir) from the Makefiles # because it refers to the host /usr/include. define SYLPHEED_PRECONFIGURE diff --git a/buildroot/package/tor/tor.hash b/buildroot/package/tor/tor.hash index 8622281c2..c298c9b47 100644 --- a/buildroot/package/tor/tor.hash +++ b/buildroot/package/tor/tor.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 f304e456102ed26c39e5f16ece2115585398cdb4e67455139c86ea43cdf70856 tor-0.4.5.9.tar.gz +sha256 8fe32222f8f2b4e65c6f50ac32eb4dfca59b8af71d0d16781f7ee5bec4c00743 tor-0.4.5.10.tar.gz sha256 47b54ed17e8fdcab3c44729a1789a09b208f9a63a845a7e50def9df729eebad0 LICENSE diff --git a/buildroot/package/tor/tor.mk b/buildroot/package/tor/tor.mk index f6aeba2d6..82b3cbf93 100644 --- a/buildroot/package/tor/tor.mk +++ b/buildroot/package/tor/tor.mk @@ -4,7 +4,7 @@ # ################################################################################ -TOR_VERSION = 0.4.5.9 +TOR_VERSION = 0.4.5.10 TOR_SITE = https://dist.torproject.org TOR_LICENSE = BSD-3-Clause TOR_LICENSE_FILES = LICENSE diff --git a/buildroot/package/uboot-tools/uboot-tools.mk b/buildroot/package/uboot-tools/uboot-tools.mk index b0fc9276b..84c5ab99a 100644 --- a/buildroot/package/uboot-tools/uboot-tools.mk +++ b/buildroot/package/uboot-tools/uboot-tools.mk @@ -202,15 +202,15 @@ $(eval $(host-generic-package)) MKIMAGE = $(HOST_DIR)/bin/mkimage -# mkimage supports arm blackfin m68k microblaze mips mips64 nios2 powerpc ppc sh sparc sparc64 x86 +# mkimage supports alpha arc arm arm64 blackfin ia64 invalid m68k microblaze mips mips64 nds32 nios2 or1k powerpc riscv s390 sandbox sh sparc sparc64 x86 x86_64 xtensa # KERNEL_ARCH can be arm64 arc arm blackfin m68k microblaze mips nios2 powerpc sh sparc i386 x86_64 xtensa -# For arm64, arc, xtensa we'll just keep KERNEL_ARCH -# For mips64, we'll just keep mips -# For i386 and x86_64, we need to convert -ifeq ($(KERNEL_ARCH),x86_64) -MKIMAGE_ARCH = x86 -else ifeq ($(KERNEL_ARCH),i386) +# For i386, we need to convert +# For openrisc, we need to convert +# For others, we'll just keep KERNEL_ARCH +ifeq ($(KERNEL_ARCH),i386) MKIMAGE_ARCH = x86 +else ifeq ($(KERNEL_ARCH),openrisc) +MKIMAGE_ARCH = or1k else MKIMAGE_ARCH = $(KERNEL_ARCH) endif diff --git a/buildroot/package/uhd/Config.in b/buildroot/package/uhd/Config.in index f61bbf0e8..541799b01 100644 --- a/buildroot/package/uhd/Config.in +++ b/buildroot/package/uhd/Config.in @@ -21,6 +21,7 @@ config BR2_PACKAGE_UHD select BR2_PACKAGE_BOOST_CHRONO select BR2_PACKAGE_BOOST_DATE_TIME select BR2_PACKAGE_BOOST_FILESYSTEM + select BR2_PACKAGE_BOOST_MATH select BR2_PACKAGE_BOOST_PROGRAM_OPTIONS select BR2_PACKAGE_BOOST_REGEX select BR2_PACKAGE_BOOST_SERIALIZATION diff --git a/buildroot/package/unbound/unbound.hash b/buildroot/package/unbound/unbound.hash index ec7e94079..3c872aedf 100644 --- a/buildroot/package/unbound/unbound.hash +++ b/buildroot/package/unbound/unbound.hash @@ -1,5 +1,5 @@ -# From https://nlnetlabs.nl/downloads/unbound/unbound-1.13.1.tar.gz.sha256 -sha256 8504d97b8fc5bd897345c95d116e0ee0ddf8c8ff99590ab2b4bd13278c9f50b8 unbound-1.13.1.tar.gz +# From https://nlnetlabs.nl/downloads/unbound/unbound-1.13.2.tar.gz.sha256 +sha256 0a13b547f3b92a026b5ebd0423f54c991e5718037fd9f72445817f6a040e1a83 unbound-1.13.2.tar.gz # Locally calculated sha256 8eb9a16cbfb8703090bbfa3a2028fd46bb351509a2f90dc1001e51fbe6fd45db LICENSE diff --git a/buildroot/package/unbound/unbound.mk b/buildroot/package/unbound/unbound.mk index 140b7d278..37456db41 100644 --- a/buildroot/package/unbound/unbound.mk +++ b/buildroot/package/unbound/unbound.mk @@ -4,7 +4,7 @@ # ################################################################################ -UNBOUND_VERSION = 1.13.1 +UNBOUND_VERSION = 1.13.2 UNBOUND_SITE = https://www.unbound.net/downloads UNBOUND_DEPENDENCIES = host-pkgconf expat libevent openssl UNBOUND_LICENSE = BSD-3-Clause diff --git a/buildroot/package/vim/vim.hash b/buildroot/package/vim/vim.hash index eb5928e91..ce04e5cf5 100644 --- a/buildroot/package/vim/vim.hash +++ b/buildroot/package/vim/vim.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 8a72323817210daf40abe545bdf7637591b9b541a0fb3560baed76e436132dba vim-8.2.0000.tar.gz -sha256 accdbd6761e7dd7e580545fe30f3a5a7707d50073aec4b8afef85c30fc9c031b README.txt +sha256 12cce47b81e12779b7d58faf879633be1b668f54a5417a5a24adac50413b3b3c vim-8.2.3432.tar.gz +sha256 96970b67f9cb38b0e759946cff22562a3c4b11ce78f62f2117d5e7ecded9ab4d README.txt diff --git a/buildroot/package/vim/vim.mk b/buildroot/package/vim/vim.mk index 36cb59331..f1ed3c342 100644 --- a/buildroot/package/vim/vim.mk +++ b/buildroot/package/vim/vim.mk @@ -4,7 +4,7 @@ # ################################################################################ -VIM_VERSION = 8.2.0000 +VIM_VERSION = 8.2.3432 VIM_SITE = $(call github,vim,vim,v$(VIM_VERSION)) VIM_DEPENDENCIES = ncurses $(TARGET_NLS_DEPENDENCIES) VIM_SUBDIR = src diff --git a/buildroot/package/wlroots/0001-Add-feature-macros-to-more-C-files-.patch b/buildroot/package/wlroots/0001-Add-feature-macros-to-more-C-files-.patch new file mode 100644 index 000000000..0ba078708 --- /dev/null +++ b/buildroot/package/wlroots/0001-Add-feature-macros-to-more-C-files-.patch @@ -0,0 +1,174 @@ +From cf37ba4c0bf31316b698ba23015f91903766871d Mon Sep 17 00:00:00 2001 +From: Paul Cercueil +Date: Thu, 18 Feb 2021 22:31:39 +0000 +Subject: [PATCH] Add feature macros to more C files + +These source files use "struct timespec", which is POSIX 1993.09. + +Signed-off-by: Paul Cercueil + +[Retrieved from: https://github.com/swaywm/wlroots/pull/2493] +Signed-off-by: Fabrice Fontaine +--- + backend/wayland/output.c | 1 + + types/data_device/wlr_data_device.c | 1 + + types/data_device/wlr_drag.c | 1 + + types/wlr_export_dmabuf_v1.c | 1 + + types/wlr_idle.c | 1 + + types/wlr_keyboard_shortcuts_inhibit_v1.c | 1 + + types/wlr_pointer_constraints_v1.c | 1 + + types/wlr_primary_selection.c | 1 + + types/wlr_relative_pointer_v1.c | 1 + + types/wlr_screencopy_v1.c | 1 + + types/wlr_virtual_pointer_v1.c | 1 + + types/wlr_xdg_decoration_v1.c | 1 + + types/xdg_shell/wlr_xdg_popup.c | 1 + + types/xdg_shell/wlr_xdg_positioner.c | 1 + + types/xdg_shell/wlr_xdg_shell.c | 1 + + types/xdg_shell/wlr_xdg_surface.c | 1 + + 16 files changed, 16 insertions(+) + +diff --git a/backend/wayland/output.c b/backend/wayland/output.c +index d5410e0d32..8ff8fa2a00 100644 +--- a/backend/wayland/output.c ++++ b/backend/wayland/output.c +@@ -1,3 +1,4 @@ ++#define _POSIX_C_SOURCE 199309L + #include + #include + #include +diff --git a/types/data_device/wlr_data_device.c b/types/data_device/wlr_data_device.c +index 6cd84ec0ab..beac496124 100644 +--- a/types/data_device/wlr_data_device.c ++++ b/types/data_device/wlr_data_device.c +@@ -1,3 +1,4 @@ ++#define _POSIX_C_SOURCE 199309L + #include + #include + #include +diff --git a/types/data_device/wlr_drag.c b/types/data_device/wlr_drag.c +index 53bf4066a1..e3c1e249b4 100644 +--- a/types/data_device/wlr_drag.c ++++ b/types/data_device/wlr_drag.c +@@ -1,3 +1,4 @@ ++#define _POSIX_C_SOURCE 199309L + #include + #include + #include +diff --git a/types/wlr_export_dmabuf_v1.c b/types/wlr_export_dmabuf_v1.c +index a8e2a4bde3..98ceae68f1 100644 +--- a/types/wlr_export_dmabuf_v1.c ++++ b/types/wlr_export_dmabuf_v1.c +@@ -1,3 +1,4 @@ ++#define _POSIX_C_SOURCE 199309L + #include + #include + #include +diff --git a/types/wlr_idle.c b/types/wlr_idle.c +index 4c338931cc..80fd871fab 100644 +--- a/types/wlr_idle.c ++++ b/types/wlr_idle.c +@@ -1,3 +1,4 @@ ++#define _POSIX_C_SOURCE 199309L + #include + #include + #include +diff --git a/types/wlr_keyboard_shortcuts_inhibit_v1.c b/types/wlr_keyboard_shortcuts_inhibit_v1.c +index fe4e64b04e..8360a9c21c 100644 +--- a/types/wlr_keyboard_shortcuts_inhibit_v1.c ++++ b/types/wlr_keyboard_shortcuts_inhibit_v1.c +@@ -1,3 +1,4 @@ ++#define _POSIX_C_SOURCE 199309L + #include + #include + #include +diff --git a/types/wlr_pointer_constraints_v1.c b/types/wlr_pointer_constraints_v1.c +index eca45984c4..f1db8e3415 100644 +--- a/types/wlr_pointer_constraints_v1.c ++++ b/types/wlr_pointer_constraints_v1.c +@@ -1,3 +1,4 @@ ++#define _POSIX_C_SOURCE 199309L + #include + #include + #include +diff --git a/types/wlr_primary_selection.c b/types/wlr_primary_selection.c +index 0875462c8c..7e0e11ddaa 100644 +--- a/types/wlr_primary_selection.c ++++ b/types/wlr_primary_selection.c +@@ -1,3 +1,4 @@ ++#define _POSIX_C_SOURCE 199309L + #include + #include + #include +diff --git a/types/wlr_relative_pointer_v1.c b/types/wlr_relative_pointer_v1.c +index 8613f2b91c..3f8dd8b72a 100644 +--- a/types/wlr_relative_pointer_v1.c ++++ b/types/wlr_relative_pointer_v1.c +@@ -1,3 +1,4 @@ ++#define _POSIX_C_SOURCE 199309L + #include + #include + #include +diff --git a/types/wlr_screencopy_v1.c b/types/wlr_screencopy_v1.c +index 6feb074274..29864c2364 100644 +--- a/types/wlr_screencopy_v1.c ++++ b/types/wlr_screencopy_v1.c +@@ -1,3 +1,4 @@ ++#define _POSIX_C_SOURCE 199309L + #include + #include + #include +diff --git a/types/wlr_virtual_pointer_v1.c b/types/wlr_virtual_pointer_v1.c +index a9d1fd7bc4..5566e9e013 100644 +--- a/types/wlr_virtual_pointer_v1.c ++++ b/types/wlr_virtual_pointer_v1.c +@@ -1,3 +1,4 @@ ++#define _POSIX_C_SOURCE 199309L + #include + #include + #include +diff --git a/types/wlr_xdg_decoration_v1.c b/types/wlr_xdg_decoration_v1.c +index 544035b7b8..904474c088 100644 +--- a/types/wlr_xdg_decoration_v1.c ++++ b/types/wlr_xdg_decoration_v1.c +@@ -1,3 +1,4 @@ ++#define _POSIX_C_SOURCE 199309L + #include + #include + #include +diff --git a/types/xdg_shell/wlr_xdg_popup.c b/types/xdg_shell/wlr_xdg_popup.c +index 69b4cfe19f..05d6551fc8 100644 +--- a/types/xdg_shell/wlr_xdg_popup.c ++++ b/types/xdg_shell/wlr_xdg_popup.c +@@ -1,3 +1,4 @@ ++#define _POSIX_C_SOURCE 199309L + #include + #include + #include +diff --git a/types/xdg_shell/wlr_xdg_positioner.c b/types/xdg_shell/wlr_xdg_positioner.c +index f88bf323b8..8881c49916 100644 +--- a/types/xdg_shell/wlr_xdg_positioner.c ++++ b/types/xdg_shell/wlr_xdg_positioner.c +@@ -1,3 +1,4 @@ ++#define _POSIX_C_SOURCE 199309L + #include + #include + #include "types/wlr_xdg_shell.h" +diff --git a/types/xdg_shell/wlr_xdg_shell.c b/types/xdg_shell/wlr_xdg_shell.c +index 0480d5f354..c93fe7c3fb 100644 +--- a/types/xdg_shell/wlr_xdg_shell.c ++++ b/types/xdg_shell/wlr_xdg_shell.c +@@ -1,3 +1,4 @@ ++#define _POSIX_C_SOURCE 199309L + #include + #include + #include "types/wlr_xdg_shell.h" +diff --git a/types/xdg_shell/wlr_xdg_surface.c b/types/xdg_shell/wlr_xdg_surface.c +index edf562abcd..c1dfbfba7e 100644 +--- a/types/xdg_shell/wlr_xdg_surface.c ++++ b/types/xdg_shell/wlr_xdg_surface.c +@@ -1,3 +1,4 @@ ++#define _POSIX_C_SOURCE 199309L + #include + #include + #include diff --git a/buildroot/package/x11r7/xapp_xrdb/xapp_xrdb.hash b/buildroot/package/x11r7/xapp_xrdb/xapp_xrdb.hash index b8a6896ca..606fd2606 100644 --- a/buildroot/package/x11r7/xapp_xrdb/xapp_xrdb.hash +++ b/buildroot/package/x11r7/xapp_xrdb/xapp_xrdb.hash @@ -1,7 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2019-February/002953.html -md5 34ae801ef994d192c70fcce2bdb2a1b2 xrdb-1.2.0.tar.bz2 -sha1 79596928246288a217abdec0e4a2315ec9b07963 xrdb-1.2.0.tar.bz2 -sha256 f23a65cfa1f7126040d68b6cf1e4567523edac10f8dc06f23d840d330c7c6946 xrdb-1.2.0.tar.bz2 -sha512 14e1cdfb2152fb28f1f4641b177ab236648d7e967a95b952bf4cfce8d3e1ef085e85385354e3381aaf644462e8888a1847f755ab4016ecb4cb4a715b001dd2ef xrdb-1.2.0.tar.bz2 +# 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 # Locally computed -sha256 ca1b3e2f9f37c35876b69a9c1c5a7860fae59b7ba87a1d2dc541b722e29b1ecc COPYING +sha256 ca1b3e2f9f37c35876b69a9c1c5a7860fae59b7ba87a1d2dc541b722e29b1ecc COPYING diff --git a/buildroot/package/x11r7/xapp_xrdb/xapp_xrdb.mk b/buildroot/package/x11r7/xapp_xrdb/xapp_xrdb.mk index b445805d1..4f9860d25 100644 --- a/buildroot/package/x11r7/xapp_xrdb/xapp_xrdb.mk +++ b/buildroot/package/x11r7/xapp_xrdb/xapp_xrdb.mk @@ -4,9 +4,9 @@ # ################################################################################ -XAPP_XRDB_VERSION = 1.2.0 +XAPP_XRDB_VERSION = 1.2.1 XAPP_XRDB_SOURCE = xrdb-$(XAPP_XRDB_VERSION).tar.bz2 -XAPP_XRDB_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XRDB_SITE = https://xorg.freedesktop.org/archive/individual/app XAPP_XRDB_LICENSE = MIT XAPP_XRDB_LICENSE_FILES = COPYING XAPP_XRDB_DEPENDENCIES = xlib_libX11 xlib_libXmu diff --git a/buildroot/package/x11r7/xapp_xwd/xapp_xwd.hash b/buildroot/package/x11r7/xapp_xwd/xapp_xwd.hash index 606618bcc..759528649 100644 --- a/buildroot/package/x11r7/xapp_xwd/xapp_xwd.hash +++ b/buildroot/package/x11r7/xapp_xwd/xapp_xwd.hash @@ -1,7 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2018-March/002876.html -md5 11794a8eba6d295a192a8975287fd947 xwd-1.0.7.tar.bz2 -sha1 65ce0617be29687cf6082c3a0e85d15a0dcccda9 xwd-1.0.7.tar.bz2 -sha256 cd6815b8b9e0b98e284d3d732fb12162159cb9dcee4f45a7d4c0bd8b308a6794 xwd-1.0.7.tar.bz2 -sha512 6fdb0a115ae505169bbc7fcc45580daf26bced2e26e0bf9a877636016038931a8386e8edcbe015f4024be508d0461906adef4834cf22a445e3c282f0b8fad17e xwd-1.0.7.tar.bz2 +# 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 # Locally computed -sha256 7cfda56afd92a1ecd2f23bd0064e01b5141053390d854785504adfe2c0fbd946 COPYING +sha256 7cfda56afd92a1ecd2f23bd0064e01b5141053390d854785504adfe2c0fbd946 COPYING diff --git a/buildroot/package/x11r7/xapp_xwd/xapp_xwd.mk b/buildroot/package/x11r7/xapp_xwd/xapp_xwd.mk index 4d7ed0f87..1c5bd5016 100644 --- a/buildroot/package/x11r7/xapp_xwd/xapp_xwd.mk +++ b/buildroot/package/x11r7/xapp_xwd/xapp_xwd.mk @@ -4,9 +4,9 @@ # ################################################################################ -XAPP_XWD_VERSION = 1.0.7 +XAPP_XWD_VERSION = 1.0.8 XAPP_XWD_SOURCE = xwd-$(XAPP_XWD_VERSION).tar.bz2 -XAPP_XWD_SITE = http://xorg.freedesktop.org/releases/individual/app +XAPP_XWD_SITE = https://xorg.freedesktop.org/archive/individual/app XAPP_XWD_LICENSE = MIT XAPP_XWD_LICENSE_FILES = COPYING XAPP_XWD_DEPENDENCIES = xlib_libX11 xlib_libXmu xlib_libxkbfile diff --git a/buildroot/package/x11r7/xlib_libXfont2/0001-configure-define-HAVE_LIBBSD-when-libbsd-was-found.patch b/buildroot/package/x11r7/xlib_libXfont2/0001-configure-define-HAVE_LIBBSD-when-libbsd-was-found.patch deleted file mode 100644 index 51e7225be..000000000 --- a/buildroot/package/x11r7/xlib_libXfont2/0001-configure-define-HAVE_LIBBSD-when-libbsd-was-found.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 5fceeeb0d1cdccdb2870f65444f2965344f3b8b9 Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -Date: Sat, 19 Oct 2019 09:32:41 +0200 -Subject: [PATCH] configure: define HAVE_LIBBSD when libbsd was found - -Patch sent upstream: -https://gitlab.freedesktop.org/xorg/lib/libxfont/merge_requests/6 - -Signed-off-by: Bernd Kuhls ---- - configure.ac | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/configure.ac b/configure.ac -index f507c28..cc7ca91 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -53,6 +53,9 @@ AC_CHECK_HEADERS([endian.h poll.h sys/poll.h]) - # Checks for library functions. - AC_CHECK_FUNCS([poll readlink]) - AC_SEARCH_LIBS([strlcat], [bsd]) -+if test "$ac_cv_search_strlcat" = "-lbsd"; then -+ AC_DEFINE(HAVE_LIBBSD,1,[Has libbsd]) -+fi - AC_CONFIG_LIBOBJ_DIR([src/util]) - AC_REPLACE_FUNCS([reallocarray strlcat strlcpy]) - --- -2.20.1 - diff --git a/buildroot/package/x11r7/xlib_libXfont2/xlib_libXfont2.hash b/buildroot/package/x11r7/xlib_libXfont2/xlib_libXfont2.hash index 634affdfd..069f2fc61 100644 --- a/buildroot/package/x11r7/xlib_libXfont2/xlib_libXfont2.hash +++ b/buildroot/package/x11r7/xlib_libXfont2/xlib_libXfont2.hash @@ -1,8 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2019-September/003022.html -md5 00516bed7ec1453d56974560379fff2f libXfont2-2.0.4.tar.bz2 -sha1 9e00ae7589315656435efaf330128facad7c4a57 libXfont2-2.0.4.tar.bz2 -sha256 6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6 libXfont2-2.0.4.tar.bz2 -sha512 7cf6c58e520e48e24fc4f05fec760fcbeaaac0cedeed57dded262c855e1515cc34cd033222945a0b016f6857b83009fc2a6946c7d632c2f7bb0060f8e8a8a106 libXfont2-2.0.4.tar.bz2 - +# From https://lists.x.org/archives/xorg-announce/2021-August/003103.html +sha256 aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e libXfont2-2.0.5.tar.bz2 +sha512 64d0635d14676bb645d61932afb177eb3808a46525b26e7ee31abc975eca75207743e85523fdd82b08010ce124eb4802338b508ee7b126875d2a3c12f8ac4faa libXfont2-2.0.5.tar.bz2 # Locally calculated -sha256 97e413bb4962bbb5773085cd5405502bf1d4eadeaf98ff5be015eacacc840462 COPYING +sha256 97e413bb4962bbb5773085cd5405502bf1d4eadeaf98ff5be015eacacc840462 COPYING diff --git a/buildroot/package/x11r7/xlib_libXfont2/xlib_libXfont2.mk b/buildroot/package/x11r7/xlib_libXfont2/xlib_libXfont2.mk index d2ff4ca7f..6a71761f4 100644 --- a/buildroot/package/x11r7/xlib_libXfont2/xlib_libXfont2.mk +++ b/buildroot/package/x11r7/xlib_libXfont2/xlib_libXfont2.mk @@ -4,9 +4,9 @@ # ################################################################################ -XLIB_LIBXFONT2_VERSION = 2.0.4 +XLIB_LIBXFONT2_VERSION = 2.0.5 XLIB_LIBXFONT2_SOURCE = libXfont2-$(XLIB_LIBXFONT2_VERSION).tar.bz2 -XLIB_LIBXFONT2_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXFONT2_SITE = https://xorg.freedesktop.org/archive/individual/lib XLIB_LIBXFONT2_LICENSE = MIT XLIB_LIBXFONT2_LICENSE_FILES = COPYING XLIB_LIBXFONT2_CPE_ID_VENDOR = x diff --git a/buildroot/package/x11r7/xlib_libXft/xlib_libXft.hash b/buildroot/package/x11r7/xlib_libXft/xlib_libXft.hash index bd0838b4d..8743a9b7d 100644 --- a/buildroot/package/x11r7/xlib_libXft/xlib_libXft.hash +++ b/buildroot/package/x11r7/xlib_libXft/xlib_libXft.hash @@ -1,7 +1,5 @@ -# From https://lists.x.org/archives/xorg-announce/2019-March/002976.html -md5 4a433c24627b4ff60a4dd403a0990796 libXft-2.3.3.tar.bz2 -sha1 48f543fe495f545df1794fa36a0a708558ae298c libXft-2.3.3.tar.bz2 -sha256 225c68e616dd29dbb27809e45e9eadf18e4d74c50be43020ef20015274529216 libXft-2.3.3.tar.bz2 -sha512 28fdaf3baa3b156a4a7fdd6e39c4d8026d7d21eaa9be27c9797c8d329dab691a1bc82ea6042f9d4729a9343d93787536fb7e4b606f722f33cbe608b2e79910e8 libXft-2.3.3.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2021-August/003104.html +sha256 57dedaab20914002146bdae0cb0c769ba3f75214c4c91bd2613d6ef79fc9abdd libXft-2.3.4.tar.bz2 +sha512 5bb019750982ed4643880efd7368bc226ad49cfa8c0c8c6d4614dfeed74f588c65e1ba69adcc12284ec07d841e5b58fc1c27f3fddf83fe1a2837b29dd9ecec51 libXft-2.3.4.tar.bz2 # Locally computed -sha256 7cda22286b1379b9b73df695f72cbad36595e65b039a5fbc5c89b69ecc44438c COPYING +sha256 7cda22286b1379b9b73df695f72cbad36595e65b039a5fbc5c89b69ecc44438c COPYING diff --git a/buildroot/package/x11r7/xlib_libXft/xlib_libXft.mk b/buildroot/package/x11r7/xlib_libXft/xlib_libXft.mk index 489cfe4c5..b1640a661 100644 --- a/buildroot/package/x11r7/xlib_libXft/xlib_libXft.mk +++ b/buildroot/package/x11r7/xlib_libXft/xlib_libXft.mk @@ -4,9 +4,9 @@ # ################################################################################ -XLIB_LIBXFT_VERSION = 2.3.3 +XLIB_LIBXFT_VERSION = 2.3.4 XLIB_LIBXFT_SOURCE = libXft-$(XLIB_LIBXFT_VERSION).tar.bz2 -XLIB_LIBXFT_SITE = http://xorg.freedesktop.org/releases/individual/lib +XLIB_LIBXFT_SITE = https://xorg.freedesktop.org/archive/individual/lib XLIB_LIBXFT_LICENSE = MIT XLIB_LIBXFT_LICENSE_FILES = COPYING XLIB_LIBXFT_INSTALL_STAGING = YES diff --git a/buildroot/package/xen/0003-Fix-build-with-64-bits-time_t.patch b/buildroot/package/xen/0003-Fix-build-with-64-bits-time_t.patch new file mode 100644 index 000000000..8559aece2 --- /dev/null +++ b/buildroot/package/xen/0003-Fix-build-with-64-bits-time_t.patch @@ -0,0 +1,95 @@ +From f7a6df5f5bf3acc219352a1b25573ae2082d7e42 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Thu, 3 Dec 2020 20:58:19 +0100 +Subject: [PATCH] Fix build with 64 bits time_t + +time element is deprecated on new input_event structure in kernel's +input.h [1] + +This will avoid the following build failure: + +hw/input/virtio-input-host.c: In function 'virtio_input_host_handle_status': +hw/input/virtio-input-host.c:198:28: error: 'struct input_event' has no member named 'time' + 198 | if (gettimeofday(&evdev.time, NULL)) { + | ^ + +Fixes: + - http://autobuild.buildroot.org/results/a538167e288c14208d557cd45446df86d3d599d5 + - http://autobuild.buildroot.org/results/efd4474fb4b6c0ce0ab3838ce130429c51e43bbb + +[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit?id=152194fe9c3f + +Signed-off-by: Fabrice Fontaine +Message-Id: <20201203195819.583626-1-fontaine.fabrice@gmail.com> +Fixes: https://gitlab.com/qemu-project/qemu/-/issues/246 +Reviewed-by: Michael S. Tsirkin +Signed-off-by: Michael S. Tsirkin + +[Retrieved (and updated for qemu-xen) from: +https://github.com/qemu/qemu/commit/f7a6df5f5bf3acc219352a1b25573ae2082d7e42] +Signed-off-by: Fabrice Fontaine +--- + contrib/vhost-user-input/main.c | 8 ++++++-- + hw/input/virtio-input-host.c | 5 ++++- + 2 files changed, 10 insertions(+), 3 deletions(-) + +diff --git a/tools/qemu-xen/contrib/vhost-user-input/main.c b/tools/qemu-xen/contrib/vhost-user-input/main.c +index c15d18c33f0c..081230da548a 100644 +--- a/tools/qemu-xen/contrib/vhost-user-input/main.c ++++ b/tools/qemu-xen/contrib/vhost-user-input/main.c +@@ -6,13 +6,14 @@ + #include "qemu/osdep.h" + + #include +-#include ++#include + + #include "qemu/iov.h" + #include "qemu/bswap.h" + #include "qemu/sockets.h" + #include "contrib/libvhost-user/libvhost-user.h" + #include "contrib/libvhost-user/libvhost-user-glib.h" ++#include "standard-headers/linux/input.h" + #include "standard-headers/linux/virtio_input.h" + #include "qapi/error.h" + +@@ -113,13 +114,16 @@ vi_evdev_watch(VuDev *dev, int condition, void *data) + static void vi_handle_status(VuInput *vi, virtio_input_event *event) + { + struct input_event evdev; ++ struct timeval tval; + int rc; + +- if (gettimeofday(&evdev.time, NULL)) { ++ if (gettimeofday(&tval, NULL)) { + perror("vi_handle_status: gettimeofday"); + return; + } + ++ evdev.input_event_sec = tval.tv_sec; ++ evdev.input_event_usec = tval.tv_usec; + evdev.type = le16toh(event->type); + evdev.code = le16toh(event->code); + evdev.value = le32toh(event->value); +diff --git a/tools/qemu-xen/hw/input/virtio-input-host.c b/tools/qemu-xen/hw/input/virtio-input-host.c +index 85daf73f1a80..137efba57b0f 100644 +--- a/tools/qemu-xen/hw/input/virtio-input-host.c ++++ b/tools/qemu-xen/hw/input/virtio-input-host.c +@@ -193,13 +193,16 @@ static void virtio_input_host_handle_status(VirtIOInput *vinput, + { + VirtIOInputHost *vih = VIRTIO_INPUT_HOST(vinput); + struct input_event evdev; ++ struct timeval tval; + int rc; + +- if (gettimeofday(&evdev.time, NULL)) { ++ if (gettimeofday(&tval, NULL)) { + perror("virtio_input_host_handle_status: gettimeofday"); + return; + } + ++ evdev.input_event_sec = tval.tv_sec; ++ evdev.input_event_usec = tval.tv_usec; + evdev.type = le16_to_cpu(event->type); + evdev.code = le16_to_cpu(event->code); + evdev.value = le32_to_cpu(event->value); diff --git a/buildroot/package/xen/0004-libs-light-fix-tv_sec-printf-format.patch b/buildroot/package/xen/0004-libs-light-fix-tv_sec-printf-format.patch new file mode 100644 index 000000000..fffc8d730 --- /dev/null +++ b/buildroot/package/xen/0004-libs-light-fix-tv_sec-printf-format.patch @@ -0,0 +1,63 @@ +From a8ac01aa3e3ea5e6a9a1620aa8fa7e9da3458120 Mon Sep 17 00:00:00 2001 +From: Manuel Bouyer +Date: Tue, 26 Jan 2021 23:47:55 +0100 +Subject: [PATCH] libs/light: fix tv_sec printf format +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Don't assume tv_sec is a unsigned long, it is 64 bits on NetBSD 32 bits. +Use %jd and cast to (intmax_t) instead + +Signed-off-by: Manuel Bouyer +Reviewed-by: Roger Pau Monné +[Retrieved (and backported) from: +https://gitlab.com/xen-project/xen/-/commit/a8ac01aa3e3ea5e6a9a1620aa8fa7e9da3458120] +Signed-off-by: Fabrice Fontaine +--- + tools/libs/light/libxl_create.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/tools/libxl/libxl_create.c b/tools/libxl/libxl_create.c +index 8616113e72..9848d65f36 100644 +--- a/tools/libxl/libxl_create.c ++++ b/tools/libxl/libxl_create.c +@@ -496,7 +496,7 @@ int libxl__domain_build(libxl__gc *gc, + vments[2] = "image/ostype"; + vments[3] = "hvm"; + vments[4] = "start_time"; +- vments[5] = GCSPRINTF("%lu.%02d", start_time.tv_sec,(int)start_time.tv_usec/10000); ++ vments[5] = GCSPRINTF("%jd.%02d", (intmax_t)start_time.tv_sec,(int)start_time.tv_usec/10000); + + localents = libxl__calloc(gc, 13, sizeof(char *)); + i = 0; +@@ -535,7 +535,7 @@ int libxl__domain_build(libxl__gc *gc, + vments[i++] = "image/kernel"; + vments[i++] = (char *) state->pv_kernel.path; + vments[i++] = "start_time"; +- vments[i++] = GCSPRINTF("%lu.%02d", start_time.tv_sec,(int)start_time.tv_usec/10000); ++ vments[i++] = GCSPRINTF("%jd.%02d", (intmax_t)start_time.tv_sec,(int)start_time.tv_usec/10000); + if (state->pv_ramdisk.path) { + vments[i++] = "image/ramdisk"; + vments[i++] = (char *) state->pv_ramdisk.path; +@@ -1502,7 +1502,7 @@ static void domcreate_stream_done(libxl__egc *egc, + vments[2] = "image/ostype"; + vments[3] = "hvm"; + vments[4] = "start_time"; +- vments[5] = GCSPRINTF("%lu.%02d", start_time.tv_sec,(int)start_time.tv_usec/10000); ++ vments[5] = GCSPRINTF("%jd.%02d", (intmax_t)start_time.tv_sec,(int)start_time.tv_usec/10000); + break; + case LIBXL_DOMAIN_TYPE_PV: + vments = libxl__calloc(gc, 11, sizeof(char *)); +@@ -1512,7 +1512,7 @@ static void domcreate_stream_done(libxl__egc *egc, + vments[i++] = "image/kernel"; + vments[i++] = (char *) state->pv_kernel.path; + vments[i++] = "start_time"; +- vments[i++] = GCSPRINTF("%lu.%02d", start_time.tv_sec,(int)start_time.tv_usec/10000); ++ vments[i++] = GCSPRINTF("%jd.%02d", (intmax_t)start_time.tv_sec,(int)start_time.tv_usec/10000); + if (state->pv_ramdisk.path) { + vments[i++] = "image/ramdisk"; + vments[i++] = (char *) state->pv_ramdisk.path; +-- +GitLab + diff --git a/buildroot/package/xen/0005-libs-light-fix-tv_sec-fprintf-format.patch b/buildroot/package/xen/0005-libs-light-fix-tv_sec-fprintf-format.patch new file mode 100644 index 000000000..d677dce4f --- /dev/null +++ b/buildroot/package/xen/0005-libs-light-fix-tv_sec-fprintf-format.patch @@ -0,0 +1,30 @@ +From 4881285bcfd8f2e2c913c6e9f011b1e90652f414 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Sat, 28 Aug 2021 11:00:07 +0200 +Subject: [PATCH] libs/light: fix tv_sec fprintf format + +Don't assume tv_sec is a unsigned long, it is 64 bits on NetBSD 32 bits. +Use %jd and cast to (intmax_t) instead + +Signed-off-by: Fabrice Fontaine +[Upstream status: sent to xen-devel@lists.xenproject.org] +--- + tools/libs/light/libxl_domain.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tools/libxl/libxl_domain.c b/tools/libxl/libxl_domain.c +index c00c36c928..51a6127552 100644 +--- a/tools/libxl/libxl_domain.c ++++ b/tools/libxl/libxl_domain.c +@@ -1444,7 +1444,7 @@ static int libxl__mark_domid_recent(libxl__gc *gc, uint32_t domid) + } + } + +- r = fprintf(nf, "%lu %u\n", ctxt.ts.tv_sec, domid); ++ r = fprintf(nf, "%jd %u\n", (intmax_t)ctxt.ts.tv_sec, domid); + if (r < 0) { + LOGED(ERROR, domid, "failed to write to '%s'", new); + goto out; +-- +2.32.0 + diff --git a/buildroot/package/xenomai/3.0.10/0002-Add-disable-demo-testsuite-options.patch b/buildroot/package/xenomai/3.0.10/0002-Add-disable-demo-testsuite-options.patch new file mode 100644 index 000000000..0a817503b --- /dev/null +++ b/buildroot/package/xenomai/3.0.10/0002-Add-disable-demo-testsuite-options.patch @@ -0,0 +1,94 @@ +From 702697cafcec735e55f075594a2990204c8ea17d Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Tue, 10 Aug 2021 18:01:48 +0200 +Subject: [PATCH] Add --disable-{demo,testsuite} options +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Allow the user to disable demo and testsuite to avoid the following +build failures on arc and riscv32: + +latency.c: In function 'display': +latency.c:326:21: error: format '%ld' expects argument of type 'long int', but argument 2 has type 'time_t' {aka 'long long int'} [-Werror=format=] + 326 | ("RTT| %.2ld:%.2ld:%.2ld (%s, %Ld us period, " + | ~~~~^ + | | + | long int + | %.2lld + 327 | "priority %d)\n", dt / 3600, + | ~~~~~~~~~ + | | + | time_t {aka long long int} + +altency.c: In function ‘display’: +altency.c:262:21: error: format ‘%ld’ expects argument of type ‘long int’, but argument 2 has type ‘time_t’ {aka ‘long long int’} [-Werror=format=] + 262 | ("RTT| %.2ld:%.2ld:%.2ld (%s, %Ld us period, " + | ~~~~^ + | | + | long int + | %.2lld + 263 | "priority %d)\n", dt / 3600, + | ~~~~~~~~~ + | | + | time_t {aka long long int} + +Fixes: + - http://autobuild.buildroot.org/results/448efe22e8fe058a1b354a3c124874e30b9ce138 + +Signed-off-by: Fabrice Fontaine +--- + Makefile.am | 12 ++++++++++-- + configure.ac | 12 ++++++++++++ + 2 files changed, 22 insertions(+), 2 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 891e53f66..604644277 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -6,9 +6,17 @@ SUBDIRS = \ + config \ + include \ + scripts \ +- testsuite \ +- utils \ ++ utils ++ ++if XENO_ENABLE_DEMO ++SUBDIRS += \ + demo ++endif ++ ++if XENO_ENABLE_TESTSUITE ++SUBDIRS += \ ++ testsuite ++endif + + EXTRA_DIST = kernel debian + +diff --git a/configure.ac b/configure.ac +index bd5fd5ba9..29dfd16e5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -200,6 +200,18 @@ test \! x$debug_mode = x && AC_DEFINE(CONFIG_XENO_DEBUG,1,[config]) + AM_CONDITIONAL(XENO_DEBUG_FULL,[test x$debug_mode = xfull]) + test x$debug_mode = xfull && AC_DEFINE(CONFIG_XENO_DEBUG_FULL,1,[config]) + ++dnl Demo (default: on) ++ ++AC_ARG_ENABLE(demo, ++ AS_HELP_STRING([--disable-demo], [Disable demo])) ++AM_CONDITIONAL(XENO_ENABLE_DEMO,[test x$enable_demo != xno]) ++ ++dnl Testsuite (default: on) ++ ++AC_ARG_ENABLE(testsuite, ++ AS_HELP_STRING([--disable-testsuite], [Disable testsuite])) ++AM_CONDITIONAL(XENO_ENABLE_TESTSUITE,[test x$enable_testsuite != xno]) ++ + dnl Low resolution clock (default: off) + + unset lores_clock +-- +2.30.2 + diff --git a/buildroot/package/xenomai/xenomai.mk b/buildroot/package/xenomai/xenomai.mk index 7e3b13008..c1ad0c5df 100644 --- a/buildroot/package/xenomai/xenomai.mk +++ b/buildroot/package/xenomai/xenomai.mk @@ -16,6 +16,8 @@ else XENOMAI_SOURCE = xenomai-$(XENOMAI_VERSION).tar.bz2 XENOMAI_SITE = http://xenomai.org/downloads/xenomai/stable endif +# We're patching configure.ac +XENOMAI_AUTORECONF = YES # Exclude all from the hash check, but the latest version. ifeq ($(BR2_PACKAGE_XENOMAI)$(BR2_PACKAGE_XENOMAI_LATEST_VERSION),y) @@ -37,7 +39,10 @@ XENOMAI_INSTALL_STAGING = YES XENOMAI_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) install-user XENOMAI_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) install-user -XENOMAI_CONF_OPTS += --includedir=/usr/include/xenomai/ +XENOMAI_CONF_OPTS += \ + --disable-demo \ + --disable-testsuite \ + --includedir=/usr/include/xenomai/ ifeq ($(BR2_PACKAGE_XENOMAI_MERCURY),y) XENOMAI_CONF_OPTS += --with-core=mercury diff --git a/buildroot/package/zip/0008-fix-musl-static-build.patch b/buildroot/package/zip/0008-fix-musl-static-build.patch new file mode 100644 index 000000000..a7a31eba9 --- /dev/null +++ b/buildroot/package/zip/0008-fix-musl-static-build.patch @@ -0,0 +1,20 @@ +fix musl static build + +Don't define NO_DIR if no directory library is needed + +Signed-off-by: Fabrice Fontaine + +diff -Nura zip30.orig/unix/configure zip30/unix/configure +--- zip30.orig/unix/configure 2021-08-31 21:29:55.219967136 +0200 ++++ zip30/unix/configure 2021-08-31 21:50:48.239280513 +0200 +@@ -569,8 +569,8 @@ + done + if [ ${OPT} ]; then + LFLAGS2="${LFLAGS2} ${OPT}" +- else +- CFLAGS="${CFLAGS} -DNO_DIR" ++ #else ++ # CFLAGS="${CFLAGS} -DNO_DIR" + fi + fi + diff --git a/buildroot/support/misc/Vagrantfile b/buildroot/support/misc/Vagrantfile index f0d1e7889..e1f77efdb 100644 --- a/buildroot/support/misc/Vagrantfile +++ b/buildroot/support/misc/Vagrantfile @@ -5,7 +5,7 @@ ################################################################################ # Buildroot version to use -RELEASE='2021.02.4' +RELEASE='2021.02.5' ### Change here for more memory/cores ### VM_MEMORY=2048 diff --git a/buildroot/support/testing/tests/boot/test_atf.py b/buildroot/support/testing/tests/boot/test_atf.py index e6c11aa74..a6ef67618 100644 --- a/buildroot/support/testing/tests/boot/test_atf.py +++ b/buildroot/support/testing/tests/boot/test_atf.py @@ -10,7 +10,7 @@ class TestATFVexpress(infra.basetest.BRTest): BR2_TARGET_ARM_TRUSTED_FIRMWARE=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://github.com/ARM-software/arm-trusted-firmware.git" - BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="v2.2" + BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="v2.5" BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="juno" BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP=y BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33=y diff --git a/buildroot/support/testing/tests/package/test_docker_compose.py b/buildroot/support/testing/tests/package/test_docker_compose.py index 737dbf393..7ca81c311 100644 --- a/buildroot/support/testing/tests/package/test_docker_compose.py +++ b/buildroot/support/testing/tests/package/test_docker_compose.py @@ -16,7 +16,7 @@ class TestDockerCompose(infra.basetest.BRTest): BR2_ROOTFS_POST_SCRIPT_ARGS="{}" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y - BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19" + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.204" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="{}" BR2_PACKAGE_CA_CERTIFICATES=y diff --git a/buildroot/toolchain/Config.in b/buildroot/toolchain/Config.in index 9dafa173a..1b3aff30f 100644 --- a/buildroot/toolchain/Config.in +++ b/buildroot/toolchain/Config.in @@ -171,10 +171,13 @@ config BR2_TOOLCHAIN_HAS_GCC_BUG_93847 # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99410 # Error: branch offset out of range on Nios II. This bug -# no longer exists in gcc >= 8.x. +# no longer exists in gcc 8.x but reappeared on gcc 9.x and has been +# fixed on gcc 10.x. config BR2_TOOLCHAIN_HAS_GCC_BUG_99140 bool - default y if BR2_nios2 && !BR2_TOOLCHAIN_GCC_AT_LEAST_8 + default y if !BR2_TOOLCHAIN_GCC_AT_LEAST_8 + default y if BR2_TOOLCHAIN_GCC_AT_LEAST_9 && !BR2_TOOLCHAIN_GCC_AT_LEAST_10 + depends on BR2_nios2 # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101737 # ICE: SH4 -Os causes internal compiler error. This bug diff --git a/buildroot/utils/getdeveloperlib.py b/buildroot/utils/getdeveloperlib.py index b20581703..ce822320f 100644 --- a/buildroot/utils/getdeveloperlib.py +++ b/buildroot/utils/getdeveloperlib.py @@ -1,4 +1,5 @@ from __future__ import print_function +from io import open import os import re import glob @@ -231,7 +232,8 @@ def parse_developers(): linen = 0 global unittests unittests = list_unittests() - with open(os.path.join(brpath, "DEVELOPERS"), "r") as f: + developers_fname = os.path.join(brpath, 'DEVELOPERS') + with open(developers_fname, mode='r', encoding='utf_8') as f: files = [] name = None for line in f: @@ -249,7 +251,10 @@ def parse_developers(): if len(dev_files) == 0: print("WARNING: '%s' doesn't match any file" % fname, file=sys.stderr) - files += [os.path.relpath(f, brpath) for f in dev_files] + for f in dev_files: + dev_file = os.path.relpath(f, brpath) + dev_file = dev_file.replace(os.sep, '/') # force unix sep + files.append(dev_file) elif line == "": if not name: continue