aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES242
-rw-r--r--Config.in24
-rw-r--r--Config.in.legacy48
-rw-r--r--DEVELOPERS65
-rw-r--r--Makefile18
-rw-r--r--README2
-rw-r--r--arch/Config.in4
-rw-r--r--board/aarch64-efi/genimage-efi.cfg8
-rw-r--r--board/aarch64-efi/grub.cfg2
-rw-r--r--board/aarch64-efi/readme.txt21
-rw-r--r--board/atmel/readme.txt2
-rw-r--r--board/beaglev/extlinux.conf4
-rw-r--r--board/beaglev/genimage.cfg12
-rw-r--r--board/beaglev/patches/uboot/0001-include-configs-starfive-vic7100-adjust-fdt_addr_r.patch39
-rwxr-xr-xboard/beaglev/post-build.sh17
-rw-r--r--board/beaglev/readme.txt124
-rw-r--r--board/boundarydevices/common/boot.cmd65
-rw-r--r--board/boundarydevices/common/readme.txt3
-rw-r--r--board/boundarydevices/common/upgrade.cmd25
-rw-r--r--board/microchip/sama5d2_icp/genimage.cfg31
-rw-r--r--board/minnowboard/fs-overlay-graphical/etc/X11/xorg.conf.d/01-modules.conf11
-rwxr-xr-xboard/qemu/aarch64-sbsa/assemble-flash-images11
-rw-r--r--board/qemu/aarch64-sbsa/genimage.cfg30
-rw-r--r--board/qemu/aarch64-sbsa/grub.cfg6
-rw-r--r--board/qemu/aarch64-sbsa/linux.config68
-rw-r--r--board/qemu/aarch64-sbsa/readme.txt32
-rw-r--r--board/qemu/s390x/patches/linux/0001-arch-s390-disable-SSP-when-needed.patch47
-rw-r--r--board/qemu/sparc64-sun4u/patches/linux/0001-sparc64-avoid-stringop-overread-warning-to-access-Ma.patch154
-rw-r--r--board/raspberrypi/genimage-raspberrypicm4io-64.cfg30
-rw-r--r--board/raspberrypi/genimage-raspberrypicm4io.cfg30
-rw-r--r--board/raspberrypi/readme.txt46
l---------board/raspberrypicm4io1
l---------board/raspberrypicm4io-641
-rw-r--r--board/stmicroelectronics/stm32f469-disco/extlinux.conf4
-rwxr-xr-xboard/stmicroelectronics/stm32f469-disco/flash.sh4
-rw-r--r--board/stmicroelectronics/stm32f469-disco/genimage.cfg27
-rw-r--r--board/stmicroelectronics/stm32f469-disco/linux.fragment1
-rw-r--r--board/stmicroelectronics/stm32f469-disco/patches/linux/0001-ARM-stm32f249-disco-don-t-force-init-in-chosen-boota.patch33
-rwxr-xr-xboard/stmicroelectronics/stm32f469-disco/post-build.sh4
-rw-r--r--board/stmicroelectronics/stm32f469-disco/readme.txt16
-rw-r--r--board/uevm5432/genimage.cfg26
-rw-r--r--board/uevm5432/readme.txt40
-rw-r--r--boot/Config.in3
-rw-r--r--boot/arm-trusted-firmware/Config.in19
-rw-r--r--boot/arm-trusted-firmware/arm-trusted-firmware.hash2
-rw-r--r--boot/arm-trusted-firmware/arm-trusted-firmware.mk9
-rw-r--r--boot/at91bootstrap/at91bootstrap.hash1
-rw-r--r--boot/at91bootstrap/at91bootstrap.mk2
-rw-r--r--boot/at91bootstrap3/Config.in20
-rw-r--r--boot/at91bootstrap3/at91bootstrap3.hash4
-rw-r--r--boot/at91bootstrap3/at91bootstrap3.mk9
-rw-r--r--boot/beaglev-ddrinit/Config.in9
-rw-r--r--boot/beaglev-ddrinit/beaglev-ddrinit.hash2
-rw-r--r--boot/beaglev-ddrinit/beaglev-ddrinit.mk29
-rw-r--r--boot/beaglev-secondboot/Config.in9
-rw-r--r--boot/beaglev-secondboot/beaglev-secondboot.hash2
-rw-r--r--boot/beaglev-secondboot/beaglev-secondboot.mk29
-rw-r--r--boot/edk2/Config.in108
-rw-r--r--boot/edk2/edk2.hash3
-rw-r--r--boot/edk2/edk2.mk151
-rw-r--r--boot/opensbi/0.9/0001-Makefile-Don-t-specify-mabi-or-march.patch (renamed from boot/opensbi/0001-Makefile-Don-t-specify-mabi-or-march.patch)0
-rw-r--r--boot/opensbi/0.9/0002-Makefile-unconditionally-disable-SSP.patch53
-rw-r--r--boot/opensbi/Config.in78
-rw-r--r--boot/opensbi/opensbi.hash2
-rw-r--r--boot/opensbi/opensbi.mk41
-rw-r--r--boot/uboot/Config.in4
-rw-r--r--boot/uboot/uboot.hash2
-rw-r--r--configs/aarch64_efi_defconfig7
-rw-r--r--configs/acmesystems_acqua_a5_256mb_defconfig4
-rw-r--r--configs/acmesystems_acqua_a5_512mb_defconfig4
-rw-r--r--configs/beaglebone_defconfig27
-rw-r--r--configs/beaglev_defconfig38
-rw-r--r--configs/freescale_imx6dlsabreauto_defconfig8
-rw-r--r--configs/freescale_imx6dlsabresd_defconfig8
-rw-r--r--configs/freescale_imx6qsabreauto_defconfig8
-rw-r--r--configs/freescale_imx6qsabresd_defconfig8
-rw-r--r--configs/freescale_imx6sxsabresd_defconfig8
-rw-r--r--configs/freescale_imx6ullevk_defconfig6
-rw-r--r--configs/freescale_imx7dsabresd_defconfig8
-rw-r--r--configs/freescale_imx8mmevk_defconfig8
-rw-r--r--configs/freescale_imx8mnevk_defconfig8
-rw-r--r--configs/freescale_imx8mpevk_defconfig8
-rw-r--r--configs/freescale_imx8mqevk_defconfig8
-rw-r--r--configs/freescale_imx8qmmek_defconfig8
-rw-r--r--configs/freescale_imx8qxpmek_defconfig8
-rw-r--r--configs/globalscale_espressobin_defconfig8
-rw-r--r--configs/imx6-sabresd_defconfig4
-rw-r--r--configs/imx6-sabresd_qt5_defconfig4
-rw-r--r--configs/kontron_smarc_sal28_defconfig4
-rw-r--r--configs/microchip_sama5d2_icp_mmc_defconfig31
-rw-r--r--configs/microchip_sama5d2_icp_mmc_dev_defconfig74
-rw-r--r--configs/minnowboard_max-graphical_defconfig1
-rw-r--r--configs/nitrogen6sx_defconfig6
-rw-r--r--configs/nitrogen6x_defconfig6
-rw-r--r--configs/nitrogen7_defconfig6
-rw-r--r--configs/nitrogen8m_defconfig10
-rw-r--r--configs/nitrogen8mm_defconfig10
-rw-r--r--configs/nitrogen8mn_defconfig10
-rw-r--r--configs/nitrogen8mp_defconfig58
-rw-r--r--configs/pandaboard_defconfig22
-rw-r--r--configs/qemu_aarch64_sbsa_defconfig52
-rw-r--r--configs/qemu_s390x_defconfig1
-rw-r--r--configs/qemu_sparc64_sun4u_defconfig3
-rw-r--r--configs/raspberrypi0_defconfig2
-rw-r--r--configs/raspberrypi0w_defconfig2
-rw-r--r--configs/raspberrypi2_defconfig2
-rw-r--r--configs/raspberrypi3_64_defconfig2
-rw-r--r--configs/raspberrypi3_defconfig2
-rw-r--r--configs/raspberrypi3_qt5we_defconfig2
-rw-r--r--configs/raspberrypi4_64_defconfig2
-rw-r--r--configs/raspberrypi4_defconfig2
-rw-r--r--configs/raspberrypi_defconfig2
-rw-r--r--configs/raspberrypicm4io_64_defconfig41
-rw-r--r--configs/raspberrypicm4io_defconfig41
-rw-r--r--configs/stm32f469_disco_defconfig22
-rw-r--r--configs/uevm5432_defconfig46
-rw-r--r--configs/wandboard_defconfig26
-rw-r--r--docs/manual/adding-packages-cmake.txt2
-rw-r--r--docs/manual/customize-post-image.txt3
-rw-r--r--docs/manual/customize-rootfs.txt3
-rw-r--r--docs/manual/resources.txt4
-rw-r--r--docs/website/docs.html13
-rw-r--r--docs/website/download.html58
-rw-r--r--docs/website/news.html120
-rw-r--r--docs/website/support.html10
-rw-r--r--linux/Config.in4
-rw-r--r--linux/linux.hash15
-rw-r--r--package/Config.in20
-rw-r--r--package/Config.in.host1
-rw-r--r--package/Makefile.in7
-rw-r--r--package/abootimg/Config.in2
-rw-r--r--package/abootimg/abootimg.hash2
-rw-r--r--package/abootimg/abootimg.mk5
-rw-r--r--package/acpid/acpid.mk2
-rw-r--r--package/aircrack-ng/Config.in1
-rw-r--r--package/apache/0004-server-log.c-ap_log_pid-Use-a-temporary-file-then-re.patch77
-rw-r--r--package/apache/apache.hash4
-rw-r--r--package/apache/apache.mk2
-rw-r--r--package/apcupsd/apcupsd.mk1
-rw-r--r--package/assimp/0002-closes-2733-update-of-zlip-to-fix-gcc-build-for-v9-2-0-32-bit.patch1638
-rw-r--r--package/assimp/0002-contrib-zip-fix-ssize_t-typedef-mismatch-for-musl-co.patch50
-rw-r--r--package/assimp/0003-closes-2954-upgrade-to-latest-greatest.patch243
-rw-r--r--package/assimp/0003-contrib-zlib-disable-dynamic-library-building.patch31
-rw-r--r--package/assimp/Config.in5
-rw-r--r--package/assimp/assimp.mk3
-rw-r--r--package/audit/0001-Fix-audispd-path-in-auditd.conf.patch32
-rw-r--r--package/audit/0002-Add-substitue-functions-for-strndupa-rawmemchr.patch133
-rw-r--r--package/audit/0003-Header-definitions-need-to-be-external-when-building.patch28
-rw-r--r--package/audit/audit.hash6
-rw-r--r--package/audit/audit.mk2
-rw-r--r--package/automake/automake.mk1
-rw-r--r--package/azure-iot-sdk-c/0001-Fix-redirection-of-errno-header.patch32
-rw-r--r--package/azure-iot-sdk-c/azure-iot-sdk-c.hash2
-rw-r--r--package/azure-iot-sdk-c/azure-iot-sdk-c.mk2
-rw-r--r--package/bash/Config.in14
-rw-r--r--package/bash/bash.mk26
-rw-r--r--package/batman-adv/batman-adv.hash4
-rw-r--r--package/batman-adv/batman-adv.mk2
-rw-r--r--package/bdwgc/0001-Fix-undefined-reference-to-__data_start-linker-error.patch33
-rw-r--r--package/bind/bind.hash4
-rw-r--r--package/bind/bind.mk6
-rw-r--r--package/binutils/2.32/0010-bfd-elf32-or1k-fix-ld-assert.patch35
-rw-r--r--package/binutils/2.32/0010-or1k-Fix-issue-with-plt-link-failure-for-local-calls.patch59
-rw-r--r--package/binutils/2.32/0011-or1k-Implement-relocation-R_OR1K_GOT_AHI16-for-gotha.patch256
-rw-r--r--package/binutils/2.32/0012-or1k-Avoid-R_OR1K_GOT16-overflow-failures-in-presenc.patch61
-rw-r--r--package/binutils/2.32/0013-or1k-Support-large-plt_relocs-when-generating-plt-en.patch500
-rw-r--r--package/binutils/2.34/0003-bfd-elf32-or1k-fix-ld-assert.patch35
-rw-r--r--package/binutils/2.34/0003-or1k-Fix-issue-with-plt-link-failure-for-local-calls.patch59
-rw-r--r--package/binutils/2.34/0004-or1k-Implement-relocation-R_OR1K_GOT_AHI16-for-gotha.patch256
-rw-r--r--package/binutils/2.34/0005-or1k-Avoid-R_OR1K_GOT16-overflow-failures-in-presenc.patch61
-rw-r--r--package/binutils/2.34/0006-or1k-Support-large-plt_relocs-when-generating-plt-en.patch500
-rw-r--r--package/binutils/2.35.2/0003-bfd-elf32-or1k-fix-ld-assert.patch35
-rw-r--r--package/binutils/2.35.2/0003-or1k-Fix-issue-with-plt-link-failure-for-local-calls.patch59
-rw-r--r--package/binutils/2.35.2/0004-or1k-Implement-relocation-R_OR1K_GOT_AHI16-for-gotha.patch256
-rw-r--r--package/binutils/2.35.2/0005-or1k-Avoid-R_OR1K_GOT16-overflow-failures-in-presenc.patch61
-rw-r--r--package/binutils/2.35.2/0006-or1k-Support-large-plt_relocs-when-generating-plt-en.patch500
-rw-r--r--package/binutils/2.36.1/0003-bfd-elf32-or1k-fix-ld-assert.patch35
-rw-r--r--package/binutils/2.36.1/0003-or1k-Fix-issue-with-plt-link-failure-for-local-calls.patch59
-rw-r--r--package/binutils/2.36.1/0004-or1k-Implement-relocation-R_OR1K_GOT_AHI16-for-gotha.patch256
-rw-r--r--package/binutils/2.36.1/0005-or1k-Avoid-R_OR1K_GOT16-overflow-failures-in-presenc.patch61
-rw-r--r--package/binutils/2.36.1/0006-or1k-Support-large-plt_relocs-when-generating-plt-en.patch500
-rw-r--r--package/bird/bird.mk1
-rw-r--r--package/bitcoin/bitcoin.hash4
-rw-r--r--package/bitcoin/bitcoin.mk8
-rw-r--r--package/bitwise/bitwise.hash2
-rw-r--r--package/bitwise/bitwise.mk2
-rw-r--r--package/blktrace/blktrace.mk1
-rw-r--r--package/bluez5_utils/Config.in51
-rw-r--r--package/boost/0002-src-event-cpp-fix-build-on-riscv32.patch42
-rw-r--r--package/boost/boost.mk4
-rw-r--r--package/botan/Config.in2
-rw-r--r--package/bullet/Config.in8
-rw-r--r--package/bullet/bullet.hash2
-rw-r--r--package/bullet/bullet.mk11
-rw-r--r--package/c-periphery/c-periphery.mk1
-rw-r--r--package/cage/cage.hash2
-rw-r--r--package/cage/cage.mk7
-rw-r--r--package/can-utils/can-utils.hash2
-rw-r--r--package/can-utils/can-utils.mk2
-rw-r--r--package/capnproto/0001-mutex-Fix-build-on-32-bit-architectures-using-64-bit-time_t.patch37
-rw-r--r--package/cegui/0001-src-Exceptions.cpp-check-if-execinfo-header-is-avail.patch33
-rw-r--r--package/cegui/0002-cegui-src-IconvStringTranscoder.cpp-use-cast-notatio.patch34
-rw-r--r--package/cegui/cegui.hash2
-rw-r--r--package/cegui/cegui.mk19
-rw-r--r--package/cgilua/cgilua.hash4
-rw-r--r--package/cgilua/cgilua.mk3
-rw-r--r--package/cgroupfs-mount/cgroupfs-mount.mk1
-rw-r--r--package/checkpolicy/checkpolicy.hash2
-rw-r--r--package/checkpolicy/checkpolicy.mk4
-rw-r--r--package/chrony/chrony.mk1
-rw-r--r--package/cifs-utils/cifs-utils.hash2
-rw-r--r--package/cifs-utils/cifs-utils.mk2
-rw-r--r--package/clamav/clamav.hash2
-rw-r--r--package/clamav/clamav.mk2
-rw-r--r--package/clinfo/clinfo.hash2
-rw-r--r--package/clinfo/clinfo.mk2
-rw-r--r--package/cmake/cmake.hash6
-rw-r--r--package/cmake/cmake.mk7
-rw-r--r--package/cog/cog.hash8
-rw-r--r--package/cog/cog.mk2
-rw-r--r--package/connman/connman.hash2
-rw-r--r--package/connman/connman.mk2
-rw-r--r--package/containerd/Config.in (renamed from package/docker-containerd/Config.in)10
-rw-r--r--package/containerd/containerd.hash (renamed from package/docker-containerd/docker-containerd.hash)2
-rw-r--r--package/containerd/containerd.mk44
-rw-r--r--package/coremark-pro/coremark-pro.mk2
-rw-r--r--package/coreutils/coreutils.mk4
-rw-r--r--package/cryptsetup/cryptsetup.mk3
-rw-r--r--package/cups/cups.hash6
-rw-r--r--package/cups/cups.mk4
-rw-r--r--package/cutelyst/0001-server-CMakeLists.txt-don-t-override-CMAKE_EXE_LINKE.patch31
-rw-r--r--package/cutelyst/cutelyst.mk2
-rw-r--r--package/daemon/0002-Fix-build-with-NDEBUG-defined.patch46
-rw-r--r--package/daq3/Config.in14
-rw-r--r--package/daq3/daq3.hash6
-rw-r--r--package/daq3/daq3.mk30
-rw-r--r--package/dc3dd/Config.in2
-rw-r--r--package/dhcp/dhcp.hash6
-rw-r--r--package/dhcp/dhcp.mk6
-rw-r--r--package/directfb/Config.in2
-rw-r--r--package/dmalloc/0001-add-fpic.patch58
-rw-r--r--package/dmalloc/0001-mips.patch (renamed from package/dmalloc/0002-mips.patch)0
-rw-r--r--package/dmalloc/0002-fix-parallel-build.patch (renamed from package/dmalloc/0003-fix-parallel-build.patch)0
-rw-r--r--package/dmalloc/0003-fix-shlibs.patch (renamed from package/dmalloc/0004-fix-shlibs.patch)0
-rw-r--r--package/dmalloc/0004-fix-strdup.patch (renamed from package/dmalloc/0005-fix-strdup.patch)0
-rw-r--r--package/dmalloc/0005-fix-strndup.patch (renamed from package/dmalloc/0006-fix-strndup.patch)0
-rw-r--r--package/dmalloc/dmalloc.mk8
-rw-r--r--package/dnsmasq/dnsmasq.hash4
-rw-r--r--package/dnsmasq/dnsmasq.mk2
-rw-r--r--package/docker-cli/docker-cli.hash2
-rw-r--r--package/docker-cli/docker-cli.mk2
-rw-r--r--package/docker-containerd/docker-containerd.mk44
-rw-r--r--package/docker-engine/Config.in8
-rw-r--r--package/docker-engine/docker-engine.hash2
-rw-r--r--package/docker-engine/docker-engine.mk2
-rw-r--r--package/domoticz/0001-Revert-Updating-CMake-configuration-file-to-use-vers.patch55
-rw-r--r--package/domoticz/0002-Avoid-deprecated-bind-placeholders-in-global-namespace.patch843
-rw-r--r--package/domoticz/0003-Build-failure-with-python-3-9.patch36
-rw-r--r--package/domoticz/0004-Load-python-3-9-shared-libs.patch41
-rw-r--r--package/domoticz/Config.in9
-rw-r--r--package/domoticz/domoticz.hash2
-rw-r--r--package/domoticz/domoticz.mk12
-rw-r--r--package/dovecot-pigeonhole/dovecot-pigeonhole.hash2
-rw-r--r--package/dovecot-pigeonhole/dovecot-pigeonhole.mk2
-rw-r--r--package/dovecot/dovecot.hash2
-rw-r--r--package/dovecot/dovecot.mk2
-rw-r--r--package/dt-utils/dt-utils.hash2
-rw-r--r--package/dt-utils/dt-utils.mk2
-rw-r--r--package/e2fsprogs/Config.in13
-rw-r--r--package/e2fsprogs/e2fsprogs.mk10
-rw-r--r--package/ebtables/0002-ebtables.h-restore-KERNEL_64_USERSPACE_32-checks.patch105
-rw-r--r--package/ebtables/0003-configure.ac-add-option-enable-kernel-64-userland-32.patch51
-rw-r--r--package/ebtables/ebtables.mk6
-rw-r--r--package/edk2-platforms/Config.in8
-rw-r--r--package/edk2-platforms/edk2-platforms.hash3
-rw-r--r--package/edk2-platforms/edk2-platforms.mk22
-rw-r--r--package/efibootmgr/Config.in2
-rw-r--r--package/efl/Config.in1
-rw-r--r--package/efl/efl.hash4
-rw-r--r--package/efl/efl.mk2
-rw-r--r--package/elfutils/elfutils.hash4
-rw-r--r--package/elfutils/elfutils.mk2
-rw-r--r--package/ell/ell.hash4
-rw-r--r--package/ell/ell.mk12
-rw-r--r--package/enet/enet.hash4
-rw-r--r--package/enet/enet.mk2
-rw-r--r--package/enlightenment/enlightenment.mk1
-rw-r--r--package/enscript/enscript.mk1
-rw-r--r--package/environment-setup/environment-setup.mk4
-rw-r--r--package/ethtool/ethtool.hash2
-rw-r--r--package/ethtool/ethtool.mk2
-rw-r--r--package/execline/execline.hash2
-rw-r--r--package/execline/execline.mk12
-rw-r--r--package/exempi/exempi.mk1
-rw-r--r--package/exfatprogs/exfatprogs.hash6
-rw-r--r--package/exfatprogs/exfatprogs.mk3
-rw-r--r--package/exim/exim.hash4
-rw-r--r--package/exim/exim.mk2
-rw-r--r--package/exiv2/0001-cmake-compilerFlags.cmake-properly-detect-availabili.patch58
-rw-r--r--package/exiv2/exiv2.hash4
-rw-r--r--package/exiv2/exiv2.mk5
-rw-r--r--package/expat/expat.hash8
-rw-r--r--package/expat/expat.mk2
-rw-r--r--package/fb-test-app/fb-test-app.hash2
-rw-r--r--package/fb-test-app/fb-test-app.mk4
-rw-r--r--package/feh/feh.hash2
-rw-r--r--package/feh/feh.mk2
-rw-r--r--package/fetchmail/fetchmail.hash8
-rw-r--r--package/fetchmail/fetchmail.mk2
-rw-r--r--package/ffmpeg/0003-libavutil-Fix-mips-build.patch72
-rw-r--r--package/filemq/filemq.hash2
-rw-r--r--package/filemq/filemq.mk2
-rw-r--r--package/findutils/findutils.mk1
-rw-r--r--package/flare-engine/flare-engine.mk12
-rw-r--r--package/flatcc/flatcc.mk2
-rw-r--r--package/flex/flex.mk3
-rw-r--r--package/fluidsynth/fluidsynth.hash2
-rw-r--r--package/fluidsynth/fluidsynth.mk3
-rw-r--r--package/fmt/fmt.mk1
-rw-r--r--package/freerdp/Config.in1
-rw-r--r--package/freescale-imx/firmware-imx/firmware-imx.hash6
-rw-r--r--package/freescale-imx/firmware-imx/firmware-imx.mk2
-rw-r--r--package/freescale-imx/imx-gpu-g2d/imx-gpu-g2d.hash8
-rw-r--r--package/freescale-imx/imx-gpu-g2d/imx-gpu-g2d.mk4
-rw-r--r--package/freescale-imx/imx-gpu-viv/Config.in10
-rw-r--r--package/freescale-imx/imx-gpu-viv/imx-gpu-viv.hash8
-rw-r--r--package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk11
-rw-r--r--package/freescale-imx/imx-sc-firmware/imx-sc-firmware.hash6
-rw-r--r--package/freescale-imx/imx-sc-firmware/imx-sc-firmware.mk2
-rw-r--r--package/freescale-imx/imx-seco/Config.in44
-rw-r--r--package/freescale-imx/imx-seco/imx-seco.hash2
-rw-r--r--package/freescale-imx/imx-seco/imx-seco.mk13
-rw-r--r--package/freescale-imx/imx-uuc/Config.in2
-rw-r--r--package/freescale-imx/imx-uuc/imx-uuc.hash2
-rw-r--r--package/freescale-imx/imx-uuc/imx-uuc.mk2
-rw-r--r--package/freescale-imx/imx-vpu-hantro/imx-vpu-hantro.hash7
-rw-r--r--package/freescale-imx/imx-vpu-hantro/imx-vpu-hantro.mk2
-rw-r--r--package/freescale-imx/imx-vpu/imx-vpu.hash4
-rw-r--r--package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.hash2
-rw-r--r--package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.mk2
-rw-r--r--package/frr/frr.mk2
-rw-r--r--package/fuse-overlayfs/fuse-overlayfs.hash2
-rw-r--r--package/fuse-overlayfs/fuse-overlayfs.mk2
-rw-r--r--package/gcc/10.3.0/0002-or1k-Add-mcmodel-option-to-handle-large-GOTs.patch200
-rw-r--r--package/gcc/10.3.0/0003-or1k-Use-cmodel-large-when-building-crtstuff.patch60
-rw-r--r--package/gcc/9.3.0/0001-xtensa-fix-PR-target-91880.patch50
-rw-r--r--package/gcc/9.3.0/0004-gcc-Makefile.in-move-SELFTEST_DEPS-before-including-.patch81
-rw-r--r--package/gcc/9.4.0/0001-or1k-Fix-issue-with-set_got-clobbering-LR-r9.patch (renamed from package/gcc/9.3.0/0002-or1k-Fix-issue-with-set_got-clobbering-LR-r9.patch)4
-rw-r--r--package/gcc/9.4.0/0002-gcc-define-_REENTRANT-for-OpenRISC-when-pthread-is-p.patch (renamed from package/gcc/9.3.0/0003-gcc-define-_REENTRANT-for-RISC-V-when-pthread-is-pas.patch)6
-rw-r--r--package/gcc/9.4.0/0003-Revert-re-PR-target-92095-internal-error-with-O1-mcp.patch (renamed from package/gcc/9.3.0/0005-Revert-re-PR-target-92095-internal-error-with-O1-mcp.patch)28
-rw-r--r--package/gcc/9.4.0/0004-or1k-Add-mcmodel-option-to-handle-large-GOTs.patch201
-rw-r--r--package/gcc/9.4.0/0005-or1k-Use-cmodel-large-when-building-crtstuff.patch60
-rw-r--r--package/gcc/Config.in.host21
-rw-r--r--package/gcc/gcc.hash6
-rw-r--r--package/gcc/gcc.mk2
-rw-r--r--package/gd/gd.mk2
-rw-r--r--package/gdb/9.2/0007-gdb-configure.tgt-build-gdbserver-with-m68k-and-ucli.patch41
-rw-r--r--package/gdb/Config.in1
-rw-r--r--package/gdb/Config.in.host3
-rw-r--r--package/gdk-pixbuf/0001-meson.build-link-with-lintl-if-needed.patch45
-rw-r--r--package/gdk-pixbuf/0002-gdk-pixbuf-gdk-pixbuf-io.c-fix-build-without-gmodule.patch41
-rw-r--r--package/gdk-pixbuf/Config.in2
-rw-r--r--package/gdk-pixbuf/gdk-pixbuf.hash5
-rw-r--r--package/gdk-pixbuf/gdk-pixbuf.mk2
-rw-r--r--package/gerbera/Config.in8
-rw-r--r--package/gerbera/S99gerbera3
-rw-r--r--package/gerbera/config.xml144
-rw-r--r--package/gerbera/gerbera.hash2
-rw-r--r--package/gerbera/gerbera.mk8
-rw-r--r--package/gnuchess/gnuchess.hash2
-rw-r--r--package/gnuchess/gnuchess.mk2
-rw-r--r--package/gnuplot/gnuplot.hash8
-rw-r--r--package/gnuplot/gnuplot.mk2
-rw-r--r--package/gnutls/gnutls.mk1
-rw-r--r--package/go/go.hash2
-rw-r--r--package/go/go.mk2
-rw-r--r--package/gobject-introspection/0001-disable-tests.patch2
-rw-r--r--package/gobject-introspection/0002-Add-rpath-links-to-ccompiler.patch2
-rw-r--r--package/gobject-introspection/Config.in1
-rw-r--r--package/gobject-introspection/gobject-introspection.hash9
-rw-r--r--package/gobject-introspection/gobject-introspection.mk12
-rw-r--r--package/gperf/gperf.mk2
-rw-r--r--package/gptfdisk/0001-gptcurses-partially-revert-Tweaks-for-building-on-th.patch2
-rw-r--r--package/gptfdisk/gptfdisk.hash7
-rw-r--r--package/gptfdisk/gptfdisk.mk2
-rw-r--r--package/grpc/grpc.hash2
-rw-r--r--package/grpc/grpc.mk3
-rw-r--r--package/gstreamer1/gst1-interpipe/gst1-interpipe.hash2
-rw-r--r--package/gstreamer1/gst1-interpipe/gst1-interpipe.mk2
-rw-r--r--package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk2
-rw-r--r--package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk2
-rw-r--r--package/gstreamer1/gstreamer1/gstreamer1.mk2
-rw-r--r--package/gupnp/0001-Revert-build-Always-build-gupnp-binding-tool-manpage.patch60
-rw-r--r--package/gupnp/0001-doc-Check-for-stylesheet-existence-on-doc-build.patch73
-rw-r--r--package/gupnp/gupnp.hash4
-rw-r--r--package/gupnp/gupnp.mk2
-rw-r--r--package/haproxy/haproxy.hash4
-rw-r--r--package/haproxy/haproxy.mk2
-rw-r--r--package/harfbuzz/0001-meson.build-check-for-pthread.h.patch9
-rw-r--r--package/harfbuzz/harfbuzz.hash2
-rw-r--r--package/harfbuzz/harfbuzz.mk4
-rw-r--r--package/heirloom-mailx/Config.in2
-rw-r--r--package/heirloom-mailx/heirloom-mailx.mk2
-rw-r--r--package/hostapd/0002-ASN.1-Validate-DigestAlgorithmIdentifier-parameters.patch116
-rw-r--r--package/hostapd/0003-Include-stdbool.h-to-allow-C99-bool-to-be-used.patch32
-rw-r--r--package/hostapd/0004-ASN.1-Add-helper-functions-for-recognizing-tag-value.patch37
-rw-r--r--package/hostapd/Config.in2
-rw-r--r--package/hostapd/hostapd.hash1
-rw-r--r--package/hostapd/hostapd.mk9
-rw-r--r--package/hwloc/hwloc.hash8
-rw-r--r--package/hwloc/hwloc.mk32
-rw-r--r--package/i2c-tools/i2c-tools.mk1
-rw-r--r--package/iftop/0002-Rename-pcap_filter-to-iftop_pcap_filter.patch51
-rw-r--r--package/imagemagick/imagemagick.hash2
-rw-r--r--package/imagemagick/imagemagick.mk2
-rw-r--r--package/imlib2/imlib2.hash8
-rw-r--r--package/imlib2/imlib2.mk2
-rw-r--r--package/intel-mediadriver/0003-cmrtlib-linux-CMakelists.txt-respect-MEDIA_BUILD_FAT.patch51
-rw-r--r--package/intel-mediadriver/intel-mediadriver.mk1
-rw-r--r--package/intel-microcode/intel-microcode.hash4
-rw-r--r--package/intel-microcode/intel-microcode.mk2
-rw-r--r--package/iostat/0001-cpunum.patch27
-rw-r--r--package/iostat/Config.in6
-rw-r--r--package/iostat/iostat.hash3
-rw-r--r--package/iostat/iostat.mk21
-rw-r--r--package/iperf3/iperf3.hash6
-rw-r--r--package/iperf3/iperf3.mk2
-rw-r--r--package/iproute2/0001-devlink-update-include-files.patch55
-rw-r--r--package/iproute2/0001-lib-fs-fix-issue-when-name-open-_to_handle_at-is-not.patch114
-rw-r--r--package/iproute2/iproute2.hash2
-rw-r--r--package/iproute2/iproute2.mk3
-rw-r--r--package/iputils/iputils.mk1
-rw-r--r--package/jh71xx-tools/Config.in.host7
-rw-r--r--package/jh71xx-tools/jh71xx-tools.hash3
-rw-r--r--package/jh71xx-tools/jh71xx-tools.mk20
-rw-r--r--package/jquery-validation/jquery-validation.hash4
-rw-r--r--package/jquery-validation/jquery-validation.mk6
-rw-r--r--package/json-for-modern-cpp/json-for-modern-cpp.mk2
-rw-r--r--package/keepalived/keepalived.mk1
-rw-r--r--package/kexec/kexec.hash4
-rw-r--r--package/kexec/kexec.mk2
-rw-r--r--package/kf5/kf5-kcoreaddons/Config.in1
-rw-r--r--package/kf5/kf5-modemmanager-qt/kf5-modemmanager-qt.mk2
-rw-r--r--package/kismet/kismet.mk3
-rw-r--r--package/kmod/Config.in.host3
-rw-r--r--package/kmod/kmod.mk14
-rw-r--r--package/kodi-inputstream-adaptive/kodi-inputstream-adaptive.hash2
-rw-r--r--package/kodi-inputstream-adaptive/kodi-inputstream-adaptive.mk2
-rw-r--r--package/kodi-inputstream-ffmpegdirect/kodi-inputstream-ffmpegdirect.hash2
-rw-r--r--package/kodi-inputstream-ffmpegdirect/kodi-inputstream-ffmpegdirect.mk2
-rw-r--r--package/kodi-jsonschemabuilder/kodi-jsonschemabuilder.mk2
-rw-r--r--package/kodi-peripheral-joystick/kodi-peripheral-joystick.hash2
-rw-r--r--package/kodi-peripheral-joystick/kodi-peripheral-joystick.mk2
-rw-r--r--package/kodi-pvr-iptvsimple/kodi-pvr-iptvsimple.hash2
-rw-r--r--package/kodi-pvr-iptvsimple/kodi-pvr-iptvsimple.mk2
-rw-r--r--package/kodi-pvr-mediaportal-tvserver/0001-Revert-Removed-no-more-supported-C-17-declaration-ke.patch29
-rw-r--r--package/kodi-pvr-mediaportal-tvserver/0002-Remove-p8-os-includes.patch157
-rw-r--r--package/kodi-pvr-mediaportal-tvserver/0003-Use-kodi-StringUtils.patch124
-rw-r--r--package/kodi-pvr-mediaportal-tvserver/0004-Remove-SAFE_DELETE.patch289
-rw-r--r--package/kodi-pvr-mediaportal-tvserver/0005-Use-thread-sleep_for-instead-of-p8-time-utils.patch308
-rw-r--r--package/kodi-pvr-mediaportal-tvserver/0006-Use-std-thread-std-mutex-condition_variable-instead-.patch673
-rw-r--r--package/kodi-pvr-mediaportal-tvserver/0007-Remove-charset-converter-dependency.patch55
-rw-r--r--package/kodi-pvr-mediaportal-tvserver/0008-Remove-p8-platform-dependency.patch74
-rw-r--r--package/kodi-pvr-mediaportal-tvserver/0009-Travis-changes-for-cpp17.patch28
-rw-r--r--package/kodi-pvr-mediaportal-tvserver/0010-Remove-register-keyword-as-no-longer-valid-in-CPP17.patch23
-rw-r--r--package/kodi-pvr-mediaportal-tvserver/0011-changelog-and-version-v8.1.1.patch42
-rw-r--r--package/kodi-pvr-mediaportal-tvserver/kodi-pvr-mediaportal-tvserver.hash2
-rw-r--r--package/kodi-pvr-mediaportal-tvserver/kodi-pvr-mediaportal-tvserver.mk2
-rw-r--r--package/kodi-pvr-nextpvr/kodi-pvr-nextpvr.hash2
-rw-r--r--package/kodi-pvr-nextpvr/kodi-pvr-nextpvr.mk2
-rw-r--r--package/kodi-texturepacker/kodi-texturepacker.mk2
-rw-r--r--package/kodi/0002-linux-fix-drm-object-build-with-gcc-4.9.patch34
-rw-r--r--package/kodi/Config.in1
-rw-r--r--package/kodi/kodi.hash2
-rw-r--r--package/kodi/kodi.mk9
-rw-r--r--package/less/less.mk1
-rw-r--r--package/libatomic_ops/Config.in7
-rw-r--r--package/libbluray/libbluray.hash4
-rw-r--r--package/libbluray/libbluray.mk6
-rw-r--r--package/libbpf/Config.in20
-rw-r--r--package/libbpf/libbpf.hash5
-rw-r--r--package/libbpf/libbpf.mk40
-rw-r--r--package/libcamera/0001-libcamera-add-dependencies-to-libcamera_dep.patch37
-rw-r--r--package/libcamera/Config.in1
-rw-r--r--package/libcamera/libcamera.hash2
-rw-r--r--package/libcamera/libcamera.mk2
-rw-r--r--package/libcap/libcap.hash4
-rw-r--r--package/libcap/libcap.mk3
-rw-r--r--package/libcgroup/0001-cgrulesengd-remove-umask-0.patch33
-rw-r--r--package/libcgroup/libcgroup.hash6
-rw-r--r--package/libcgroup/libcgroup.mk8
-rw-r--r--package/libcurl/0001-bearssl-remove-incorrect-const-on-variable-that-is-m.patch32
-rw-r--r--package/libcurl/Config.in1
-rw-r--r--package/libcurl/libcurl.hash4
-rw-r--r--package/libcurl/libcurl.mk8
-rw-r--r--package/libcutl/libcutl.mk1
-rw-r--r--package/libdaemon/libdaemon.mk2
-rw-r--r--package/libdrm/libdrm.hash6
-rw-r--r--package/libdrm/libdrm.mk4
-rw-r--r--package/libeXosip2/libeXosip2.mk2
-rw-r--r--package/libepoxy/libepoxy.hash6
-rw-r--r--package/libepoxy/libepoxy.mk2
-rw-r--r--package/libesmtp/Config.in2
-rw-r--r--package/libesmtp/libesmtp.mk2
-rw-r--r--package/libffi/libffi.mk1
-rw-r--r--package/libfreefare/Config.in5
-rw-r--r--package/libfuse/libfuse.mk1
-rw-r--r--package/libfuse3/libfuse3.hash2
-rw-r--r--package/libfuse3/libfuse3.mk7
-rw-r--r--package/libgeos/Config.in9
-rw-r--r--package/libgit2/libgit2.mk1
-rw-r--r--package/libglib2/0001-fix-compile-time-atomic-detection.patch12
-rw-r--r--package/libglib2/0002-allow-explicit-disabling-of-tests.patch37
-rw-r--r--package/libglib2/0002-remove-cpp-requirement.patch (renamed from package/libglib2/0003-remove-cpp-requirement.patch)6
-rw-r--r--package/libglib2/0003-Add-Wno-format-nonliteral-to-compiler-arguments.patch (renamed from package/libglib2/0004-Add-Wno-format-nonliteral-to-compiler-arguments.patch)7
-rw-r--r--package/libglib2/libglib2.hash4
-rw-r--r--package/libglib2/libglib2.mk16
-rw-r--r--package/libgpiod/libgpiod.hash2
-rw-r--r--package/libgpiod/libgpiod.mk2
-rw-r--r--package/libgtk2/libgtk2.mk2
-rw-r--r--package/libgtk3/libgtk3.mk2
-rw-r--r--package/libhttpserver/0001-Compatibility-with-libmicrohttpd-0.9.71.patch240
-rw-r--r--package/libhttpserver/libhttpserver.hash2
-rw-r--r--package/libhttpserver/libhttpserver.mk2
-rw-r--r--package/libical/libical.mk1
-rw-r--r--package/libidn/libidn.mk1
-rw-r--r--package/libidn2/libidn2.mk1
-rw-r--r--package/libiec61850/0001-use-poll.h-instead-of-sys-poll.h.patch33
-rw-r--r--package/libiec61850/0002-serial_port_linux-Add-missing-include-sys-time.h.patch32
-rw-r--r--package/libiec61850/0003-COTP-fixed-possible-heap-buffer-overflow-when-handling-message.patch27
-rw-r--r--package/libiec61850/libiec61850.hash2
-rw-r--r--package/libiec61850/libiec61850.mk5
-rw-r--r--package/libinput/libinput.hash6
-rw-r--r--package/libinput/libinput.mk2
-rw-r--r--package/libkcapi/0001-Disable-use-of-__NR_io_getevents-when-not-defined.patch42
-rw-r--r--package/libkrb5/Config.in3
-rw-r--r--package/libkrb5/libkrb5.mk15
-rw-r--r--package/libldns/libldns.mk2
-rw-r--r--package/libmdbx/libmdbx.hash2
-rw-r--r--package/libmdbx/libmdbx.mk2
-rw-r--r--package/libmms/libmms.mk1
-rw-r--r--package/libmodbus/libmodbus.mk1
-rw-r--r--package/libmspack/libmspack.mk7
-rw-r--r--package/libnids/libnids.mk5
-rw-r--r--package/libnl/libnl.mk2
-rw-r--r--package/libnpupnp/libnpupnp.hash4
-rw-r--r--package/libnpupnp/libnpupnp.mk2
-rw-r--r--package/libnss/libnss.hash4
-rw-r--r--package/libnss/libnss.mk2
-rw-r--r--package/libopenh264/0003-codec-common-inc-asmdefs_mmi.h-fix-mips32-build.patch89
-rw-r--r--package/libopenssl/Config.in99
-rw-r--r--package/libopenssl/libopenssl.mk48
-rw-r--r--package/liboping/liboping.mk1
-rw-r--r--package/libp11/libp11.hash4
-rw-r--r--package/libp11/libp11.mk2
-rw-r--r--package/libplatform/0001-cmake-require-c-11-as-the-minimum-standard.patch26
-rw-r--r--package/libplatform/libplatform.mk4
-rw-r--r--package/libpsl/Config.in12
-rw-r--r--package/libpsl/libpsl.hash6
-rw-r--r--package/libpsl/libpsl.mk27
-rw-r--r--package/libqb/Config.in7
-rw-r--r--package/libqb/libqb.hash3
-rw-r--r--package/libqb/libqb.mk15
-rw-r--r--package/libqmi/0001-libqmi-fix-build-when-ARPHRD_RAWIP-isn-t-defined-in-.patch39
-rw-r--r--package/libqmi/libqmi.hash2
-rw-r--r--package/libqmi/libqmi.mk3
-rw-r--r--package/libraw/0001-Add-Libs.private-to-libraw.pc.patch67
-rw-r--r--package/libraw/Config.in2
-rw-r--r--package/librelp/librelp.mk1
-rw-r--r--package/libressl/libressl.mk1
-rw-r--r--package/librsvg/librsvg.hash4
-rw-r--r--package/librsvg/librsvg.mk2
-rw-r--r--package/librsync/librsync.hash2
-rw-r--r--package/librsync/librsync.mk4
-rw-r--r--package/libsamplerate/libsamplerate.mk1
-rw-r--r--package/libselinux/0002-Do-not-use-PYCEXT-and-rely-on-the-installed-file-nam.patch2
-rw-r--r--package/libselinux/0003-libselinux-rename-gettid-to-something-which-never-conflicts.patch71
-rw-r--r--package/libselinux/libselinux.hash2
-rw-r--r--package/libselinux/libselinux.mk4
-rw-r--r--package/libsemanage/libsemanage.hash2
-rw-r--r--package/libsemanage/libsemanage.mk4
-rw-r--r--package/libsepol/Config.in4
-rw-r--r--package/libsepol/libsepol.hash4
-rw-r--r--package/libsepol/libsepol.mk4
-rw-r--r--package/libsndfile/0001-double64_init-Check-psf-sf.channels-against-upper-bo.patch39
-rw-r--r--package/libsndfile/0002-Check-MAX_CHANNELS-in-sndfile-deinterleave.patch36
-rw-r--r--package/libsndfile/0003-a-ulaw-fix-multiple-buffer-overflows-432.patch96
-rw-r--r--package/libsndfile/0004-src-wav.c-Fix-heap-read-overflow.patch35
-rw-r--r--package/libsndfile/0005-wav_write_header-don-t-read-past-the-array-end.patch33
-rw-r--r--package/libsndfile/0006-src-aiff.c-Fix-a-buffer-read-overflow.patch29
-rw-r--r--package/libsndfile/0007-FLAC-Fix-a-buffer-read-overrun.patch68
-rw-r--r--package/libsndfile/0008-src-flac.c-Fix-a-buffer-read-overflow.patch54
-rw-r--r--package/libsndfile/0009-src-flac-c-Fix-another-memory-leak.patch32
-rw-r--r--package/libsndfile/0010-src-common-c-Fix-heap-buffer-overflows-when-writing-strings-in.patch92
-rw-r--r--package/libsndfile/libsndfile.hash4
-rw-r--r--package/libsndfile/libsndfile.mk35
-rw-r--r--package/libsoup/0001-Revert-tld-parser-use-Python-3.patch27
-rw-r--r--package/libsoup/Config.in7
-rw-r--r--package/libsoup/libsoup.hash4
-rw-r--r--package/libsoup/libsoup.mk51
-rw-r--r--package/libssh/Config.in1
-rw-r--r--package/libssh2/Config.in1
-rw-r--r--package/libtirpc/libtirpc.hash4
-rw-r--r--package/libtirpc/libtirpc.mk2
-rw-r--r--package/libtomcrypt/Config.in2
-rw-r--r--package/libtomcrypt/libtomcrypt.mk4
-rw-r--r--package/libtool/libtool.mk1
-rw-r--r--package/libtorrent/Config.in1
-rw-r--r--package/libubootenv/0001-src-CMakeLists.txt-do-not-force-the-build-of-a-share.patch11
-rw-r--r--package/libubootenv/libubootenv.hash2
-rw-r--r--package/libubootenv/libubootenv.mk4
-rw-r--r--package/libudfread/libudfread.hash2
-rw-r--r--package/libudfread/libudfread.mk2
-rw-r--r--package/libuhttpd/libuhttpd.hash2
-rw-r--r--package/libuhttpd/libuhttpd.mk40
-rw-r--r--package/libupnp/libupnp.hash2
-rw-r--r--package/libupnp/libupnp.mk2
-rw-r--r--package/libusb/libusb.mk1
-rw-r--r--package/libuv/libuv.mk1
-rw-r--r--package/libvncserver/Config.in1
-rw-r--r--package/libwpe/0001-meson-Use-a-partial-dependency-to-pass-EGL-module-fl.patch45
-rw-r--r--package/libwpe/libwpe.hash8
-rw-r--r--package/libwpe/libwpe.mk2
-rw-r--r--package/libxml2/0001-Fix-infinite-loop-in-xmlStringLenDecodeEntities.patch36
-rw-r--r--package/libxml2/0002-Fix-memory-leak-in-xmlSchemaValidateStream.patch35
-rw-r--r--package/libxml2/0003-Fix-out-of-bounds-read-with-xmllint--htmlout.patch40
-rw-r--r--package/libxml2/libxml2.hash4
-rw-r--r--package/libxml2/libxml2.mk8
-rw-r--r--package/libxslt/0001-Fix-xml2-config-check-in-configure-script.patch31
-rw-r--r--package/libxslt/libxslt.mk2
-rw-r--r--package/links/Config.in8
-rw-r--r--package/links/links.hash2
-rw-r--r--package/links/links.mk2
-rw-r--r--package/linux-headers/Config.in.host27
-rw-r--r--package/linux-serial-test/linux-serial-test.hash2
-rw-r--r--package/linux-serial-test/linux-serial-test.mk2
-rw-r--r--package/live555/live555.hash4
-rw-r--r--package/live555/live555.mk2
-rw-r--r--package/llvm/0001-nfc-Fix-missing-include.patch24
-rw-r--r--package/llvm/Config.in6
-rw-r--r--package/llvm/llvm.mk5
-rw-r--r--package/lmbench/0003-TOO_LONG-100-usec-to-prevent-memsize-from-timingout-.patch28
-rw-r--r--package/lmbench/0004-Fix-garbage-pointer-for-lat_rpc-S-localhost.patch25
-rw-r--r--package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0001-HACK-only-build-and-install-localedef.patch (renamed from package/localedef/2.32-23-g050022910be1d1f5c11cd5168f1685ad4f9580d2/0001-HACK-only-build-and-install-localedef.patch)0
-rw-r--r--package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0002-relax-dependency-on-GCC-to-4.8-and-binutils-to-2.24.patch (renamed from package/localedef/2.32-23-g050022910be1d1f5c11cd5168f1685ad4f9580d2/0002-relax-dependency-on-GCC-to-4.8-and-binutils-to-2.24.patch)0
-rw-r--r--package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0003-Fix-GCC-11-Warray-parameter-warning-for-__sigsetjmp-.patch155
-rw-r--r--package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0004-Avoid-Wstringop-overflow-warning-in-pthread_cleanup_.patch125
-rw-r--r--package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/localedef.hash (renamed from package/localedef/2.32-23-g050022910be1d1f5c11cd5168f1685ad4f9580d2/localedef.hash)2
-rw-r--r--package/localedef/localedef.mk2
-rw-r--r--package/log4qt/log4qt.mk11
-rw-r--r--package/ltp-testsuite/ltp-testsuite.hash5
-rw-r--r--package/ltp-testsuite/ltp-testsuite.mk5
-rw-r--r--package/lttng-tools/0001-configure.ac-add-disable-tests.patch37
-rw-r--r--package/lttng-tools/lttng-tools.mk3
-rw-r--r--package/lua-zlib/Config.in10
-rw-r--r--package/lua-zlib/lua-zlib.hash2
-rw-r--r--package/lua-zlib/lua-zlib.mk12
-rw-r--r--package/lualdap/lualdap.hash2
-rw-r--r--package/lualdap/lualdap.mk2
-rw-r--r--package/luarocks/buildroot.lua4
-rw-r--r--package/luarocks/luarocks.hash2
-rw-r--r--package/luarocks/luarocks.mk2
-rw-r--r--package/luv/Config.in5
-rw-r--r--package/luv/luv.hash4
-rw-r--r--package/luv/luv.mk2
-rw-r--r--package/luvi/Config.in1
-rw-r--r--package/luvi/luvi.hash2
-rw-r--r--package/luvi/luvi.mk2
-rw-r--r--package/lvm2/0001-configure-Introduce-enable-symvers-option.patch278
-rw-r--r--package/lvm2/0002-udev-remove-unsupported-options-event-timeout-rule.patch33
-rw-r--r--package/lvm2/Config.in30
-rw-r--r--package/lvm2/lvm2.hash4
-rw-r--r--package/lvm2/lvm2.mk35
-rw-r--r--package/lxc/lxc.hash2
-rw-r--r--package/lxc/lxc.mk2
-rw-r--r--package/lz4/0001-Fix-potential-memory-corruption-with-negative-memmov.patch26
-rw-r--r--package/lz4/lz4.mk3
-rw-r--r--package/m4/0003-c-stack-stop-using-SIGSTKSZ.patch106
-rw-r--r--package/make/make.mk2
-rw-r--r--package/makedevs/makedevs.mk6
-rw-r--r--package/makedumpfile/0002-makedumpfile.h-fix-build-on-sparc64.patch35
-rw-r--r--package/makedumpfile/makedumpfile.hash2
-rw-r--r--package/makedumpfile/makedumpfile.mk2
-rw-r--r--package/mbuffer/mbuffer.hash4
-rw-r--r--package/mbuffer/mbuffer.mk2
-rw-r--r--package/mdevd/mdevd.hash2
-rw-r--r--package/mdevd/mdevd.mk12
-rw-r--r--package/mender-artifact/mender-artifact.hash14
-rw-r--r--package/mender-artifact/mender-artifact.mk8
-rw-r--r--package/mender-grubenv/mender-grubenv.mk9
-rw-r--r--package/mender/Config.in2
-rw-r--r--package/mender/mender.hash6
-rw-r--r--package/mender/mender.mk5
-rw-r--r--package/mesa3d-headers/mesa3d-headers.mk4
-rw-r--r--package/mesa3d/0003-vc4-add-meson-option-to-disable-optional-neon-suppor.patch6
-rw-r--r--package/mesa3d/Config.in23
-rw-r--r--package/mesa3d/mesa3d.hash8
-rw-r--r--package/mesa3d/mesa3d.mk5
-rw-r--r--package/meson/meson.hash4
-rw-r--r--package/meson/meson.mk2
-rw-r--r--package/mimic/0001-Fix-linking-on-gcc-10.2.0-or-newer.patch27
-rw-r--r--package/minetest-game/minetest-game.hash4
-rw-r--r--package/minetest-game/minetest-game.mk2
-rw-r--r--package/minetest/minetest.hash4
-rw-r--r--package/minetest/minetest.mk2
-rw-r--r--package/mini-snmpd/mini-snmpd.mk2
-rw-r--r--package/minidlna/minidlna.mk2
-rw-r--r--package/minissdpd/minissdpd.mk1
-rw-r--r--package/minizip/minizip.mk1
-rw-r--r--package/mkpasswd/mkpasswd.mk6
-rw-r--r--package/mkpimage/mkpimage.mk6
-rw-r--r--package/moarvm/Config.in1
-rw-r--r--package/moarvm/moarvm.hash2
-rw-r--r--package/moarvm/moarvm.mk4
-rw-r--r--package/modem-manager/modem-manager.hash2
-rw-r--r--package/modem-manager/modem-manager.mk2
-rw-r--r--package/monkey/Config.in24
-rw-r--r--package/monkey/monkey.hash4
-rw-r--r--package/monkey/monkey.mk35
-rw-r--r--package/mono-gtksharp3/0002-Mono-compilation-error-branch.patch25
-rw-r--r--package/mosquitto/mosquitto.hash4
-rw-r--r--package/mosquitto/mosquitto.mk2
-rw-r--r--package/mpd/mpd.hash2
-rw-r--r--package/mpd/mpd.mk2
-rw-r--r--package/mpg123/mpg123.hash8
-rw-r--r--package/mpg123/mpg123.mk2
-rw-r--r--package/mpv/mpv.hash2
-rw-r--r--package/mpv/mpv.mk9
-rw-r--r--package/msmtp/msmtp.mk1
-rw-r--r--package/mtd/Config.in5
-rw-r--r--package/mtd/mtd.mk1
-rw-r--r--package/multipath-tools/multipath-tools.hash4
-rw-r--r--package/multipath-tools/multipath-tools.mk2
-rw-r--r--package/mupdf/0001-Makefile-add-an-install_libs-target.patch41
-rw-r--r--package/mupdf/Config.in23
-rw-r--r--package/mupdf/mupdf.hash8
-rw-r--r--package/mupdf/mupdf.mk66
-rw-r--r--package/musl/musl.mk1
-rw-r--r--package/mutt/mutt.hash2
-rw-r--r--package/mutt/mutt.mk2
-rw-r--r--package/nano/nano.hash4
-rw-r--r--package/nano/nano.mk2
-rw-r--r--package/nasm/nasm.mk2
-rw-r--r--package/nbd/nbd.mk2
-rw-r--r--package/ncurses/ncurses.mk6
-rw-r--r--package/neon/Config.in2
-rw-r--r--package/netatalk/Config.in2
-rw-r--r--package/netperf/netperf.mk2
-rw-r--r--package/netsnmp/Config.in1
-rw-r--r--package/netsurf/netsurf.mk1
-rw-r--r--package/nettle/nettle.hash4
-rw-r--r--package/nettle/nettle.mk2
-rw-r--r--package/nginx/0009-auto-os-linux-fix-build-with-libxcrypt.patch38
-rw-r--r--package/nginx/0010-Resolver-fixed-off-by-one-write-in-ngx_resolver_copy.patch40
-rw-r--r--package/nginx/nginx.mk7
-rw-r--r--package/numactl/0001-Do-not-stringify-SYMVER-symbols.patch25
-rw-r--r--package/numactl/0002-link-with-latomic-if-needed.patch52
-rw-r--r--package/numactl/Config.in11
-rw-r--r--package/nut/0001-Allow-to-customize-path-to-gdlib-config-and-net-snmp.patch153
-rw-r--r--package/nut/0002-client-ups-add-missing-include.patch29
-rw-r--r--package/nut/0003-Add-compatibility-with-openssl-1.1.0.patch76
-rw-r--r--package/nut/0004-nut_check_libgd.m4-try-to-find-gd-through-pkg-config.patch120
-rw-r--r--package/nut/nut.hash3
-rw-r--r--package/nut/nut.mk23
-rw-r--r--package/odb/odb.mk1
-rw-r--r--package/oniguruma/oniguruma.hash7
-rw-r--r--package/oniguruma/oniguruma.mk2
-rw-r--r--package/openblas/openblas.mk4
-rw-r--r--package/opencv3/opencv3.mk2
-rw-r--r--package/openjdk-bin/openjdk-bin.hash6
-rw-r--r--package/openjdk-bin/openjdk-bin.mk18
-rw-r--r--package/openjdk/11.0.8+10/0001-fix-gcc-10-support.patch119
-rw-r--r--package/openjdk/14.0.2+12/0001-fix-gcc-10-support.patch119
-rw-r--r--package/openjdk/Config.in2
-rw-r--r--package/openjdk/openjdk.hash4
-rw-r--r--package/openjdk/openjdk.mk16
-rw-r--r--package/openocd/0002-CVE-2018-5704-Prevent-some-forms-of-Cross-Protocol-S.patch50
-rw-r--r--package/openocd/0003-bitbang-Fix-FTBFS-with-GCC-10.patch37
-rw-r--r--package/openocd/openocd.hash7
-rw-r--r--package/openocd/openocd.mk5
-rw-r--r--package/openresolv/openresolv.mk1
-rw-r--r--package/openssh/openssh.hash4
-rw-r--r--package/openssh/openssh.mk2
-rw-r--r--package/openswan/openswan.mk2
-rw-r--r--package/opentyrian/opentyrian.hash3
-rw-r--r--package/opentyrian/opentyrian.mk5
-rw-r--r--package/openvpn/Config.in1
-rw-r--r--package/openvpn/openvpn.hash2
-rw-r--r--package/openvpn/openvpn.mk2
-rw-r--r--package/oprofile/oprofile.mk1
-rw-r--r--package/oracle-mysql/oracle-mysql.mk2
-rw-r--r--package/p7zip/p7zip.mk1
-rw-r--r--package/paho-mqtt-c/paho-mqtt-c.hash2
-rw-r--r--package/paho-mqtt-c/paho-mqtt-c.mk2
-rw-r--r--package/pango/pango.hash4
-rw-r--r--package/pango/pango.mk2
-rw-r--r--package/parted/parted.mk1
-rw-r--r--package/pdbg/0001-build-Fix-build-with-DNDEBUG.patch78
-rw-r--r--package/pdbg/0002-build-Fix-build-with-DNDEBUG.patch71
-rw-r--r--package/perl-convert-asn1/perl-convert-asn1.hash6
-rw-r--r--package/perl-convert-asn1/perl-convert-asn1.mk4
-rw-r--r--package/perl-crypt-openssl-rsa/Config.in2
-rw-r--r--package/perl-crypt-openssl-rsa/perl-crypt-openssl-rsa.mk3
-rw-r--r--package/perl-date-manip/perl-date-manip.hash4
-rw-r--r--package/perl-date-manip/perl-date-manip.mk2
-rw-r--r--package/perl-http-message/perl-http-message.hash4
-rw-r--r--package/perl-http-message/perl-http-message.mk2
-rw-r--r--package/perl-io-socket-ssl/Config.in1
-rw-r--r--package/perl-io-socket-ssl/perl-io-socket-ssl.hash4
-rw-r--r--package/perl-io-socket-ssl/perl-io-socket-ssl.mk2
-rw-r--r--package/perl-libwww-perl/Config.in1
-rw-r--r--package/perl-libwww-perl/perl-libwww-perl.hash4
-rw-r--r--package/perl-libwww-perl/perl-libwww-perl.mk2
-rw-r--r--package/perl-mojolicious-plugin-authentication/perl-mojolicious-plugin-authentication.hash6
-rw-r--r--package/perl-mojolicious-plugin-authentication/perl-mojolicious-plugin-authentication.mk2
-rw-r--r--package/perl-mojolicious/perl-mojolicious.hash4
-rw-r--r--package/perl-mojolicious/perl-mojolicious.mk2
-rw-r--r--package/perl-moo/perl-moo.hash6
-rw-r--r--package/perl-moo/perl-moo.mk2
-rw-r--r--package/perl-net-dns/perl-net-dns.hash4
-rw-r--r--package/perl-net-dns/perl-net-dns.mk2
-rw-r--r--package/perl-net-ssh2/perl-net-ssh2.hash6
-rw-r--r--package/perl-net-ssh2/perl-net-ssh2.mk4
-rw-r--r--package/perl-net-ssleay/Config.in1
-rw-r--r--package/perl-path-tiny/perl-path-tiny.hash4
-rw-r--r--package/perl-path-tiny/perl-path-tiny.mk2
-rw-r--r--package/perl-role-tiny/perl-role-tiny.hash4
-rw-r--r--package/perl-role-tiny/perl-role-tiny.mk2
-rw-r--r--package/perl-type-tiny/perl-type-tiny.hash4
-rw-r--r--package/perl-type-tiny/perl-type-tiny.mk2
-rw-r--r--package/perl/perl.mk1
-rw-r--r--package/php-imagick/php-imagick.mk2
-rw-r--r--package/php/Config.ext3
-rw-r--r--package/php/php.hash2
-rw-r--r--package/php/php.mk2
-rw-r--r--package/picocom/picocom.mk1
-rw-r--r--package/pifmrds/0003-Makefile-fix-static-link.patch6
-rw-r--r--package/pifmrds/pifmrds.mk3
-rw-r--r--package/pigz/pigz.mk1
-rw-r--r--package/pipewire/0001-meson-fix-getrandom-detection-for-uclibc.patch49
-rw-r--r--package/pipewire/0002-fix-linking-with-latomic.patch108
-rw-r--r--package/pipewire/Config.in22
-rw-r--r--package/pipewire/pipewire.hash6
-rw-r--r--package/pipewire/pipewire.mk115
-rw-r--r--package/pkg-cmake.mk2
-rw-r--r--package/pkg-generic.mk1
-rw-r--r--package/pkg-meson.mk3
-rw-r--r--package/pkgconf/pkgconf.mk1
-rw-r--r--package/pngquant/pngquant.mk1
-rw-r--r--package/poco/poco.mk1
-rw-r--r--package/poke/0001-build-do-not-check-for-Tcl-Tk-if-disable-gui-is-spec.patch43
-rw-r--r--package/poke/0002-tentatively-change-cppflags-to-omit-I-prefix-on-cros.patch67
-rw-r--r--package/poke/0003-configure.ac-HELP2MAN-replace-by-true-when-cross-com.patch34
-rw-r--r--package/poke/Config.in28
-rw-r--r--package/poke/poke.hash4
-rw-r--r--package/poke/poke.mk56
-rw-r--r--package/policycoreutils/0001-Add-DESTDIR-to-all-paths-that-use-an-absolute-path.patch11
-rw-r--r--package/policycoreutils/0002-Add-PREFIX-to-host-paths.patch36
-rw-r--r--package/policycoreutils/policycoreutils.hash2
-rw-r--r--package/policycoreutils/policycoreutils.mk6
-rw-r--r--package/poppler/poppler.mk2
-rw-r--r--package/popt/popt.mk2
-rw-r--r--package/postgis/0005-configure.ac-fix-cross-compilation-with-protobuf-c.patch42
-rw-r--r--package/postgis/Config.in8
-rw-r--r--package/postgis/postgis.mk10
-rw-r--r--package/postgresql/Config.in3
-rw-r--r--package/postgresql/postgresql.hash4
-rw-r--r--package/postgresql/postgresql.mk2
-rw-r--r--package/pppd/Config.in2
-rw-r--r--package/proftpd/Config.in1
-rw-r--r--package/prosody/prosody.hash8
-rw-r--r--package/prosody/prosody.mk2
-rw-r--r--package/protobuf/protobuf.hash2
-rw-r--r--package/protobuf/protobuf.mk2
-rw-r--r--package/protozero/0001-CMakeLists.txt-respect-BUILD_TESTING.patch47
-rw-r--r--package/protozero/protozero.mk4
-rw-r--r--package/proxychains-ng/proxychains-ng.mk1
-rw-r--r--package/pugixml/pugixml.mk2
-rw-r--r--package/pulseaudio/pulseaudio.mk2
-rw-r--r--package/putty/0001-unix-uxutils.h-fix-build-on-uclibc.patch41
-rw-r--r--package/putty/putty.hash12
-rw-r--r--package/putty/putty.mk3
-rw-r--r--package/pwgen/pwgen.mk1
-rw-r--r--package/python-asgiref/python-asgiref.hash4
-rw-r--r--package/python-asgiref/python-asgiref.mk4
-rw-r--r--package/python-autobahn/python-autobahn.mk2
-rw-r--r--package/python-bleak/Config.in2
-rw-r--r--package/python-bleak/python-bleak.hash4
-rw-r--r--package/python-bleak/python-bleak.mk4
-rw-r--r--package/python-bluezero/Config.in17
-rw-r--r--package/python-botocore/Config.in1
-rw-r--r--package/python-cffi/python-cffi.mk1
-rw-r--r--package/python-colorzero/Config.in1
-rw-r--r--package/python-colorzero/python-colorzero.hash4
-rw-r--r--package/python-colorzero/python-colorzero.mk2
-rw-r--r--package/python-cryptography/python-cryptography.mk1
-rw-r--r--package/python-dataproperty/Config.in3
-rw-r--r--package/python-dataproperty/python-dataproperty.hash4
-rw-r--r--package/python-dataproperty/python-dataproperty.mk4
-rw-r--r--package/python-dbus-next/Config.in9
-rw-r--r--package/python-dbus-next/python-dbus-next.hash5
-rw-r--r--package/python-dbus-next/python-dbus-next.mk14
-rw-r--r--package/python-django/python-django.hash4
-rw-r--r--package/python-django/python-django.mk4
-rw-r--r--package/python-dnspython/python-dnspython.mk7
-rw-r--r--package/python-engineio/python-engineio.mk1
-rw-r--r--package/python-falcon/Config.in1
-rw-r--r--package/python-falcon/python-falcon.hash6
-rw-r--r--package/python-falcon/python-falcon.mk4
-rw-r--r--package/python-flup/Config.in2
-rw-r--r--package/python-gpiozero/Config.in2
-rw-r--r--package/python-gpiozero/python-gpiozero.hash4
-rw-r--r--package/python-gpiozero/python-gpiozero.mk2
-rw-r--r--package/python-iwlib/Config.in8
-rw-r--r--package/python-iwlib/python-iwlib.hash3
-rw-r--r--package/python-iwlib/python-iwlib.mk14
-rw-r--r--package/python-keyring/python-keyring.mk2
-rw-r--r--package/python-mbstrdecoder/Config.in1
-rw-r--r--package/python-mbstrdecoder/python-mbstrdecoder.hash4
-rw-r--r--package/python-mbstrdecoder/python-mbstrdecoder.mk4
-rw-r--r--package/python-pillow/python-pillow.hash7
-rw-r--r--package/python-pillow/python-pillow.mk27
-rw-r--r--package/python-pip/python-pip.mk1
-rw-r--r--package/python-protobuf/python-protobuf.hash2
-rw-r--r--package/python-pycparser/python-pycparser.mk1
-rw-r--r--package/python-pyjwt/python-pyjwt.hash4
-rw-r--r--package/python-pyjwt/python-pyjwt.mk4
-rw-r--r--package/python-pymupdf/Config.in21
-rw-r--r--package/python-pymupdf/python-pymupdf.hash3
-rw-r--r--package/python-pymupdf/python-pymupdf.mk26
-rw-r--r--package/python-pytest-asyncio/python-pytest-asyncio.hash4
-rw-r--r--package/python-pytest-asyncio/python-pytest-asyncio.mk4
-rw-r--r--package/python-pytest/python-pytest.hash4
-rw-r--r--package/python-pytest/python-pytest.mk4
-rw-r--r--package/python-pytrie/Config.in1
-rw-r--r--package/python-pytrie/python-pytrie.hash8
-rw-r--r--package/python-pytrie/python-pytrie.mk6
-rw-r--r--package/python-regex/python-regex.hash4
-rw-r--r--package/python-regex/python-regex.mk4
-rw-r--r--package/python-requests/python-requests.mk2
-rw-r--r--package/python-rpi-ws281x/python-rpi-ws281x.hash4
-rw-r--r--package/python-rpi-ws281x/python-rpi-ws281x.mk4
-rw-r--r--package/python-six/python-six.mk1
-rw-r--r--package/python-sortedcontainers/python-sortedcontainers.hash6
-rw-r--r--package/python-sortedcontainers/python-sortedcontainers.mk4
-rw-r--r--package/python-tqdm/python-tqdm.mk2
-rw-r--r--package/python-typepy/Config.in5
-rw-r--r--package/python-typepy/python-typepy.hash8
-rw-r--r--package/python-typepy/python-typepy.mk4
l---------package/python3-cffi/python3-cffi.hash1
-rw-r--r--package/python3-cffi/python3-cffi.mk29
l---------package/python3-cryptography/python3-cryptography.hash1
-rw-r--r--package/python3-cryptography/python3-cryptography.mk24
-rw-r--r--package/python3-decorator/python3-decorator.mk2
l---------package/python3-pip/python3-pip.hash1
-rw-r--r--package/python3-pip/python3-pip.mk19
l---------package/python3-pycparser/python3-pycparser.hash1
-rw-r--r--package/python3-pycparser/python3-pycparser.mk17
-rw-r--r--package/python3-regex/python3-regex.mk4
-rw-r--r--package/python3-requests/python3-requests.mk2
-rw-r--r--package/python3-setuptools/python3-setuptools.mk2
l---------package/python3-six/python3-six.hash1
-rw-r--r--package/python3-six/python3-six.mk17
-rw-r--r--package/python3/0034-Add-an-option-to-disable-the-berkeleydb-module.patch30
-rw-r--r--package/python3/Config.in6
-rw-r--r--package/python3/python3.hash6
-rw-r--r--package/python3/python3.mk8
-rw-r--r--package/qemu/0001-user-exec-fix-usage-of-mcontext-structure-on-ARM-uCl.patch2
-rw-r--r--package/qemu/0002-Fix-build-with-64-bits-time_t.patch4
-rw-r--r--package/qemu/0003-hw-usb-host-libusb.c-fix-build-with-kernel-5.0.patch43
-rw-r--r--package/qemu/0003-meson-add-tests-option.patch (renamed from package/qemu/0004-meson-add-tests-option.patch)54
-rw-r--r--package/qemu/qemu.hash2
-rw-r--r--package/qemu/qemu.mk2
-rw-r--r--package/qpdf/qpdf.mk1
-rw-r--r--package/qt5/qt5base/0006-Fix-build-with-GCC-11-include-limits.patch53
-rw-r--r--package/qt5/qt5base/qt5base.mk2
-rw-r--r--package/raspberrypi-usbboot/0001-Makefile-allow-passing-CFLAGS-LDFLAGS.patch18
-rw-r--r--package/raspberrypi-usbboot/0002-Makefile-add-DESTDIR-support.patch51
-rw-r--r--package/raspberrypi-usbboot/0003-main.c-rework-logic-to-find-def1-def2-and-def3-files.patch127
-rw-r--r--package/raspberrypi-usbboot/Config.in.host4
-rw-r--r--package/raspberrypi-usbboot/raspberrypi-usbboot.hash5
-rw-r--r--package/raspberrypi-usbboot/raspberrypi-usbboot.mk7
-rw-r--r--package/rcw-smarc-sal28/rcw-smarc-sal28.hash2
-rw-r--r--package/rcw-smarc-sal28/rcw-smarc-sal28.mk2
-rw-r--r--package/redis/redis.hash2
-rw-r--r--package/redis/redis.mk2
-rw-r--r--package/refpolicy/refpolicy.mk2
-rw-r--r--package/restorecond/restorecond.hash2
-rw-r--r--package/restorecond/restorecond.mk4
-rw-r--r--package/rhash/Config.in1
-rw-r--r--package/ripgrep/ripgrep.mk2
-rw-r--r--package/riscv64-elf-toolchain/riscv64-elf-toolchain.mk25
-rw-r--r--package/rng-tools/rng-tools.mk2
-rw-r--r--package/rocksdb/0001-build_tools-build_detect_platform-fix-C-tests.patch96
-rw-r--r--package/rocksdb/0002-POWER7-8-compatiblity-fix-CRC32-C-implementation.patch3787
-rw-r--r--package/rocksdb/Config.in10
-rw-r--r--package/rocksdb/rocksdb.hash4
-rw-r--r--package/rocksdb/rocksdb.mk2
-rw-r--r--package/rp-pppoe/rp-pppoe.mk2
-rw-r--r--package/rpcbind/0001-Remove-yellow-pages-support.patch22
-rw-r--r--package/rpcbind/rpcbind.hash2
-rw-r--r--package/rpcbind/rpcbind.mk2
-rw-r--r--package/rpi-bt-firmware/rpi-bt-firmware.hash2
-rw-r--r--package/rpi-bt-firmware/rpi-bt-firmware.mk2
-rw-r--r--package/rpi-firmware/rpi-firmware.hash2
-rw-r--r--package/rpi-firmware/rpi-firmware.mk2
-rw-r--r--package/rpi-userland/rpi-userland.hash2
-rw-r--r--package/rpi-userland/rpi-userland.mk2
-rw-r--r--package/rpi-wifi-firmware/rpi-wifi-firmware.hash2
-rw-r--r--package/rpi-wifi-firmware/rpi-wifi-firmware.mk2
-rw-r--r--package/rsync/0001-rsync-ssl-Verify-the-hostname-in-the-certificate-when-using-openssl.patch29
-rw-r--r--package/rsync/rsync.mk3
-rw-r--r--package/rsyslog/rsyslog.mk9
-rw-r--r--package/rsyslog/rsyslog.service19
-rw-r--r--package/rt-tests/0002-Makefile-drop-explicit-undefine-PYLIB-for-compatibil.patch48
-rw-r--r--package/rt-tests/Config.in4
-rw-r--r--package/rtty/rtty.hash2
-rw-r--r--package/rtty/rtty.mk2
-rw-r--r--package/ruby/ruby.hash4
-rw-r--r--package/ruby/ruby.mk8
-rw-r--r--package/runc/runc.hash2
-rw-r--r--package/runc/runc.mk2
-rw-r--r--package/rust-bin/rust-bin.hash144
-rw-r--r--package/rust-bin/rust-bin.mk2
-rw-r--r--package/rust/rust.hash6
-rw-r--r--package/rust/rust.mk2
-rw-r--r--package/rustc/Config.in.host104
-rw-r--r--package/rustc/rustc.mk2
-rw-r--r--package/s6-dns/s6-dns.hash4
-rw-r--r--package/s6-dns/s6-dns.mk12
-rw-r--r--package/s6-linux-init/0001-configure-add-D_GNU_SOURCE.patch40
-rw-r--r--package/s6-linux-init/s6-linux-init.hash4
-rw-r--r--package/s6-linux-init/s6-linux-init.mk16
-rw-r--r--package/s6-linux-utils/s6-linux-utils.hash4
-rw-r--r--package/s6-linux-utils/s6-linux-utils.mk12
-rw-r--r--package/s6-networking/s6-networking.hash4
-rw-r--r--package/s6-networking/s6-networking.mk21
-rw-r--r--package/s6-portable-utils/s6-portable-utils.hash4
-rw-r--r--package/s6-portable-utils/s6-portable-utils.mk12
-rw-r--r--package/s6-rc/s6-rc.hash4
-rw-r--r--package/s6-rc/s6-rc.mk16
-rw-r--r--package/s6/s6.hash4
-rw-r--r--package/s6/s6.mk14
-rw-r--r--package/samba4/Config.in2
-rw-r--r--package/samba4/samba4.hash4
-rw-r--r--package/samba4/samba4.mk12
-rw-r--r--package/sane-backends/sane-backends.mk2
-rw-r--r--package/sconeserver/Config.in8
-rw-r--r--package/sconeserver/sconeserver.mk15
-rw-r--r--package/sdl_mixer/0003-configure.ac-fix-static-linking-with-tremor.patch24
-rw-r--r--package/sdl_mixer/sdl_mixer.mk1
-rw-r--r--package/seatd/0001-meson-Support-building-builtin-without-seatd.patch37
-rw-r--r--package/seatd/Config.in22
-rwxr-xr-xpackage/seatd/S70seatd46
-rw-r--r--package/seatd/seatd.hash5
-rw-r--r--package/seatd/seatd.mk52
-rw-r--r--package/selinux-python/selinux-python.hash2
-rw-r--r--package/selinux-python/selinux-python.mk4
-rw-r--r--package/semodule-utils/semodule-utils.hash2
-rw-r--r--package/semodule-utils/semodule-utils.mk4
-rw-r--r--package/setools/0001-Do-not-export-use-setools.InfoFlowAnalysis-and-setoo.patch (renamed from package/setools/0002-Do-not-export-use-setools.InfoFlowAnalysis-and-setoo.patch)19
-rw-r--r--package/setools/0001-remove-werror-flag-from-setup.patch31
-rw-r--r--package/setools/setools.hash2
-rw-r--r--package/setools/setools.mk2
-rw-r--r--package/shellinabox/shellinabox.mk1
-rw-r--r--package/skalibs/skalibs.hash4
-rw-r--r--package/skalibs/skalibs.mk4
-rw-r--r--package/snmppp/Config.in1
-rw-r--r--package/snort3/Config.in42
-rw-r--r--package/snort3/snort3.hash6
-rw-r--r--package/snort3/snort3.mk57
-rw-r--r--package/sofia-sip/sofia-sip.mk4
-rw-r--r--package/softether/Config.in3
-rw-r--r--package/solarus/solarus.hash2
-rw-r--r--package/solarus/solarus.mk2
-rw-r--r--package/sox/0004-configure.ac-fix-static-linking-with-magic.patch18
-rw-r--r--package/sox/sox.mk4
-rw-r--r--package/spdlog/spdlog.hash2
-rw-r--r--package/spdlog/spdlog.mk2
-rw-r--r--package/sqlite/Config.in2
-rw-r--r--package/sqlite/sqlite.hash2
-rw-r--r--package/sqlite/sqlite.mk4
-rw-r--r--package/squid/squid.hash8
-rw-r--r--package/squid/squid.mk2
-rw-r--r--package/strace/Config.in6
-rw-r--r--package/supervisor/supervisor.mk1
-rw-r--r--package/synergy/synergy.mk1
-rw-r--r--package/sysklogd/sysklogd.hash5
-rw-r--r--package/sysklogd/sysklogd.mk2
-rw-r--r--package/sysrepo/sysrepo.mk9
-rw-r--r--package/sysstat/sysstat.mk1
-rw-r--r--package/systemd/Config.in2
-rw-r--r--package/sysvinit/sysvinit.mk1
-rw-r--r--package/taglib/taglib.mk1
-rw-r--r--package/tar/tar.mk2
-rw-r--r--package/tclap/tclap.mk1
-rw-r--r--package/terminology/terminology.hash4
-rw-r--r--package/terminology/terminology.mk3
-rw-r--r--package/thermald/thermald.mk1
-rw-r--r--package/timescaledb/timescaledb.hash2
-rw-r--r--package/timescaledb/timescaledb.mk2
-rw-r--r--package/tini/tini.mk1
-rw-r--r--package/tinyproxy/tinyproxy.hash3
-rw-r--r--package/tinyproxy/tinyproxy.mk6
-rw-r--r--package/tinyxml2/tinyxml2.mk1
-rw-r--r--package/tio/Config.in7
-rw-r--r--package/tor/0002-Fix-compilation-on-systems-with.patch47
-rw-r--r--package/tor/tor.hash2
-rw-r--r--package/tor/tor.mk2
-rw-r--r--package/tpm-tools/Config.in1
-rw-r--r--package/tpm2-tss/tpm2-tss.mk2
-rw-r--r--package/transmission/Config.in1
-rw-r--r--package/uboot-tools/0002-tools-only-in-no-dot-config-targets.patch6
-rw-r--r--package/uboot-tools/0003-drop-autoconf.h-from-tools.patch36
-rw-r--r--package/uboot-tools/0004-tools-env-fw_env.h-remove-env.h.patch52
-rw-r--r--package/uboot-tools/uboot-tools.hash2
-rw-r--r--package/uboot-tools/uboot-tools.mk6
-rw-r--r--package/uclibc/0001-powerpc-fix-PIE-PIC-builds-with-newer-gcc-binutils-w.patch91
-rw-r--r--package/uclibc/Config.in3
-rw-r--r--package/uclibc/uclibc.mk2
-rw-r--r--package/udisks/0001-fix-build-with-newer-glibc-versions.patch29
-rw-r--r--package/udisks/0002-Fix-systemd-service-file.patch33
-rw-r--r--package/udisks/0003-Fix-compilation-issue-with-missing-sys-sysmacros.h-i.patch81
-rw-r--r--package/udisks/Config.in32
-rw-r--r--package/udisks/udisks.hash4
-rw-r--r--package/udisks/udisks.mk32
-rw-r--r--package/uftrace/0001-cmds-records-replace-ADDR_NO_RANDOMIZE-by-its-value.patch33
-rw-r--r--package/uftrace/0002-arch-arm-mcount-support.c-define-EF_ARM_VFP_FLOAT-wh.patch31
-rw-r--r--package/uftrace/Config.in28
-rw-r--r--package/uftrace/uftrace.hash3
-rw-r--r--package/uftrace/uftrace.mk60
-rw-r--r--package/uhd/Config.in4
-rw-r--r--package/unscd/Config.in2
-rw-r--r--package/upmpdcli/upmpdcli.hash4
-rw-r--r--package/upmpdcli/upmpdcli.mk2
-rw-r--r--package/usb_modeswitch/usb_modeswitch.hash8
-rw-r--r--package/usb_modeswitch/usb_modeswitch.mk2
-rw-r--r--package/usbguard/Config.in22
-rw-r--r--package/usbguard/S20usbguard37
-rw-r--r--package/usbguard/usbguard.hash3
-rw-r--r--package/usbguard/usbguard.mk50
-rw-r--r--package/vlc/0002-automake-add-subdir-objects-option.patch (renamed from package/vlc/0003-automake-add-subdir-objects-option.patch)0
-rw-r--r--package/vlc/0002-lua-Define-LUA_COMPAT_APIINTCASTS-for-Lua-5.3.0-comp.patch41
-rw-r--r--package/vlc/0003-build-use-pkg-config-to-get-tremor-libs.patch (renamed from package/vlc/0004-build-use-pkg-config-to-get-tremor-libs.patch)0
-rw-r--r--package/vlc/0004-Fix-build-error-using-uClibc-by-adding-sys-types.h.patch (renamed from package/vlc/0005-Fix-build-error-using-uClibc-by-adding-sys-types.h.patch)0
-rw-r--r--package/vlc/0005-Don-t-assume-strerror_l-is-available.patch (renamed from package/vlc/0006-Don-t-assume-strerror_l-is-available.patch)0
-rw-r--r--package/vlc/0006-posix-remove-ancient-run-time-fallback-to-real-time-.patch (renamed from package/vlc/0007-posix-remove-ancient-run-time-fallback-to-real-time-.patch)0
-rw-r--r--package/vlc/0007-Add-support-for-freerdp2.patch (renamed from package/vlc/0008-Add-support-for-freerdp2.patch)0
-rw-r--r--package/vlc/0008-configure.ac-also-use-AC_PATH_PROG-to-check-for-wayl.patch (renamed from package/vlc/0009-configure.ac-also-use-AC_PATH_PROG-to-check-for-wayl.patch)0
-rw-r--r--package/vlc/0009-modules-video_filter-opencv_example.cpp-fix-build-wi.patch (renamed from package/vlc/0010-modules-video_filter-opencv_example.cpp-fix-build-wi.patch)0
-rw-r--r--package/vlc/0010-modules-access-live555.cpp-fix-build-with-live555-20.patch36
-rw-r--r--package/vlc/Config.in2
-rw-r--r--package/vlc/vlc.hash8
-rw-r--r--package/vlc/vlc.mk2
-rw-r--r--package/vtun/Config.in1
-rw-r--r--package/wampcc/wampcc.mk2
-rw-r--r--package/wayland/0001-build-add-option-to-disable-tests.patch74
-rw-r--r--package/wayland/0002-meson-do-not-check-for-c.patch29
-rw-r--r--package/wayland/0002-meson-only-require-cpp-for-tests.patch59
-rw-r--r--package/wayland/wayland.hash8
-rw-r--r--package/wayland/wayland.mk2
-rw-r--r--package/waylandpp/Config.in6
-rw-r--r--package/webkitgtk/0001-Support-building-against-uClibc.patch82
-rw-r--r--package/webkitgtk/Config.in15
-rw-r--r--package/webkitgtk/webkitgtk.hash8
-rw-r--r--package/webkitgtk/webkitgtk.mk3
-rw-r--r--package/weston/0003-pipewire-add-support-for-0.3-API.patch391
-rw-r--r--package/weston/0004-pipewire-fix-null-deref-in-0-3-API.patch28
-rw-r--r--package/weston/Config.in25
-rw-r--r--package/weston/weston.mk32
-rw-r--r--package/wget/Config.in2
-rw-r--r--package/wireshark/wireshark.hash6
-rw-r--r--package/wireshark/wireshark.mk2
-rw-r--r--package/wlroots/Config.in3
-rw-r--r--package/wlroots/wlroots.hash4
-rw-r--r--package/wlroots/wlroots.mk25
-rw-r--r--package/wpa_supplicant/0002-ASN.1-Validate-DigestAlgorithmIdentifier-parameters.patch116
-rw-r--r--package/wpa_supplicant/0003-Include-stdbool.h-to-allow-C99-bool-to-be-used.patch32
-rw-r--r--package/wpa_supplicant/0004-ASN.1-Add-helper-functions-for-recognizing-tag-value.patch37
-rw-r--r--package/wpa_supplicant/Config.in2
-rw-r--r--package/wpa_supplicant/wpa_supplicant.mk3
-rw-r--r--package/wpebackend-fdo/wpebackend-fdo.hash8
-rw-r--r--package/wpebackend-fdo/wpebackend-fdo.mk2
-rw-r--r--package/wpewebkit/0001-Fix-build-with-musl.patch79
-rw-r--r--package/wpewebkit/0001-Support-building-against-uClibc.patch82
-rw-r--r--package/wpewebkit/Config.in3
-rw-r--r--package/wpewebkit/wpewebkit.hash8
-rw-r--r--package/wpewebkit/wpewebkit.mk2
-rw-r--r--package/x11r7/libxcb/libxcb.mk1
-rw-r--r--package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.hash6
-rw-r--r--package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.mk2
-rw-r--r--package/x11r7/xdriver_xf86-video-fbturbo/0002-Use-own-thunk-functions-instead-of-fbdevHW-Weak.patch160
-rw-r--r--package/x11r7/xdriver_xf86-video-fbturbo/0003-Update-for-1.20-ABI.patch30
-rw-r--r--package/x11r7/xdriver_xf86-video-fbturbo/0004-xorg.conf-add-mandatory-modules-fb-shadow-fbdevhw.patch53
-rw-r--r--package/x11r7/xlib_libFS/xlib_libFS.mk2
-rw-r--r--package/x11r7/xlib_libICE/xlib_libICE.mk2
-rw-r--r--package/x11r7/xlib_libX11/xlib_libX11.hash6
-rw-r--r--package/x11r7/xlib_libX11/xlib_libX11.mk2
-rw-r--r--package/x11r7/xlib_libXcursor/xlib_libXcursor.mk2
-rw-r--r--package/x11r7/xlib_libXdmcp/xlib_libXdmcp.mk2
-rw-r--r--package/x11r7/xlib_libXext/xlib_libXext.mk2
-rw-r--r--package/x11r7/xlib_libXfixes/xlib_libXfixes.hash5
-rw-r--r--package/x11r7/xlib_libXfixes/xlib_libXfixes.mk4
-rw-r--r--package/x11r7/xlib_libXfont2/xlib_libXfont2.mk2
-rw-r--r--package/x11r7/xlib_libXinerama/xlib_libXinerama.mk2
-rw-r--r--package/x11r7/xlib_libXpm/xlib_libXpm.mk2
-rw-r--r--package/x11r7/xlib_libXres/xlib_libXres.mk2
-rw-r--r--package/x11r7/xlib_libXt/xlib_libXt.mk2
-rw-r--r--package/x11r7/xlib_libXtst/xlib_libXtst.mk2
-rw-r--r--package/x11r7/xlib_libXxf86dga/xlib_libXxf86dga.mk2
-rw-r--r--package/x11r7/xlib_libXxf86vm/xlib_libXxf86vm.mk2
-rw-r--r--package/x11r7/xlib_libdmx/xlib_libdmx.mk2
-rw-r--r--package/x11r7/xorgproto/xorgproto.hash6
-rw-r--r--package/x11r7/xorgproto/xorgproto.mk2
-rw-r--r--package/x11r7/xserver_xorg-server/xserver_xorg-server.mk3
-rw-r--r--package/xen/xen.hash8
-rw-r--r--package/xen/xen.mk15
-rw-r--r--package/xmrig/Config.in22
-rw-r--r--package/xmrig/xmrig.hash3
-rw-r--r--package/xmrig/xmrig.mk43
-rw-r--r--package/xterm/xterm.hash2
-rw-r--r--package/xterm/xterm.mk2
-rw-r--r--package/yavta/yavta.mk1
-rw-r--r--package/zmqpp/zmqpp.mk2
-rw-r--r--package/znc/Config.in1
-rw-r--r--package/zstd/zstd.hash4
-rw-r--r--package/zstd/zstd.mk13
-rw-r--r--support/dependencies/check-host-cmake.mk4
-rwxr-xr-xsupport/dependencies/dependencies.sh16
-rwxr-xr-xsupport/download/hg2
-rw-r--r--support/misc/Vagrantfile2
-rwxr-xr-xsupport/scripts/apply-patches.sh5
-rwxr-xr-xsupport/scripts/cve.py11
-rwxr-xr-xsupport/scripts/gen-missing-cpe65
-rwxr-xr-xsupport/scripts/pkg-stats64
-rw-r--r--support/testing/conf/docker-compose.yml5
-rw-r--r--support/testing/tests/boot/test_edk2.py45
-rw-r--r--support/testing/tests/core/test_hardening.py1
-rw-r--r--support/testing/tests/package/sample_python_dbus_next.py44
-rw-r--r--support/testing/tests/package/test_docker_compose.py9
-rw-r--r--support/testing/tests/package/test_execline.py23
-rw-r--r--support/testing/tests/package/test_glxinfo.py6
-rw-r--r--support/testing/tests/package/test_glxinfo/rootfs-overlay/etc/X11/xorg.conf.d/01-modules.conf11
-rw-r--r--support/testing/tests/package/test_lua_zlib.py25
-rw-r--r--support/testing/tests/package/test_openjdk.py2
-rw-r--r--support/testing/tests/package/test_perl_io_socket_ssl.py1
-rw-r--r--support/testing/tests/package/test_perl_libwww_perl.py2
-rw-r--r--support/testing/tests/package/test_python_colorzero.py11
-rw-r--r--support/testing/tests/package/test_python_dbus_next.py40
-rw-r--r--support/testing/tests/package/test_python_gpiozero.py9
-rw-r--r--support/testing/tests/package/test_s6.py58
-rw-r--r--support/testing/tests/package/test_s6_networking.py36
-rw-r--r--support/testing/tests/package/test_s6_portable_utils.py32
-rw-r--r--support/testing/tests/package/test_s6_rc.py47
-rw-r--r--support/testing/tests/package/test_sudo.py36
-rw-r--r--toolchain/Config.in16
-rw-r--r--toolchain/toolchain-external/toolchain-external-custom/Config.in.options10
-rwxr-xr-xutils/genrandconfig16
1258 files changed, 17294 insertions, 12853 deletions
diff --git a/CHANGES b/CHANGES
index c74ad45f48..91487cc058 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,245 @@
+2021.05, released June 6th, 2021
+
+ Various fixes.
+
+ Disable PIC/PIE support for Nios2 because of glibc issues
+
+ Defconfigs: Minnowboard max: Fix X11 and mesa3d configuration
+
+ Updated/fixed packages: apache, beaglev-ddrinit,
+ beaglev-secondboot, capnproto, dc3dd, directfb, efibootmgr,
+ ffmpeg, gptfdisk, go, gupnp, hostapd, iftop,
+ intel-mediadriver, libcamera, libcutl, libesmtp, libkcapi,
+ libraw, lttng-tools, lvm2, mimic, mono-gtksharp3, mpv,
+ netperf, odb, qt5base, uclibc, uftrace, unscd, vlc,
+ xdriver_xf86-video-fbturbo
+
+ New packages: python3-cffi, python3-cryptography, python3-pip,
+ python3-pycparser, python3-six
+
+2021.05-rc3, released May 31th, 2021
+
+ Fixes all over the tree.
+
+ meson: Explicitly disable PIE support (b_pie) as it is handled
+ by the toolchain wrapper.
+
+ Updated/fixed packages: boost, dhcp, expat, gdb, hwloc, imagemagick,
+ libcurl, libopenh264, llvm, lz4, mpv, nginx, paho-mqtt-c, pifmrds,
+ pipewire, python-bluezero, python-pillow, qemu, strace, uhd, vlc,
+ webkitgtk
+
+ Issues resolved (http://bugs.uclibc.org):
+
+ #13821: Wrong url for libnfsidmap package
+
+2021.05-rc2, released May 22th, 2021
+
+ Fixes all over the tree.
+
+ support/scripts/gen-missing-cpe: A script to query the list of
+ CPE IDs for the packages enabled in the current configuration and:
+
+ - for CPE IDs that do not have any matching entry in the CPE
+ database, it emits a warning
+
+ - for CPE IDs that do have a matching entry, but not with the same
+ version, it generates a snippet of XML that can be used to propose
+ an updated version to NIST.
+
+ CPE meta data has been added for a large number of packages
+
+ Updated/fixed packages: assimp, binutils, bitcoin, bullet,
+ cutelyst, dhcp, dmalloc, docker-engine, ebtables,
+ environment-setup, flatcc, gcc, gd, gerbera, hostapd,
+ imx-gpu-viv, intel-microcode, jquery-validation, libdrm,
+ libgeos, libraw, libtirpc, libxml2, libxslt, live555, lmbench,
+ localedef, lvm2, mender, mender-grubenv, modem-manager, mutt,
+ opensbi, openssh, opentyrian, pipewire, postgis, postgresql,
+ prosody, python-bluezero, python-falcon, redis, rocksdb,
+ rt-tests, runc, vlc, waylandpp, webkitgtk, wireshark,
+ wpa_supplicant, wpewebkit, xlib_libX11, xterm
+
+ New packages: jh71xx-tools
+
+ Issues resolved (http://bugs.uclibc.org):
+
+ #13781: isc dhcp-server package don't create file /usr/bin/dhcpd
+ #13801: toolchainfile.cmake CMAKE_BUILD_TYPE
+ #13806: Building host-localedef fails on fedora 34/gcc 11
+
+2021.05-rc1, released May 12th, 2021
+
+ Fixes all over the tree and new features.
+
+ FORTIFY_SOURCE, PIC/PIE, RELRO and SSP security hardening
+ options are now enabled by default.
+
+ Dependencies: Explicitly detect and bail out if PATH contains
+ spaces or tabs. A number of packages fail to build in such
+ setups, so explicitly inform about this.
+
+ Infrastructure: Expose CONFIG_DIR to post-build/post-image
+ scripts, so they can call the Buildroot Makefile in the
+ correct directory for both in-tree / out-of-tree builds.
+
+ CMake infrastructure: Use CMAKE_EXE_LINKER_FLAGS rather than
+ CMAKE_CXX_FLAGS to link with libatomic to fix an compatibility
+ issue with poppler. Bump minimal host cmake version to 3.16
+ (from 3.15) to fix a compatibility issue with domoticz.
+
+ Meson: Use correct C++ host compiler (rather than C compiler)
+
+ utils/scanpypi: Explicitly use python3 for compatibility with
+ packages using python3 syntax in setup.py
+
+ support/download: Fix tarball generation (from git/svn repos)
+ including symlinks pointing to ./<something>. Fix svn download
+ for <1.9 clients or repos using CVS-style keywords.
+
+ support/scripts/cve.py: Use the (significantly) faster yajl2
+ ijson backend for older (< 2.5) ijson versions rather than the
+ slow python default, speeding up pkg-stats by ~2x.
+
+ Toolchain: Add logic to work around binutils bug 21464
+ (affecting OpenRISC), bug 27597 (affecting Nios II) and drop
+ the now longer applicable bug 19615 / 20006 handling.
+
+ Python{,3}: Fix byte compiling python files with short (single
+ character before .py) file names.
+
+ CPE meta data has been added for a large number of packages
+
+ New defconfigs: Acme Systems Acqua A5 (256/512MB), Beagleboard
+ BeagleV, Boundary devices Nitrogen8M Plus SOM, NXP i.MX 8M
+ Plus EVK, QEMU PPC e500mc
+
+ New packages: beaglev-ddrinit, beaglev-secondboot, janet,
+ kodi-inputstream-ffmpegdirect, kodi-vfs-libarchive,
+ kodi-visualisation-matrix, libxcrypt, libqrtr-glib, log4qt,
+ mawk, perl-parse-yapp, postgis, protozero, python-flask-wtf,
+ python-iwlib, python-semantic-version, python-setuptools-rust,
+ python-toml, riscv64-elf-toolchain, siproxyd, uftrace, zfs
+
+ Removed packages: iostat, kodi-platform,
+ kodi-screensaver-crystalmorph, monkey
+
+ Issues resolved (http://bugs.uclibc.org):
+
+ #13271: systemd-resolved: /etc/resolv.conf link broken on per-pa..
+ #13516: utils/scanpypi: Failure when parsing diffoscope
+ #13551: 2021.02.rc2: Unicode not work on qt 5.15.2
+ #13576: Issues compiling buildroot for 5x86
+ #13601: Gen image :Iappropriate ioctl error
+ #13616: tar file from git repository generation issue
+ #13631: Commit 54d3d94b6e breaks packages with git download method
+ #13641: glibc on raspberrypi
+ #13646: Gen image version 14 error : no sub -section title/..
+ #13651: pkg-golang cannot build when main.go is in the root
+ #13661: host-python2 build fails on aarch64
+ #13671: openSSH server closes connection before authentication..
+ #13721: c-stack.c:55:26: error: missing binary operator before ..
+ #13731: Readline Patch is missing Author Information
+ #13741: genext2fs does not allow to set perms of root node
+ #13751: libopenssl (static): huge drop in performance in newer ..
+ #13771: package htop has undeclared dependency on host python
+
+2021.02.3, released June 12th, 2021
+
+ Important / security related fixes.
+
+ CPE meta data has been added for a large number of packages
+
+ Updated/fixed packages: acpid, apache, apcupsd, assimp, bird,
+ bitcoin, blktrace, boost, capnproto, chrony, dc3dd, dhcp,
+ directfb, dmalloc, docker-engine, ebtables, efibootmgr,
+ enlightenment, enscript, environment-setup, exempi, expat,
+ findutils, flatcc, fluidsynth, frr, gdb, go, gptfdisk, grpc,
+ gst1-plugins-bad, gst1-rtsp-server, gstreamer1, gupnp,
+ hostapd, hwloc, i2c-tools, iftop, imagemagick, imx-gpu-viv,
+ intel-mediadriver, intel-microcode, jquery-validation,
+ keepalived, kodi, less, libcamera, libcurl, libcutl, libesmtp,
+ libeXosip2, libffi, libfuse, libfuse3, libgeos, libgtk2,
+ libgtk3, libical, libidn, libidn2, libkcapi, libldns, libmms,
+ libmodbus, libmspack, libnids, libopenh264, liboping, libraw,
+ librelp, libsamplerate, libtirpc, libusb, libuv, libxcb,
+ libxml2, libxslt, live555, llvm, lmbench, localedef,
+ lttng-tools, lvm2, lz4, mesa3d, mimic, mini-snmpd, minidlna,
+ minissdpd, minizip, mono-gtksharp3, mpg123, mpv, msmtp, musl,
+ mutt, nasm, nbd, netperf, netsurf, nginx, odb, opencv3,
+ openssh, opentyrian, oprofile, p7zip, paho-mqtt-c, perl,
+ php-imagick, pifmrds, picocom, pigz, pngquant, poco,
+ postgresql, prosody, proxychains-ng, pulseaudio, putty, pwgen,
+ python-autobahn, python-bluezero, python-engineio,
+ python-keyring, python-pillow, python-requests, python-tqdm,
+ qemu, qpdf, qt5base, redis, refpolicy, rt-tests, runc,
+ shellinabox, squid, strace, supervisor, synergy, taglib,
+ tclap, terminology, thermald, tini, tinyproxy, tinyxml2,
+ tpm2-tss, uclibc, udisks, uhd, unscd, vlc, waylandpp,
+ webkitgtk, weston, wireshark, wpa_supplicant, wpewebkit,
+ xlib_libdmx, xlib_libFS, xlib_libICE, xlib_libX11,
+ xlib_libXcursor, xlib_libXdmcp, xlib_libXext, xlib_libXfixes,
+ xlib_libXfont2, xlib_libXinerama, xlib_libXpm, xlib_libXres,
+ xlib_libXt, xlib_libXtst, xlib_libXxf86dga, xlib_libXxf86vm,
+ xterm
+
+ Issues resolved (http://bugs.uclibc.org):
+
+ #13781: isc dhcp-server package don't create file /usr/bin/dhcpd
+ #13801: toolchainfile.cmake CMAKE_BUILD_TYPE
+ #13806: Building host-localedef fails on fedora 34/gcc 11
+
+2021.02.2, released May 12th, 2021
+
+ Important / security related fixes.
+
+ Toolchain: Add logic to mark toolchains affected by binutils
+ bug 27597 (Nios II).
+
+ support/scripts/cve.py: Use the (significantly) faster yajl2
+ ijson backend for older (< 2.5) ijson versions rather than the
+ slow python default, speeding up pkg-stats by ~2x.
+
+ CMake infrastructure: Use CMAKE_EXE_LINKER_FLAGS rather than
+ CMAKE_CXX_FLAGS to link with libatomic to fix an compatibility
+ issue with poppler.
+
+ Infrastructure: Expose CONFIG_DIR to post-build/post-image
+ scripts, so they can call the Buildroot Makefile in the
+ correct directory for both in-tree / out-of-tree builds.
+
+ Updated/fixed packages: at91bootstrap, avahi, bash, bind,
+ bridge-utils, boost, cegui, cifs-utils, clamav, cmake,
+ coremark-pro, coreutils, cryptsetup, dmalloc, dnsmasq,
+ docker-cli, docker-engine, domoticz, efl, exim, ffmpeg, flex,
+ gcc, genext2fs, go, gst1-interpipe, haproxy, hostapd,
+ i2c-tools, imx-vpu, kexec, kf5-kcoreaddons, kismet, libcamera,
+ libcurl, libdrm, libfreefare, libfuse3, libgeos, libgpiod,
+ libnpupnp, libopenssl, libp11, librsync, libtomcrypt, libupnp,
+ localedef, lvm2, lxc, m4, makedevs, mender, mesa3d,
+ mesa3d-headers, mkpasswd, mkpimage, modem-manager, monkey,
+ mpd, ncurses, nettle, network-manager, nginx, numactl,
+ openjdk, openjdk-bin, openldap, openvpn, php, pipewire,
+ python-aioconsole, python-asgiref, python-botocore,
+ python-django, python-dnspython, python-flup, python-httplib2,
+ python-markdown2, python-mbrstrdecoder, python3, quickjs,
+ readline, rsyslog, ruby, rust, samba4, sconeserver, snort,
+ sox, systemd, tar, timescaledb, tio, tor, usb_modeswitch,
+ wpa_supplicant, xdriver_xf86-video-ati, xen, xlib_libXaw,
+ xserver_xorg-server
+
+ Issues resolved (http://bugs.uclibc.org):
+
+ #13271: systemd-resolved: /etc/resolv.conf link broken on per-pa..
+ #13551: 2021.02.rc2: Unicode not work on qt 5.15.2
+ #13651: pkg-golang cannot build when main.go is in the root
+ #13661: host-python2 build fails on aarch64
+ #13721: c-stack.c:55:26: error: missing binary operator before ..
+ #13731: Readline Patch is missing Author Information
+ #13741: genext2fs does not allow to set perms of root node
+ #13751: libopenssl (static): huge drop in performance in newer ..
+ #13771: package htop has undeclared dependency on host python
+
2021.02.1, released April 7, 2021
Important / security related fixes.
diff --git a/Config.in b/Config.in
index e35a78fb71..c05485173b 100644
--- a/Config.in
+++ b/Config.in
@@ -412,6 +412,19 @@ config BR2_DEBUG_3
endchoice
endif
+config BR2_ENABLE_RUNTIME_DEBUG
+ bool "build packages with runtime debugging info"
+ help
+ Some packages may have runtime assertions, extra traces, and
+ similar runtime elements that can help debugging. However,
+ these elements may negatively influence performance so should
+ normally not be enabled on production systems.
+
+ Enable this option to enable such runtime debugging.
+
+ Note: disabling this option is not a guarantee that all
+ packages effectively removed these runtime debugging elements.
+
config BR2_STRIP_strip
bool "strip target binaries"
default y
@@ -715,6 +728,9 @@ comment "Security Hardening Options"
config BR2_PIC_PIE
bool "Build code with PIC/PIE"
+ default y
+ # Nios2 toolchains produce non working binaries with -fPIC
+ depends on !BR2_nios2
depends on BR2_SHARED_LIBS
depends on BR2_TOOLCHAIN_SUPPORTS_PIE
help
@@ -722,12 +738,15 @@ config BR2_PIC_PIE
Position-Independent Executables (PIE).
comment "PIC/PIE needs a toolchain w/ PIE"
+ depends on !BR2_nios2
depends on BR2_SHARED_LIBS
depends on !BR2_TOOLCHAIN_SUPPORTS_PIE
choice
bool "Stack Smashing Protection"
default BR2_SSP_ALL if BR2_ENABLE_SSP # legacy
+ default BR2_SSP_STRONG if BR2_TOOLCHAIN_HAS_SSP_STRONG
+ default BR2_SSP_REGULAR
depends on BR2_TOOLCHAIN_HAS_SSP
help
Enable stack smashing protection support using GCC's
@@ -789,6 +808,8 @@ comment "Stack Smashing Protection needs a toolchain w/ SSP"
choice
bool "RELRO Protection"
+ default BR2_RELRO_FULL if BR2_TOOLCHAIN_SUPPORTS_PIE
+ default BR2_RELRO_PARTIAL
depends on BR2_SHARED_LIBS
help
Enable a link-time protection know as RELRO (RELocation Read
@@ -808,6 +829,7 @@ config BR2_RELRO_PARTIAL
config BR2_RELRO_FULL
bool "Full"
+ depends on !BR2_nios2 # BR2_PIC_PIE
depends on BR2_TOOLCHAIN_SUPPORTS_PIE
select BR2_PIC_PIE
help
@@ -816,6 +838,7 @@ config BR2_RELRO_FULL
program loading, i.e every time an executable is started.
comment "RELRO Full needs a toolchain w/ PIE"
+ depends on !BR2_nios2
depends on !BR2_TOOLCHAIN_SUPPORTS_PIE
endchoice
@@ -825,6 +848,7 @@ comment "RELocation Read Only (RELRO) needs shared libraries"
choice
bool "Buffer-overflow Detection (FORTIFY_SOURCE)"
+ default BR2_FORTIFY_SOURCE_1
depends on BR2_TOOLCHAIN_USES_GLIBC
depends on !BR2_OPTIMIZE_0
help
diff --git a/Config.in.legacy b/Config.in.legacy
index c2b0645eaf..a0c1a6898f 100644
--- a/Config.in.legacy
+++ b/Config.in.legacy
@@ -146,6 +146,54 @@ endif
comment "Legacy options removed in 2021.05"
+config BR2_PACKAGE_UDISKS_LVM2
+ bool "udisks lvm2 support removed"
+ select BR2_LEGACY
+ help
+ The lvm2 support was removed because udisks < 2.7.0 still
+ depends on lvm2 application library, which was removed
+ in lvm2.
+
+config BR2_PACKAGE_LVM2_APP_LIBRARY
+ bool "lvm2 application library removed"
+ select BR2_LEGACY
+ help
+ The lvm2 application library was removed upstream.
+
+config BR2_PACKAGE_LVM2_LVMETAD
+ bool "lvm2 lvmetad removed"
+ select BR2_LEGACY
+ help
+ The lvm2 lvmetad was removed upstream.
+
+config BR2_PACKAGE_MONKEY
+ bool "monkey package removed"
+ select BR2_LEGACY
+ help
+ This package has been removed as it has not seen any release
+ since 2016 and because TLS is broken on master.
+
+config BR2_PACKAGE_DOCKER_CONTAINERD
+ bool "docker-containerd package was renamed to containerd"
+ select BR2_LEGACY
+ select BR2_PACKAGE_CONTAINERD
+ help
+ The containerd project is now independent from Docker.
+ The package was renamed to containerd accordingly.
+
+config BR2_PACKAGE_IOSTAT
+ bool "iostat package removed"
+ select BR2_LEGACY
+ help
+ This package has been removed, use sysstat instead.
+
+config BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE_IMAGE
+ bool "sconeserver http::sconesite::image removed"
+ select BR2_LEGACY
+ help
+ Sconeserver cannot be built with ImageMagick - it uses the
+ "transofrm" function which is removed from public API.
+
config BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE_EVDEV
bool "KDrive/TinyX evdev input driver removed"
select BR2_LEGACY
diff --git a/DEVELOPERS b/DEVELOPERS
index 9390daa2fa..f6621e9670 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -35,6 +35,7 @@ F: package/bubblewrap/
F: package/cage/
F: package/cog/
F: package/libepoxy/
+F: package/libpsl/
F: package/libwpe/
F: package/webkitgtk/
F: package/wlroots/
@@ -181,6 +182,9 @@ F: package/sshguard/
F: package/sunwait/
F: package/sysdig/
+N: Andy Shevchenko <andy.shevchenko@gmail.com>
+F: package/fb-test-app/
+
N: Anisse Astier <anisse@astier.eu>
F: package/go/
F: package/nghttp2/
@@ -240,6 +244,7 @@ F: package/python*
F: package/snmpclitools/
F: package/spdlog/
F: package/uftp/
+F: package/uftrace/
F: package/uvw/
F: package/zeromq/
@@ -262,6 +267,7 @@ F: package/python-canopen/
N: Bartosz Bilas <b.bilas@grinn-global.com>
F: board/stmicroelectronics/stm32mp157a-dk1/
F: configs/stm32mp157a_dk1_defconfig
+F: package/cegui/
F: package/log4qt/
F: package/python-esptool/
F: package/python-pyaes/
@@ -311,6 +317,7 @@ F: package/apache/
F: package/apr/
F: package/apr-util/
F: package/bcg729/
+F: package/bitcoin/
F: package/bluez-tools/
F: package/boinc/
F: package/clamav/
@@ -333,8 +340,12 @@ F: package/gkrellm/
F: package/gli/
F: package/glmark2/
F: package/gpsd/
+F: package/gptfdisk/
F: package/hdparm/
F: package/inih/
+F: package/intel-gmmlib/
+F: package/intel-mediadriver/
+F: package/intel-mediasdk/
F: package/jsoncpp/
F: package/kodi*
F: package/lame/
@@ -454,6 +465,7 @@ F: package/waylandpp/
F: package/x11r7/
F: package/x264/
F: package/x265/
+F: package/xmrig/
F: package/ytree/
F: package/znc/
F: support/testing/tests/package/test_perl_html_parser.py
@@ -470,7 +482,7 @@ N: Bogdan Radulescu <bogdan@nimblex.net>
F: package/iftop/
F: package/ncdu/
-N: Brandon Maier <brandon.maier@rockwellcollins.com>
+N: Brandon Maier <brandon.maier@collins.com>
F: package/vmtouch/
N: Brock Williams <brock@cottonwoodcomputer.com>
@@ -489,16 +501,6 @@ F: package/libsvg-cairo/
N: Cédric Chépied <cedric.chepied@gmail.com>
F: package/znc/
-N: Chakra Divi <chakra@openedev.com>
-F: board/friendlyarm/nanopi-m1
-F: board/friendlyarm/nanopi-m1-plus
-F: board/olimex/a13_olinuxino
-F: board/orangepi/orangepi-plus
-F: configs/friendlyarm_nanopi_m1_defconfig
-F: configs/friendlyarm_nanopi_m1_plus_defconfig
-F: configs/olimex_a13_olinuxino_defconfig
-F: configs/orangepi_plus_defconfig
-
N: Chris Packham <judge.packham@gmail.com>
F: package/coremark/
F: package/coremark-pro/
@@ -512,9 +514,9 @@ F: package/python-pylibftdi/
N: Christian Stewart <christian@paral.in>
F: package/batman-adv/
+F: package/containerd/
F: package/delve/
F: package/docker-cli/
-F: package/docker-containerd/
F: package/docker-engine/
F: package/docker-proxy/
F: package/fuse-overlayfs/
@@ -571,7 +573,7 @@ F: package/perl-sys-mmap/
F: package/perl-time-parsedate/
F: package/perl-x10/
-N: Clayton Shotwell <clayton.shotwell@rockwellcollins.com>
+N: Clayton Shotwell <clayton.shotwell@collins.com>
F: package/audit/
F: package/checkpolicy/
F: package/cpio/
@@ -674,7 +676,15 @@ N: Derrick Lyndon Pallas <derrick@meter.com>
F: package/ipcalc/
N: Dick Olsson <hi@senzilla.io>
+F: board/aarch64-efi/
+F: board/pc/
+F: board/qemu/aarch64-sbsa/
+F: boot/arm-trusted-firmware/
+F: boot/edk2/
+F: configs/qemu_aarch64_sbsa_defconfig
F: package/bearssl/
+F: package/bitcoin/
+F: package/edk2-platforms/
F: package/execline/
F: package/mdevd/
F: package/s6-dns/
@@ -685,6 +695,7 @@ F: package/s6-portable-utils/
F: package/s6-rc/
F: package/s6/
F: package/skalibs/
+F: support/testing/tests/boot/test_edk2.py
N: Dimitrios Siganos <dimitris@siganos.org>
F: package/wireless-regdb/
@@ -834,6 +845,7 @@ F: package/belle-sip/
F: package/belr/
F: package/boinc/
F: package/cairo/
+F: package/daq3/
F: package/duktape/
F: package/expat/
F: package/flatbuffers/
@@ -900,6 +912,7 @@ F: package/python-yatl/
F: package/rocksdb/
F: package/rygel/
F: package/safeclib/
+F: package/snort3/
F: package/suricata/
F: package/tinycbor/
F: package/tinydtls/
@@ -1042,6 +1055,7 @@ F: package/minicom/
F: package/nfs-utils/
F: package/sunxi-mali-mainline/
F: package/sunxi-mali-mainline-driver/
+F: package/udisks/
N: Gregory Dymarek <gregd72002@gmail.com>
F: package/ding-libs/
@@ -1224,7 +1238,7 @@ F: package/python-sockjs/
F: package/python-terminaltables/
F: package/python-yarl/
-N: James Knight <james.knight@rockwellcollins.com>
+N: James Knight <james.knight@collins.com>
F: package/atkmm/
F: package/cairomm/
F: package/google-material-design-icons/
@@ -1489,6 +1503,8 @@ F: package/dtach/
N: Kamel Bouhara <kamel.bouhara@gmail.com>
F: package/libodb-boost/
F: package/libodb-mysql/
+F: package/libqb/
+F: package/usbguard/
N: Karoly Kasza <kaszak@gmail.com>
F: package/irqbalance/
@@ -1640,6 +1656,7 @@ F: package/murata-cyw-fw/
F: package/netdata/
F: package/python-ansicolors/
F: package/python-bleak/
+F: package/python-dbus-next/
F: package/python-iniconfig/
F: package/python-intelhex/
F: package/python-packaging/
@@ -1650,9 +1667,11 @@ F: package/python-typing-extensions/
F: package/python-xmodem/
F: package/rs485conf/
F: package/turbolua/
+F: support/testing/tests/package/sample_python_dbus_next.py
F: support/testing/tests/package/sample_python_pytest.py
F: support/testing/tests/package/sample_python_pytest_asyncio.py
F: support/testing/tests/package/test_netdata.py
+F: support/testing/tests/package/test_python_dbus_next.py
F: support/testing/tests/package/test_python_pytest.py
F: support/testing/tests/package/test_python_pytest_asyncio.py
@@ -1717,7 +1736,7 @@ F: board/technologic/ts4900/
F: configs/ts4900_defconfig
F: package/ts4900-fpga/
-N: Matt Weber <matthew.weber@rockwellcollins.com>
+N: Matt Weber <matthew.weber@collins.com>
F: board/freescale/p*
F: board/freescale/t*
F: board/qemu/ppc64-e5500/
@@ -1789,6 +1808,7 @@ F: package/python-filelock/
F: package/python-flask-cors/
F: package/python-iptables/
F: package/python-ipy/
+F: package/python-iwlib/
F: package/python-posix-ipc/
F: package/python-pycairo/
F: package/python-pypcap/
@@ -1840,6 +1860,7 @@ N: Max Filippov <jcmvbkbc@gmail.com>
F: arch/Config.in.xtensa
N: Maxim Kochetkov <fido_max@inbox.ru>
+F: package/postgis/
F: package/protozero/
F: package/timescaledb/
@@ -2234,9 +2255,11 @@ F: package/bitwise/
N: Raphaël Mélotte <raphael.melotte@essensium.com>
F: package/jbig2dec/
+F: package/mupdf/
F: package/python-boto3/
F: package/python-botocore/
F: package/python-jmespath/
+F: package/python-pymupdf/
F: package/python-s3transfer/
N: Refik Tuzakli <tuzakli.refik@gmail.com>
@@ -2300,6 +2323,7 @@ F: package/glibc/
F: package/irrlicht/
F: package/liblinear/
F: package/lensfun/
+F: package/libbpf/
F: package/libclc/
F: package/libgta/
F: package/libiec61850/
@@ -2333,7 +2357,7 @@ F: toolchain/
N: Roman Gorbenkov <roman.gorbenkov@ens2m.org>
F: package/davfs2/
-N: Ryan Barnett <ryan.barnett@rockwellcollins.com>
+N: Ryan Barnett <ryan.barnett@collins.com>
F: package/atftp/
F: package/c-periphery/
F: package/miraclecast/
@@ -2370,7 +2394,7 @@ F: support/misc/toolchainfile.cmake.in
N: Sam Voss <sam.voss@gmail.com>
F: package/ripgrep/
-N: Santosh Multhalli <santosh.multhalli@rockwellcollins.com>
+N: Santosh Multhalli <santosh.multhalli@collins.com>
F: package/valijson/
N: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
@@ -2599,10 +2623,14 @@ F: package/xorcurses/
N: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
F: arch/Config.in.arm
+F: board/beaglev/
F: board/stmicroelectronics/stm32mp157c-dk2/
+F: boot/beaglev-ddrinit/
+F: boot/beaglev-secondboot/
F: boot/boot-wrapper-aarch64/
F: boot/grub2/
F: boot/gummiboot/
+F: configs/beaglev_defconfig
F: configs/stm32mp157c_dk2_defconfig
F: package/android-tools/
F: package/b43-firmware/
@@ -2624,6 +2652,7 @@ F: package/heirloom-mailx/
F: package/hiawatha/
F: package/igh-ethercat/
F: package/intltool/
+F: package/jh71xx-tools/
F: package/libcap/
F: package/libffi/
F: package/libsha1/
@@ -2646,6 +2675,7 @@ F: package/python3/
F: package/python-mad/
F: package/python-serial/
F: package/qextserialport/
+F: package/riscv64-elf-toolchain/
F: package/rpcbind/
F: package/rt-tests/
F: package/rtc-tools/
@@ -2701,6 +2731,7 @@ F: package/utp_com/
N: Vincent Stehlé <vincent.stehle@laposte.net>
F: board/bananapi/bananapi-m2-zero/
F: configs/bananapi_m2_zero_defconfig
+F: configs/uevm5432_defconfig
F: package/i7z/
F: package/msr-tools/
F: package/pixz/
diff --git a/Makefile b/Makefile
index ef2b6a34e8..472af5a318 100644
--- a/Makefile
+++ b/Makefile
@@ -92,9 +92,9 @@ all:
.PHONY: all
# Set and export the version string
-export BR2_VERSION := 2021.05-git
+export BR2_VERSION := 2021.08-git
# Actual time the release is cut (for reproducible builds)
-BR2_VERSION_EPOCH = 1615065000
+BR2_VERSION_EPOCH = 1623014000
# Save running make version since it's clobbered by the make package
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
@@ -229,6 +229,8 @@ LEGAL_MANIFEST_CSV_HOST = $(LEGAL_INFO_DIR)/host-manifest.csv
LEGAL_WARNINGS = $(LEGAL_INFO_DIR)/.warnings
LEGAL_REPORT = $(LEGAL_INFO_DIR)/README
+CPE_UPDATES_DIR = $(BASE_DIR)/cpe-updates
+
BR2_CONFIG = $(CONFIG_DIR)/.config
# Pull in the user's configuration file
@@ -945,6 +947,14 @@ pkg-stats:
--html $(O)/pkg-stats.html \
--nvd-path $(DL_DIR)/buildroot-nvd
+.PHONY: missing-cpe
+missing-cpe:
+ $(Q)mkdir -p $(CPE_UPDATES_DIR)
+ $(Q)cd "$(CONFIG_DIR)" ; \
+ $(TOPDIR)/support/scripts/gen-missing-cpe \
+ --nvd-path $(DL_DIR)/buildroot-nvd \
+ --output $(CPE_UPDATES_DIR)
+
else # ifeq ($(BR2_HAVE_DOT_CONFIG),y)
# Some subdirectories are also package names. To avoid that "make linux"
@@ -1079,7 +1089,8 @@ printvars:
clean:
rm -rf $(BASE_TARGET_DIR) $(BINARIES_DIR) $(HOST_DIR) $(HOST_DIR_SYMLINK) \
$(BUILD_DIR) $(BASE_DIR)/staging \
- $(LEGAL_INFO_DIR) $(GRAPHS_DIR) $(PER_PACKAGE_DIR)
+ $(LEGAL_INFO_DIR) $(GRAPHS_DIR) $(PER_PACKAGE_DIR) $(CPE_UPDATES_DIR) \
+ $(O)/pkg-stats.*
.PHONY: distclean
distclean: clean
@@ -1163,6 +1174,7 @@ help:
@echo ' legal-info - generate info about license compliance'
@echo ' show-info - generate info about packages, as a JSON blurb'
@echo ' pkg-stats - generate info about packages as JSON and HTML'
+ @echo ' missing-cpe - generate XML snippets for missing CPE identifiers'
@echo ' printvars - dump internal variables selected with VARS=...'
@echo
@echo ' make V=0|1 - 0 => quiet build (default), 1 => verbose build'
diff --git a/README b/README
index c6172524d7..008e996f5f 100644
--- a/README
+++ b/README
@@ -20,7 +20,7 @@ Buildroot comes with a basic configuration for a number of boards. Run
Please feed suggestions, bug reports, insults, and bribes back to the
buildroot mailing list: buildroot@buildroot.org
-You can also find us on #buildroot on Freenode IRC.
+You can also find us on #buildroot on OFTC IRC.
If you would like to contribute patches, please read
https://buildroot.org/manual.html#submitting-patches
diff --git a/arch/Config.in b/arch/Config.in
index 155403c363..1853e26bb4 100644
--- a/arch/Config.in
+++ b/arch/Config.in
@@ -321,6 +321,10 @@ config BR2_ARCH_NEEDS_GCC_AT_LEAST_10
bool
select BR2_ARCH_NEEDS_GCC_AT_LEAST_9
+config BR2_ARCH_NEEDS_GCC_AT_LEAST_11
+ bool
+ select BR2_ARCH_NEEDS_GCC_AT_LEAST_10
+
# The following string values are defined by the individual
# Config.in.$ARCH files
config BR2_ARCH
diff --git a/board/aarch64-efi/genimage-efi.cfg b/board/aarch64-efi/genimage-efi.cfg
index f93ab9d64f..34cca1d64e 100644
--- a/board/aarch64-efi/genimage-efi.cfg
+++ b/board/aarch64-efi/genimage-efi.cfg
@@ -14,17 +14,19 @@ image efi-part.vfat {
}
image disk.img {
-
hdimage {
+ gpt = true
}
partition boot {
- partition-type = 0xEF
image = "efi-part.vfat"
+ partition-type-uuid = c12a7328-f81f-11d2-ba4b-00a0c93ec93b
+ offset = 32768
+ bootable = true
}
partition root {
- partition-type = 0x83
+ partition-type-uuid = b921b045-1df0-41c3-af44-4c6f280d3fae
image = "rootfs.ext2"
}
}
diff --git a/board/aarch64-efi/grub.cfg b/board/aarch64-efi/grub.cfg
index ab88da91b9..d99e19c4cd 100644
--- a/board/aarch64-efi/grub.cfg
+++ b/board/aarch64-efi/grub.cfg
@@ -2,5 +2,5 @@ set default="0"
set timeout="5"
menuentry "Buildroot" {
- linux /Image root=/dev/vda2 rootwait console=ttyAMA0
+ linux /Image root=PARTLABEL=root rootwait
}
diff --git a/board/aarch64-efi/readme.txt b/board/aarch64-efi/readme.txt
index 65a6345b6c..164993eea4 100644
--- a/board/aarch64-efi/readme.txt
+++ b/board/aarch64-efi/readme.txt
@@ -1,6 +1,10 @@
The aarch64_efi_defconfig allows to build a minimal Linux system that
-can boot on all AArch64 servers providing an EFI firmware and ACPI.
+can boot on all AArch64 servers providing an EFI firmware.
+
+This includes all Arm EBBR[1] compliant systems, and all Arm SystemReady[2]
+compliant systems for example.
+
Building and booting
====================
@@ -32,3 +36,18 @@ Note that </path/to/QEMU_EFI.fd> needs to point to a valid aarch64 UEFI
firmware image for qemu.
It may be provided by your distribution as a edk2-aarch64 or AAVMF
package, in path such as /usr/share/edk2/aarch64/QEMU_EFI.fd .
+
+U-Boot based qemu firmware
+==========================
+
+A qemu firmware with support for UEFI based on U-Boot can be built following
+the instructions in [3], with qemu_arm64_defconfig.
+
+This should give you a nor_flash.bin, which you can use with qemu as an
+alternative to QEMU_EFI.fd. You will also need to change the machine
+specification to "-M virt,secure" on qemu command line, to enable TrustZone
+support, and you will need to increase the memory with "-m 1024".
+
+[1]: https://github.com/ARM-software/ebbr
+[2]: https://developer.arm.com/architectures/system-architectures/arm-systemready
+[3]: https://github.com/glikely/u-boot-tfa-build
diff --git a/board/atmel/readme.txt b/board/atmel/readme.txt
index 1f21dd15e4..a29d027214 100644
--- a/board/atmel/readme.txt
+++ b/board/atmel/readme.txt
@@ -23,6 +23,8 @@ This guide covers the following configurations:
- microchip_sama5d27_wlsom1_ek_mmc_dev_defconfig
- microchip_sam9x60ek_mmc_defconfig
- microchip_sam9x60ek_mmc_dev_defconfig
+ - microchip_sama5d2_icp_mmc_defconfig
+ - microchip_sama5d2_icp_mmc_dev_defconfig
These configurations will use AT91Bootstrap, u-boot and a linux kernel from
the git trees maintained by Atmel.
diff --git a/board/beaglev/extlinux.conf b/board/beaglev/extlinux.conf
new file mode 100644
index 0000000000..c5444d094c
--- /dev/null
+++ b/board/beaglev/extlinux.conf
@@ -0,0 +1,4 @@
+label linux
+ kernel /boot/Image
+ devicetree /boot/starfive_vic7100_beagle_v.dtb
+ append console=ttyS0,115200 earlyprintk root=PARTUUID=0fef845a-c6e1-45bc-82f7-002fa720f958 rootwait
diff --git a/board/beaglev/genimage.cfg b/board/beaglev/genimage.cfg
new file mode 100644
index 0000000000..f38bb7f86c
--- /dev/null
+++ b/board/beaglev/genimage.cfg
@@ -0,0 +1,12 @@
+image sdcard.img {
+ hdimage {
+ gpt = true
+ }
+
+ partition rootfs {
+ partition-type-uuid = 72ec70a6-cf74-40e6-bd49-4bda08e8f224
+ partition-uuid = 0fef845a-c6e1-45bc-82f7-002fa720f958
+ bootable = "true"
+ image = "rootfs.ext4"
+ }
+}
diff --git a/board/beaglev/patches/uboot/0001-include-configs-starfive-vic7100-adjust-fdt_addr_r.patch b/board/beaglev/patches/uboot/0001-include-configs-starfive-vic7100-adjust-fdt_addr_r.patch
new file mode 100644
index 0000000000..74d70f2721
--- /dev/null
+++ b/board/beaglev/patches/uboot/0001-include-configs-starfive-vic7100-adjust-fdt_addr_r.patch
@@ -0,0 +1,39 @@
+From 2c4c813940c577590f3352cef0c49a8def17905d Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
+Date: Wed, 28 Apr 2021 22:58:45 +0200
+Subject: [PATCH] include/configs/starfive-vic7100: adjust fdt_addr_r
+
+The default fdt_addr_r of 0x88000000 doesn't work, the kernel never
+boots. Using 0x90000000 works fine.
+
+Since it would overlap with the kernel_comp_addr_r area, this one is
+moved 16 MB further, at 0x91000000.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
+---
+ include/configs/starfive-vic7100.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/include/configs/starfive-vic7100.h b/include/configs/starfive-vic7100.h
+index 8c5915a73c..7150a23873 100644
+--- a/include/configs/starfive-vic7100.h
++++ b/include/configs/starfive-vic7100.h
+@@ -111,13 +111,13 @@
+ "fdt_high=0xffffffffffffffff\0" \
+ "initrd_high=0xffffffffffffffff\0" \
+ "kernel_addr_r=0x84000000\0" \
+- "fdt_addr_r=0x88000000\0" \
++ "fdt_addr_r=0x90000000\0" \
+ "scriptaddr=0x88100000\0" \
+ "script_offset_f=0x1fff000\0" \
+ "script_size_f=0x1000\0" \
+ "pxefile_addr_r=0x88200000\0" \
+ "ramdisk_addr_r=0x88300000\0" \
+- "kernel_comp_addr_r=0x90000000\0" \
++ "kernel_comp_addr_r=0x91000000\0" \
+ "kernel_comp_size=0x10000000\0" \
+ "type_guid_gpt_loader1=" TYPE_GUID_LOADER1 "\0" \
+ "type_guid_gpt_loader2=" TYPE_GUID_LOADER2 "\0" \
+--
+2.30.2
+
diff --git a/board/beaglev/post-build.sh b/board/beaglev/post-build.sh
new file mode 100755
index 0000000000..b19b9bf6d0
--- /dev/null
+++ b/board/beaglev/post-build.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+BOARD_DIR=$(dirname $0)
+
+# The DTB to use is provided within the U-Boot source tree, so we grab
+# it from there, and install it to TARGET_DIR/boot/.
+eval $(make -C ${CONFIG_DIR} --no-print-directory QUOTED_VARS=YES VARS=UBOOT_DIR printvars)
+install -D -m0644 ${UBOOT_DIR}/arch/riscv/dts/starfive_vic7100_beagle_v.dtb \
+ ${TARGET_DIR}/boot/starfive_vic7100_beagle_v.dtb
+
+# Bring the extlinux.conf file in.
+install -D -m 0644 ${BOARD_DIR}/extlinux.conf \
+ ${TARGET_DIR}/boot/extlinux/extlinux.conf
+
+# To be reflashed through Xmodem, the bootloader needs to be prepended
+# with a 4-byte header that contains the total size of the file.
+perl -e 'print pack("l", (stat @ARGV[0])[7])' ${BINARIES_DIR}/fw_payload.bin > ${BINARIES_DIR}/fw_payload.bin.out
+cat ${BINARIES_DIR}/fw_payload.bin >> ${BINARIES_DIR}/fw_payload.bin.out
diff --git a/board/beaglev/readme.txt b/board/beaglev/readme.txt
new file mode 100644
index 0000000000..60678059e1
--- /dev/null
+++ b/board/beaglev/readme.txt
@@ -0,0 +1,124 @@
+BeagleV
+=======
+
+BeagleV is a low-cost RISC-V 64-bit based platform, powered by a
+Starfive JH7100 processor. The current defconfig in Buildroot has been
+tested with the JH7100 chip used on the beta version of the BeagleV
+board.
+
+How to build
+============
+
+$ make beaglev_defconfig
+$ make
+
+Build results
+=============
+
+After building, output/images contains:
+
++ bootloader-BEAGLEV-buildroot.bin.out
++ ddrinit-2133-buildroot.bin.out
++ Image
++ fw_payload.bin
++ fw_payload.bin.out
++ fw_payload.elf
++ rootfs.ext2
++ rootfs.ext4
++ sdcard.img
++ u-boot.bin
+
+The four important files are:
+
+ - bootloader-BEAGLEV-buildroot.bin.out, the first stage bootloader
+
+ - ddrinit-2133-buildroot.bin.out, the DDR initialization firmware
+
+ - fw_payload.bin.out, which is the bootloader image, containing
+ both OpenSBI and U-Boot.
+
+ - sdcard.img, the SD card image, which contains the root filesystem,
+ kernel image and Device Tree.
+
+Flashing the SD card image
+==========================
+
+$ sudo dd if=output/images/sdcard.img of=/dev/sdX
+
+Preparing the board
+===================
+
+Connect the Beagle-V fan to the 5V supply (pin 2 or 4 of the GPIO
+connector) and GND (pin 6 of the GPIO connector).
+
+Connect a TTL UART cable to pin 8 (TX), 10 (RX) and 14 (GND).
+
+Insert your SD card.
+
+Power-up the board using an USB-C cable.
+
+Flashing OpenSBI/U-Boot
+=======================
+
+The bootloader pre-flashed on the Beagle-V has a non-working
+fdt_addr_r environment variable value, so it won't work
+as-is. Reflashing the bootloader with the bootloader image produced by
+Buildroot is necessary.
+
+When the board starts up, a pre-loader shows a count down of 2
+seconds, interrupt by pressing any key. You should reach a menu like
+this:
+
+--------8<----------
+
+bootloader version:210209-4547a8d
+ddr 0x00000000, 1M test
+ddr 0x00100000, 2M test
+DDR clk 2133M,Version: 210302-5aea32f
+0
+***************************************************
+*************** FLASH PROGRAMMING *****************
+***************************************************
+
+0:update uboot
+1:quit
+select the function:
+
+--------8<----------
+
+Press 0 and Enter. You will now see "C" characters being
+displayed. Ask your serial port communication program to send
+fw_payload.bin.out using the Xmodem protocol.
+
+After reflashing is complete, restart the board, it will automatically
+start the system from the SD card, and reach the login prompt.
+
+Flashing low-level bootloaders
+==============================
+
+The BeagleV comes pre-flashed with functional low-level bootloaders
+(called "secondboot" and "ddrinit"). Re-flashing them is not necessary
+to use this Buildroot defconfig. However, for the sake of
+completeness, Buildroot builds and provides those low-level bootloader
+images.
+
+You can flash them as follows:
+
+ - In the same "pre-loader" menu as the one used above, instead of
+ entering 0 or 1, enter the magic "root@s5t" string. This enters the
+ "expert" features.
+
+ - Then, press 0 and send over X-modem the
+ bootloader-BEAGLEV-buildroot.bin.out file.
+
+ - Then, press 1 and send over X-modem the
+ ddrinit-2133-buildroot.bin.out.
+
+Note that the reflashing mechanism itself relies on those low-level
+bootloaders, so if you flash non-working versions, you'll have to go
+through a recovery process. This requires wiring up to a separate
+debug UART, which pins are located near the HDMI connector. See
+https://wiki.seeedstudio.com/BeagleV-Update-bootloader-ddr-init-boot-uboot-Recover-bootloader/
+section "Recover the bootloader" for more details. The instructions
+make use of a jh7100-recover tool, which Buildroot has built as part
+of this defconfig: it is available as output/host/bin/jh7100-recover.
diff --git a/board/boundarydevices/common/boot.cmd b/board/boundarydevices/common/boot.cmd
index dbc3b3c373..2f2bd8d045 100644
--- a/board/boundarydevices/common/boot.cmd
+++ b/board/boundarydevices/common/boot.cmd
@@ -1,17 +1,20 @@
setenv bootargs ''
-setenv initrd_high 0xffffffff
m4=''
kernelimage=zImage
bootcommand=bootz
a_base=0x10000000
-if itest.s x51 == "x${imx_cpu}" ; then
+
+#grab 1st 2/3 characters of string
+setexpr cpu2 sub "^(..?).*" "\\1" "${imx_cpu}"
+setexpr cpu3 sub "^(..?.?).*" "\\1" "${imx_cpu}"
+if itest.s x51 == "x${cpu2}" ; then
a_base=0x90000000
-elif itest.s x53 == "x${imx_cpu}"; then
+elif itest.s x53 == "x${cpu2}"; then
a_base=0x70000000
-elif itest.s x6SX == "x${imx_cpu}" || itest.s x6ULL == "x${imx_cpu}" || itest.s x7D == "x${imx_cpu}"; then
+elif itest.s x6SX == "x${cpu3}" || itest.s x6U == "x${cpu2}" || itest.s x7D == "x${cpu2}"; then
a_base=0x80000000
-elif itest.s x8MQ == "x${imx_cpu}" || itest.s x8MM == "x${imx_cpu}" || itest.s x8MMQ == "x${imx_cpu}" || itest.s x8MNano == "x${imx_cpu}"; then
+elif itest.s x8M == "x${cpu2}"; then
a_base=0x40000000
kernelimage=Image
bootcommand=booti
@@ -24,8 +27,7 @@ fi
setexpr a_script ${a_base} + 0x00800000
setexpr a_zImage ${a_base} + 0x00800000
setexpr a_fdt ${a_base} + 0x03000000
-setexpr a_ramdisk ${a_base} + 0x03800000
-setexpr a_initrd ${a_base} + 0x03a00000
+setexpr a_initrd ${a_base} + 0x03100000
setexpr a_reset_cause_marker ${a_base} + 0x80
setexpr a_reset_cause ${a_base} + 0x84
@@ -35,30 +37,32 @@ if itest.s "x" == "x${board}" ; then
fi
if itest.s "x" == "x${fdt_file}" ; then
- if itest.s x6SOLO == "x${imx_cpu}" ; then
- fdt_file=imx6dl-${board}.dtb;
- elif itest.s x6DL == "x${imx_cpu}" ; then
+ if itest.s x51 == "x${cpu2}" ; then
+ fdt_file=imx51-${board}${m4}.dtb;
+ elif itest.s x53 == "x${cpu2}" ; then
+ fdt_file=imx53-${board}${m4}.dtb;
+ elif itest.s x6DL == "x${cpu3}" || itest.s x6SO == "x${cpu3}" ; then
fdt_file=imx6dl-${board}.dtb;
- elif itest.s x6QP == "x${imx_cpu}" ; then
+ elif itest.s x6QP == "x${cpu3}" ; then
fdt_file=imx6qp-${board}.dtb;
- elif itest.s x6SX == "x${imx_cpu}" ; then
+ elif itest.s x6SX == "x${cpu3}" ; then
fdt_file=imx6sx-${board}${m4}.dtb;
- elif itest.s x6ULL == "x${imx_cpu}" ; then
+ elif itest.s x6UL == "x${cpu3}" ; then
fdt_file=imx6ull-${board}.dtb;
- elif itest.s x7D == "x${imx_cpu}" ; then
+ elif itest.s x7D == "x${cpu2}" ; then
fdt_file=imx7d-${board}${m4}.dtb;
- elif itest.s x8MQ == "x${imx_cpu}" ; then
- fdt_file=imx8mq-${board}${m4}.dtb;
- elif itest.s x8MM == "x${imx_cpu}" ; then
+ elif itest.s x8MM == "x${cpu3}" ; then
fdt_file=imx8mm-${board}${m4}.dtb;
- elif itest.s x8MMQ == "x${imx_cpu}" ; then
- fdt_file=imx8mm-${board}${m4}.dtb;
- elif itest.s x8MNano == "x${imx_cpu}" ; then
+ elif itest.s x8MN == "x${cpu3}" ; then
fdt_file=imx8mn-${board}${m4}.dtb;
- elif itest.s x51 == "x${imx_cpu}" ; then
- fdt_file=imx51-${board}.dtb;
- elif itest.s x53 == "x${imx_cpu}" ; then
- fdt_file=imx53-${board}.dtb;
+ elif itest.s x8MP == "x${cpu3}" ; then
+ if itest *0x30360800 == 0x00824310 ; then
+ fdt_file=imx8mp-a0-${board}${m4}.dtb;
+ else
+ fdt_file=imx8mp-${board}${m4}.dtb;
+ fi
+ elif itest.s x8MQ == "x${cpu3}" ; then
+ fdt_file=imx8mq-${board}${m4}.dtb;
else
fdt_file=imx6q-${board}.dtb;
fi
@@ -71,11 +75,20 @@ fi
if load ${devtype} ${devnum}:${distro_bootpart} ${a_script} uEnv.txt ; then
env import -t ${a_script} ${filesize}
fi
-setenv bootargs ${bootargs} console=${console},115200 vmalloc=400M consoleblank=0 rootwait fixrtc cpu=${imx_cpu} board=${board}
+
+if itest.s x${console} != x ; then
+ setenv bootargs ${bootargs} console=${console},115200
+fi
+if itest.s "x" == "x$vmalloc" ; then
+ vmalloc=400M
+fi
+if itest.s x${consoleblank} == x ; then
+ consoleblank=0
+fi
+setenv bootargs ${bootargs} vmalloc=${vmalloc} consoleblank=${consoleblank} rootwait fixrtc cpu=${imx_cpu} board=${board} uboot_release=${uboot_release}
if load ${devtype} ${devnum}:${distro_bootpart} ${a_fdt} ${prefix}${fdt_file} ; then
fdt addr ${a_fdt}
- setenv fdt_high 0xffffffff
else
echo "!!!! Error loading ${prefix}${fdt_file}";
exit;
diff --git a/board/boundarydevices/common/readme.txt b/board/boundarydevices/common/readme.txt
index 307cfb5549..d3169b08f5 100644
--- a/board/boundarydevices/common/readme.txt
+++ b/board/boundarydevices/common/readme.txt
@@ -31,6 +31,9 @@ Here is the list of targeted platforms per defconfig:
- Nitrogen8MNano
- Nitrogen8MNano_SOM
+- nitrogen8mp_defconfig
+ - Nitrogen8MPlus_SOM
+
To install, simply copy the image to your storage (SD, eMMC, USB):
$ sudo dd if=output/images/sdcard.img of=/dev/sdX
diff --git a/board/boundarydevices/common/upgrade.cmd b/board/boundarydevices/common/upgrade.cmd
index ce32d77b5b..a26bacd9aa 100644
--- a/board/boundarydevices/common/upgrade.cmd
+++ b/board/boundarydevices/common/upgrade.cmd
@@ -9,18 +9,24 @@ qspi_offset=0x0
a_base=0x12000000
block_size=0x200
-if itest.s x51 == "x${imx_cpu}"; then
+#grab 1st 2/3 characters of string
+setexpr cpu2 sub "^(..?).*" "\\1" "${imx_cpu}"
+setexpr cpu3 sub "^(..?.?).*" "\\1" "${imx_cpu}"
+if itest.s x51 == "x${cpu2}"; then
a_base=0x92000000
-elif itest.s x53 == "x${imx_cpu}"; then
+elif itest.s x53 == "x${cpu2}"; then
a_base=0x72000000
-elif itest.s x6SX == "x${imx_cpu}" || itest.s x6ULL == "x${imx_cpu}" || itest.s x7D == "x${imx_cpu}"; then
+elif itest.s x6SX == "x${cpu3}" || itest.s x6U == "x${cpu2}" || itest.s x7D == "x${cpu2}"; then
a_base=0x82000000
-elif itest.s x8MQ == "x${imx_cpu}" || itest.s x8MM == "x${imx_cpu}" || itest.s x8MMQ == "x${imx_cpu}"; then
+elif itest.s x8M == "x${cpu2}"; then
a_base=0x42000000
offset=0x8400
-elif itest.s x8MNano == "x${imx_cpu}"; then
- a_base=0x42000000
- offset=0x8000
+ if itest.s x8MN == "x${cpu3}" || itest.s x8MP == "x${cpu3}"; then
+ offset=0x8000
+ if itest ${env_part} != 0 ; then
+ offset=0x0
+ fi
+ fi
fi
qspi_match=1
@@ -30,7 +36,10 @@ setexpr a_uImage1 ${a_qspi1} + 0x400
setexpr a_uImage2 ${a_qspi2} + 0x400
setexpr a_script ${a_base}
-setenv stdout serial,vga
+if itest.s "x${vidconsole}" == "x" ; then
+ vidconsole=vga
+fi
+setenv stdout serial,${vidconsole}
if itest.s "x${sfname}" == "x" ; then
# U-Boot resides in (e)MMC
diff --git a/board/microchip/sama5d2_icp/genimage.cfg b/board/microchip/sama5d2_icp/genimage.cfg
new file mode 100644
index 0000000000..854751713f
--- /dev/null
+++ b/board/microchip/sama5d2_icp/genimage.cfg
@@ -0,0 +1,31 @@
+# Image for SD card boot on Microchip SAMA5D2 ICP (Industrial Connectivity Platform)
+#
+image boot.vfat {
+ vfat {
+ files = {
+ "zImage",
+ "at91-sama5d2_icp.dtb",
+ "boot.bin",
+ "u-boot.bin"
+ }
+ }
+ size = 16M
+}
+
+image sdcard.img {
+ hdimage {
+ }
+
+ partition boot {
+ partition-type = 0xC
+ bootable = "true"
+ image = "boot.vfat"
+ offset = 1M
+ }
+
+ partition rootfs {
+ partition-type = 0x83
+ image = "rootfs.ext4"
+ size = 512M
+ }
+}
diff --git a/board/minnowboard/fs-overlay-graphical/etc/X11/xorg.conf.d/01-modules.conf b/board/minnowboard/fs-overlay-graphical/etc/X11/xorg.conf.d/01-modules.conf
new file mode 100644
index 0000000000..91659baa65
--- /dev/null
+++ b/board/minnowboard/fs-overlay-graphical/etc/X11/xorg.conf.d/01-modules.conf
@@ -0,0 +1,11 @@
+
+# Xorg does not implement real dynamic linking and requires that its
+# modules get loaded in the right order.
+# https://forums.gentoo.org/viewtopic-p-8245578.html#8245578
+Section "Module"
+ Load "vgahw"
+ Load "fb"
+ Load "shadowfb"
+ Load "int10"
+ Load "vbe"
+EndSection
diff --git a/board/qemu/aarch64-sbsa/assemble-flash-images b/board/qemu/aarch64-sbsa/assemble-flash-images
new file mode 100755
index 0000000000..abcc276b0b
--- /dev/null
+++ b/board/qemu/aarch64-sbsa/assemble-flash-images
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+set -e
+
+BOARD_DIR="$(dirname $0)"
+
+cp -f ${BOARD_DIR}/grub.cfg ${BINARIES_DIR}/efi-part/EFI/BOOT/grub.cfg
+
+# The QEMU sbsa machine expects flash devices to be 256M.
+truncate -s 256M ${BINARIES_DIR}/SBSA_FLASH0.fd
+truncate -s 256M ${BINARIES_DIR}/SBSA_FLASH1.fd
diff --git a/board/qemu/aarch64-sbsa/genimage.cfg b/board/qemu/aarch64-sbsa/genimage.cfg
new file mode 100644
index 0000000000..285b308d90
--- /dev/null
+++ b/board/qemu/aarch64-sbsa/genimage.cfg
@@ -0,0 +1,30 @@
+image efi-part.vfat {
+ vfat {
+ file startup.nsh {
+ image = "efi-part/startup.nsh"
+ }
+ file EFI {
+ image = "efi-part/EFI"
+ }
+ file Image {
+ image = "Image"
+ }
+ }
+ size = 32M
+}
+
+image disk.img {
+ hdimage {
+ gpt = true
+ }
+
+ partition boot {
+ partition-type = 0xEF
+ image = "efi-part.vfat"
+ }
+
+ partition root {
+ partition-type = 0x83
+ image = "rootfs.ext2"
+ }
+}
diff --git a/board/qemu/aarch64-sbsa/grub.cfg b/board/qemu/aarch64-sbsa/grub.cfg
new file mode 100644
index 0000000000..cd486caf4c
--- /dev/null
+++ b/board/qemu/aarch64-sbsa/grub.cfg
@@ -0,0 +1,6 @@
+set default="0"
+set timeout="5"
+
+menuentry "Buildroot" {
+ linux /Image root=/dev/sda2 rootwait console=ttyAMA0
+}
diff --git a/board/qemu/aarch64-sbsa/linux.config b/board/qemu/aarch64-sbsa/linux.config
new file mode 100644
index 0000000000..a60cce02ec
--- /dev/null
+++ b/board/qemu/aarch64-sbsa/linux.config
@@ -0,0 +1,68 @@
+CONFIG_SYSVIPC=y
+CONFIG_POSIX_MQUEUE=y
+CONFIG_NO_HZ_IDLE=y
+CONFIG_HIGH_RES_TIMERS=y
+CONFIG_TASKSTATS=y
+CONFIG_SCHED_AUTOGROUP=y
+CONFIG_PROFILING=y
+CONFIG_ARCH_VEXPRESS=y
+CONFIG_COMPAT=y
+CONFIG_FW_CFG_SYSFS=y
+CONFIG_FW_CFG_SYSFS_CMDLINE=y
+CONFIG_ACPI=y
+CONFIG_MODULES=y
+CONFIG_MODULE_UNLOAD=y
+CONFIG_BLK_DEV_BSGLIB=y
+CONFIG_BINFMT_MISC=y
+CONFIG_TRANSPARENT_HUGEPAGE=y
+CONFIG_NET=y
+CONFIG_PACKET=y
+CONFIG_PACKET_DIAG=y
+CONFIG_UNIX=y
+CONFIG_NET_KEY=y
+CONFIG_INET=y
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_ADVANCED_ROUTER=y
+CONFIG_BRIDGE=m
+CONFIG_NET_SCHED=y
+CONFIG_VSOCKETS=y
+CONFIG_PCI=y
+CONFIG_PCI_HOST_GENERIC=y
+CONFIG_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
+CONFIG_VIRTIO_BLK=y
+CONFIG_BLK_DEV_SD=y
+CONFIG_CHR_DEV_SG=y
+CONFIG_SCSI_CONSTANTS=y
+CONFIG_SCSI_LOGGING=y
+CONFIG_SCSI_SCAN_ASYNC=y
+CONFIG_SCSI_VIRTIO=y
+CONFIG_ATA=y
+CONFIG_SATA_AHCI_PLATFORM=y
+CONFIG_NETDEVICES=y
+CONFIG_DUMMY=y
+CONFIG_MACVLAN=y
+CONFIG_VIRTIO_NET=y
+CONFIG_NLMON=y
+CONFIG_SERIAL_AMBA_PL011=y
+CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
+CONFIG_VIRTIO_CONSOLE=y
+CONFIG_HW_RANDOM=y
+CONFIG_HW_RANDOM_VIRTIO=y
+CONFIG_TCG_TPM=y
+CONFIG_TCG_TIS=y
+CONFIG_DRM=y
+CONFIG_DRM_VIRTIO_GPU=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_DRV_PL031=y
+CONFIG_VIRTIO_PCI=y
+CONFIG_VIRTIO_MMIO=y
+CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
+CONFIG_MAILBOX=y
+CONFIG_PL320_MBOX=y
+CONFIG_ARM_SMMU_V3=y
+CONFIG_EXT4_FS=y
+CONFIG_FUSE_FS=y
+CONFIG_VIRTIO_FS=y
+CONFIG_TMPFS=y
+CONFIG_TMPFS_POSIX_ACL=y
diff --git a/board/qemu/aarch64-sbsa/readme.txt b/board/qemu/aarch64-sbsa/readme.txt
new file mode 100644
index 0000000000..7935108ef1
--- /dev/null
+++ b/board/qemu/aarch64-sbsa/readme.txt
@@ -0,0 +1,32 @@
+Intro
+=====
+
+The QEMU sbsa-ref machine is primarily meant for firmware development
+and testing according to ARM's SBSA and SBBR standards.
+
+Build
+=====
+
+ $ make qemu_aarch64_sbsa_defconfig
+ $ make
+
+Emulation
+=========
+
+Run the emulation with:
+
+ qemu-system-aarch64 \
+ -M sbsa-ref \
+ -cpu cortex-a53 \
+ -smp 4 \
+ -m 1024 \
+ -nographic \
+ -pflash output/images/SBSA_FLASH0.fd \
+ -pflash output/images/SBSA_FLASH1.fd \
+ -hda output/images/disk.img
+
+Note that if you want to run sbsa-ref emulation with QEMU provided by
+your distro (i.e., not host-qemu by Buildroot) then you may need to
+install the SeaBIOS package for some required drivers. On Debian:
+
+ # apt install seabios
diff --git a/board/qemu/s390x/patches/linux/0001-arch-s390-disable-SSP-when-needed.patch b/board/qemu/s390x/patches/linux/0001-arch-s390-disable-SSP-when-needed.patch
new file mode 100644
index 0000000000..c8199d4fd6
--- /dev/null
+++ b/board/qemu/s390x/patches/linux/0001-arch-s390-disable-SSP-when-needed.patch
@@ -0,0 +1,47 @@
+From 8a054081678ed0b0e56f829bac0a4656e3a198b9 Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Sat, 8 May 2021 22:03:11 +0200
+Subject: [PATCH] arch/s390: disable SSP when needed
+
+Though -nostdlib is passed in PURGATORY_LDFLAGS and -ffreestanding in
+KBUILD_CFLAGS_DECOMPRESSOR, -fno-stack-protector must also be passed to
+avoid linking errors related to undefined references to
+'__stack_chk_guard' and '__stack_chk_fail' if toolchain enforces
+-fstack-protector.
+
+Fixes:
+ - https://gitlab.com/kubu93/buildroot/-/jobs/1247043361
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+---
+ arch/s390/Makefile | 1 +
+ arch/s390/purgatory/Makefile | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/arch/s390/Makefile b/arch/s390/Makefile
+index e443ed9947bd..098abe3a56f3 100644
+--- a/arch/s390/Makefile
++++ b/arch/s390/Makefile
+@@ -28,6 +28,7 @@ KBUILD_CFLAGS_DECOMPRESSOR += -DDISABLE_BRANCH_PROFILING -D__NO_FORTIFY
+ KBUILD_CFLAGS_DECOMPRESSOR += -fno-delete-null-pointer-checks -msoft-float -mbackchain
+ KBUILD_CFLAGS_DECOMPRESSOR += -fno-asynchronous-unwind-tables
+ KBUILD_CFLAGS_DECOMPRESSOR += -ffreestanding
++KBUILD_CFLAGS_DECOMPRESSOR += -fno-stack-protector
+ KBUILD_CFLAGS_DECOMPRESSOR += $(call cc-disable-warning, address-of-packed-member)
+ KBUILD_CFLAGS_DECOMPRESSOR += $(if $(CONFIG_DEBUG_INFO),-g)
+ KBUILD_CFLAGS_DECOMPRESSOR += $(if $(CONFIG_DEBUG_INFO_DWARF4), $(call cc-option, -gdwarf-4,))
+diff --git a/arch/s390/purgatory/Makefile b/arch/s390/purgatory/Makefile
+index c57f8c40e992..21c4ebe29b9a 100644
+--- a/arch/s390/purgatory/Makefile
++++ b/arch/s390/purgatory/Makefile
+@@ -24,6 +24,7 @@ KBUILD_CFLAGS := -fno-strict-aliasing -Wall -Wstrict-prototypes
+ KBUILD_CFLAGS += -Wno-pointer-sign -Wno-sign-compare
+ KBUILD_CFLAGS += -fno-zero-initialized-in-bss -fno-builtin -ffreestanding
+ KBUILD_CFLAGS += -c -MD -Os -m64 -msoft-float -fno-common
++KBUILD_CFLAGS += -fno-stack-protector
+ KBUILD_CFLAGS += $(CLANG_FLAGS)
+ KBUILD_CFLAGS += $(call cc-option,-fno-PIE)
+ KBUILD_AFLAGS := $(filter-out -DCC_USING_EXPOLINE,$(KBUILD_AFLAGS))
+--
+2.30.2
+
diff --git a/board/qemu/sparc64-sun4u/patches/linux/0001-sparc64-avoid-stringop-overread-warning-to-access-Ma.patch b/board/qemu/sparc64-sun4u/patches/linux/0001-sparc64-avoid-stringop-overread-warning-to-access-Ma.patch
new file mode 100644
index 0000000000..c02704696d
--- /dev/null
+++ b/board/qemu/sparc64-sun4u/patches/linux/0001-sparc64-avoid-stringop-overread-warning-to-access-Ma.patch
@@ -0,0 +1,154 @@
+From 82d91965519c20639c24aadd022b2859461562bc Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@gmail.com>
+Date: Tue, 27 Apr 2021 14:54:28 +0200
+Subject: [PATCH] sparc64: avoid stringop-overread warning to access Machine
+ description datas
+
+gcc-11 warns about what appears to be an out-of-range array access but
+stop the build due to -Werror added to cflags:
+
+arch/sparc/kernel/mdesc.c: In function 'mdesc_node_by_name':
+arch/sparc/kernel/mdesc.c:647:22: error: 'strcmp' reading 1 or more bytes from a region of size 0 [-Werror=stringop-overread]
+ 647 | if (!strcmp(names + ep[ret].name_offset, name))
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+arch/sparc/kernel/mdesc.c:77:33: note: at offset 16 into source object 'mdesc' of size 16
+ 77 | struct mdesc_hdr mdesc;
+ | ^~~~~
+arch/sparc/kernel/mdesc.c: In function 'mdesc_get_property':
+arch/sparc/kernel/mdesc.c:692:22: error: 'strcmp' reading 1 or more bytes from a region of size 0 [-Werror=stringop-overread]
+ 692 | if (!strcmp(names + ep->name_offset, name)) {
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+arch/sparc/kernel/mdesc.c:77:33: note: at offset 16 into source object 'mdesc' of size 16
+ 77 | struct mdesc_hdr mdesc;
+ | ^~~~~
+arch/sparc/kernel/mdesc.c: In function 'mdesc_next_arc':
+arch/sparc/kernel/mdesc.c:719:21: error: 'strcmp' reading 1 or more bytes from a region of size 0 [-Werror=stringop-overread]
+ 719 | if (strcmp(names + ep->name_offset, arc_type))
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+arch/sparc/kernel/mdesc.c:77:33: note: at offset 16 into source object 'mdesc' of size 16
+ 77 | struct mdesc_hdr mdesc;
+ | ^~~~~
+cc1: all warnings being treated as errors
+
+The issue was initially reported to gcc [1] where it was analized.
+As suggested, change the struct mdesc_elem * accesses from the end
+of mdesc to those from the beginning of the data array.
+
+Update the prototype of node_block(), name_block() and data_block()
+since the code really seems to want to do is to compute the address
+somewhere into the chunk pointed to by hp.
+
+[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100262
+
+Upstream status: Pending
+https://www.spinics.net/lists/sparclinux/msg26385.html
+
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+---
+ arch/sparc/kernel/mdesc.c | 37 +++++++++++++++++++++----------------
+ 1 file changed, 21 insertions(+), 16 deletions(-)
+
+diff --git a/arch/sparc/kernel/mdesc.c b/arch/sparc/kernel/mdesc.c
+index 8e645ddac58e..3403555aa1e2 100644
+--- a/arch/sparc/kernel/mdesc.c
++++ b/arch/sparc/kernel/mdesc.c
+@@ -75,6 +75,7 @@ struct mdesc_handle {
+ refcount_t refcnt;
+ unsigned int handle_size;
+ struct mdesc_hdr mdesc;
++ char data[];
+ };
+
+ typedef int (*mdesc_node_info_get_f)(struct mdesc_handle *, u64,
+@@ -610,26 +611,30 @@ int mdesc_get_node_info(struct mdesc_handle *hp, u64 node,
+ }
+ EXPORT_SYMBOL(mdesc_get_node_info);
+
+-static struct mdesc_elem *node_block(struct mdesc_hdr *mdesc)
++static struct mdesc_elem *node_block(struct mdesc_handle *hp)
+ {
+- return (struct mdesc_elem *) (mdesc + 1);
++ return (struct mdesc_elem *) hp + offsetof(struct mdesc_handle, data);
+ }
+
+-static void *name_block(struct mdesc_hdr *mdesc)
++static void *name_block(struct mdesc_handle *hp)
+ {
+- return ((void *) node_block(mdesc)) + mdesc->node_sz;
++ struct mdesc_hdr *mdesc = &hp->mdesc;
++
++ return ((void *) node_block(hp)) + mdesc->node_sz;
+ }
+
+-static void *data_block(struct mdesc_hdr *mdesc)
++static void *data_block(struct mdesc_handle *hp)
+ {
+- return ((void *) name_block(mdesc)) + mdesc->name_sz;
++ struct mdesc_hdr *mdesc = &hp->mdesc;
++
++ return ((void *) name_block(hp)) + mdesc->name_sz;
+ }
+
+ u64 mdesc_node_by_name(struct mdesc_handle *hp,
+ u64 from_node, const char *name)
+ {
+- struct mdesc_elem *ep = node_block(&hp->mdesc);
+- const char *names = name_block(&hp->mdesc);
++ struct mdesc_elem *ep = node_block(hp);
++ const char *names = name_block(hp);
+ u64 last_node = hp->mdesc.node_sz / 16;
+ u64 ret;
+
+@@ -657,15 +662,15 @@ EXPORT_SYMBOL(mdesc_node_by_name);
+ const void *mdesc_get_property(struct mdesc_handle *hp, u64 node,
+ const char *name, int *lenp)
+ {
+- const char *names = name_block(&hp->mdesc);
++ const char *names = name_block(hp);
+ u64 last_node = hp->mdesc.node_sz / 16;
+- void *data = data_block(&hp->mdesc);
++ void *data = data_block(hp);
+ struct mdesc_elem *ep;
+
+ if (node == MDESC_NODE_NULL || node >= last_node)
+ return NULL;
+
+- ep = node_block(&hp->mdesc) + node;
++ ep = node_block(hp) + node;
+ ep++;
+ for (; ep->tag != MD_NODE_END; ep++) {
+ void *val = NULL;
+@@ -702,8 +707,8 @@ EXPORT_SYMBOL(mdesc_get_property);
+
+ u64 mdesc_next_arc(struct mdesc_handle *hp, u64 from, const char *arc_type)
+ {
+- struct mdesc_elem *ep, *base = node_block(&hp->mdesc);
+- const char *names = name_block(&hp->mdesc);
++ struct mdesc_elem *ep, *base = node_block(hp);
++ const char *names = name_block(hp);
+ u64 last_node = hp->mdesc.node_sz / 16;
+
+ if (from == MDESC_NODE_NULL || from >= last_node)
+@@ -728,7 +733,7 @@ EXPORT_SYMBOL(mdesc_next_arc);
+
+ u64 mdesc_arc_target(struct mdesc_handle *hp, u64 arc)
+ {
+- struct mdesc_elem *ep, *base = node_block(&hp->mdesc);
++ struct mdesc_elem *ep, *base = node_block(hp);
+
+ ep = base + arc;
+
+@@ -738,8 +743,8 @@ EXPORT_SYMBOL(mdesc_arc_target);
+
+ const char *mdesc_node_name(struct mdesc_handle *hp, u64 node)
+ {
+- struct mdesc_elem *ep, *base = node_block(&hp->mdesc);
+- const char *names = name_block(&hp->mdesc);
++ struct mdesc_elem *ep, *base = node_block(hp);
++ const char *names = name_block(hp);
+ u64 last_node = hp->mdesc.node_sz / 16;
+
+ if (node == MDESC_NODE_NULL || node >= last_node)
+--
+2.30.2
+
diff --git a/board/raspberrypi/genimage-raspberrypicm4io-64.cfg b/board/raspberrypi/genimage-raspberrypicm4io-64.cfg
new file mode 100644
index 0000000000..32a7ca897d
--- /dev/null
+++ b/board/raspberrypi/genimage-raspberrypicm4io-64.cfg
@@ -0,0 +1,30 @@
+image boot.vfat {
+ vfat {
+ files = {
+ "bcm2711-rpi-cm4.dtb",
+ "rpi-firmware/cmdline.txt",
+ "rpi-firmware/config.txt",
+ "rpi-firmware/fixup.dat",
+ "rpi-firmware/start.elf",
+ "rpi-firmware/overlays",
+ "Image"
+ }
+ }
+ size = 32M
+}
+
+image sdcard.img {
+ hdimage {
+ }
+
+ partition boot {
+ partition-type = 0xC
+ bootable = "true"
+ image = "boot.vfat"
+ }
+
+ partition rootfs {
+ partition-type = 0x83
+ image = "rootfs.ext4"
+ }
+}
diff --git a/board/raspberrypi/genimage-raspberrypicm4io.cfg b/board/raspberrypi/genimage-raspberrypicm4io.cfg
new file mode 100644
index 0000000000..5a42bcfbb4
--- /dev/null
+++ b/board/raspberrypi/genimage-raspberrypicm4io.cfg
@@ -0,0 +1,30 @@
+image boot.vfat {
+ vfat {
+ files = {
+ "bcm2711-rpi-cm4.dtb",
+ "rpi-firmware/cmdline.txt",
+ "rpi-firmware/config.txt",
+ "rpi-firmware/fixup.dat",
+ "rpi-firmware/start.elf",
+ "rpi-firmware/overlays",
+ "zImage"
+ }
+ }
+ size = 32M
+}
+
+image sdcard.img {
+ hdimage {
+ }
+
+ partition boot {
+ partition-type = 0xC
+ bootable = "true"
+ image = "boot.vfat"
+ }
+
+ partition rootfs {
+ partition-type = 0x83
+ image = "rootfs.ext4"
+ }
+}
diff --git a/board/raspberrypi/readme.txt b/board/raspberrypi/readme.txt
index 8b3de6d251..62cb248633 100644
--- a/board/raspberrypi/readme.txt
+++ b/board/raspberrypi/readme.txt
@@ -9,6 +9,7 @@ These instructions apply to all models of the Raspberry Pi:
- the model B2 (aka Raspberry Pi 2)
- the model B3 (aka Raspberry Pi 3).
- the model B4 (aka Raspberry Pi 4).
+ - the model CM4 (aka Raspberry Pi Compute Module 4 and IO Board).
How to build it
===============
@@ -35,10 +36,26 @@ For model 3 B and B+:
$ make raspberrypi3_defconfig
+or for model 3 B and B+ (64 bit):
+
+ $ make raspberrypi3_64_defconfig
+
For model 4 B:
$ make raspberrypi4_defconfig
+or for model 4 B (64 bit):
+
+ $ make raspberrypi4_64_defconfig
+
+For model CM4 (on IO Board):
+
+ $ make raspberrypicm4io_defconfig
+
+or for CM4 (on IO Board - 64 bit):
+
+ $ make raspberrypicm4io_64_defconfig
+
Build the rootfs
----------------
@@ -63,6 +80,7 @@ After building, you should obtain this tree:
+-- bcm2710-rpi-3-b.dtb [1]
+-- bcm2710-rpi-3-b-plus.dtb [1]
+-- bcm2711-rpi-4-b.dtb [1]
+ +-- bcm2711-rpi-cm4.dtb [1]
+-- boot.vfat
+-- rootfs.ext4
+-- rpi-firmware/
@@ -97,3 +115,31 @@ Insert the SDcard into your Raspberry Pi, and power it up. Your new system
should come up now and start two consoles: one on the serial port on
the P1 header, one on the HDMI output where you can login using a USB
keyboard.
+
+How to write to CM4 eMMC memory
+===============================
+
+For CM4 modules without eMMC memory see above for booting from SD card,
+for CM4 moduels with eMMC memory proceed as following:
+
+- fit jumper on IO Board header J2 to disable eMMC boot
+- connect IO Board micro USB port (J11 USB slave) to your host linux system
+- power up CM4/IO Board (lsusb command should show a '0a5c:2711 Broadcom Corp.
+ BCM2711 Boot' device)
+- run 'sudo ./host/bin/rpiboot', output should look like the following:
+ Waiting for BCM2835/6/7/2711...
+ Loading embedded: bootcode4.bin
+ Sending bootcode.bin
+ Successful read 4 bytes
+ Waiting for BCM2835/6/7/2711...
+ Loading embedded: bootcode4.bin
+ Second stage boot server
+ Loading embedded: start4.elf
+ File read: start4.elf
+ Second stage boot server done
+
+- a USB mass storage device should show up (the CM4 eMMC memory), proceed
+ as described above to copy sdcard.img to it
+- power down CM4/IO Board
+- remove jumper on IO Board header J2 to re-enable eMMC boot
+- power up CM4/IO Board
diff --git a/board/raspberrypicm4io b/board/raspberrypicm4io
new file mode 120000
index 0000000000..fcdafc81ed
--- /dev/null
+++ b/board/raspberrypicm4io
@@ -0,0 +1 @@
+raspberrypi \ No newline at end of file
diff --git a/board/raspberrypicm4io-64 b/board/raspberrypicm4io-64
new file mode 120000
index 0000000000..fcdafc81ed
--- /dev/null
+++ b/board/raspberrypicm4io-64
@@ -0,0 +1 @@
+raspberrypi \ No newline at end of file
diff --git a/board/stmicroelectronics/stm32f469-disco/extlinux.conf b/board/stmicroelectronics/stm32f469-disco/extlinux.conf
new file mode 100644
index 0000000000..1c2db4383b
--- /dev/null
+++ b/board/stmicroelectronics/stm32f469-disco/extlinux.conf
@@ -0,0 +1,4 @@
+label stm32f469-disco-buildroot
+ kernel /zImage
+ devicetree /stm32f469-disco.dtb
+ append console=ttySTM0,115200 root=/dev/mmcblk0p2 rw rootfstype=ext2 rootwait earlyprintk consoleblank=0 ignore_loglevel
diff --git a/board/stmicroelectronics/stm32f469-disco/flash.sh b/board/stmicroelectronics/stm32f469-disco/flash.sh
index 0ec0beb2de..984d2b2599 100755
--- a/board/stmicroelectronics/stm32f469-disco/flash.sh
+++ b/board/stmicroelectronics/stm32f469-disco/flash.sh
@@ -13,8 +13,6 @@ ${OUTPUT_DIR}/host/bin/openocd -f board/stm32f469discovery.cfg \
-c "reset init" \
-c "flash probe 0" \
-c "flash info 0" \
- -c "flash write_image erase ${OUTPUT_DIR}/images/stm32f469i-disco.bin 0x08000000" \
- -c "flash write_image erase ${OUTPUT_DIR}/images/stm32f469-disco.dtb 0x08004000" \
- -c "flash write_image erase ${OUTPUT_DIR}/images/xipImage 0x08008000" \
+ -c "flash write_image erase ${OUTPUT_DIR}/images/u-boot.bin 0x08000000" \
-c "reset run" \
-c "shutdown"
diff --git a/board/stmicroelectronics/stm32f469-disco/genimage.cfg b/board/stmicroelectronics/stm32f469-disco/genimage.cfg
new file mode 100644
index 0000000000..bc945955fa
--- /dev/null
+++ b/board/stmicroelectronics/stm32f469-disco/genimage.cfg
@@ -0,0 +1,27 @@
+image boot.vfat {
+ vfat {
+ files = {
+ "zImage",
+ "stm32f469-disco.dtb",
+ "extlinux"
+ }
+ }
+ size = 16M
+}
+
+image sdcard.img {
+ hdimage {
+ }
+
+ partition u-boot {
+ partition-type = 0xC
+ image = "boot.vfat"
+ }
+
+ partition rootfs {
+ partition-type = 0x83
+ image = "rootfs.ext2"
+ size = 32M
+ }
+}
+
diff --git a/board/stmicroelectronics/stm32f469-disco/linux.fragment b/board/stmicroelectronics/stm32f469-disco/linux.fragment
new file mode 100644
index 0000000000..90f5e8a8ff
--- /dev/null
+++ b/board/stmicroelectronics/stm32f469-disco/linux.fragment
@@ -0,0 +1 @@
+# CONFIG_XIP_KERNEL is not set \ No newline at end of file
diff --git a/board/stmicroelectronics/stm32f469-disco/patches/linux/0001-ARM-stm32f249-disco-don-t-force-init-in-chosen-boota.patch b/board/stmicroelectronics/stm32f469-disco/patches/linux/0001-ARM-stm32f249-disco-don-t-force-init-in-chosen-boota.patch
deleted file mode 100644
index 750e477dfc..0000000000
--- a/board/stmicroelectronics/stm32f469-disco/patches/linux/0001-ARM-stm32f249-disco-don-t-force-init-in-chosen-boota.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From c8f8f33c2f0460a34c9545b01a7972a7ed2df0e9 Mon Sep 17 00:00:00 2001
-From: Christophe Priouzeau <christophe.priouzeau@st.com>
-Date: Mon, 29 May 2017 13:38:16 +0200
-Subject: [PATCH] ARM: stm32f249-disco: don't force init= in /chosen/bootargs
-
-There is no reason to override the kernel's default init= value, as
-this breaks userspace that assumes the kernel default of /init is
-used. Since stm32 is often used with a minimal bootloader
-(afboot-stm32) that doesn't provide any mechanism to override the DTB,
-we need to adjust the kernel command line in the Device Tree source.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Signed-off-by: Christophe Priouzeau <christophe.priouzeau@st.com>
----
- arch/arm/boot/dts/stm32f469-disco.dts | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/arch/arm/boot/dts/stm32f469-disco.dts b/arch/arm/boot/dts/stm32f469-disco.dts
-index 0dd56ef..93ee1b2 100644
---- a/arch/arm/boot/dts/stm32f469-disco.dts
-+++ b/arch/arm/boot/dts/stm32f469-disco.dts
-@@ -53,7 +53,7 @@
- compatible = "st,stm32f469i-disco", "st,stm32f469";
-
- chosen {
-- bootargs = "root=/dev/ram rdinit=/linuxrc";
-+ bootargs = "root=/dev/ram";
- stdout-path = "serial0:115200n8";
- };
-
---
-2.7.4
-
diff --git a/board/stmicroelectronics/stm32f469-disco/post-build.sh b/board/stmicroelectronics/stm32f469-disco/post-build.sh
new file mode 100755
index 0000000000..ec20fca7d9
--- /dev/null
+++ b/board/stmicroelectronics/stm32f469-disco/post-build.sh
@@ -0,0 +1,4 @@
+#!/bin/sh
+BOARD_DIR="$(dirname $0)"
+
+install -m 0644 -D $BOARD_DIR/extlinux.conf $BINARIES_DIR/extlinux/extlinux.conf
diff --git a/board/stmicroelectronics/stm32f469-disco/readme.txt b/board/stmicroelectronics/stm32f469-disco/readme.txt
index 888bff08a1..c1e1d30e69 100644
--- a/board/stmicroelectronics/stm32f469-disco/readme.txt
+++ b/board/stmicroelectronics/stm32f469-disco/readme.txt
@@ -15,5 +15,17 @@ Flashing
./board/stmicroelectronics/stm32f469-disco/flash.sh output/
-It will flash the minimal bootloader, the Device Tree Blob, and the
-kernel image which includes the root filesystem as initramfs.
+It will flash the U-boot bootloader.
+
+Creating SD card
+----------------
+
+Buildroot prepares an"sdcard.img" image in the output/images/ directory,
+ready to be dumped on a SD card. Launch the following command as root:
+
+ dd if=output/images/sdcard.img of=/dev/<your-sd-device>
+
+*** WARNING! This will destroy all the card content. Use with care! ***
+
+For details about the medium image layout and its content, see the
+definition in board/stmicroelectronics/stm32f469-disco/genimage.cfg.
diff --git a/board/uevm5432/genimage.cfg b/board/uevm5432/genimage.cfg
new file mode 100644
index 0000000000..f30033f023
--- /dev/null
+++ b/board/uevm5432/genimage.cfg
@@ -0,0 +1,26 @@
+image boot.vfat {
+ vfat {
+ files = {
+ "MLO",
+ "u-boot.img"
+ }
+ }
+ size = 8M
+}
+
+image sdcard.img {
+ hdimage {
+ }
+
+ partition boot {
+ partition-type = 0xC
+ bootable = "true"
+ image = "boot.vfat"
+ }
+
+ partition rootfs {
+ partition-type = 0x83
+ image = "rootfs.ext4"
+ size = 512M
+ }
+}
diff --git a/board/uevm5432/readme.txt b/board/uevm5432/readme.txt
new file mode 100644
index 0000000000..4569fbd84e
--- /dev/null
+++ b/board/uevm5432/readme.txt
@@ -0,0 +1,40 @@
+OMAP5432 uEVM
+=============
+
+This file documents the Buildroot support for the OMAP5432 uEVM[1], a
+single-board computer development platform based on the Texas Instruments
+OMAP5432 system on a chip (SoC).
+
+How to build
+============
+
+ $ make uevm5432_defconfig
+ $ make
+
+How to write the SD card
+========================
+
+Once the build process is finished you will have an image called "sdcard.img"
+in the output/images/ directory.
+
+Copy the bootable "sdcard.img" onto an SD card with "dd":
+
+ $ sudo dd if=output/images/sdcard.img of=/dev/sdX
+ $ sync
+
+Where /dev/sdX is the device node of your SD card (may be /dev/mmcblkX instead
+depending on setup).
+
+To boot from SD card, set the SYSBOOT switches S1 of your OMAP5432 uEVM to the
+following position:
+
+ ON x x
+ x x
+ 1 2 3 4
+
+Insert the micro SDcard in your OMAP5432 uEVM, and power it up with the POWER
+ON push button switch S3. The console is on the micro USB Debug UART, with
+serial settings 115200 8N1. Refer also to the quick start guide[2].
+
+[1]: https://svtronics.com/5432
+[2]: https://www.ti.com/lit/ug/swcu131/swcu131.pdf
diff --git a/boot/Config.in b/boot/Config.in
index b3adbfc8bc..ff98a49796 100644
--- a/boot/Config.in
+++ b/boot/Config.in
@@ -6,8 +6,11 @@ source "boot/at91bootstrap3/Config.in"
source "boot/at91dataflashboot/Config.in"
source "boot/arm-trusted-firmware/Config.in"
source "boot/barebox/Config.in"
+source "boot/beaglev-ddrinit/Config.in"
+source "boot/beaglev-secondboot/Config.in"
source "boot/binaries-marvell/Config.in"
source "boot/boot-wrapper-aarch64/Config.in"
+source "boot/edk2/Config.in"
source "boot/grub2/Config.in"
source "boot/gummiboot/Config.in"
source "boot/lpc32xxcdl/Config.in"
diff --git a/boot/arm-trusted-firmware/Config.in b/boot/arm-trusted-firmware/Config.in
index c06294040e..a5a8c5bfc3 100644
--- a/boot/arm-trusted-firmware/Config.in
+++ b/boot/arm-trusted-firmware/Config.in
@@ -1,7 +1,7 @@
config BR2_TARGET_ARM_TRUSTED_FIRMWARE
bool "ARM Trusted Firmware (ATF)"
depends on (BR2_ARM_CPU_ARMV8A || BR2_ARM_CPU_ARMV7A) && \
- BR2_TARGET_UBOOT
+ (BR2_TARGET_UBOOT || BR2_TARGET_EDK2)
help
Enable this option if you want to build the ATF for your ARM
based embedded device.
@@ -15,7 +15,7 @@ choice
Select the specific ATF version you want to use
config BR2_TARGET_ARM_TRUSTED_FIRMWARE_LATEST_VERSION
- bool "v2.4"
+ bool "v2.5"
config BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION
bool "Custom version"
@@ -43,7 +43,7 @@ config BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE
config BR2_TARGET_ARM_TRUSTED_FIRMWARE_VERSION
string
- default "v2.4" if BR2_TARGET_ARM_TRUSTED_FIRMWARE_LATEST_VERSION
+ default "v2.5" if BR2_TARGET_ARM_TRUSTED_FIRMWARE_LATEST_VERSION
default "custom" if BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL
default BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION \
if BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT
@@ -135,6 +135,19 @@ config BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_BL33_IMAGE
endif
+config BR2_TARGET_ARM_TRUSTED_FIRMWARE_EDK2_AS_BL33
+ bool "Use EDK2 as BL33"
+ depends on BR2_TARGET_EDK2
+ help
+ This option allows to embed EDK2 as the BL33 part of
+ the ARM Trusted Firmware. It ensures that the EDK2 package
+ gets built before ATF, and that the appropriate BL33
+ variable pointing to the EDK2 is passed when building ATF.
+
+ Do not choose this option if you intend to build ATF and EDK2
+ for the 'qemu_sbsa' platform. In this case, due to the EDK2
+ build system, the dependency between ATF and EDK is reversed.
+
config BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_TARGETS
string "Additional ATF make targets"
help
diff --git a/boot/arm-trusted-firmware/arm-trusted-firmware.hash b/boot/arm-trusted-firmware/arm-trusted-firmware.hash
index 970613f38d..1ab50a9e28 100644
--- a/boot/arm-trusted-firmware/arm-trusted-firmware.hash
+++ b/boot/arm-trusted-firmware/arm-trusted-firmware.hash
@@ -1,3 +1,3 @@
# Locally calculated
-sha256 4bfda9fdbe5022f2e88ad3344165f7d38a8ae4a0e2d91d44d9a1603425cc642d arm-trusted-firmware-v2.4.tar.gz
+sha256 d12a824afcc5cb90d005f9820f3274f1319cef1bb282e40a6a190b75900206d3 arm-trusted-firmware-v2.5.tar.gz
sha256 487795b8023df866259fa159bab94706b747fb0d623b7913f1c4955c0ab5f164 license.rst
diff --git a/boot/arm-trusted-firmware/arm-trusted-firmware.mk b/boot/arm-trusted-firmware/arm-trusted-firmware.mk
index 0597cecf71..279658712b 100644
--- a/boot/arm-trusted-firmware/arm-trusted-firmware.mk
+++ b/boot/arm-trusted-firmware/arm-trusted-firmware.mk
@@ -79,6 +79,15 @@ ARM_TRUSTED_FIRMWARE_MAKE_OPTS += AARCH32_SP=optee
endif
endif # BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE
+ifeq ($(BR2_TARGET_ARM_TRUSTED_FIRMWARE_EDK2_AS_BL33),y)
+ARM_TRUSTED_FIRMWARE_DEPENDENCIES += edk2
+# Since the flash device name vary between platforms, we use the variable
+# provided by the EDK2 package for this. Using this variable here is OK
+# as it will expand after all dependencies are resolved, inside _BUILD_CMDS.
+ARM_TRUSTED_FIRMWARE_MAKE_OPTS += \
+ BL33=$(BINARIES_DIR)/$(call qstrip,$(BR2_TARGET_EDK2_FD_NAME).fd)
+endif
+
ifeq ($(BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33),y)
ARM_TRUSTED_FIRMWARE_UBOOT_BIN = $(call qstrip,$(BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_BL33_IMAGE))
ARM_TRUSTED_FIRMWARE_MAKE_OPTS += BL33=$(BINARIES_DIR)/$(ARM_TRUSTED_FIRMWARE_UBOOT_BIN)
diff --git a/boot/at91bootstrap/at91bootstrap.hash b/boot/at91bootstrap/at91bootstrap.hash
index b1f963b825..d9f8db8897 100644
--- a/boot/at91bootstrap/at91bootstrap.hash
+++ b/boot/at91bootstrap/at91bootstrap.hash
@@ -1,2 +1,3 @@
# locally computed
sha256 d66192a274247f4baa39fa932eadf903d7add55641d89d30402f967c4f2282a5 AT91Bootstrap1.16.zip
+sha256 6a3ac5dfcf19e6bac1b1109d30d72818768a3855e2594b84fe2b012b5fe0e77b include/sdramc.h
diff --git a/boot/at91bootstrap/at91bootstrap.mk b/boot/at91bootstrap/at91bootstrap.mk
index c68b56b6ec..1a084756fd 100644
--- a/boot/at91bootstrap/at91bootstrap.mk
+++ b/boot/at91bootstrap/at91bootstrap.mk
@@ -7,6 +7,8 @@
AT91BOOTSTRAP_VERSION = 1.16
AT91BOOTSTRAP_SITE = ftp://www.at91.com/pub/at91bootstrap
AT91BOOTSTRAP_SOURCE = AT91Bootstrap$(AT91BOOTSTRAP_VERSION).zip
+AT91BOOTSTRAP_LICENSE = BSD-Source-Code
+AT91BOOTSTRAP_LICENSE_FILES = include/sdramc.h
AT91BOOTSTRAP_BOARD = $(call qstrip,$(BR2_TARGET_AT91BOOTSTRAP_BOARD))
AT91BOOTSTRAP_MEMORY = $(call qstrip,$(BR2_TARGET_AT91BOOTSTRAP_MEMORY))
diff --git a/boot/at91bootstrap3/Config.in b/boot/at91bootstrap3/Config.in
index 25ab30489f..f44597bc00 100644
--- a/boot/at91bootstrap3/Config.in
+++ b/boot/at91bootstrap3/Config.in
@@ -1,5 +1,5 @@
config BR2_TARGET_AT91BOOTSTRAP3
- bool "AT91 Bootstrap 3"
+ bool "AT91 Bootstrap 3+"
depends on BR2_arm926t || BR2_cortex_a5 || BR2_cortex_a7
help
AT91Bootstrap is a first level bootloader for the Atmel AT91
@@ -16,10 +16,13 @@ if BR2_TARGET_AT91BOOTSTRAP3
choice
- prompt "AT91 Bootstrap 3 version"
+ prompt "AT91 Bootstrap 3+ version"
config BR2_TARGET_AT91BOOTSTRAP3_LATEST_VERSION
- bool "3.9.3"
+ bool "4.0.0-rc2"
+
+config BR2_TARGET_AT91BOOTSTRAP3_LATEST_VERSION_3X
+ bool "3.10.2"
config BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT
bool "Custom Git repository"
@@ -51,7 +54,8 @@ endif
config BR2_TARGET_AT91BOOTSTRAP3_VERSION
string
- default "v3.9.3" if BR2_TARGET_AT91BOOTSTRAP3_LATEST_VERSION
+ default "v4.0.0-rc2" if BR2_TARGET_AT91BOOTSTRAP3_LATEST_VERSION
+ default "v3.10.2" if BR2_TARGET_AT91BOOTSTRAP3_LATEST_VERSION_3X
default BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION \
if BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT
default "custom" if BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_TARBALL
@@ -96,4 +100,12 @@ config BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_CONFIG_FILE
help
Path to the at91bootstrap3 configuration file
+config BR2_TARGET_AT91BOOTSTRAP3_NEEDS_PYTHON3
+ bool "needs host-python3"
+ help
+ Enable this option if the at91bootstrap build process needs
+ Python 3.x to be available on the host. This is needed in
+ some at91bootstrap configurations to use NAND/PMECC Python
+ scripts.
+
endif # BR2_TARGET_AT91BOOTSTRAP3
diff --git a/boot/at91bootstrap3/at91bootstrap3.hash b/boot/at91bootstrap3/at91bootstrap3.hash
index 6b6257b0ab..8b7453bbd4 100644
--- a/boot/at91bootstrap3/at91bootstrap3.hash
+++ b/boot/at91bootstrap3/at91bootstrap3.hash
@@ -1,3 +1,3 @@
# Locally calculated
-sha256 dd6a3c57c1c84fc3b18187bee3d139146a0e032dd1d8edea7b242730e0bc4fe1 at91bootstrap3-v3.9.3.tar.gz
-sha256 fd7a1ce5719bb7abf5e289da2e0ea8c933af3ba0f6ad03dbdbd2b7f54a77498a main.c
+sha256 33e4ba431af93a4fc2e81c1458cd31901b9f69c583ebe4c74ca78c0846479bfd at91bootstrap3-v3.10.2.tar.gz
+sha256 b5d5f042297cad0d091f7d8734e61eb9ec7b6020898e086503fb5f8bc71fb9fc at91bootstrap3-v4.0.0-rc2.tar.gz
diff --git a/boot/at91bootstrap3/at91bootstrap3.mk b/boot/at91bootstrap3/at91bootstrap3.mk
index a942afcdc9..b253129dfb 100644
--- a/boot/at91bootstrap3/at91bootstrap3.mk
+++ b/boot/at91bootstrap3/at91bootstrap3.mk
@@ -20,9 +20,6 @@ AT91BOOTSTRAP3_SITE = $(call github,linux4sam,at91bootstrap,$(AT91BOOTSTRAP3_VER
endif
AT91BOOTSTRAP3_LICENSE = Atmel License
-ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_LATEST_VERSION),y)
-AT91BOOTSTRAP3_LICENSE_FILES = main.c
-endif
AT91BOOTSTRAP3_CPE_ID_VENDOR = linux4sam
AT91BOOTSTRAP3_CPE_ID_PRODUCT = at91bootstrap
@@ -30,6 +27,10 @@ AT91BOOTSTRAP3_CPE_ID_PRODUCT = at91bootstrap
AT91BOOTSTRAP3_INSTALL_IMAGES = YES
AT91BOOTSTRAP3_INSTALL_TARGET = NO
+ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_NEEDS_PYTHON3),y)
+AT91BOOTSTRAP3_DEPENDENCIES += host-python3
+endif
+
AT91BOOTSTRAP3_CUSTOM_PATCH_DIR = \
$(call qstrip,$(BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_PATCH_DIR))
@@ -48,7 +49,7 @@ define AT91BOOTSTRAP3_BUILD_CMDS
endef
define AT91BOOTSTRAP3_INSTALL_IMAGES_CMDS
- cp $(@D)/binaries/*.bin $(BINARIES_DIR)
+ cp $(wildcard $(@D)/build/binaries/*.bin $(@D)/binaries/*.bin) $(BINARIES_DIR)
endef
ifeq ($(BR2_TARGET_AT91BOOTSTRAP3_USE_DEFCONFIG),y)
diff --git a/boot/beaglev-ddrinit/Config.in b/boot/beaglev-ddrinit/Config.in
new file mode 100644
index 0000000000..7ca92a7b9b
--- /dev/null
+++ b/boot/beaglev-ddrinit/Config.in
@@ -0,0 +1,9 @@
+config BR2_TARGET_BEAGLEV_DDRINIT
+ bool "beaglev-ddrinit"
+ depends on BR2_riscv
+ depends on BR2_HOSTARCH = "x86_64" # host-riscv64-elf-toolchain
+ help
+ This package builds the DDRinit firmware used on the BeagleV
+ platform.
+
+ https://github.com/starfive-tech/beagle_ddrinit
diff --git a/boot/beaglev-ddrinit/beaglev-ddrinit.hash b/boot/beaglev-ddrinit/beaglev-ddrinit.hash
new file mode 100644
index 0000000000..7f43346696
--- /dev/null
+++ b/boot/beaglev-ddrinit/beaglev-ddrinit.hash
@@ -0,0 +1,2 @@
+# Locally computed
+sha256 df58c3da7a6f429095f4d56e7f1f5b7c855a0cbe82a2569586ce0c5fdd1bf256 beaglev-ddrinit-2e2f6faaf1059b61bb06ea00404199d1de55f201.tar.gz
diff --git a/boot/beaglev-ddrinit/beaglev-ddrinit.mk b/boot/beaglev-ddrinit/beaglev-ddrinit.mk
new file mode 100644
index 0000000000..2f1ce3ee87
--- /dev/null
+++ b/boot/beaglev-ddrinit/beaglev-ddrinit.mk
@@ -0,0 +1,29 @@
+################################################################################
+#
+# beaglev-ddrinit
+#
+################################################################################
+
+# Commit on the 'starfive' branch
+BEAGLEV_DDRINIT_VERSION = 2e2f6faaf1059b61bb06ea00404199d1de55f201
+BEAGLEV_DDRINIT_SITE = $(call github,starfive-tech,beagle_ddrinit,$(BEAGLEV_DDRINIT_VERSION))
+BEAGLEV_DDRINIT_INSTALL_TARGET = NO
+BEAGLEV_DDRINIT_INSTALL_IMAGES = YES
+BEAGLEV_DDRINIT_DEPENDENCIES = host-riscv64-elf-toolchain
+# unfortunately, no real license file, but several sources files are
+# under GPL-2.0+, making the whole work GPL-2.0+
+BEAGLEV_DDRINIT_LICENSE = GPL-2.0+
+
+define BEAGLEV_DDRINIT_BUILD_CMDS
+ $(MAKE) -C $(@D)/build \
+ CROSSCOMPILE=$(HOST_DIR)/bin/riscv64-unknown-elf- \
+ SUFFIX=buildroot \
+ GIT_VERSION=$(BEAGLEV_DDRINIT_VERSION)
+endef
+
+define BEAGLEV_DDRINIT_INSTALL_IMAGES_CMDS
+ $(INSTALL) -D -m 0644 $(@D)/build/ddrinit-2133-buildroot.bin.out \
+ $(BINARIES_DIR)/ddrinit-2133-buildroot.bin.out
+endef
+
+$(eval $(generic-package))
diff --git a/boot/beaglev-secondboot/Config.in b/boot/beaglev-secondboot/Config.in
new file mode 100644
index 0000000000..a9695fc138
--- /dev/null
+++ b/boot/beaglev-secondboot/Config.in
@@ -0,0 +1,9 @@
+config BR2_TARGET_BEAGLEV_SECONDBOOT
+ bool "beaglev-secondboot"
+ depends on BR2_riscv
+ depends on BR2_HOSTARCH = "x86_64" # host-riscv64-elf-toolchain
+ help
+ This package builds the SecondBoot firmware used on the
+ BeagleV platform.
+
+ https://github.com/starfive-tech/beagle_secondBoot
diff --git a/boot/beaglev-secondboot/beaglev-secondboot.hash b/boot/beaglev-secondboot/beaglev-secondboot.hash
new file mode 100644
index 0000000000..e0ca0e149d
--- /dev/null
+++ b/boot/beaglev-secondboot/beaglev-secondboot.hash
@@ -0,0 +1,2 @@
+# Locally computed
+sha256 56519b20a8ac2b68770cacd5158190dfcb2b3762a759b1c44582ca25ffbccc5d beaglev-secondboot-e976d186e69a1a84884265b0689626fa254a950d.tar.gz
diff --git a/boot/beaglev-secondboot/beaglev-secondboot.mk b/boot/beaglev-secondboot/beaglev-secondboot.mk
new file mode 100644
index 0000000000..6d904b02ba
--- /dev/null
+++ b/boot/beaglev-secondboot/beaglev-secondboot.mk
@@ -0,0 +1,29 @@
+################################################################################
+#
+# beaglev-secondboot
+#
+################################################################################
+
+# Commit on the 'starfive' branch
+BEAGLEV_SECONDBOOT_VERSION = e976d186e69a1a84884265b0689626fa254a950d
+BEAGLEV_SECONDBOOT_SITE = $(call github,starfive-tech,beagle_secondBoot,$(BEAGLEV_SECONDBOOT_VERSION))
+BEAGLEV_SECONDBOOT_INSTALL_TARGET = NO
+BEAGLEV_SECONDBOOT_INSTALL_IMAGES = YES
+BEAGLEV_SECONDBOOT_DEPENDENCIES = host-riscv64-elf-toolchain
+# unfortunately, no real license file, but several sources files are
+# under GPL-2.0+, making the whole work GPL-2.0+
+BEAGLEV_SECONDBOOT_LICENSE = GPL-2.0+
+
+define BEAGLEV_SECONDBOOT_BUILD_CMDS
+ $(MAKE) -C $(@D)/build \
+ CROSSCOMPILE=$(HOST_DIR)/bin/riscv64-unknown-elf- \
+ SUFFIX=buildroot \
+ GIT_VERSION=$(BEAGLEV_SECONDBOOT_VERSION)
+endef
+
+define BEAGLEV_SECONDBOOT_INSTALL_IMAGES_CMDS
+ $(INSTALL) -D -m 0644 $(@D)/build/bootloader-BEAGLEV-buildroot.bin.out \
+ $(BINARIES_DIR)/bootloader-BEAGLEV-buildroot.bin.out
+endef
+
+$(eval $(generic-package))
diff --git a/boot/edk2/Config.in b/boot/edk2/Config.in
new file mode 100644
index 0000000000..150806899f
--- /dev/null
+++ b/boot/edk2/Config.in
@@ -0,0 +1,108 @@
+config BR2_TARGET_EDK2
+ bool "EDK2"
+ depends on BR2_x86_64 || BR2_aarch64
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5
+ select BR2_PACKAGE_EDK2_PLATFORMS
+ help
+ EDK II is a modern, feature-rich, cross-platform firmware
+ development environment for the UEFI and PI specifications.
+
+ https://github.com/tianocore/tianocore.github.io/wiki/EDK-II
+
+if BR2_TARGET_EDK2
+
+choice
+ prompt "Platform"
+ default BR2_TARGET_EDK2_PLATFORM_OVMF_X64 if BR2_x86_64
+ default BR2_TARGET_EDK2_PLATFORM_ARM_VIRT_QEMU if BR2_aarch64
+
+config BR2_TARGET_EDK2_PLATFORM_OVMF_X64
+ bool "x86-64"
+ depends on BR2_x86_64
+ help
+ Platform configuration for a generic x86-64 target.
+ This platform will boot from flash address 0x0.
+ It should therefore be used as the first bootloader.
+
+config BR2_TARGET_EDK2_PLATFORM_ARM_VIRT_QEMU
+ bool "ARM Virt Qemu (flash)"
+ depends on BR2_aarch64
+ help
+ Platform configuration for QEMU targeting the Virt machine.
+ This platform will only boot from flash address 0x0.
+ It should therefore be used as the first bootloader.
+
+config BR2_TARGET_EDK2_PLATFORM_ARM_VIRT_QEMU_KERNEL
+ bool "ARM Virt Qemu (kernel)"
+ depends on BR2_aarch64
+ help
+ Platform configuration for QEMU targeting the Virt machine.
+ This platform can boot from either flash address 0x0 or via
+ the Linux boot protocol. It can therefore be loaded by a
+ previous bootloader like ARM Trusted Firmware or OP-TEE.
+
+config BR2_TARGET_EDK2_PLATFORM_ARM_SGI575
+ bool "ARM SGI-575"
+ depends on BR2_aarch64
+ help
+ Platform configuration for ARM SGI-575 on ARM's
+ Fixed Virtual Platform (FVP).
+
+config BR2_TARGET_EDK2_PLATFORM_ARM_VEXPRESS_FVP_AARCH64
+ bool "ARM VExpress FVP Aarch64"
+ depends on BR2_aarch64
+ help
+ Platform configuration for ARM Versatile Express targeting
+ the Aarch64 Fixed Virtual Platform (FVP).
+
+config BR2_TARGET_EDK2_PLATFORM_SOCIONEXT_DEVELOPERBOX
+ bool "Socionext DeveloperBox"
+ depends on BR2_aarch64
+ depends on BR2_TARGET_ARM_TRUSTED_FIRMWARE
+ depends on !BR2_TARGET_ARM_TRUSTED_FIRMWARE_EDK2_AS_BL33
+ select BR2_PACKAGE_HOST_DTC
+ select BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP
+ help
+ Platform configuration for Socionext SynQuacer DeveloperBox
+ (SC2A11).
+
+comment "Socionext DeveloperBox depends on ATF not using EDK2 as BL33"
+ depends on BR2_TARGET_ARM_TRUSTED_FIRMWARE_EDK2_AS_BL33
+
+config BR2_TARGET_EDK2_PLATFORM_SOLIDRUN_ARMADA80X0MCBIN
+ bool "SolidRun MacchiatoBin"
+ depends on BR2_aarch64
+ depends on BR2_TARGET_ARM_TRUSTED_FIRMWARE
+ select BR2_PACKAGE_HOST_DTC
+ select BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP
+ help
+ Platform configuration for the SolidRun MacchiatoBin.
+
+config BR2_TARGET_EDK2_PLATFORM_QEMU_SBSA
+ bool "QEMU SBSA"
+ depends on BR2_aarch64
+ depends on BR2_TARGET_ARM_TRUSTED_FIRMWARE
+ depends on !BR2_TARGET_ARM_TRUSTED_FIRMWARE_EDK2_AS_BL33
+ help
+ Platform configuration for QEMU targeting the SBSA reference
+ machine.
+
+comment "QEMU SBSA depends on ATF not using EDK2 as BL33"
+ depends on BR2_TARGET_ARM_TRUSTED_FIRMWARE_EDK2_AS_BL33
+
+endchoice
+
+config BR2_TARGET_EDK2_FD_NAME
+ string
+ default "OVMF" if BR2_TARGET_EDK2_PLATFORM_OVMF_X64
+ default "QEMU_EFI" if BR2_TARGET_EDK2_PLATFORM_ARM_VIRT_QEMU
+ default "QEMU_EFI" if BR2_TARGET_EDK2_PLATFORM_ARM_VIRT_QEMU_KERNEL
+ default "BL33_AP_UEFI" if BR2_TARGET_EDK2_PLATFORM_ARM_SGI575
+ default "FVP_AARCH64_EFI" if BR2_TARGET_EDK2_PLATFORM_ARM_VEXPRESS_FVP_AARCH64
+ default "FVP_AARCH64_EFI" if BR2_TARGET_EDK2_PLATFORM_SOCIONEXT_DEVELOPERBOX
+ default "ARMADA_EFI" if BR2_TARGET_EDK2_PLATFORM_SOLIDRUN_ARMADA80X0MCBIN
+
+endif
+
+comment "EDK2 needs a toolchain w/ gcc >= 5"
+ depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_5
diff --git a/boot/edk2/edk2.hash b/boot/edk2/edk2.hash
new file mode 100644
index 0000000000..f28e9ce841
--- /dev/null
+++ b/boot/edk2/edk2.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256 04791c13b414a6d1877182a6d565cb762c30aa63e49bb4d495fca68ef4dd209d edk2-edk2-stable202102-br1.tar.gz
+sha256 50ce20c9cfdb0e19ee34fe0a51fc0afe961f743697b068359ab2f862b494df80 License.txt
diff --git a/boot/edk2/edk2.mk b/boot/edk2/edk2.mk
new file mode 100644
index 0000000000..fabd0c5b45
--- /dev/null
+++ b/boot/edk2/edk2.mk
@@ -0,0 +1,151 @@
+################################################################################
+#
+# edk2
+#
+################################################################################
+
+EDK2_VERSION = edk2-stable202102
+EDK2_SITE = https://github.com/tianocore/edk2
+EDK2_SITE_METHOD = git
+EDK2_LICENSE = BSD-2-Clause
+EDK2_LICENSE_FILE = License.txt
+EDK2_CPE_ID_VENDOR = tianocore
+EDK2_DEPENDENCIES = edk2-platforms host-python3 host-acpica host-util-linux
+EDK2_INSTALL_TARGET = NO
+EDK2_INSTALL_IMAGES = YES
+
+ifeq ($(BR2_x86_64),y)
+EDK2_ARCH = X64
+else ifeq ($(BR2_aarch64),y)
+EDK2_ARCH = AARCH64
+endif
+
+ifeq ($(BR2_ENABLE_DEBUG),y)
+EDK2_BUILD_TYPE = DEBUG
+else
+EDK2_BUILD_TYPE = RELEASE
+endif
+
+# Build system notes.
+#
+# The EDK2 build system is rather unique, so here are a few useful notes.
+#
+# First, builds rely heavily on Git submodules to fetch various dependencies
+# into specific directory structures. It might be possible to work around this
+# and rely on Buildroot's infrastructure, but using Git submodules greatly
+# simplifies this already complicated build system.
+#
+# Second, the build system is spread across various commands and stages.
+# Therefore, all build variables needs to be exported to be available
+# accordingly. The first stage will build $(@D)/BaseTools which contains
+# various tools and scripts for the host.
+#
+# Third, where applicable, the dependency direction between EDK2 and
+# ARM Trusted Firmware (ATF) will go in different direction for different
+# platforms. Most commonly, ATF will depend on EDK2 via the BL33 payload.
+# But for some platforms (e.g. QEMU SBSA or DeveloperBox) EDK2 will package
+# the ATF images within its own build system. In such cases, intermediary
+# "EDK2 packages" will be built in $(EDK2_BUILD_PACKAGES) in order for EDK2
+# to be able to use them in subsequent build stages.
+#
+# For more information about the build setup:
+# https://edk2-docs.gitbook.io/edk-ii-build-specification/4_edk_ii_build_process_overview
+
+EDK2_GIT_SUBMODULES = YES
+EDK2_BUILD_PACKAGES = $(@D)/Build/Buildroot
+EDK2_PACKAGES_PATH = $(@D):$(EDK2_BUILD_PACKAGES):$(STAGING_DIR)/usr/share/edk2-platforms
+
+ifeq ($(BR2_TARGET_EDK2_PLATFORM_OVMF_X64),y)
+EDK2_DEPENDENCIES += host-nasm
+EDK2_PACKAGE_NAME = OvmfPkg
+EDK2_PLATFORM_NAME = OvmfPkgX64
+EDK2_BUILD_DIR = OvmfX64
+
+else ifeq ($(BR2_TARGET_EDK2_PLATFORM_ARM_VIRT_QEMU),y)
+EDK2_PACKAGE_NAME = ArmVirtPkg
+EDK2_PLATFORM_NAME = ArmVirtQemu
+EDK2_BUILD_DIR = $(EDK2_PLATFORM_NAME)-$(EDK2_ARCH)
+
+else ifeq ($(BR2_TARGET_EDK2_PLATFORM_ARM_VIRT_QEMU_KERNEL),y)
+EDK2_PACKAGE_NAME = ArmVirtPkg
+EDK2_PLATFORM_NAME = ArmVirtQemuKernel
+EDK2_BUILD_DIR = $(EDK2_PLATFORM_NAME)-$(EDK2_ARCH)
+
+else ifeq ($(BR2_TARGET_EDK2_PLATFORM_ARM_VEXPRESS_FVP_AARCH64),y)
+EDK2_PACKAGE_NAME = Platform/ARM/VExpressPkg
+EDK2_PLATFORM_NAME = ArmVExpress-FVP-AArch64
+EDK2_BUILD_DIR = $(EDK2_PLATFORM_NAME)
+
+else ifeq ($(BR2_TARGET_EDK2_PLATFORM_SOCIONEXT_DEVELOPERBOX),y)
+EDK2_DEPENDENCIES += host-dtc arm-trusted-firmware
+EDK2_PACKAGE_NAME = Platform/Socionext/DeveloperBox
+EDK2_PLATFORM_NAME = DeveloperBox
+EDK2_BUILD_DIR = $(EDK2_PLATFORM_NAME)
+EDK2_BUILD_ENV += DTC_PREFIX=$(HOST_DIR)/bin/
+EDK2_BUILD_OPTS += -D DO_X86EMU=TRUE
+EDK2_PRE_BUILD_HOOKS += EDK2_PRE_BUILD_SOCIONEXT_DEVELOPERBOX
+
+define EDK2_PRE_BUILD_SOCIONEXT_DEVELOPERBOX
+ mkdir -p $(EDK2_BUILD_PACKAGES)/Platform/Socionext/DeveloperBox
+ $(ARM_TRUSTED_FIRMWARE_DIR)/tools/fiptool/fiptool create \
+ --tb-fw $(BINARIES_DIR)/bl31.bin \
+ --soc-fw $(BINARIES_DIR)/bl31.bin \
+ --scp-fw $(BINARIES_DIR)/bl31.bin \
+ $(EDK2_BUILD_PACKAGES)/Platform/Socionext/DeveloperBox/fip_all_arm_tf.bin
+endef
+
+else ifeq ($(BR2_TARGET_EDK2_PLATFORM_SOLIDRUN_ARMADA80X0MCBIN),y)
+EDK2_DEPENDENCIES += host-dtc arm-trusted-firmware
+EDK2_PACKAGE_NAME = Platform/SolidRun/Armada80x0McBin
+EDK2_PLATFORM_NAME = Armada80x0McBin
+EDK2_BUILD_DIR = $(EDK2_PLATFORM_NAME)-$(EDK2_ARCH)
+EDK2_BUILD_ENV += DTC_PREFIX=$(HOST_DIR)/bin/
+EDK2_BUILD_OPTS += -D INCLUDE_TFTP_COMMAND
+
+else ifeq ($(BR2_TARGET_EDK2_PLATFORM_QEMU_SBSA),y)
+EDK2_DEPENDENCIES += arm-trusted-firmware
+EDK2_PACKAGE_NAME = Platform/Qemu/SbsaQemu
+EDK2_PLATFORM_NAME = SbsaQemu
+EDK2_BUILD_DIR = $(EDK2_PLATFORM_NAME)
+EDK2_PRE_BUILD_HOOKS += EDK2_PRE_BUILD_QEMU_SBSA
+
+define EDK2_PRE_BUILD_QEMU_SBSA
+ mkdir -p $(EDK2_BUILD_PACKAGES)/Platform/Qemu/Sbsa
+ ln -srf $(BINARIES_DIR)/{bl1.bin,fip.bin} $(EDK2_BUILD_PACKAGES)/Platform/Qemu/Sbsa/
+endef
+
+endif
+
+EDK2_BASETOOLS_OPTS = \
+ EXTRA_LDFLAGS="$(HOST_LDFLAGS)" \
+ EXTRA_OPTFLAGS="$(HOST_CPPFLAGS)"
+
+EDK2_BUILD_ENV += \
+ WORKSPACE=$(@D) \
+ PACKAGES_PATH=$(EDK2_PACKAGES_PATH) \
+ PYTHON_COMMAND=$(HOST_DIR)/bin/python3 \
+ IASL_PREFIX=$(HOST_DIR)/bin/ \
+ NASM_PREFIX=$(HOST_DIR)/bin/ \
+ GCC5_$(EDK2_ARCH)_PREFIX=$(TARGET_CROSS)
+
+EDK2_BUILD_OPTS += \
+ -t GCC5 \
+ -n $(BR2_JLEVEL) \
+ -a $(EDK2_ARCH) \
+ -b $(EDK2_BUILD_TYPE) \
+ -p $(EDK2_PACKAGE_NAME)/$(EDK2_PLATFORM_NAME).dsc
+
+define EDK2_BUILD_CMDS
+ mkdir -p $(EDK2_BUILD_PACKAGES)
+ export $(EDK2_BUILD_ENV) && \
+ unset ARCH && \
+ source $(@D)/edksetup.sh && \
+ $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/BaseTools $(EDK2_BASETOOLS_OPTS) && \
+ build $(EDK2_BUILD_OPTS) all
+endef
+
+define EDK2_INSTALL_IMAGES_CMDS
+ cp -f $(@D)/Build/$(EDK2_BUILD_DIR)/$(EDK2_BUILD_TYPE)_GCC5/FV/*.fd $(BINARIES_DIR)
+endef
+
+$(eval $(generic-package))
diff --git a/boot/opensbi/0001-Makefile-Don-t-specify-mabi-or-march.patch b/boot/opensbi/0.9/0001-Makefile-Don-t-specify-mabi-or-march.patch
index 5f554a6c24..5f554a6c24 100644
--- a/boot/opensbi/0001-Makefile-Don-t-specify-mabi-or-march.patch
+++ b/boot/opensbi/0.9/0001-Makefile-Don-t-specify-mabi-or-march.patch
diff --git a/boot/opensbi/0.9/0002-Makefile-unconditionally-disable-SSP.patch b/boot/opensbi/0.9/0002-Makefile-unconditionally-disable-SSP.patch
new file mode 100644
index 0000000000..c4edd37f1a
--- /dev/null
+++ b/boot/opensbi/0.9/0002-Makefile-unconditionally-disable-SSP.patch
@@ -0,0 +1,53 @@
+From e389d5fbc296e496db15368b2b621e0f178f7f34 Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Sat, 8 May 2021 21:28:10 +0200
+Subject: [PATCH] Makefile: unconditionally disable SSP
+
+Though -nostdlib is passed in {C,+AS,DTSCPP}FLAGS, -fno-stack-protector
+must also be passed to avoid linking errors related to undefined
+references to '__stack_chk_guard' and '__stack_chk_fail' if toolchain
+enforces -fstack-protector.
+
+Fixes:
+ - https://gitlab.com/kubu93/buildroot/-/jobs/1247043359
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Upstream status: https://github.com/riscv/opensbi/pull/211]
+---
+ Makefile | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index eeffe6b..1419360 100644
+--- a/Makefile
++++ b/Makefile
+@@ -203,7 +203,7 @@ GENFLAGS += $(libsbiutils-genflags-y)
+ GENFLAGS += $(platform-genflags-y)
+ GENFLAGS += $(firmware-genflags-y)
+
+-CFLAGS = -g -Wall -Werror -ffreestanding -nostdlib -fno-strict-aliasing -O2
++CFLAGS = -g -Wall -Werror -ffreestanding -nostdlib -fno-stack-protector -fno-strict-aliasing -O2
+ CFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
+ CFLAGS += -mno-save-restore -mstrict-align
+ CFLAGS += -mabi=$(PLATFORM_RISCV_ABI) -march=$(PLATFORM_RISCV_ISA)
+@@ -217,7 +217,7 @@ CPPFLAGS += $(GENFLAGS)
+ CPPFLAGS += $(platform-cppflags-y)
+ CPPFLAGS += $(firmware-cppflags-y)
+
+-ASFLAGS = -g -Wall -nostdlib -D__ASSEMBLY__
++ASFLAGS = -g -Wall -nostdlib -fno-stack-protector -D__ASSEMBLY__
+ ASFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
+ ASFLAGS += -mno-save-restore -mstrict-align
+ ASFLAGS += -mabi=$(PLATFORM_RISCV_ABI) -march=$(PLATFORM_RISCV_ISA)
+@@ -236,7 +236,7 @@ MERGEFLAGS += -r
+ MERGEFLAGS += -b elf$(PLATFORM_RISCV_XLEN)-littleriscv
+ MERGEFLAGS += -m elf$(PLATFORM_RISCV_XLEN)lriscv
+
+-DTSCPPFLAGS = $(CPPFLAGS) -nostdinc -nostdlib -fno-builtin -D__DTS__ -x assembler-with-cpp
++DTSCPPFLAGS = $(CPPFLAGS) -nostdinc -nostdlib -fno-stack-protector -fno-builtin -D__DTS__ -x assembler-with-cpp
+
+ # Setup functions for compilation
+ define dynamic_flags
+--
+2.30.2
+
diff --git a/boot/opensbi/Config.in b/boot/opensbi/Config.in
index b9b0ace8af..632eeec88d 100644
--- a/boot/opensbi/Config.in
+++ b/boot/opensbi/Config.in
@@ -13,6 +13,57 @@ config BR2_TARGET_OPENSBI
https://github.com/riscv/opensbi.git
if BR2_TARGET_OPENSBI
+choice
+ prompt "OpenSBI Version"
+ help
+ Select the specific OpenSBI version you want to use
+
+config BR2_TARGET_OPENSBI_LATEST_VERSION
+ bool "0.9"
+
+config BR2_TARGET_OPENSBI_CUSTOM_VERSION
+ bool "Custom version"
+ help
+ This option allows to use a specific official versions
+
+config BR2_TARGET_OPENSBI_CUSTOM_TARBALL
+ bool "Custom tarball"
+
+config BR2_TARGET_OPENSBI_CUSTOM_GIT
+ bool "Custom Git repository"
+
+endchoice
+
+config BR2_TARGET_OPENSBI_CUSTOM_VERSION_VALUE
+ string "OpenSBI version"
+ depends on BR2_TARGET_OPENSBI_CUSTOM_VERSION
+
+config BR2_TARGET_OPENSBI_CUSTOM_TARBALL_LOCATION
+ string "URL of custom OpenSBI tarball"
+ depends on BR2_TARGET_OPENSBI_CUSTOM_TARBALL
+
+if BR2_TARGET_OPENSBI_CUSTOM_GIT
+
+config BR2_TARGET_OPENSBI_CUSTOM_REPO_URL
+ string "URL of custom repository"
+
+config BR2_TARGET_OPENSBI_CUSTOM_REPO_VERSION
+ string "Custom repository version"
+ help
+ Revision to use in the typical format used by Git. E.G. a
+ sha id, a tag, branch, ..
+
+endif
+
+config BR2_TARGET_OPENSBI_VERSION
+ string
+ default "0.9" if BR2_TARGET_OPENSBI_LATEST_VERSION
+ default BR2_TARGET_OPENSBI_CUSTOM_VERSION_VALUE \
+ if BR2_TARGET_OPENSBI_CUSTOM_VERSION
+ default "custom" if BR2_TARGET_OPENSBI_CUSTOM_TARBALL
+ default BR2_TARGET_OPENSBI_CUSTOM_REPO_VERSION \
+ if BR2_TARGET_OPENSBI_CUSTOM_GIT
+
config BR2_TARGET_OPENSBI_PLAT
string "OpenSBI Platform"
default ""
@@ -23,12 +74,39 @@ config BR2_TARGET_OPENSBI_PLAT
the platform specific static library libplatsbi.a and firmware
examples are built.
+config BR2_TARGET_OPENSBI_INSTALL_DYNAMIC_IMG
+ bool "Install fw_dynamic image"
+ default y if BR2_TARGET_OPENSBI_PLAT != ""
+ help
+ This installs the fw_dynamic image.
+
+config BR2_TARGET_OPENSBI_INSTALL_JUMP_IMG
+ bool "Install fw_jump image"
+ default y if BR2_TARGET_OPENSBI_PLAT != ""
+ help
+ This installs the fw_jump image.
+
+config BR2_TARGET_OPENSBI_INSTALL_PAYLOAD_IMG
+ bool "Install fw_payload image"
+ help
+ This option enables the installation of the fw_paylaod
+ image.
+
config BR2_TARGET_OPENSBI_LINUX_PAYLOAD
bool "Include Linux as OpenSBI Payload"
depends on BR2_TARGET_OPENSBI_PLAT != ""
depends on BR2_LINUX_KERNEL
depends on BR2_LINUX_KERNEL_IMAGE
+ select BR2_TARGET_OPENSBI_INSTALL_PAYLOAD_IMG
help
Build OpenSBI with the Linux kernel as a Payload.
+config BR2_TARGET_OPENSBI_UBOOT_PAYLOAD
+ bool "Include U-Boot as OpenSBI Payload"
+ depends on BR2_TARGET_OPENSBI_PLAT != ""
+ depends on BR2_TARGET_UBOOT
+ select BR2_TARGET_OPENSBI_INSTALL_PAYLOAD_IMG
+ help
+ Build OpenSBI with the U-Boot as a Payload.
+
endif
diff --git a/boot/opensbi/opensbi.hash b/boot/opensbi/opensbi.hash
index f7280b890b..3b6d97c42d 100644
--- a/boot/opensbi/opensbi.hash
+++ b/boot/opensbi/opensbi.hash
@@ -1,3 +1,3 @@
# locally computed
-sha256 17e048ac765e92e15f7436b604452614cf88dc2bcbbaab18cdc024f3fdd4c575 opensbi-0.8.tar.gz
+sha256 60f995cb3cd03e3cf5e649194d3395d0fe67499fd960a36cf7058a4efde686f0 opensbi-0.9.tar.gz
sha256 82d13fb1bf6bb162629deeea9eb9c117e74548d3b707e478967691fe79a68e21 COPYING.BSD
diff --git a/boot/opensbi/opensbi.mk b/boot/opensbi/opensbi.mk
index 60b87c268d..a525b8aea3 100644
--- a/boot/opensbi/opensbi.mk
+++ b/boot/opensbi/opensbi.mk
@@ -4,13 +4,32 @@
#
################################################################################
-OPENSBI_VERSION = 0.8
+OPENSBI_VERSION = $(call qstrip,$(BR2_TARGET_OPENSBI_VERSION))
+
+ifeq ($(OPENSBI_VERSION),custom)
+# Handle custom OpenSBI tarballs as specified by the configuration
+OPENSBI_TARBALL = $(call qstrip,$(BR2_TARGET_OPENSBI_CUSTOM_TARBALL_LOCATION))
+OPENSBI_SITE = $(patsubst %/,%,$(dir $(OPENSBI_TARBALL)))
+OPENSBI_SOURCE = $(notdir $(OPENSBI_TARBALL))
+else ifeq ($(BR2_TARGET_OPENSBI_CUSTOM_GIT),y)
+OPENSBI_SITE = $(call qstrip,$(BR2_TARGET_OPENSBI_CUSTOM_REPO_URL))
+OPENSBI_SITE_METHOD = git
+else
+# Handle official OpenSBI versions
OPENSBI_SITE = $(call github,riscv,opensbi,v$(OPENSBI_VERSION))
+endif
+
OPENSBI_LICENSE = BSD-2-Clause
+ifeq ($(BR2_TARGET_OPENSBI_LATEST_VERSION),y)
OPENSBI_LICENSE_FILES = COPYING.BSD
+endif
OPENSBI_INSTALL_TARGET = NO
OPENSBI_INSTALL_STAGING = YES
+ifeq ($(BR2_TARGET_OPENSBI)$(BR2_TARGET_OPENSBI_LATEST_VERSION),y)
+BR_NO_CHECK_HASH_FOR += $(OPENSBI_SOURCE)
+endif
+
OPENSBI_MAKE_ENV = \
CROSS_COMPILE=$(TARGET_CROSS)
@@ -24,16 +43,28 @@ OPENSBI_DEPENDENCIES += linux
OPENSBI_MAKE_ENV += FW_PAYLOAD_PATH="$(BINARIES_DIR)/Image"
endif
+ifeq ($(BR2_TARGET_OPENSBI_UBOOT_PAYLOAD),y)
+OPENSBI_DEPENDENCIES += uboot
+OPENSBI_MAKE_ENV += FW_PAYLOAD_PATH="$(BINARIES_DIR)/u-boot.bin"
+endif
+
define OPENSBI_BUILD_CMDS
$(TARGET_MAKE_ENV) $(OPENSBI_MAKE_ENV) $(MAKE) -C $(@D)
endef
-ifneq ($(OPENSBI_PLAT),)
+ifeq ($(BR2_TARGET_OPENSBI_INSTALL_DYNAMIC_IMG),y)
OPENSBI_INSTALL_IMAGES = YES
-OPENSBI_FW_IMAGES += jump dynamic
-ifeq ($(BR2_TARGET_OPENSBI_LINUX_PAYLOAD),y)
-OPENSBI_FW_IMAGES += payload
+OPENSBI_FW_IMAGES += dynamic
+endif
+
+ifeq ($(BR2_TARGET_OPENSBI_INSTALL_JUMP_IMG),y)
+OPENSBI_INSTALL_IMAGES = YES
+OPENSBI_FW_IMAGES += jump
endif
+
+ifeq ($(BR2_TARGET_OPENSBI_INSTALL_PAYLOAD_IMG),y)
+OPENSBI_INSTALL_IMAGES = YES
+OPENSBI_FW_IMAGES += payload
endif
define OPENSBI_INSTALL_IMAGES_CMDS
diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in
index d43c85cce7..00c6674120 100644
--- a/boot/uboot/Config.in
+++ b/boot/uboot/Config.in
@@ -41,7 +41,7 @@ choice
Select the specific U-Boot version you want to use
config BR2_TARGET_UBOOT_LATEST_VERSION
- bool "2021.01"
+ bool "2021.04"
config BR2_TARGET_UBOOT_CUSTOM_VERSION
bool "Custom version"
@@ -85,7 +85,7 @@ endif
config BR2_TARGET_UBOOT_VERSION
string
- default "2021.01" if BR2_TARGET_UBOOT_LATEST_VERSION
+ default "2021.04" if BR2_TARGET_UBOOT_LATEST_VERSION
default BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE \
if BR2_TARGET_UBOOT_CUSTOM_VERSION
default "custom" if BR2_TARGET_UBOOT_CUSTOM_TARBALL
diff --git a/boot/uboot/uboot.hash b/boot/uboot/uboot.hash
index 7cbd785541..9a0b0cb6b0 100644
--- a/boot/uboot/uboot.hash
+++ b/boot/uboot/uboot.hash
@@ -1,3 +1,3 @@
# Locally computed:
-sha256 b407e1510a74e863b8b5cb42a24625344f0e0c2fc7582d8c866bd899367d0454 u-boot-2021.01.tar.bz2
+sha256 0d438b1bb5cceb57a18ea2de4a0d51f7be5b05b98717df05938636e0aadfe11a u-boot-2021.04.tar.bz2
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 Licenses/gpl-2.0.txt
diff --git a/configs/aarch64_efi_defconfig b/configs/aarch64_efi_defconfig
index 99600575ed..6cb8d1fac2 100644
--- a/configs/aarch64_efi_defconfig
+++ b/configs/aarch64_efi_defconfig
@@ -5,7 +5,6 @@ BR2_aarch64=y
BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
# System
-BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
## Required tools to create bootable media
@@ -23,13 +22,13 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="200M"
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/aarch64-efi/post-image.sh support/scripts/genimage.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/aarch64-efi/genimage-efi.cfg"
-# Linux headers same as kernel, a 5.9 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_9=y
+# Linux headers same as kernel, a 5.11 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_11=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.9.11"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.11.16"
BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
diff --git a/configs/acmesystems_acqua_a5_256mb_defconfig b/configs/acmesystems_acqua_a5_256mb_defconfig
index 37c7dcd83f..618ef0e756 100644
--- a/configs/acmesystems_acqua_a5_256mb_defconfig
+++ b/configs/acmesystems_acqua_a5_256mb_defconfig
@@ -12,10 +12,14 @@ BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.107"
BR2_LINUX_KERNEL_DEFCONFIG="sama5"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/acmesystems/acqua-a5/at91-sama5d3_acqua.dts"
+BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
# BR2_TARGET_ROOTFS_TAR is not set
BR2_TARGET_AT91BOOTSTRAP3=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git"
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.10.2"
BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="acqua-256m"
BR2_PACKAGE_HOST_DOSFSTOOLS=y
BR2_PACKAGE_HOST_GENIMAGE=y
diff --git a/configs/acmesystems_acqua_a5_512mb_defconfig b/configs/acmesystems_acqua_a5_512mb_defconfig
index 1809575727..e9d74be7c8 100644
--- a/configs/acmesystems_acqua_a5_512mb_defconfig
+++ b/configs/acmesystems_acqua_a5_512mb_defconfig
@@ -12,10 +12,14 @@ BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.107"
BR2_LINUX_KERNEL_DEFCONFIG="sama5"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/acmesystems/acqua-a5/at91-sama5d3_acqua.dts"
+BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
# BR2_TARGET_ROOTFS_TAR is not set
BR2_TARGET_AT91BOOTSTRAP3=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git"
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.10.2"
BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="acqua-512m"
BR2_PACKAGE_HOST_DOSFSTOOLS=y
BR2_PACKAGE_HOST_GENIMAGE=y
diff --git a/configs/beaglebone_defconfig b/configs/beaglebone_defconfig
index 9a4be13ec5..763696d1dd 100644
--- a/configs/beaglebone_defconfig
+++ b/configs/beaglebone_defconfig
@@ -1,31 +1,52 @@
+# Architecture
BR2_arm=y
BR2_cortex_a8=y
+BR2_ARM_FPU_VFPV3=y
+
+# Patches
BR2_GLOBAL_PATCH_DIR="board/beaglebone/patches"
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y
+
+# Linux headers same as kernel, a 5.10 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
+
+# System
+BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y
+
+# Image
BR2_ROOTFS_POST_BUILD_SCRIPT="board/beaglebone/post-build.sh"
BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/beaglebone/genimage.cfg"
+
+# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,beagleboard,linux,4.19.79-ti-r30)/linux-4.19.79-ti-r30.tar.gz"
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,beagleboard,linux,5.10.30-ti-r3)/linux-5.10.30-ti-r3.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="omap2plus"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="am335x-evm am335x-bone am335x-boneblack am335x-bonegreen am335x-evmsk am335x-boneblue"
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
+
+# Filesystem
BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
+
+# Bootloader
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2020.04"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.04"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="am335x_evm"
BR2_TARGET_UBOOT_NEEDS_DTC=y
# BR2_TARGET_UBOOT_FORMAT_BIN is not set
BR2_TARGET_UBOOT_FORMAT_IMG=y
BR2_TARGET_UBOOT_SPL=y
BR2_TARGET_UBOOT_SPL_NAME="MLO"
+
+# Required tools to create the SD image
BR2_PACKAGE_HOST_DOSFSTOOLS=y
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_HOST_MTOOLS=y
+
+# Supporting host tools to build FIT image
BR2_PACKAGE_HOST_UBOOT_TOOLS=y
BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SUPPORT=y
diff --git a/configs/beaglev_defconfig b/configs/beaglev_defconfig
new file mode 100644
index 0000000000..bbb69ca268
--- /dev/null
+++ b/configs/beaglev_defconfig
@@ -0,0 +1,38 @@
+BR2_riscv=y
+BR2_riscv_custom=y
+BR2_RISCV_ISA_CUSTOM_RVM=y
+BR2_RISCV_ISA_CUSTOM_RVF=y
+BR2_RISCV_ISA_CUSTOM_RVD=y
+BR2_RISCV_ISA_CUSTOM_RVC=y
+BR2_GLOBAL_PATCH_DIR="board/beaglev/patches/"
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
+BR2_ROOTFS_POST_BUILD_SCRIPT="board/beaglev/post-build.sh"
+BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/beaglev/genimage.cfg"
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
+# HEAD of the Fedora branch
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,starfive-tech,linux,710cf052d6abda73584481d920b4b6befc7240ea)/linux-710cf052d6abda73584481d920b4b6befc7240ea.tar.gz"
+BR2_LINUX_KERNEL_DEFCONFIG="starfive_vic7100_evb_sd_net"
+BR2_LINUX_KERNEL_INSTALL_TARGET=y
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+# BR2_TARGET_ROOTFS_TAR is not set
+BR2_TARGET_BEAGLEV_DDRINIT=y
+BR2_TARGET_BEAGLEV_SECONDBOOT=y
+BR2_TARGET_OPENSBI=y
+BR2_TARGET_OPENSBI_CUSTOM_TARBALL=y
+# HEAD of the Fedora branch
+BR2_TARGET_OPENSBI_CUSTOM_TARBALL_LOCATION="$(call github,starfive-tech,opensbi,2524b0ecd8684b42bc7a4c69794f40f11cbbe2a5)/opensbi-2524b0ecd8684b42bc7a4c69794f40f11cbbe2a5.tar.gz"
+BR2_TARGET_OPENSBI_PLAT="starfive/vic7100"
+# BR2_TARGET_OPENSBI_INSTALL_DYNAMIC_IMG is not set
+# BR2_TARGET_OPENSBI_INSTALL_JUMP_IMG is not set
+BR2_TARGET_OPENSBI_UBOOT_PAYLOAD=y
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
+# HEAD of the Fedora branch
+BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,starfive-tech,u-boot,3f3ac01a29ad1cd5fa519d86f81daead2447f1d4)/uboot-3f3ac01a29ad1cd5fa519d86f81daead2447f1d4.tar.gz"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="starfive_vic7100_beagle_v_smode"
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_PACKAGE_HOST_JH71XX_TOOLS=y
diff --git a/configs/freescale_imx6dlsabreauto_defconfig b/configs/freescale_imx6dlsabreauto_defconfig
index 443dc92fb6..8fe10f6275 100644
--- a/configs/freescale_imx6dlsabreauto_defconfig
+++ b/configs/freescale_imx6dlsabreauto_defconfig
@@ -8,8 +8,8 @@ BR2_ARM_FPU_VFPV3=y
# patches
BR2_GLOBAL_PATCH_DIR="board/freescale/imx6sabre/patches"
-# Linux headers same as kernel, a 5.4 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
+# Linux headers same as kernel, a 5.10 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
# system
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc3"
@@ -18,7 +18,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttymxc3"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/linux-imx.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_LINUX_KERNEL_DEFCONFIG="imx_v7"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6dl-sabreauto"
@@ -40,5 +40,5 @@ BR2_TARGET_UBOOT_BOARDNAME="mx6dlsabreauto"
BR2_TARGET_UBOOT_FORMAT_IMX=y
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/uboot-imx.git"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_UBOOT_NEEDS_DTC=y
diff --git a/configs/freescale_imx6dlsabresd_defconfig b/configs/freescale_imx6dlsabresd_defconfig
index 488ceef468..74debbfd46 100644
--- a/configs/freescale_imx6dlsabresd_defconfig
+++ b/configs/freescale_imx6dlsabresd_defconfig
@@ -8,8 +8,8 @@ BR2_ARM_FPU_VFPV3=y
# patches
BR2_GLOBAL_PATCH_DIR="board/freescale/imx6sabre/patches"
-# Linux headers same as kernel, a 5.4 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
+# Linux headers same as kernel, a 5.10 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
# system
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
@@ -18,7 +18,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/linux-imx.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_LINUX_KERNEL_DEFCONFIG="imx_v7"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6dl-sabresd"
@@ -39,5 +39,5 @@ BR2_TARGET_UBOOT_BOARDNAME="mx6dlsabresd"
BR2_TARGET_UBOOT_FORMAT_IMX=y
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/uboot-imx.git"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_UBOOT_NEEDS_DTC=y
diff --git a/configs/freescale_imx6qsabreauto_defconfig b/configs/freescale_imx6qsabreauto_defconfig
index 1a0c96d52c..58b4a5f92d 100644
--- a/configs/freescale_imx6qsabreauto_defconfig
+++ b/configs/freescale_imx6qsabreauto_defconfig
@@ -8,8 +8,8 @@ BR2_ARM_FPU_VFPV3=y
# patches
BR2_GLOBAL_PATCH_DIR="board/freescale/imx6sabre/patches"
-# Linux headers same as kernel, a 5.4 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
+# Linux headers same as kernel, a 5.10 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
# system
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc3"
@@ -18,7 +18,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttymxc3"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/linux-imx.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_LINUX_KERNEL_DEFCONFIG="imx_v7"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6q-sabreauto"
@@ -40,5 +40,5 @@ BR2_TARGET_UBOOT_BOARDNAME="mx6qsabreauto"
BR2_TARGET_UBOOT_FORMAT_IMX=y
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/uboot-imx.git"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_UBOOT_NEEDS_DTC=y
diff --git a/configs/freescale_imx6qsabresd_defconfig b/configs/freescale_imx6qsabresd_defconfig
index 19d7173300..f2ac993da0 100644
--- a/configs/freescale_imx6qsabresd_defconfig
+++ b/configs/freescale_imx6qsabresd_defconfig
@@ -8,8 +8,8 @@ BR2_ARM_FPU_VFPV3=y
# patches
BR2_GLOBAL_PATCH_DIR="board/freescale/imx6sabre/patches"
-# Linux headers same as kernel, a 5.4 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
+# Linux headers same as kernel, a 5.10 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
# system
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
@@ -18,7 +18,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/linux-imx.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_LINUX_KERNEL_DEFCONFIG="imx_v7"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6q-sabresd"
@@ -40,5 +40,5 @@ BR2_TARGET_UBOOT_BOARDNAME="mx6qsabresd"
BR2_TARGET_UBOOT_FORMAT_IMX=y
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/uboot-imx.git"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_UBOOT_NEEDS_DTC=y
diff --git a/configs/freescale_imx6sxsabresd_defconfig b/configs/freescale_imx6sxsabresd_defconfig
index 1628d7c5a5..9f48ef2da5 100644
--- a/configs/freescale_imx6sxsabresd_defconfig
+++ b/configs/freescale_imx6sxsabresd_defconfig
@@ -8,8 +8,8 @@ BR2_ARM_FPU_VFPV3=y
# patches
BR2_GLOBAL_PATCH_DIR="board/freescale/imx6sabre/patches"
-# Linux headers same as kernel, a 5.4 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
+# Linux headers same as kernel, a 5.10 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
# system
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
@@ -18,7 +18,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/linux-imx.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_LINUX_KERNEL_DEFCONFIG="imx_v7"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6sx-sdb"
@@ -38,6 +38,6 @@ BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="mx6sxsabresd"
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/uboot-imx.git"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_UBOOT_FORMAT_IMX=y
BR2_TARGET_UBOOT_NEEDS_DTC=y
diff --git a/configs/freescale_imx6ullevk_defconfig b/configs/freescale_imx6ullevk_defconfig
index 88d095d400..4c5c3b2524 100644
--- a/configs/freescale_imx6ullevk_defconfig
+++ b/configs/freescale_imx6ullevk_defconfig
@@ -1,12 +1,12 @@
BR2_arm=y
BR2_cortex_a7=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/post-image.sh"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/linux-imx.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_LINUX_KERNEL_DEFCONFIG="imx_v7"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6ull-14x14-evk"
@@ -17,7 +17,7 @@ BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="mx6ull_14x14_evk"
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/uboot-imx.git"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_TARGET_UBOOT_FORMAT_IMX=y
BR2_PACKAGE_HOST_DOSFSTOOLS=y
diff --git a/configs/freescale_imx7dsabresd_defconfig b/configs/freescale_imx7dsabresd_defconfig
index a8b1df19ff..5a9cff488d 100644
--- a/configs/freescale_imx7dsabresd_defconfig
+++ b/configs/freescale_imx7dsabresd_defconfig
@@ -2,8 +2,8 @@
BR2_arm=y
BR2_cortex_a7=y
-# Linux headers same as kernel, a 5.4 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
+# Linux headers same as kernel, a 5.10 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
# system
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
@@ -12,7 +12,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/linux-imx.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_LINUX_KERNEL_DEFCONFIG="imx_v7"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx7d-sdb"
@@ -27,7 +27,7 @@ BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="mx7dsabresd"
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/uboot-imx.git"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_UBOOT_FORMAT_IMX=y
BR2_TARGET_UBOOT_NEEDS_DTC=y
diff --git a/configs/freescale_imx8mmevk_defconfig b/configs/freescale_imx8mmevk_defconfig
index 13117189e5..ae82f29158 100644
--- a/configs/freescale_imx8mmevk_defconfig
+++ b/configs/freescale_imx8mmevk_defconfig
@@ -1,13 +1,13 @@
BR2_aarch64=y
BR2_ARM_FPU_VFPV3=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/imx8mm-evk.dtb"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/linux-imx"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_LINUX_KERNEL_DEFCONFIG="imx_v8"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mm-evk freescale/imx8mm-evk-revb-qca-wifi"
@@ -21,14 +21,14 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/imx-atf"
-BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mm"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/uboot-imx"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="imx8mm_evk"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
diff --git a/configs/freescale_imx8mnevk_defconfig b/configs/freescale_imx8mnevk_defconfig
index 192f5d297e..b24eb1566b 100644
--- a/configs/freescale_imx8mnevk_defconfig
+++ b/configs/freescale_imx8mnevk_defconfig
@@ -1,13 +1,13 @@
BR2_aarch64=y
BR2_ARM_FPU_VFPV3=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/imx8mn-ddr4-evk.dtb"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/linux-imx"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_LINUX_KERNEL_DEFCONFIG="imx_v8"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mn-ddr4-evk"
@@ -22,14 +22,14 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/imx-atf"
-BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mn"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/uboot-imx"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="imx8mn_ddr4_evk"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
diff --git a/configs/freescale_imx8mpevk_defconfig b/configs/freescale_imx8mpevk_defconfig
index b2369fecd0..8d0e6e0f3e 100644
--- a/configs/freescale_imx8mpevk_defconfig
+++ b/configs/freescale_imx8mpevk_defconfig
@@ -1,13 +1,13 @@
BR2_aarch64=y
BR2_ARM_FPU_VFPV3=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/imx8mp-evk.dtb"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/linux-imx"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_LINUX_KERNEL_DEFCONFIG="imx_v8"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mp-evk"
@@ -21,14 +21,14 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/imx-atf"
-BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mp"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/uboot-imx"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="imx8mp_evk"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
diff --git a/configs/freescale_imx8mqevk_defconfig b/configs/freescale_imx8mqevk_defconfig
index d5d22dcf2b..7f5dd87b5f 100644
--- a/configs/freescale_imx8mqevk_defconfig
+++ b/configs/freescale_imx8mqevk_defconfig
@@ -1,13 +1,13 @@
BR2_aarch64=y
BR2_ARM_FPU_VFPV3=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/imx8mq-evk.dtb"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/linux-imx"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_LINUX_KERNEL_DEFCONFIG="imx_v8"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mq-evk"
@@ -21,14 +21,14 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/imx-atf"
-BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mq"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/uboot-imx"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="imx8mq_evk"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
diff --git a/configs/freescale_imx8qmmek_defconfig b/configs/freescale_imx8qmmek_defconfig
index 0342c0a206..8a0e866cee 100644
--- a/configs/freescale_imx8qmmek_defconfig
+++ b/configs/freescale_imx8qmmek_defconfig
@@ -1,12 +1,12 @@
BR2_aarch64=y
BR2_ARM_FPU_VFPV4=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/fsl-imx8qm-mek.dtb"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/linux-imx"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_LINUX_KERNEL_DEFCONFIG="imx_v8"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8qm-mek"
@@ -22,14 +22,14 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/imx-atf"
-BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8qm"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/uboot-imx"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="imx8qm_mek"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_PACKAGE_HOST_DOSFSTOOLS=y
diff --git a/configs/freescale_imx8qxpmek_defconfig b/configs/freescale_imx8qxpmek_defconfig
index e37a7553ad..1ffbd123e0 100644
--- a/configs/freescale_imx8qxpmek_defconfig
+++ b/configs/freescale_imx8qxpmek_defconfig
@@ -1,14 +1,14 @@
BR2_aarch64=y
BR2_cortex_a35=y
BR2_ARM_FPU_VFPV3=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
BR2_TARGET_GENERIC_GETTY_PORT="ttyLP0"
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/fsl-imx8qxp-mek.dtb"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/linux-imx"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_LINUX_KERNEL_DEFCONFIG="imx_v8"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8qxp-mek"
@@ -24,14 +24,14 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_GIT=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/imx-atf"
-BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8qx"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_GIT=y
BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://source.codeaurora.org/external/imx/uboot-imx"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="rel_imx_5.4.70_2.3.0"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="lf-5.10.y-1.0.0"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="imx8qxp_mek"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_PACKAGE_HOST_DOSFSTOOLS=y
diff --git a/configs/globalscale_espressobin_defconfig b/configs/globalscale_espressobin_defconfig
index 50cfc6b530..37d9c1859c 100644
--- a/configs/globalscale_espressobin_defconfig
+++ b/configs/globalscale_espressobin_defconfig
@@ -2,17 +2,17 @@ BR2_aarch64=y
BR2_cortex_a53=y
BR2_ARM_FPU_VFPV4=y
-# Linux headers same as kernel, a 5.6 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_6=y
+# Linux headers same as kernel, a 5.11 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_11=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.6.11"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.11.21"
BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/globalscale/espressobin/linux-extras.config"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
-BR2_LINUX_KERNEL_INTREE_DTS_NAME="marvell/armada-3720-espressobin marvell/armada-3720-espressobin-emmc marvell/armada-3720-espressobin-v7 marvell/armada-3720-espressobin-v7-emmc"
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="marvell/armada-3720-espressobin marvell/armada-3720-espressobin-emmc marvell/armada-3720-espressobin-v7 marvell/armada-3720-espressobin-v7-emmc marvell/armada-3720-espressobin-ultra"
BR2_LINUX_KERNEL_INSTALL_TARGET=y
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
diff --git a/configs/imx6-sabresd_defconfig b/configs/imx6-sabresd_defconfig
index c0dce1ce62..5a39f333d1 100644
--- a/configs/imx6-sabresd_defconfig
+++ b/configs/imx6-sabresd_defconfig
@@ -24,7 +24,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="mx6sabresd"
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.01"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.04"
BR2_TARGET_UBOOT_FORMAT_IMG=y
BR2_TARGET_UBOOT_SPL=y
BR2_TARGET_UBOOT_SPL_NAME="SPL"
@@ -32,7 +32,7 @@ BR2_TARGET_UBOOT_SPL_NAME="SPL"
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.10.9"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.10.25"
BR2_LINUX_KERNEL_DEFCONFIG="imx_v6_v7"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6q-sabresd imx6dl-sabresd imx6qp-sabresd"
diff --git a/configs/imx6-sabresd_qt5_defconfig b/configs/imx6-sabresd_qt5_defconfig
index b23dd90192..8cdc0e2544 100644
--- a/configs/imx6-sabresd_qt5_defconfig
+++ b/configs/imx6-sabresd_qt5_defconfig
@@ -30,7 +30,7 @@ BR2_ROOTFS_OVERLAY="board/freescale/imx6-sabresd/rootfs_overlay"
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="mx6sabresd"
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.01"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.04"
BR2_TARGET_UBOOT_FORMAT_IMG=y
BR2_TARGET_UBOOT_SPL=y
BR2_TARGET_UBOOT_SPL_NAME="SPL"
@@ -38,7 +38,7 @@ BR2_TARGET_UBOOT_SPL_NAME="SPL"
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.10.9"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.10.25"
BR2_LINUX_KERNEL_DEFCONFIG="imx_v6_v7"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6q-sabresd imx6dl-sabresd imx6qp-sabresd"
diff --git a/configs/kontron_smarc_sal28_defconfig b/configs/kontron_smarc_sal28_defconfig
index d09ba0a2fc..853c7c308a 100644
--- a/configs/kontron_smarc_sal28_defconfig
+++ b/configs/kontron_smarc_sal28_defconfig
@@ -1,6 +1,6 @@
BR2_aarch64=y
BR2_cortex_a72=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_11=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_12=y
BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
BR2_ROOTFS_OVERLAY="board/kontron/smarc-sal28/rootfs_overlay"
@@ -9,7 +9,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="-c $(BINARIES_DIR)/genimage.cfg"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.11"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.12"
BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/fsl-ls1028a-kontron-sl28 freescale/fsl-ls1028a-kontron-sl28-var2 freescale/fsl-ls1028a-kontron-sl28-var3-ads2 freescale/fsl-ls1028a-kontron-sl28-var4 freescale/fsl-ls1028a-kontron-kbox-a-230-ls"
diff --git a/configs/microchip_sama5d2_icp_mmc_defconfig b/configs/microchip_sama5d2_icp_mmc_defconfig
new file mode 100644
index 0000000000..2196555311
--- /dev/null
+++ b/configs/microchip_sama5d2_icp_mmc_defconfig
@@ -0,0 +1,31 @@
+BR2_arm=y
+BR2_cortex_a5=y
+BR2_ARM_ENABLE_NEON=y
+BR2_ARM_ENABLE_VFP=y
+BR2_ARM_INSTRUCTIONS_THUMB2=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
+BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/microchip/sama5d2_icp/genimage.cfg"
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam-2020.10)/linux-linux4sam-2020.10.tar.gz"
+BR2_LINUX_KERNEL_DEFCONFIG="sama5"
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91-sama5d2_icp"
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
+BR2_TARGET_AT91BOOTSTRAP3=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_TARBALL=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,at91bootstrap,v4.0.0-rc2)/at91bootstrap-v4.0.0-rc2.tar.gz"
+BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="sama5d2_icpsd_uboot"
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
+BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,u-boot-at91,linux4sam-2020.10)/u-boot-at91-linux4sam-2020.10.tar.gz"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="sama5d2_icp_mmc"
+BR2_TARGET_UBOOT_NEEDS_DTC=y
+BR2_PACKAGE_HOST_DOSFSTOOLS=y
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_PACKAGE_HOST_MTOOLS=y
diff --git a/configs/microchip_sama5d2_icp_mmc_dev_defconfig b/configs/microchip_sama5d2_icp_mmc_dev_defconfig
new file mode 100644
index 0000000000..1966d4baf1
--- /dev/null
+++ b/configs/microchip_sama5d2_icp_mmc_dev_defconfig
@@ -0,0 +1,74 @@
+BR2_arm=y
+BR2_cortex_a5=y
+BR2_ARM_ENABLE_NEON=y
+BR2_ARM_ENABLE_VFP=y
+BR2_ARM_INSTRUCTIONS_THUMB2=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
+BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
+BR2_PTHREAD_DEBUG=y
+BR2_TOOLCHAIN_BUILDROOT_CXX=y
+BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
+BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/microchip/sama5d2_icp/genimage.cfg"
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,linux-at91,linux4sam-2020.10)/linux-linux4sam-2020.10.tar.gz"
+BR2_LINUX_KERNEL_DEFCONFIG="sama5"
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91-sama5d2_icp"
+BR2_PACKAGE_LINUX_TOOLS_IIO=y
+BR2_PACKAGE_BZIP2=y
+BR2_PACKAGE_XZ=y
+BR2_PACKAGE_ZIP=y
+BR2_PACKAGE_GDB=y
+BR2_PACKAGE_LMBENCH=y
+BR2_PACKAGE_STRACE=y
+BR2_PACKAGE_TREE=y
+BR2_PACKAGE_DOSFSTOOLS=y
+BR2_PACKAGE_DOSFSTOOLS_FATLABEL=y
+BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y
+BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT=y
+BR2_PACKAGE_MMC_UTILS=y
+BR2_PACKAGE_MTD=y
+BR2_PACKAGE_WILC1000_FIRMWARE=y
+BR2_PACKAGE_EVTEST=y
+BR2_PACKAGE_SETSERIAL=y
+BR2_PACKAGE_SPI_TOOLS=y
+BR2_PACKAGE_USBUTILS=y
+BR2_PACKAGE_LIBSYSFS=y
+BR2_PACKAGE_LIBDRM=y
+BR2_PACKAGE_LIBDRM_INSTALL_TESTS=y
+BR2_PACKAGE_DTC=y
+BR2_PACKAGE_DTC_PROGRAMS=y
+BR2_PACKAGE_ARGP_STANDALONE=y
+BR2_PACKAGE_BLUEZ5_UTILS=y
+BR2_PACKAGE_BRIDGE_UTILS=y
+BR2_PACKAGE_CAN_UTILS=y
+BR2_PACKAGE_ETHTOOL=y
+BR2_PACKAGE_IPERF=y
+BR2_PACKAGE_IPROUTE2=y
+BR2_PACKAGE_IPTABLES=y
+BR2_PACKAGE_IW=y
+BR2_PACKAGE_LRZSZ=y
+BR2_PACKAGE_MII_DIAG=y
+BR2_PACKAGE_OPENSSH=y
+BR2_PACKAGE_WIRELESS_TOOLS=y
+BR2_PACKAGE_WPA_SUPPLICANT=y
+BR2_PACKAGE_HTOP=y
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
+BR2_TARGET_AT91BOOTSTRAP3=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_TARBALL=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,at91bootstrap,v4.0.0-rc2)/at91bootstrap-v4.0.0-rc2.tar.gz"
+BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="sama5d2_icpsd_uboot"
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
+BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,linux4sam,u-boot-at91,linux4sam-2020.10)/u-boot-at91-linux4sam-2020.10.tar.gz"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="sama5d2_icp_mmc"
+BR2_TARGET_UBOOT_NEEDS_DTC=y
+BR2_PACKAGE_HOST_DOSFSTOOLS=y
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_PACKAGE_HOST_MTOOLS=y
diff --git a/configs/minnowboard_max-graphical_defconfig b/configs/minnowboard_max-graphical_defconfig
index 3b769ca6e7..051c7584dc 100644
--- a/configs/minnowboard_max-graphical_defconfig
+++ b/configs/minnowboard_max-graphical_defconfig
@@ -40,7 +40,6 @@ BR2_PACKAGE_ALSA_UTILS_APLAY=y
BR2_PACKAGE_GLMARK2=y
BR2_PACKAGE_MESA3D_DEMOS=y
BR2_PACKAGE_MESA3D=y
-BR2_PACKAGE_MESA3D_DRI_DRIVER_SWRAST=y
BR2_PACKAGE_MESA3D_DRI_DRIVER_I965=y
BR2_PACKAGE_MESA3D_OPENGL_GLX=y
diff --git a/configs/nitrogen6sx_defconfig b/configs/nitrogen6sx_defconfig
index 8f1f7d7f67..73dfe2caff 100644
--- a/configs/nitrogen6sx_defconfig
+++ b/configs/nitrogen6sx_defconfig
@@ -25,7 +25,7 @@ BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
# Last version of branch boundary-v2020.10
-BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot-imx6/archive/e27d3240.tar.gz"
+BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot-imx6/archive/e05b6d68.tar.gz"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen6sx"
BR2_TARGET_UBOOT_FORMAT_IMX=y
BR2_PACKAGE_HOST_UBOOT_TOOLS=y
@@ -35,8 +35,8 @@ BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/boundarydevices/common/bo
# kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-# Last version of branch boundary-imx_5.4.x_2.2.0
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/archive/388bebee.tar.gz"
+# Last version of branch boundary-imx_5.4.x_2.3.0
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/archive/8961f5c1.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="boundary"
BR2_LINUX_KERNEL_INSTALL_TARGET=y
BR2_LINUX_KERNEL_DTS_SUPPORT=y
diff --git a/configs/nitrogen6x_defconfig b/configs/nitrogen6x_defconfig
index b3b69fd34b..8e4b268356 100644
--- a/configs/nitrogen6x_defconfig
+++ b/configs/nitrogen6x_defconfig
@@ -24,7 +24,7 @@ BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
# Last version of branch boundary-v2020.10
-BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot-imx6/archive/e27d3240.tar.gz"
+BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot-imx6/archive/e05b6d68.tar.gz"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen6q"
BR2_TARGET_UBOOT_FORMAT_IMX=y
BR2_PACKAGE_HOST_UBOOT_TOOLS=y
@@ -34,8 +34,8 @@ BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/boundarydevices/common/bo
# kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-# Last version of branch boundary-imx_5.4.x_2.2.0
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/archive/388bebee.tar.gz"
+# Last version of branch boundary-imx_5.4.x_2.3.0
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/archive/8961f5c1.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="boundary"
BR2_LINUX_KERNEL_INSTALL_TARGET=y
BR2_LINUX_KERNEL_DTS_SUPPORT=y
diff --git a/configs/nitrogen7_defconfig b/configs/nitrogen7_defconfig
index 156089ba39..8b152d931b 100644
--- a/configs/nitrogen7_defconfig
+++ b/configs/nitrogen7_defconfig
@@ -24,7 +24,7 @@ BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
# Last version of branch boundary-v2020.10
-BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot-imx6/archive/e27d3240.tar.gz"
+BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot-imx6/archive/e05b6d68.tar.gz"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen7"
BR2_TARGET_UBOOT_FORMAT_IMX=y
BR2_PACKAGE_HOST_UBOOT_TOOLS=y
@@ -34,8 +34,8 @@ BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/boundarydevices/common/bo
# kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-# Last version of branch boundary-imx_5.4.x_2.2.0
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/archive/388bebee.tar.gz"
+# Last version of branch boundary-imx_5.4.x_2.3.0
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/archive/8961f5c1.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="boundary"
BR2_LINUX_KERNEL_INSTALL_TARGET=y
BR2_LINUX_KERNEL_DTS_SUPPORT=y
diff --git a/configs/nitrogen8m_defconfig b/configs/nitrogen8m_defconfig
index 0aa913aa54..438a0bc29e 100644
--- a/configs/nitrogen8m_defconfig
+++ b/configs/nitrogen8m_defconfig
@@ -28,8 +28,8 @@ BR2_PACKAGE_FIRMWARE_IMX=y
# ARM Trusted Firmware
BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y
-# Latest revision of branch boundary-imx_5.4.47_2.2.0
-BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/imx-atf/archive/515fb041.tar.gz"
+# Latest revision of branch boundary-imx_5.4.70_2.3.0
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/imx-atf/archive/9f6114fd.tar.gz"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mq"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
@@ -39,7 +39,7 @@ BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen8m"
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
# Latest revision of branch boundary-imx_v2020.10
-BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot-imx6/archive/e27d3240.tar.gz"
+BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot-imx6/archive/e05b6d68.tar.gz"
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-nodtb.bin"
BR2_TARGET_UBOOT_NEEDS_DTC=y
@@ -49,8 +49,8 @@ BR2_TARGET_UBOOT_SPL=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-# Latest revision of branch boundary-imx_5.4.x_2.2.0
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/archive/388bebee.tar.gz"
+# Latest revision of branch boundary-imx_5.4.x_2.3.0
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/archive/8961f5c1.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="boundary"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INSTALL_TARGET=y
diff --git a/configs/nitrogen8mm_defconfig b/configs/nitrogen8mm_defconfig
index 1767490d8b..567636ee4c 100644
--- a/configs/nitrogen8mm_defconfig
+++ b/configs/nitrogen8mm_defconfig
@@ -28,8 +28,8 @@ BR2_PACKAGE_FIRMWARE_IMX=y
# ARM Trusted Firmware
BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y
-# Latest revision of branch boundary-imx_5.4.47_2.2.0
-BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/imx-atf/archive/515fb041.tar.gz"
+# Latest revision of branch boundary-imx_5.4.70_2.3.0
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/imx-atf/archive/9f6114fd.tar.gz"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mm"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
@@ -39,7 +39,7 @@ BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen8mm_2g"
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
# Latest revision of branch boundary-imx_v2020.10
-BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot-imx6/archive/e27d3240.tar.gz"
+BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot-imx6/archive/e05b6d68.tar.gz"
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-nodtb.bin"
BR2_TARGET_UBOOT_NEEDS_DTC=y
@@ -49,8 +49,8 @@ BR2_TARGET_UBOOT_SPL=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-# Latest revision of branch boundary-imx_5.4.x_2.2.0
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/archive/388bebee.tar.gz"
+# Latest revision of branch boundary-imx_5.4.x_2.3.0
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/archive/8961f5c1.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="boundary"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INSTALL_TARGET=y
diff --git a/configs/nitrogen8mn_defconfig b/configs/nitrogen8mn_defconfig
index cd5c4d928d..71fb0e7914 100644
--- a/configs/nitrogen8mn_defconfig
+++ b/configs/nitrogen8mn_defconfig
@@ -28,8 +28,8 @@ BR2_PACKAGE_FIRMWARE_IMX=y
# ARM Trusted Firmware
BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y
-# Latest revision of branch boundary-imx_5.4.47_2.2.0
-BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/imx-atf/archive/515fb041.tar.gz"
+# Latest revision of branch boundary-imx_5.4.70_2.3.0
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/imx-atf/archive/9f6114fd.tar.gz"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mn"
BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
@@ -39,7 +39,7 @@ BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen8_nano_8mn1gr0"
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
# Latest revision of branch boundary-imx_v2020.10
-BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot-imx6/archive/e27d3240.tar.gz"
+BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot-imx6/archive/e05b6d68.tar.gz"
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-nodtb.bin"
BR2_TARGET_UBOOT_NEEDS_DTC=y
@@ -49,8 +49,8 @@ BR2_TARGET_UBOOT_SPL=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-# Latest revision of branch boundary-imx_5.4.x_2.2.0
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/archive/388bebee.tar.gz"
+# Latest revision of branch boundary-imx_5.4.x_2.3.0
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/archive/8961f5c1.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="boundary"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INSTALL_TARGET=y
diff --git a/configs/nitrogen8mp_defconfig b/configs/nitrogen8mp_defconfig
new file mode 100644
index 0000000000..14bd26724d
--- /dev/null
+++ b/configs/nitrogen8mp_defconfig
@@ -0,0 +1,58 @@
+# Architecture
+BR2_aarch64=y
+BR2_cortex_a53=y
+
+# System
+BR2_TARGET_GENERIC_GETTY=y
+BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
+BR2_ROOTFS_POST_BUILD_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/boundarydevices/common/post-build.sh"
+BR2_ROOTFS_POST_IMAGE_SCRIPT="board/boundarydevices/common/post-image.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/imx8mp-nitrogen8mp.dtb"
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_PACKAGE_HOST_IMX_MKIMAGE=y
+BR2_PACKAGE_HOST_UBOOT_TOOLS=y
+BR2_PACKAGE_HOST_UBOOT_TOOLS_FIT_SUPPORT=y
+
+# Filesystem
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+
+# Linux headers same as kernel, a 5.4 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_4=y
+
+# DDR training binaries
+BR2_PACKAGE_FREESCALE_IMX=y
+BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MP=y
+BR2_PACKAGE_FIRMWARE_IMX=y
+
+# ARM Trusted Firmware
+BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y
+# Latest revision of branch boundary-imx_5.4.70_2.3.0
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/imx-atf/archive/9f6114fd.tar.gz"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx8mp"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
+
+# Bootloader
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen8mp_2gr0"
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
+# Latest revision of branch boundary-imx_v2020.10
+BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot-imx6/archive/e05b6d68.tar.gz"
+BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
+BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-nodtb.bin"
+BR2_TARGET_UBOOT_NEEDS_DTC=y
+BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
+BR2_TARGET_UBOOT_SPL=y
+
+# Kernel
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
+# Latest revision of branch boundary-imx_5.4.x_2.3.0
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/linux-imx6/archive/8961f5c1.tar.gz"
+BR2_LINUX_KERNEL_DEFCONFIG="boundary"
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INSTALL_TARGET=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx8mp-nitrogen8mp freescale/imx8mp-a0-nitrogen8mp"
+BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
diff --git a/configs/pandaboard_defconfig b/configs/pandaboard_defconfig
index 408bced9c0..376ecfe504 100644
--- a/configs/pandaboard_defconfig
+++ b/configs/pandaboard_defconfig
@@ -1,32 +1,48 @@
+# Architecture
BR2_arm=y
BR2_cortex_a9=y
BR2_ARM_ENABLE_NEON=y
BR2_ARM_ENABLE_VFP=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y
+BR2_ARM_FPU_VFPV3=y
+
+# Linux headers same as kernel, a 5.12 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_12=y
+
+# System
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y
BR2_TARGET_GENERIC_GETTY_PORT="ttyS2"
BR2_SYSTEM_DHCP="eth0"
+
+# Image
BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/pandaboard/genimage.cfg"
+
+# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.62"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.12.2"
BR2_LINUX_KERNEL_DEFCONFIG="omap2plus"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="omap4-panda-es omap4-panda omap4-panda-a4"
BR2_LINUX_KERNEL_INSTALL_TARGET=y
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
+
+# Filesystem
BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
# BR2_TARGET_ROOTFS_TAR is not set
+
+# Bootloader
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2017.05"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.04"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="omap4_panda"
BR2_TARGET_UBOOT_FORMAT_IMG=y
BR2_TARGET_UBOOT_SPL=y
BR2_TARGET_UBOOT_SPL_NAME="MLO"
+
+# Required tools to create the SD card image
BR2_PACKAGE_HOST_DOSFSTOOLS=y
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_HOST_MTOOLS=y
diff --git a/configs/qemu_aarch64_sbsa_defconfig b/configs/qemu_aarch64_sbsa_defconfig
new file mode 100644
index 0000000000..d014140bf5
--- /dev/null
+++ b/configs/qemu_aarch64_sbsa_defconfig
@@ -0,0 +1,52 @@
+# Architecture
+BR2_aarch64=y
+BR2_cortex_a53=y
+
+# Toolchain
+BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
+
+# System
+BR2_SYSTEM_DHCP="eth0"
+BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
+
+# Filesystem
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+# BR2_TARGET_ROOTFS_TAR is not set
+
+# Image
+BR2_ROOTFS_POST_IMAGE_SCRIPT="board/qemu/aarch64-sbsa/assemble-flash-images support/scripts/genimage.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/qemu/aarch64-sbsa/genimage.cfg"
+
+# Linux headers same as kernel, a 5.10 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
+
+# Kernel
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.10.34"
+BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
+BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
+
+# UEFI firmware
+BR2_TARGET_EDK2=y
+BR2_TARGET_EDK2_PLATFORM_QEMU_SBSA=y
+BR2_TARGET_GRUB2=y
+BR2_TARGET_GRUB2_ARM64_EFI=y
+
+# ARM Trusted Firmware
+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.4"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="qemu_sbsa"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_FIP=y
+
+# Host tools for genimage
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_PACKAGE_HOST_DOSFSTOOLS=y
+BR2_PACKAGE_HOST_MTOOLS=y
+
+# host-qemu for gitlab testing
+BR2_PACKAGE_HOST_QEMU=y
+BR2_PACKAGE_HOST_QEMU_SYSTEM_MODE=y
diff --git a/configs/qemu_s390x_defconfig b/configs/qemu_s390x_defconfig
index 9b3821f043..4aed9d9ae5 100644
--- a/configs/qemu_s390x_defconfig
+++ b/configs/qemu_s390x_defconfig
@@ -20,6 +20,7 @@ BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.10.7"
BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
+BR2_GLOBAL_PATCH_DIR="board/qemu/s390x/patches"
# host-qemu for gitlab testing
BR2_PACKAGE_HOST_QEMU=y
diff --git a/configs/qemu_sparc64_sun4u_defconfig b/configs/qemu_sparc64_sun4u_defconfig
index cff0c2968a..6a999298eb 100644
--- a/configs/qemu_sparc64_sun4u_defconfig
+++ b/configs/qemu_sparc64_sun4u_defconfig
@@ -2,6 +2,9 @@
BR2_sparc64=y
BR2_sparc_v9=y
+# Patches
+BR2_GLOBAL_PATCH_DIR="board/qemu/sparc64-sun4u/patches"
+
# System
BR2_SYSTEM_DHCP="eth0"
diff --git a/configs/raspberrypi0_defconfig b/configs/raspberrypi0_defconfig
index c06d6dfcb5..5ca003cbec 100644
--- a/configs/raspberrypi0_defconfig
+++ b/configs/raspberrypi0_defconfig
@@ -9,7 +9,7 @@ BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,967d45b29ca2902f031b867809d72e3b3d623e7a)/linux-967d45b29ca2902f031b867809d72e3b3d623e7a.tar.gz"
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,b657cd2f27d9171b75c846f21e7b4bb581b3ed29)/linux-b657cd2f27d9171b75c846f21e7b4bb581b3ed29.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi"
# Build the DTBs for A/B from the kernel sources: the zero is the same
diff --git a/configs/raspberrypi0w_defconfig b/configs/raspberrypi0w_defconfig
index b54bb34ad9..bced6c5d4a 100644
--- a/configs/raspberrypi0w_defconfig
+++ b/configs/raspberrypi0w_defconfig
@@ -9,7 +9,7 @@ BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,967d45b29ca2902f031b867809d72e3b3d623e7a)/linux-967d45b29ca2902f031b867809d72e3b3d623e7a.tar.gz"
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,b657cd2f27d9171b75c846f21e7b4bb581b3ed29)/linux-b657cd2f27d9171b75c846f21e7b4bb581b3ed29.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2708-rpi-zero-w"
diff --git a/configs/raspberrypi2_defconfig b/configs/raspberrypi2_defconfig
index 5104422cb1..47807688da 100644
--- a/configs/raspberrypi2_defconfig
+++ b/configs/raspberrypi2_defconfig
@@ -12,7 +12,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,967d45b29ca2902f031b867809d72e3b3d623e7a)/linux-967d45b29ca2902f031b867809d72e3b3d623e7a.tar.gz"
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,b657cd2f27d9171b75c846f21e7b4bb581b3ed29)/linux-b657cd2f27d9171b75c846f21e7b4bb581b3ed29.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="bcm2709"
# Build the DTB from the kernel sources
diff --git a/configs/raspberrypi3_64_defconfig b/configs/raspberrypi3_64_defconfig
index 65c1291e6a..3be53b6c8d 100644
--- a/configs/raspberrypi3_64_defconfig
+++ b/configs/raspberrypi3_64_defconfig
@@ -11,7 +11,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,967d45b29ca2902f031b867809d72e3b3d623e7a)/linux-967d45b29ca2902f031b867809d72e3b3d623e7a.tar.gz"
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,b657cd2f27d9171b75c846f21e7b4bb581b3ed29)/linux-b657cd2f27d9171b75c846f21e7b4bb581b3ed29.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi3"
# Build the DTB from the kernel sources
diff --git a/configs/raspberrypi3_defconfig b/configs/raspberrypi3_defconfig
index 96eca54f0d..74f5a23682 100644
--- a/configs/raspberrypi3_defconfig
+++ b/configs/raspberrypi3_defconfig
@@ -11,7 +11,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,967d45b29ca2902f031b867809d72e3b3d623e7a)/linux-967d45b29ca2902f031b867809d72e3b3d623e7a.tar.gz"
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,b657cd2f27d9171b75c846f21e7b4bb581b3ed29)/linux-b657cd2f27d9171b75c846f21e7b4bb581b3ed29.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="bcm2709"
# Build the DTB from the kernel sources
diff --git a/configs/raspberrypi3_qt5we_defconfig b/configs/raspberrypi3_qt5we_defconfig
index 8015288acb..1e9061435c 100644
--- a/configs/raspberrypi3_qt5we_defconfig
+++ b/configs/raspberrypi3_qt5we_defconfig
@@ -12,7 +12,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,967d45b29ca2902f031b867809d72e3b3d623e7a)/linux-967d45b29ca2902f031b867809d72e3b3d623e7a.tar.gz"
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,b657cd2f27d9171b75c846f21e7b4bb581b3ed29)/linux-b657cd2f27d9171b75c846f21e7b4bb581b3ed29.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="bcm2709"
# Build the DTB from the kernel sources
diff --git a/configs/raspberrypi4_64_defconfig b/configs/raspberrypi4_64_defconfig
index 94ac5cf5ec..16777bcef1 100644
--- a/configs/raspberrypi4_64_defconfig
+++ b/configs/raspberrypi4_64_defconfig
@@ -11,7 +11,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,967d45b29ca2902f031b867809d72e3b3d623e7a)/linux-967d45b29ca2902f031b867809d72e3b3d623e7a.tar.gz"
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,b657cd2f27d9171b75c846f21e7b4bb581b3ed29)/linux-b657cd2f27d9171b75c846f21e7b4bb581b3ed29.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="bcm2711"
# Build the DTB from the kernel sources
diff --git a/configs/raspberrypi4_defconfig b/configs/raspberrypi4_defconfig
index c2ed5e73c5..139bed0c3f 100644
--- a/configs/raspberrypi4_defconfig
+++ b/configs/raspberrypi4_defconfig
@@ -11,7 +11,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,967d45b29ca2902f031b867809d72e3b3d623e7a)/linux-967d45b29ca2902f031b867809d72e3b3d623e7a.tar.gz"
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,b657cd2f27d9171b75c846f21e7b4bb581b3ed29)/linux-b657cd2f27d9171b75c846f21e7b4bb581b3ed29.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="bcm2711"
# Build the DTB from the kernel sources
diff --git a/configs/raspberrypi_defconfig b/configs/raspberrypi_defconfig
index 2d3bb536bf..de1248f36b 100644
--- a/configs/raspberrypi_defconfig
+++ b/configs/raspberrypi_defconfig
@@ -11,7 +11,7 @@ BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,967d45b29ca2902f031b867809d72e3b3d623e7a)/linux-967d45b29ca2902f031b867809d72e3b3d623e7a.tar.gz"
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,b657cd2f27d9171b75c846f21e7b4bb581b3ed29)/linux-b657cd2f27d9171b75c846f21e7b4bb581b3ed29.tar.gz"
BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi"
# Build the DTBs for A/B, A+/B+ and compute module from the kernel sources
diff --git a/configs/raspberrypicm4io_64_defconfig b/configs/raspberrypicm4io_64_defconfig
new file mode 100644
index 0000000000..66a9332fe5
--- /dev/null
+++ b/configs/raspberrypicm4io_64_defconfig
@@ -0,0 +1,41 @@
+BR2_aarch64=y
+BR2_cortex_a72=y
+BR2_ARM_FPU_VFPV4=y
+
+BR2_TOOLCHAIN_BUILDROOT_CXX=y
+
+BR2_SYSTEM_DHCP="eth0"
+
+# Linux headers same as kernel, a 5.10 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
+
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,b657cd2f27d9171b75c846f21e7b4bb581b3ed29)/linux-b657cd2f27d9171b75c846f21e7b4bb581b3ed29.tar.gz"
+BR2_LINUX_KERNEL_DEFCONFIG="bcm2711"
+
+# Build the DTB from the kernel sources
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="broadcom/bcm2711-rpi-cm4"
+
+BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
+
+BR2_PACKAGE_RPI_FIRMWARE=y
+BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4=y
+
+# Required tools to create the SD image
+BR2_PACKAGE_HOST_DOSFSTOOLS=y
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_PACKAGE_HOST_MTOOLS=y
+
+# Required tool to flash CM4 eMMC memory
+BR2_PACKAGE_HOST_RASPBERRYPI_USBBOOT
+
+# Filesystem / image
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
+# BR2_TARGET_ROOTFS_TAR is not set
+BR2_ROOTFS_POST_BUILD_SCRIPT="board/raspberrypicm4io-64/post-build.sh"
+BR2_ROOTFS_POST_IMAGE_SCRIPT="board/raspberrypicm4io-64/post-image.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="--add-miniuart-bt-overlay --aarch64"
diff --git a/configs/raspberrypicm4io_defconfig b/configs/raspberrypicm4io_defconfig
new file mode 100644
index 0000000000..cba07a9064
--- /dev/null
+++ b/configs/raspberrypicm4io_defconfig
@@ -0,0 +1,41 @@
+BR2_arm=y
+BR2_cortex_a72=y
+BR2_ARM_FPU_NEON_VFPV4=y
+
+BR2_TOOLCHAIN_BUILDROOT_CXX=y
+
+BR2_SYSTEM_DHCP="eth0"
+
+# Linux headers same as kernel, a 5.10 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
+
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,raspberrypi,linux,b657cd2f27d9171b75c846f21e7b4bb581b3ed29)/linux-b657cd2f27d9171b75c846f21e7b4bb581b3ed29.tar.gz"
+BR2_LINUX_KERNEL_DEFCONFIG="bcm2711"
+
+# Build the DTB from the kernel sources
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2711-rpi-cm4"
+
+BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
+
+BR2_PACKAGE_RPI_FIRMWARE=y
+BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4=y
+
+# Required tools to create the SD image
+BR2_PACKAGE_HOST_DOSFSTOOLS=y
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_PACKAGE_HOST_MTOOLS=y
+
+# Required tool to flash CM4 eMMC memory
+BR2_PACKAGE_HOST_RASPBERRYPI_USBBOOT
+
+# Filesystem / image
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
+# BR2_TARGET_ROOTFS_TAR is not set
+BR2_ROOTFS_POST_BUILD_SCRIPT="board/raspberrypicm4io/post-build.sh"
+BR2_ROOTFS_POST_IMAGE_SCRIPT="board/raspberrypicm4io/post-image.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="--add-miniuart-bt-overlay"
diff --git a/configs/stm32f469_disco_defconfig b/configs/stm32f469_disco_defconfig
index 9760d51878..e538a664e2 100644
--- a/configs/stm32f469_disco_defconfig
+++ b/configs/stm32f469_disco_defconfig
@@ -1,19 +1,25 @@
BR2_arm=y
BR2_cortex_m4=y
-BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f469-disco/patches"
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_11=y
-BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh"
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_12=y
+BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/common/stm32f4xx/stm32-post-build.sh board/stmicroelectronics/stm32f469-disco/post-build.sh"
+BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/stmicroelectronics/stm32f469-disco/genimage.cfg"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.11"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.12.11"
BR2_LINUX_KERNEL_DEFCONFIG="stm32"
-BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(LINUX_DIR)/arch/arm/configs/dram_0x00000000.config"
+BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(LINUX_DIR)/arch/arm/configs/dram_0x00000000.config board/stmicroelectronics/stm32f469-disco/linux.fragment"
BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y
-BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="xipImage"
+BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="zImage"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="stm32f469-disco"
BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox-minimal.config"
-BR2_TARGET_ROOTFS_INITRAMFS=y
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_SIZE="32M"
# BR2_TARGET_ROOTFS_TAR is not set
-BR2_TARGET_AFBOOT_STM32=y
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="stm32f469-discovery"
+BR2_PACKAGE_HOST_DOSFSTOOLS=y
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_PACKAGE_HOST_MTOOLS=y
BR2_PACKAGE_HOST_OPENOCD=y
diff --git a/configs/uevm5432_defconfig b/configs/uevm5432_defconfig
new file mode 100644
index 0000000000..7b9a4309c6
--- /dev/null
+++ b/configs/uevm5432_defconfig
@@ -0,0 +1,46 @@
+# Architecture
+BR2_arm=y
+BR2_cortex_a15=y
+BR2_ARM_FPU_NEON_VFPV4=y
+
+# Linux headers same as kernel, a 5.12 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_12=y
+
+# System
+BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y
+BR2_TARGET_GENERIC_GETTY_PORT="ttyS2"
+BR2_SYSTEM_DHCP="eth0"
+
+# Image
+BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/uevm5432/genimage.cfg"
+
+# Kernel
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.12.2"
+BR2_LINUX_KERNEL_DEFCONFIG="omap2plus"
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="omap5-uevm"
+BR2_LINUX_KERNEL_INSTALL_TARGET=y
+BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
+
+# Filesystem
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+# BR2_TARGET_ROOTFS_TAR is not set
+
+# Bootloader
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.04"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="omap5_uevm"
+BR2_TARGET_UBOOT_FORMAT_IMG=y
+BR2_TARGET_UBOOT_SPL=y
+BR2_TARGET_UBOOT_SPL_NAME="MLO"
+
+# Required tools to create the SD card image
+BR2_PACKAGE_HOST_DOSFSTOOLS=y
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_PACKAGE_HOST_MTOOLS=y
diff --git a/configs/wandboard_defconfig b/configs/wandboard_defconfig
index 8f9e30a1a9..7915248cf1 100644
--- a/configs/wandboard_defconfig
+++ b/configs/wandboard_defconfig
@@ -1,32 +1,46 @@
+# Architecture
BR2_arm=y
BR2_cortex_a9=y
BR2_ARM_ENABLE_NEON=y
BR2_ARM_ENABLE_VFP=y
BR2_ARM_FPU_VFPV3=y
-# Linux headers same as kernel, a 5.10 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
+
+# Linux headers same as kernel, a 5.12 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_12=y
+
+# System
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
+
+# Image
BR2_ROOTFS_POST_BUILD_SCRIPT="board/wandboard/post-build.sh"
BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/wandboard/genimage.cfg"
+
+# Filesystem
BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
+
+# Bootloader
BR2_TARGET_UBOOT=y
-BR2_TARGET_UBOOT_BOARDNAME="wandboard"
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.01"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.04"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="wandboard"
BR2_TARGET_UBOOT_FORMAT_IMG=y
BR2_TARGET_UBOOT_SPL=y
BR2_TARGET_UBOOT_SPL_NAME="SPL"
+
+# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.10.9"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.12.2"
BR2_LINUX_KERNEL_DEFCONFIG="imx_v6_v7"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6q-wandboard imx6dl-wandboard imx6q-wandboard-revb1 imx6dl-wandboard-revb1 imx6q-wandboard-revd1 imx6dl-wandboard-revd1 imx6qp-wandboard-revd1"
BR2_LINUX_KERNEL_INSTALL_TARGET=y
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
-# required tools to create the SD card image
+
+# Required tools to create the SD image
BR2_PACKAGE_HOST_DOSFSTOOLS=y
BR2_PACKAGE_HOST_GENIMAGE=y
BR2_PACKAGE_HOST_MTOOLS=y
diff --git a/docs/manual/adding-packages-cmake.txt b/docs/manual/adding-packages-cmake.txt
index 73f0943024..541d7422cf 100644
--- a/docs/manual/adding-packages-cmake.txt
+++ b/docs/manual/adding-packages-cmake.txt
@@ -100,7 +100,7 @@ typical packages will therefore only use a few of them.
necessary to set them in the package's +*.mk+ file unless you want
to override them:
-** +CMAKE_BUILD_TYPE+ is driven by +BR2_ENABLE_DEBUG+;
+** +CMAKE_BUILD_TYPE+ is driven by +BR2_ENABLE_RUNTIME_DEBUG+;
** +CMAKE_INSTALL_PREFIX+;
** +BUILD_SHARED_LIBS+ is driven by +BR2_STATIC_LIBS+;
** +BUILD_DOC+, +BUILD_DOCS+ are disabled;
diff --git a/docs/manual/customize-post-image.txt b/docs/manual/customize-post-image.txt
index 90ea2b9328..5308093d06 100644
--- a/docs/manual/customize-post-image.txt
+++ b/docs/manual/customize-post-image.txt
@@ -28,7 +28,8 @@ different sets of arguments to each script.
Again just like for the post-build scripts, the scripts have access to
the environment variables +BR2_CONFIG+, +HOST_DIR+, +STAGING_DIR+,
-+TARGET_DIR+, +BUILD_DIR+, +BINARIES_DIR+ and +BASE_DIR+.
++TARGET_DIR+, +BUILD_DIR+, +BINARIES_DIR+, +CONFIG_DIR+ and
++BASE_DIR+.
The post-image scripts will be executed as the user that executes
Buildroot, which should normally _not_ be the root user. Therefore, any
diff --git a/docs/manual/customize-rootfs.txt b/docs/manual/customize-rootfs.txt
index e1dbadda5b..e46306fd2a 100644
--- a/docs/manual/customize-rootfs.txt
+++ b/docs/manual/customize-rootfs.txt
@@ -60,6 +60,9 @@ The post-build scripts are run with the main Buildroot tree as current
In addition, you may also use these environment variables:
- +BR2_CONFIG+: the path to the Buildroot .config file
+ - +CONFIG_DIR+: the directory containing the .config file, and
+ therefore the top-level Buildroot Makefile to use (which is
+ correct for both in-tree and out-of-tree builds)
- +HOST_DIR+, +STAGING_DIR+, +TARGET_DIR+: see
xref:generic-package-reference[]
- +BUILD_DIR+: the directory where packages are extracted and built
diff --git a/docs/manual/resources.txt b/docs/manual/resources.txt
index 69bfff8f2b..374cdef94e 100644
--- a/docs/manual/resources.txt
+++ b/docs/manual/resources.txt
@@ -29,8 +29,8 @@ there is a good chance someone else has asked the same question before.
IRC::
+
-The Buildroot IRC channel irc://freenode.net/#buildroot[#buildroot] is
-hosted on http://webchat.freenode.net[Freenode]. It is a useful place to
+The Buildroot IRC channel irc://irc.oftc.net/#buildroot[#buildroot] is
+hosted on https://www.oftc.net/WebChat/[OFTC]. It is a useful place to
ask quick questions or discuss on certain topics.
+
When asking for help on IRC, share relevant logs or pieces of code
diff --git a/docs/website/docs.html b/docs/website/docs.html
index e8d8138565..85b005004d 100644
--- a/docs/website/docs.html
+++ b/docs/website/docs.html
@@ -108,14 +108,13 @@
</div>
<div class="panel panel-default">
- <div class="panel-heading">Public training course</div>
+ <div class="panel-heading">Public online training course</div>
<div class="panel-body">
- The next online public training course on Buildroot
- organized
- by <a href="https://www.bootlin.com">Bootlin</a> will
- take place from May 31 to June 4, 2021, with Thomas Petazzoni as
- trainer. <a href="https://bootlin.com/training/buildroot/">Infos</a>
- and <a href="https://www.eventbrite.com/e/bootlin-embedded-linux-development-with-buildroot-training-seminar-tickets-145276318379">registration</a>.
+ Regular online training courses, available to individual
+ registration, are proposed by Bootlin, with Thomas
+ Petazzoni as
+ trainer. See <a href="https://bootlin.com/training/buildroot/">next
+ dates and registration details</a>.
</div>
</div>
</div>
diff --git a/docs/website/download.html b/docs/website/download.html
index 384b9e98f1..d9ed3e6e61 100644
--- a/docs/website/download.html
+++ b/docs/website/download.html
@@ -8,105 +8,105 @@
<div class="panel-heading">Download</div>
<div class="panel-body">
- <h3 style="text-align: center;">Latest stable / long term support release: <b>2021.02.1</b></h3>
+ <h3 style="text-align: center;">Latest long term support release: <b>2021.02.3</b></h3>
<div class="row mt centered">
<div class="col-sm-6">
<div class="flip-container center-block" ontouchstart="this.classList.toggle('hover');">
<div class="flipper">
<div class="front">
- <a href="/downloads/buildroot-2021.02.1.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
+ <a href="/downloads/buildroot-2021.02.3.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
</div>
<div class="back">
- <a href="/downloads/buildroot-2021.02.1.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
+ <a href="/downloads/buildroot-2021.02.3.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
</div>
</div>
</div>
- <h3><a href="/downloads/buildroot-2021.02.1.tar.gz">buildroot-2021.02.1.tar.gz</a></h3>
- <p><a href="/downloads/buildroot-2021.02.1.tar.gz.sign">PGP signature</a></p>
+ <h3><a href="/downloads/buildroot-2021.02.3.tar.gz">buildroot-2021.02.3.tar.gz</a></h3>
+ <p><a href="/downloads/buildroot-2021.02.3.tar.gz.sign">PGP signature</a></p>
</div>
<div class="col-sm-6">
<div class="flip-container center-block" ontouchstart="this.classList.toggle('hover');">
<div class="flipper">
<div class="front">
- <a href="/downloads/buildroot-2021.02.1.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
+ <a href="/downloads/buildroot-2021.02.3.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
</div>
<div class="back">
- <a href="/downloads/buildroot-2021.02.1.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
+ <a href="/downloads/buildroot-2021.02.3.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
</div>
</div>
</div>
- <h3><a href="/downloads/buildroot-2021.02.1.tar.bz2">buildroot-2021.02.1.tar.bz2</a></h3>
- <p><a href="/downloads/buildroot-2021.02.1.tar.bz2.sign">PGP signature</a></p>
+ <h3><a href="/downloads/buildroot-2021.02.3.tar.bz2">buildroot-2021.02.3.tar.bz2</a></h3>
+ <p><a href="/downloads/buildroot-2021.02.3.tar.bz2.sign">PGP signature</a></p>
</div>
</div>
-<!--
- <h3 style="text-align: center;">Latest stable release: <b>2020.11.3</b></h3>
+
+ <h3 style="text-align: center;">Latest stable release: <b>2021.05</b></h3>
<div class="row mt centered">
<div class="col-sm-6">
<div class="flip-container center-block" ontouchstart="this.classList.toggle('hover');">
<div class="flipper">
<div class="front">
- <a href="/downloads/buildroot-2020.11.3.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
+ <a href="/downloads/buildroot-2021.05.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
</div>
<div class="back">
- <a href="/downloads/buildroot-2020.11.3.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
+ <a href="/downloads/buildroot-2021.05.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
</div>
</div>
</div>
- <h3><a href="/downloads/buildroot-2020.11.3.tar.gz">buildroot-2020.11.3.tar.gz</a></h3>
- <p><a href="/downloads/buildroot-2020.11.3.tar.gz.sign">PGP signature</a></p>
+ <h3><a href="/downloads/buildroot-2021.05.tar.gz">buildroot-2021.05.tar.gz</a></h3>
+ <p><a href="/downloads/buildroot-2021.05.tar.gz.sign">PGP signature</a></p>
</div>
<div class="col-sm-6">
<div class="flip-container center-block" ontouchstart="this.classList.toggle('hover');">
<div class="flipper">
<div class="front">
- <a href="/downloads/buildroot-2020.11.3.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
+ <a href="/downloads/buildroot-2021.05.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
</div>
<div class="back">
- <a href="/downloads/buildroot-2020.11.3.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
+ <a href="/downloads/buildroot-2021.05.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
</div>
</div>
</div>
- <h3><a href="/downloads/buildroot-2020.11.3.tar.bz2">buildroot-2020.11.3.tar.bz2</a></h3>
- <p><a href="/downloads/buildroot-2020.11.3.tar.bz2.sign">PGP signature</a></p>
+ <h3><a href="/downloads/buildroot-2021.05.tar.bz2">buildroot-2021.05.tar.bz2</a></h3>
+ <p><a href="/downloads/buildroot-2021.05.tar.bz2.sign">PGP signature</a></p>
</div>
</div>
-
- <h3 style="text-align: center;">Latest release candidate: <b>2021.02-rc3</b></h3>
+<!--
+ <h3 style="text-align: center;">Latest release candidate: <b>2021.05-rc3</b></h3>
<div class="row mt centered">
<div class="col-sm-6">
<div class="flip-container center-block" ontouchstart="this.classList.toggle('hover');">
<div class="flipper">
<div class="front">
- <a href="/downloads/buildroot-2021.02-rc3.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
+ <a href="/downloads/buildroot-2021.05-rc3.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
</div>
<div class="back">
- <a href="/downloads/buildroot-2021.02-rc3.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
+ <a href="/downloads/buildroot-2021.05-rc3.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
</div>
</div>
</div>
- <h3><a href="/downloads/buildroot-2021.02-rc3.tar.gz">buildroot-2021.02-rc3.tar.gz</a></h3>
- <p><a href="/downloads/buildroot-2021.02-rc3.tar.gz.sign">PGP signature</a></p>
+ <h3><a href="/downloads/buildroot-2021.05-rc3.tar.gz">buildroot-2021.05-rc3.tar.gz</a></h3>
+ <p><a href="/downloads/buildroot-2021.05-rc3.tar.gz.sign">PGP signature</a></p>
</div>
<div class="col-sm-6">
<div class="flip-container center-block" ontouchstart="this.classList.toggle('hover');">
<div class="flipper">
<div class="front">
- <a href="/downloads/buildroot-2021.02-rc3.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
+ <a href="/downloads/buildroot-2021.05-rc3.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
</div>
<div class="back">
- <a href="/downloads/buildroot-2021.02-rc3.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
+ <a href="/downloads/buildroot-2021.05-rc3.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
</div>
</div>
</div>
- <h3><a href="/downloads/buildroot-2021.02-rc3.tar.bz2">buildroot-2021.02-rc3.tar.bz2</a></h3>
- <p><a href="/downloads/buildroot-2021.02-rc3.tar.bz2.sign">PGP signature</a></p>
+ <h3><a href="/downloads/buildroot-2021.05-rc3.tar.bz2">buildroot-2021.05-rc3.tar.bz2</a></h3>
+ <p><a href="/downloads/buildroot-2021.05-rc3.tar.bz2.sign">PGP signature</a></p>
</div>
</div>
-->
diff --git a/docs/website/news.html b/docs/website/news.html
index fcc73d775d..9c8e63c852 100644
--- a/docs/website/news.html
+++ b/docs/website/news.html
@@ -13,6 +13,126 @@
<div class="timeline-badge"><i class="glyphicon glyphicon-thumbs-up"></i></div>
<div class="timeline-panel">
<div class="timeline-heading">
+ <h4 class="timeline-title">2021.02.3 released</h4>
+ <p><small class="text-muted"><i class="glyphicon glyphicon-time"></i>12 June 2021</small></p>
+ </div>
+ <div class="timeline-body">
+ <p>The 2021.02.3 bugfix release is out, fixing a number of important /
+ security related issues discovered since the 2021.02.2 release. See the
+ <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2021.02.3">CHANGES</a>
+ file for more details, read the
+ <a href="http://lists.busybox.net/pipermail/buildroot/2021-June/312591.html">announcement</a>
+ and go to the <a href="/downloads/">downloads page</a> to pick up the
+ <a href="/downloads/buildroot-2021.02.3.tar.bz2">2021.02.3 release</a>.</p>
+ </div>
+ </div>
+ </li>
+
+ <li>
+ <div class="timeline-badge"><i class="glyphicon glyphicon-thumbs-up"></i></div>
+ <div class="timeline-panel">
+ <div class="timeline-heading">
+ <h4 class="timeline-title">2021.05 released</h4>
+ <p><small class="text-muted"><i class="glyphicon glyphicon-time"></i>6 June 2021</small></p>
+ </div>
+ <div class="timeline-body">
+ <p>The stable 2021.05 release is out - Thanks to everyone
+ contributing and testing the release candidates. See the
+ <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2021.05">CHANGES</a>
+ file for more details, read the
+ <a href="http://lists.busybox.net/pipermail/buildroot/2021-June/311946.html">announcement</a>
+ and go to the <a href="/downloads/">downloads page</a> to pick up the
+ <a href="/downloads/buildroot-2021.05.tar.bz2">2021.05 release</a>.</p>
+ </div>
+ </div>
+ </li>
+
+ <li class="timeline-inverted">
+ <div class="timeline-badge"><i class="glyphicon glyphicon-thumbs-up"></i></div>
+ <div class="timeline-panel">
+ <div class="timeline-heading">
+ <h4 class="timeline-title">2021.05-rc3 released</h4>
+ <p><small class="text-muted"><i class="glyphicon glyphicon-time"></i>31 May 2021</small></p>
+ </div>
+ <div class="timeline-body">
+ <p>2021.05-rc3 has been released with more cleanups and build fixes. See the
+ <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2021.05-rc3">CHANGES</a>
+ file for details.</p>
+
+ <p>Head to the <a href="/downloads/">downloads page</a> to pick up the
+ <a href="/downloads/buildroot-2021.05-rc3.tar.bz2">2021.05-rc3
+ release candidate</a>, and report any problems found to the
+ <a href="support.html">mailing list</a> or
+ <a href="https://bugs.buildroot.org">bug tracker</a>.</p>
+ </div>
+ </div>
+ </li>
+
+ <li>
+ <div class="timeline-badge"><i class="glyphicon glyphicon-thumbs-up"></i></div>
+ <div class="timeline-panel">
+ <div class="timeline-heading">
+ <h4 class="timeline-title">2021.05-rc2 released</h4>
+ <p><small class="text-muted"><i class="glyphicon glyphicon-time"></i>22 May 2021</small></p>
+ </div>
+ <div class="timeline-body">
+ <p>2021.05-rc2 has been released with more cleanups and build fixes. See the
+ <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2021.05-rc2">CHANGES</a>
+ file for details.</p>
+
+ <p>Head to the <a href="/downloads/">downloads page</a> to pick up the
+ <a href="/downloads/buildroot-2021.05-rc2.tar.bz2">2021.05-rc2
+ release candidate</a>, and report any problems found to the
+ <a href="support.html">mailing list</a> or
+ <a href="https://bugs.buildroot.org">bug tracker</a>.</p>
+ </div>
+ </div>
+ </li>
+
+ <li class="timeline-inverted">
+ <div class="timeline-badge"><i class="glyphicon glyphicon-thumbs-up"></i></div>
+ <div class="timeline-panel">
+ <div class="timeline-heading">
+ <h4 class="timeline-title">2021.02.2 released</h4>
+ <p><small class="text-muted"><i class="glyphicon glyphicon-time"></i>12 May 2021</small></p>
+ </div>
+ <div class="timeline-body">
+ <p>The 2021.02.2 bugfix release is out, fixing a number of important /
+ security related issues discovered since the 2021.02.1 release. See the
+ <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2021.02.2">CHANGES</a>
+ file for more details, read the
+ <a href="http://lists.busybox.net/pipermail/buildroot/2021-May/310003.html">announcement</a>
+ and go to the <a href="/downloads/">downloads page</a> to pick up the
+ <a href="/downloads/buildroot-2021.02.2.tar.bz2">2021.02.2 release</a>.</p>
+ </div>
+ </div>
+ </li>
+
+ <li>
+ <div class="timeline-badge"><i class="glyphicon glyphicon-thumbs-up"></i></div>
+ <div class="timeline-panel">
+ <div class="timeline-heading">
+ <h4 class="timeline-title">2021.05-rc1 released</h4>
+ <p><small class="text-muted"><i class="glyphicon glyphicon-time"></i>12 May 2021</small></p>
+ </div>
+ <div class="timeline-body">
+ <p>We have a new release candidate! Lots of changes all over the tree, see the
+ <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2021.05-rc1">CHANGES</a>
+ file for more details.</p>
+
+ <p>Go to the <a href="/downloads/">downloads page</a> to pick up the
+ <a href="/downloads/buildroot-2021.05-rc1.tar.bz2">2021.05-rc1
+ release</a>, and report any problems found to the
+ <a href="support.html">mailing list</a> or
+ <a href="https://bugs.buildroot.org">bug tracker</a>.</p>
+ </div>
+ </div>
+ </li>
+
+ <li class="timeline-inverted">
+ <div class="timeline-badge"><i class="glyphicon glyphicon-thumbs-up"></i></div>
+ <div class="timeline-panel">
+ <div class="timeline-heading">
<h4 class="timeline-title">2021.02.1 released</h4>
<p><small class="text-muted"><i class="glyphicon glyphicon-time"></i>7 April 2021</small></p>
</div>
diff --git a/docs/website/support.html b/docs/website/support.html
index 6c602b42d2..eef969d461 100644
--- a/docs/website/support.html
+++ b/docs/website/support.html
@@ -19,15 +19,15 @@
<img class="img-responsive" src="images/irc.png" style="max-width:50px; margin-bottom:10px;">
</div>
<div class="col-sm-11">
- <p>The Buildroot IRC channel is <a href="irc://freenode.net/#buildroot">
- #buildroot</a>, hosted on Freenode. If you do not have an IRC client, you can
- use the <a href="http://webchat.freenode.net">Freenode web interface</a>.
+ <p>The Buildroot IRC channel is <a href="irc://irc.oftc.net/#buildroot">
+ #buildroot</a>, hosted on OFTC. If you do not have an IRC client, you can
+ use the <a href="https://www.oftc.net/WebChat/">OFTC web interface</a>.
When asking for help on IRC, share relevant logs or pieces of code using a code
sharing website.</p>
- <p>Note that due to excessive spamming on Freenode, the channel can only be
+ <p>Note that due to excessive spamming on IRC, the channel can only be
joined if you are a registered user with
- <a href="https://freenode.net/kb/answer/registration">Freenode nickserv</a>
+ <a href="https://www.oftc.net/Services/">OFTC NickServ</a>
service. Follow the instructions to register as a user with a password,
and then join the <code>#buildroot</code> channel.</p>
</div>
diff --git a/linux/Config.in b/linux/Config.in
index cf790963dd..035699663c 100644
--- a/linux/Config.in
+++ b/linux/Config.in
@@ -28,7 +28,7 @@ choice
prompt "Kernel version"
config BR2_LINUX_KERNEL_LATEST_VERSION
- bool "Latest version (5.11)"
+ bool "Latest version (5.12)"
config BR2_LINUX_KERNEL_LATEST_CIP_VERSION
bool "Latest CIP SLTS version (4.19.182-cip45)"
@@ -125,7 +125,7 @@ endif
config BR2_LINUX_KERNEL_VERSION
string
- default "5.11.8" if BR2_LINUX_KERNEL_LATEST_VERSION
+ default "5.12.10" 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 BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \
diff --git a/linux/linux.hash b/linux/linux.hash
index 992ae22d11..d7493545ef 100644
--- a/linux/linux.hash
+++ b/linux/linux.hash
@@ -1,12 +1,13 @@
# From https://www.kernel.org/pub/linux/kernel/v5.x/sha256sums.asc
-sha256 91f939263a350da676b274e3ec84ad5b57f27ffdf4bd6b74cd002ce21fc0c89f linux-5.11.8.tar.xz
-sha256 930ae76b9a3b64b98802849aca332d17a706f20595de21e1ae729b55ee461add linux-5.10.25.tar.xz
-sha256 1c3cef545f366b56332c11c28d074c9d9148c28059a970ec8710826652237560 linux-5.4.107.tar.xz
+sha256 c8d499fc53ed14838994ec2f51591ae40d64cce68559cd897be8acbeeee7630f linux-5.12.10.tar.xz
+sha256 11027c6114eb916edbcc37897226fb6263b2931911d2d5093550473ce1a57600 linux-5.11.22.tar.xz
+sha256 83b81e433ba2f8ee143064fb163699ee857e26dd789006bc1e9edf1ccd0bd403 linux-5.10.43.tar.xz
+sha256 17ee750a4aeb1c883d721e730d1f7e2855124585e2f47766864a1359a7ebe33c linux-5.4.125.tar.xz
# From https://www.kernel.org/pub/linux/kernel/v4.x/sha256sums.asc
-sha256 d270c529910aefa70f7eeaafe313588b9949cfde33a5553bd4cd1a1249c4e97b linux-4.4.262.tar.xz
-sha256 b22e764095362d9e63d76375db838d9372474ba5cbe6132c9a8b07f7533f07ff linux-4.9.262.tar.xz
-sha256 7adc041af81424ff8d68affe3005fa9e5babc4e84e0b07e4effdf54225ba9426 linux-4.14.226.tar.xz
-sha256 05db750ba01ad557bef50835c253894fad9fb0db2224f0e803b25e2ff7ab2365 linux-4.19.182.tar.xz
+sha256 d13fa552be602825c443fcca90d6bdd72f4ebef809889ef015dba4593d3224ab linux-4.4.272.tar.xz
+sha256 f8bf0c390ae40ca736e104f10f744446bc534bf87ba1b6dbb2b7c9a8bece1058 linux-4.9.272.tar.xz
+sha256 e4eae297a6fefefd8ce4781d98178a7c1ee51ca0a4c8a7e46e61b121fbab8b2a linux-4.14.236.tar.xz
+sha256 aaaebdccf599f77148fe170642fa7dc2452cf994b5cbbb4d39cab9e7f4058896 linux-4.19.194.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
diff --git a/package/Config.in b/package/Config.in
index 0d7cb0f446..cb8ece4919 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -109,6 +109,7 @@ menu "Debugging, profiling and benchmark"
source "package/kvm-unit-tests/Config.in"
source "package/kyua/Config.in"
source "package/latencytop/Config.in"
+ source "package/libbpf/Config.in"
source "package/lmbench/Config.in"
source "package/lsof/Config.in"
source "package/ltp-testsuite/Config.in"
@@ -126,6 +127,7 @@ menu "Debugging, profiling and benchmark"
source "package/pcm-tools/Config.in"
source "package/piglit/Config.in"
source "package/ply/Config.in"
+ source "package/poke/Config.in"
source "package/ptm2human/Config.in"
source "package/pv/Config.in"
source "package/racehound/Config.in"
@@ -144,6 +146,7 @@ menu "Debugging, profiling and benchmark"
source "package/trace-cmd/Config.in"
source "package/trinity/Config.in"
source "package/uclibc-ng-test/Config.in"
+ source "package/uftrace/Config.in"
source "package/valgrind/Config.in"
source "package/vmtouch/Config.in"
source "package/whetstone/Config.in"
@@ -372,6 +375,7 @@ comment "X applications"
source "package/gtkperf/Config.in"
source "package/leafpad/Config.in"
source "package/midori/Config.in"
+ source "package/mupdf/Config.in"
source "package/nodm/Config.in"
source "package/pcmanfm/Config.in"
source "package/qt-webkit-kiosk/Config.in"
@@ -459,6 +463,7 @@ endmenu
source "package/dvb-apps/Config.in"
source "package/dvbsnoop/Config.in"
source "package/edid-decode/Config.in"
+ source "package/edk2-platforms/Config.in"
source "package/eudev/Config.in"
source "package/ev3dev-linux-drivers/Config.in"
source "package/evemu/Config.in"
@@ -482,7 +487,6 @@ endmenu
source "package/i7z/Config.in"
source "package/input-event-daemon/Config.in"
source "package/intel-microcode/Config.in"
- source "package/iostat/Config.in"
source "package/ipmitool/Config.in"
source "package/ipmiutil/Config.in"
source "package/irda-utils/Config.in"
@@ -582,6 +586,7 @@ endmenu
source "package/upower/Config.in"
source "package/usb_modeswitch/Config.in"
source "package/usb_modeswitch_data/Config.in"
+ source "package/usbguard/Config.in"
source "package/usbmount/Config.in"
source "package/usbutils/Config.in"
source "package/w_scan/Config.in"
@@ -689,6 +694,7 @@ menu "Lua libraries/modules"
source "package/lua-testmore/Config.in"
source "package/lua-utf8/Config.in"
source "package/lua-valua/Config.in"
+ source "package/lua-zlib/Config.in"
source "package/luabitop/Config.in"
source "package/luadbi/Config.in"
source "package/luadbi-sqlite3/Config.in"
@@ -960,6 +966,7 @@ menu "External python modules"
source "package/python-daphne/Config.in"
source "package/python-dataproperty/Config.in"
source "package/python-dateutil/Config.in"
+ source "package/python-dbus-next/Config.in"
source "package/python-decorator/Config.in"
source "package/python-defusedxml/Config.in"
source "package/python-dialog/Config.in"
@@ -1031,6 +1038,7 @@ menu "External python modules"
source "package/python-ipython-genutils/Config.in"
source "package/python-iso8601/Config.in"
source "package/python-itsdangerous/Config.in"
+ source "package/python-iwlib/Config.in"
source "package/python-janus/Config.in"
source "package/python-jaraco-classes/Config.in"
source "package/python-jaraco-functools/Config.in"
@@ -1132,6 +1140,7 @@ menu "External python modules"
source "package/python-pylibftdi/Config.in"
source "package/python-pylru/Config.in"
source "package/python-pymodbus/Config.in"
+ source "package/python-pymupdf/Config.in"
source "package/python-pymysql/Config.in"
source "package/python-pynacl/Config.in"
source "package/python-pyopenssl/Config.in"
@@ -1724,6 +1733,7 @@ menu "Networking"
source "package/curlpp/Config.in"
source "package/czmq/Config.in"
source "package/daq/Config.in"
+ source "package/daq3/Config.in"
source "package/davici/Config.in"
source "package/enet/Config.in"
source "package/filemq/Config.in"
@@ -1787,6 +1797,7 @@ menu "Networking"
source "package/libpagekite/Config.in"
source "package/libpcap/Config.in"
source "package/libpjsip/Config.in"
+ source "package/libpsl/Config.in"
source "package/librelp/Config.in"
source "package/librsync/Config.in"
source "package/libshairplay/Config.in"
@@ -1929,6 +1940,7 @@ menu "Other"
source "package/libpthread-stubs/Config.in"
source "package/libpthsem/Config.in"
source "package/libpwquality/Config.in"
+ source "package/libqb/Config.in"
source "package/libseccomp/Config.in"
source "package/libsigc/Config.in"
source "package/libsigsegv/Config.in"
@@ -2056,6 +2068,7 @@ menu "Miscellaneous"
source "package/sunwait/Config.in"
source "package/taskd/Config.in"
source "package/wine/Config.in"
+ source "package/xmrig/Config.in"
source "package/xutil_util-macros/Config.in"
endmenu
@@ -2185,7 +2198,6 @@ menu "Networking applications"
source "package/mjpg-streamer/Config.in"
source "package/modem-manager/Config.in"
source "package/mongrel2/Config.in"
- source "package/monkey/Config.in"
source "package/mosh/Config.in"
source "package/mosquitto/Config.in"
source "package/mrouted/Config.in"
@@ -2274,6 +2286,7 @@ endif
source "package/sngrep/Config.in"
source "package/snmpclitools/Config.in"
source "package/snort/Config.in"
+ source "package/snort3/Config.in"
source "package/socat/Config.in"
source "package/socketcand/Config.in"
source "package/softether/Config.in"
@@ -2425,6 +2438,7 @@ menu "System tools"
source "package/bubblewrap/Config.in"
source "package/cgroupfs-mount/Config.in"
source "package/circus/Config.in"
+ source "package/containerd/Config.in"
source "package/coreutils/Config.in"
source "package/cpuload/Config.in"
source "package/daemon/Config.in"
@@ -2434,7 +2448,6 @@ menu "System tools"
source "package/debianutils/Config.in"
source "package/docker-cli/Config.in"
source "package/docker-compose/Config.in"
- source "package/docker-containerd/Config.in"
source "package/docker-engine/Config.in"
source "package/docker-proxy/Config.in"
source "package/earlyoom/Config.in"
@@ -2489,6 +2502,7 @@ menu "System tools"
source "package/scrub/Config.in"
source "package/scrypt/Config.in"
source "package/sdbusplus/Config.in"
+ source "package/seatd/Config.in"
source "package/smack/Config.in"
source "package/start-stop-daemon/Config.in"
source "package/supervisor/Config.in"
diff --git a/package/Config.in.host b/package/Config.in.host
index ba6a68c728..064c98af3d 100644
--- a/package/Config.in.host
+++ b/package/Config.in.host
@@ -39,6 +39,7 @@ menu "Host utilities"
source "package/imagemagick/Config.in.host"
source "package/imx-mkimage/Config.in.host"
source "package/imx-usb-loader/Config.in.host"
+ source "package/jh71xx-tools/Config.in.host"
source "package/jq/Config.in.host"
source "package/jsmin/Config.in.host"
source "package/kmod/Config.in.host"
diff --git a/package/Makefile.in b/package/Makefile.in
index 51f5cbce4f..955e6a8e8c 100644
--- a/package/Makefile.in
+++ b/package/Makefile.in
@@ -136,6 +136,9 @@ endif
ifeq ($(BR2_OPTIMIZE_FAST),y)
TARGET_OPTIMIZATION = -Ofast
endif
+ifeq ($(BR2_ENABLE_DEBUG),)
+TARGET_DEBUGGING = -g0
+endif
ifeq ($(BR2_DEBUG_1),y)
TARGET_DEBUGGING = -g1
endif
@@ -145,6 +148,9 @@ endif
ifeq ($(BR2_DEBUG_3),y)
TARGET_DEBUGGING = -g3
endif
+ifeq ($(BR2_ENABLE_RUNTIME_DEBUG),)
+TARGET_DEBUGGING += -DNDEBUG
+endif
TARGET_LDFLAGS = $(call qstrip,$(BR2_TARGET_LDFLAGS))
@@ -318,6 +324,7 @@ EXTRA_ENV = \
PATH=$(BR_PATH) \
BR2_DL_DIR=$(BR2_DL_DIR) \
BUILD_DIR=$(BUILD_DIR) \
+ CONFIG_DIR=$(CONFIG_DIR) \
O=$(CANONICAL_O)
################################################################################
diff --git a/package/abootimg/Config.in b/package/abootimg/Config.in
index 30e5bd1fb0..bcd2a082c9 100644
--- a/package/abootimg/Config.in
+++ b/package/abootimg/Config.in
@@ -7,4 +7,4 @@ config BR2_PACKAGE_ABOOTIMG
Tool to manipulate Android Boot Images, either on files
or directly on /dev block devices.
- https://github.com/ggrandou/abootimg
+ https://gitlab.com/ajs124/abootimg
diff --git a/package/abootimg/abootimg.hash b/package/abootimg/abootimg.hash
index fa5282c6c3..141db26860 100644
--- a/package/abootimg/abootimg.hash
+++ b/package/abootimg/abootimg.hash
@@ -1,3 +1,3 @@
# Locally calculated
-sha256 eb8d912bc7b5454c2afd3385fd86f4917d3587c48a6f5ae45df7856d88502cab abootimg-7e127fee6a3981f6b0a50ce9910267cd501e09d4.tar.gz
+sha256 f377da42a57d982cfc22fa75c5a69febdc3e4c1ef43cd0ceaec42e14067e2f37 abootimg-1ebeb393252ab5aeed62e34bc439b6728444f06e-br1.tar.gz
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE
diff --git a/package/abootimg/abootimg.mk b/package/abootimg/abootimg.mk
index ab6c709318..a07100df5a 100644
--- a/package/abootimg/abootimg.mk
+++ b/package/abootimg/abootimg.mk
@@ -4,8 +4,9 @@
#
################################################################################
-ABOOTIMG_VERSION = 7e127fee6a3981f6b0a50ce9910267cd501e09d4
-ABOOTIMG_SITE = $(call github,ggrandou,abootimg,$(ABOOTIMG_VERSION))
+ABOOTIMG_VERSION = 1ebeb393252ab5aeed62e34bc439b6728444f06e
+ABOOTIMG_SITE = https://gitlab.com/ajs124/abootimg.git
+ABOOTIMG_SITE_METHOD = git
ABOOTIMG_LICENSE = GPL-2.0+
ABOOTIMG_LICENSE_FILES = LICENSE
diff --git a/package/acpid/acpid.mk b/package/acpid/acpid.mk
index ff6e62b5cd..3473e7b5f6 100644
--- a/package/acpid/acpid.mk
+++ b/package/acpid/acpid.mk
@@ -9,6 +9,8 @@ ACPID_SOURCE = acpid-$(ACPID_VERSION).tar.xz
ACPID_SITE = http://downloads.sourceforge.net/project/acpid2
ACPID_LICENSE = GPL-2.0+
ACPID_LICENSE_FILES = COPYING
+ACPID_CPE_ID_VENDOR = tedfelix
+ACPID_CPE_ID_PRODUCT = acpid2
define ACPID_INSTALL_INIT_SYSTEMD
$(INSTALL) -D -m 0644 package/acpid/acpid.service \
diff --git a/package/aircrack-ng/Config.in b/package/aircrack-ng/Config.in
index f3e2bc4ef1..eb997e8d1b 100644
--- a/package/aircrack-ng/Config.in
+++ b/package/aircrack-ng/Config.in
@@ -5,6 +5,7 @@ config BR2_PACKAGE_AIRCRACK_NG
depends on BR2_INSTALL_LIBSTDCPP
depends on !BR2_STATIC_LIBS # dlfcn.h
select BR2_PACKAGE_OPENSSL if !BR2_PACKAGE_LIBGCRYPT
+ select BR2_PACKAGE_LIBOPENSSL_ENABLE_RC4 if BR2_PACKAGE_LIBOPENSSL
help
A set of tools for auditing wireless networks
diff --git a/package/apache/0004-server-log.c-ap_log_pid-Use-a-temporary-file-then-re.patch b/package/apache/0004-server-log.c-ap_log_pid-Use-a-temporary-file-then-re.patch
deleted file mode 100644
index af3cd47a30..0000000000
--- a/package/apache/0004-server-log.c-ap_log_pid-Use-a-temporary-file-then-re.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-From 5b95d256387b45fbe33f7ee7890ae35afdd5c371 Mon Sep 17 00:00:00 2001
-From: Joe Orton <jorton@apache.org>
-Date: Fri, 13 Mar 2020 14:34:18 +0000
-Subject: [PATCH] * server/log.c (ap_log_pid): Use a temporary file, then
- rename once successfully written; also add error checking. Avoids startup
- failures if a previous httpd invocation crashed while writing the pidfile.
-
-Submitted by: Nicolas Carrier <carrier.nicolas0 gmail.com>, jorton
-Github: closes #100, closes #69
-PR: 63140
-
-git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1875153 13f79535-47bb-0310-9956-ffa450edef68
-Signed-off-by: Nicolas Carrier <nicolas.carrier@orolia.com>
----
- server/log.c | 33 ++++++++++++++++++++++++++-------
- 1 file changed, 26 insertions(+), 7 deletions(-)
-
-diff --git a/server/log.c b/server/log.c
-index f0bde6e4b8..8d54b4e057 100644
---- a/server/log.c
-+++ b/server/log.c
-@@ -1598,6 +1598,9 @@ AP_DECLARE(void) ap_log_pid(apr_pool_t *p, const char *filename)
- pid_t mypid;
- apr_status_t rv;
- const char *fname;
-+ char *temp_fname;
-+ apr_fileperms_t perms;
-+ char pidstr[64];
-
- if (!filename) {
- return;
-@@ -1626,19 +1629,35 @@ AP_DECLARE(void) ap_log_pid(apr_pool_t *p, const char *filename)
- fname);
- }
-
-- if ((rv = apr_file_open(&pid_file, fname,
-- APR_WRITE | APR_CREATE | APR_TRUNCATE,
-- APR_UREAD | APR_UWRITE | APR_GREAD | APR_WREAD, p))
-- != APR_SUCCESS) {
-+ temp_fname = apr_pstrcat(p, fname, ".XXXXXX", NULL);
-+ rv = apr_file_mktemp(&pid_file, temp_fname,
-+ APR_FOPEN_WRITE | APR_FOPEN_CREATE | APR_FOPEN_TRUNCATE, p);
-+ if (rv != APR_SUCCESS) {
- ap_log_error(APLOG_MARK, APLOG_ERR, rv, NULL, APLOGNO(00099)
-- "could not create %s", fname);
-+ "could not create %s", temp_fname);
- ap_log_error(APLOG_MARK, APLOG_ERR, 0, NULL, APLOGNO(00100)
- "%s: could not log pid to file %s",
- ap_server_argv0, fname);
- exit(1);
- }
-- apr_file_printf(pid_file, "%" APR_PID_T_FMT APR_EOL_STR, mypid);
-- apr_file_close(pid_file);
-+
-+ apr_snprintf(pidstr, sizeof pidstr, "%" APR_PID_T_FMT APR_EOL_STR, mypid);
-+
-+ perms = APR_UREAD | APR_UWRITE | APR_GREAD | APR_WREAD;
-+ rv = apr_file_perms_set(temp_fname, perms);
-+ if (rv == APR_SUCCESS)
-+ rv = apr_file_write_full(pid_file, pidstr, strlen(pidstr), NULL);
-+ if (rv == APR_SUCCESS)
-+ rv = apr_file_close(pid_file);
-+ if (rv == APR_SUCCESS)
-+ rv = apr_file_rename(temp_fname, fname, p);
-+ if (rv != APR_SUCCESS) {
-+ ap_log_error(APLOG_MARK, APLOG_ERR, rv, NULL, APLOGNO(10231)
-+ "%s: Failed creating pid file %s",
-+ ap_server_argv0, temp_fname);
-+ exit(1);
-+ }
-+
- saved_pid = mypid;
- }
-
---
-2.25.2
-
diff --git a/package/apache/apache.hash b/package/apache/apache.hash
index bd3f6ac7ba..c03934b40a 100644
--- a/package/apache/apache.hash
+++ b/package/apache/apache.hash
@@ -1,5 +1,5 @@
# From http://archive.apache.org/dist/httpd/httpd-2.4.46.tar.bz2.{sha256,sha512}
-sha256 740eddf6e1c641992b22359cabc66e6325868c3c5e2e3f98faf349b61ecf41ea httpd-2.4.46.tar.bz2
-sha512 5936784bb662e9d8a4f7fe38b70c043b468114d931cd10ea831bfe74461ea5856b64f88f42c567ab791fc8907640a99884ba4b6a600f86d661781812735b6f13 httpd-2.4.46.tar.bz2
+sha256 1bc826e7b2e88108c7e4bf43c026636f77a41d849cfb667aa7b5c0b86dbf966c httpd-2.4.48.tar.bz2
+sha512 6c250626f1e7d10428a92d984fd48ff841effcc8705f7816ab71b681bbd51d0012ad158dcd13763fe7d630311f2de258b27574603140d648be42796ab8326724 httpd-2.4.48.tar.bz2
# Locally computed
sha256 47b8c2b6c3309282a99d4a3001575c790fead690cc14734628c4667d2bbffc43 LICENSE
diff --git a/package/apache/apache.mk b/package/apache/apache.mk
index 6b9d18ac00..7dbd1a4512 100644
--- a/package/apache/apache.mk
+++ b/package/apache/apache.mk
@@ -4,7 +4,7 @@
#
################################################################################
-APACHE_VERSION = 2.4.46
+APACHE_VERSION = 2.4.48
APACHE_SOURCE = httpd-$(APACHE_VERSION).tar.bz2
APACHE_SITE = http://archive.apache.org/dist/httpd
APACHE_LICENSE = Apache-2.0
diff --git a/package/apcupsd/apcupsd.mk b/package/apcupsd/apcupsd.mk
index 410bce9aec..9e707e1a5a 100644
--- a/package/apcupsd/apcupsd.mk
+++ b/package/apcupsd/apcupsd.mk
@@ -8,6 +8,7 @@ APCUPSD_VERSION = 3.14.14
APCUPSD_SITE = http://downloads.sourceforge.net/project/apcupsd/apcupsd%20-%20Stable/$(APCUPSD_VERSION)
APCUPSD_LICENSE = GPL-2.0
APCUPSD_LICENSE_FILES = COPYING
+APCUPSD_CPE_ID_VENDOR = apcupsd
APCUPSD_CONF_OPTS = --disable-test
ifneq ($(BR2_PACKAGE_APCUPSD_MODBUS_USB)$(BR2_PACKAGE_APCUPSD_USB),)
diff --git a/package/assimp/0002-closes-2733-update-of-zlip-to-fix-gcc-build-for-v9-2-0-32-bit.patch b/package/assimp/0002-closes-2733-update-of-zlip-to-fix-gcc-build-for-v9-2-0-32-bit.patch
new file mode 100644
index 0000000000..4b86cc584f
--- /dev/null
+++ b/package/assimp/0002-closes-2733-update-of-zlip-to-fix-gcc-build-for-v9-2-0-32-bit.patch
@@ -0,0 +1,1638 @@
+From f78446b14aff46db2ef27d062a275b6a01fd68b1 Mon Sep 17 00:00:00 2001
+From: Kim Kulling <kim.kulling@googlemail.com>
+Date: Tue, 19 Nov 2019 20:30:40 +0100
+Subject: [PATCH] closes https://github.com/assimp/assimp/issues/2733: update
+ of zlip to fix gcc build for v9.2.0 32 bit
+
+[Retrieved (and updated to remove .gitignore and appveyor.yml) from:
+https://github.com/assimp/assimp/commit/f78446b14aff46db2ef27d062a275b6a01fd68b1]
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+---
+ contrib/zip/.gitignore | 2 +
+ contrib/zip/CMakeLists.txt | 83 +++++-
+ contrib/zip/README.md | 12 +-
+ contrib/zip/appveyor.yml | 2 +-
+ contrib/zip/src/miniz.h | 457 ++++++++++++++++++++++++++++----
+ contrib/zip/src/zip.c | 62 +++--
+ contrib/zip/src/zip.h | 457 ++++++++++++++++----------------
+ contrib/zip/test/CMakeLists.txt | 27 +-
+ contrib/zip/test/test.c | 38 ++-
+ contrib/zip/test/test_miniz.c | 25 +-
+ 10 files changed, 821 insertions(+), 344 deletions(-)
+
+diff --git a/contrib/zip/CMakeLists.txt b/contrib/zip/CMakeLists.txt
+index b46dbb1db0..77916d2e14 100644
+--- a/contrib/zip/CMakeLists.txt
++++ b/contrib/zip/CMakeLists.txt
+@@ -1,10 +1,14 @@
+-cmake_minimum_required(VERSION 2.8)
+-project(zip)
+-enable_language(C)
++cmake_minimum_required(VERSION 3.0)
++
++project(zip
++ LANGUAGES C
++ VERSION "0.1.15")
+ set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH})
+
++option(CMAKE_DISABLE_TESTING "Disable test creation" OFF)
++
+ if (MSVC)
+- # Use secure functions by defaualt and suppress warnings about "deprecated" functions
++ # Use secure functions by default and suppress warnings about "deprecated" functions
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /D _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES=1")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /D _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT=1")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /D _CRT_NONSTDC_NO_WARNINGS=1 /D _CRT_SECURE_NO_WARNINGS=1")
+@@ -12,28 +16,80 @@ elseif ("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU" OR
+ "${CMAKE_C_COMPILER_ID}" STREQUAL "Clang" OR
+ "${CMAKE_C_COMPILER_ID}" STREQUAL "AppleClang")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99 -Wall -Wextra -Werror -pedantic")
++ if(ENABLE_COVERAGE)
++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage")
++ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage")
++ endif()
+ endif (MSVC)
+
+ # zip
+ set(SRC src/miniz.h src/zip.h src/zip.c)
+ add_library(${PROJECT_NAME} ${SRC})
+-target_include_directories(${PROJECT_NAME} INTERFACE src)
++target_include_directories(${PROJECT_NAME} PUBLIC
++ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src>
++ $<INSTALL_INTERFACE:include>
++)
+
+ # test
+ if (NOT CMAKE_DISABLE_TESTING)
+ enable_testing()
+ add_subdirectory(test)
+ find_package(Sanitizers)
+- add_sanitizers(${PROJECT_NAME} test.exe)
+- add_sanitizers(${PROJECT_NAME} test_miniz.exe)
++ add_sanitizers(${PROJECT_NAME} ${test_out} ${test_miniz_out})
+ endif()
+
++####
++# Installation (https://github.com/forexample/package-example) {
++
++set(CONFIG_INSTALL_DIR "lib/cmake/${PROJECT_NAME}")
++set(INCLUDE_INSTALL_DIR "include")
++
++set(GENERATED_DIR "${CMAKE_CURRENT_BINARY_DIR}/generated")
++
++# Configuration
++set(VERSION_CONFIG "${GENERATED_DIR}/${PROJECT_NAME}ConfigVersion.cmake")
++set(PROJECT_CONFIG "${GENERATED_DIR}/${PROJECT_NAME}Config.cmake")
++set(TARGETS_EXPORT_NAME "${PROJECT_NAME}Targets")
++set(NAMESPACE "${PROJECT_NAME}::")
++
++# Include module with fuction 'write_basic_package_version_file'
++include(CMakePackageConfigHelpers)
++
++# Note: PROJECT_VERSION is used as a VERSION
++write_basic_package_version_file(
++ "${VERSION_CONFIG}" COMPATIBILITY SameMajorVersion
++)
++
++# Use variables:
++# * TARGETS_EXPORT_NAME
++# * PROJECT_NAME
++configure_package_config_file(
++ "cmake/Config.cmake.in"
++ "${PROJECT_CONFIG}"
++ INSTALL_DESTINATION "${CONFIG_INSTALL_DIR}"
++)
++
++install(
++ FILES "${PROJECT_CONFIG}" "${VERSION_CONFIG}"
++ DESTINATION "${CONFIG_INSTALL_DIR}"
++)
++
++install(
++ EXPORT "${TARGETS_EXPORT_NAME}"
++ NAMESPACE "${NAMESPACE}"
++ DESTINATION "${CONFIG_INSTALL_DIR}"
++)
++
++# }
++
+ install(TARGETS ${PROJECT_NAME}
++ EXPORT ${TARGETS_EXPORT_NAME}
+ RUNTIME DESTINATION bin
+ ARCHIVE DESTINATION lib
+ LIBRARY DESTINATION lib
+- COMPONENT library)
+-install(FILES ${PROJECT_SOURCE_DIR}/src/zip.h DESTINATION include)
++ INCLUDES DESTINATION ${INCLUDE_INSTALL_DIR}
++)
++install(FILES ${PROJECT_SOURCE_DIR}/src/zip.h DESTINATION ${INCLUDE_INSTALL_DIR}/zip)
+
+ # uninstall target (https://gitlab.kitware.com/cmake/community/wikis/FAQ#can-i-do-make-uninstall-with-cmake)
+ if(NOT TARGET uninstall)
+@@ -45,3 +101,12 @@ if(NOT TARGET uninstall)
+ add_custom_target(uninstall
+ COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/cmake/cmake_uninstall.cmake)
+ endif()
++
++find_package(Doxygen)
++if(DOXYGEN_FOUND)
++ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile @ONLY)
++ add_custom_target(doc
++ ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile
++ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
++ COMMENT "Generating API documentation with Doxygen" VERBATIM)
++endif()
+diff --git a/contrib/zip/README.md b/contrib/zip/README.md
+index d5fb8cd203..14eb9a34c8 100644
+--- a/contrib/zip/README.md
++++ b/contrib/zip/README.md
+@@ -71,7 +71,7 @@ int arg = 2;
+ zip_extract("foo.zip", "/tmp", on_extract_entry, &arg);
+ ```
+
+-* Extract a zip entry into memory.
++* Extract a zip entry into memory.
+ ```c
+ void *buf = NULL;
+ size_t bufsize;
+@@ -89,7 +89,7 @@ zip_close(zip);
+ free(buf);
+ ```
+
+-* Extract a zip entry into memory (no internal allocation).
++* Extract a zip entry into memory (no internal allocation).
+ ```c
+ unsigned char *buf;
+ size_t bufsize;
+@@ -110,7 +110,7 @@ zip_close(zip);
+ free(buf);
+ ```
+
+-* Extract a zip entry into memory using callback.
++* Extract a zip entry into memory using callback.
+ ```c
+ struct buffer_t {
+ char *data;
+@@ -144,7 +144,7 @@ free(buf.data);
+ ```
+
+
+-* Extract a zip entry into a file.
++* Extract a zip entry into a file.
+ ```c
+ struct zip_t *zip = zip_open("foo.zip", 0, 'r');
+ {
+@@ -157,7 +157,7 @@ struct zip_t *zip = zip_open("foo.zip", 0, 'r');
+ zip_close(zip);
+ ```
+
+-* List of all zip entries
++* List of all zip entries
+ ```c
+ struct zip_t *zip = zip_open("foo.zip", 0, 'r');
+ int i, n = zip_total_entries(zip);
+@@ -174,7 +174,7 @@ for (i = 0; i < n; ++i) {
+ zip_close(zip);
+ ```
+
+-## Bindings
++# Bindings
+ Compile zip library as a dynamic library.
+ ```shell
+ $ mkdir build
+diff --git a/contrib/zip/src/miniz.h b/contrib/zip/src/miniz.h
+index 2c27a94d8d..c4fcfb83e6 100644
+--- a/contrib/zip/src/miniz.h
++++ b/contrib/zip/src/miniz.h
+@@ -221,6 +221,7 @@
+ #ifndef MINIZ_HEADER_INCLUDED
+ #define MINIZ_HEADER_INCLUDED
+
++#include <stdint.h>
+ #include <stdlib.h>
+
+ // Defines to completely disable specific portions of miniz.c:
+@@ -284,7 +285,8 @@
+ /* Set MINIZ_USE_UNALIGNED_LOADS_AND_STORES only if not set */
+ #if !defined(MINIZ_USE_UNALIGNED_LOADS_AND_STORES)
+ #if MINIZ_X86_OR_X64_CPU
+-/* Set MINIZ_USE_UNALIGNED_LOADS_AND_STORES to 1 on CPU's that permit efficient integer loads and stores from unaligned addresses. */
++/* Set MINIZ_USE_UNALIGNED_LOADS_AND_STORES to 1 on CPU's that permit efficient
++ * integer loads and stores from unaligned addresses. */
+ #define MINIZ_USE_UNALIGNED_LOADS_AND_STORES 1
+ #define MINIZ_UNALIGNED_USE_MEMCPY
+ #else
+@@ -354,6 +356,44 @@ enum {
+ MZ_FIXED = 4
+ };
+
++/* miniz error codes. Be sure to update mz_zip_get_error_string() if you add or
++ * modify this enum. */
++typedef enum {
++ MZ_ZIP_NO_ERROR = 0,
++ MZ_ZIP_UNDEFINED_ERROR,
++ MZ_ZIP_TOO_MANY_FILES,
++ MZ_ZIP_FILE_TOO_LARGE,
++ MZ_ZIP_UNSUPPORTED_METHOD,
++ MZ_ZIP_UNSUPPORTED_ENCRYPTION,
++ MZ_ZIP_UNSUPPORTED_FEATURE,
++ MZ_ZIP_FAILED_FINDING_CENTRAL_DIR,
++ MZ_ZIP_NOT_AN_ARCHIVE,
++ MZ_ZIP_INVALID_HEADER_OR_CORRUPTED,
++ MZ_ZIP_UNSUPPORTED_MULTIDISK,
++ MZ_ZIP_DECOMPRESSION_FAILED,
++ MZ_ZIP_COMPRESSION_FAILED,
++ MZ_ZIP_UNEXPECTED_DECOMPRESSED_SIZE,
++ MZ_ZIP_CRC_CHECK_FAILED,
++ MZ_ZIP_UNSUPPORTED_CDIR_SIZE,
++ MZ_ZIP_ALLOC_FAILED,
++ MZ_ZIP_FILE_OPEN_FAILED,
++ MZ_ZIP_FILE_CREATE_FAILED,
++ MZ_ZIP_FILE_WRITE_FAILED,
++ MZ_ZIP_FILE_READ_FAILED,
++ MZ_ZIP_FILE_CLOSE_FAILED,
++ MZ_ZIP_FILE_SEEK_FAILED,
++ MZ_ZIP_FILE_STAT_FAILED,
++ MZ_ZIP_INVALID_PARAMETER,
++ MZ_ZIP_INVALID_FILENAME,
++ MZ_ZIP_BUF_TOO_SMALL,
++ MZ_ZIP_INTERNAL_ERROR,
++ MZ_ZIP_FILE_NOT_FOUND,
++ MZ_ZIP_ARCHIVE_TOO_LARGE,
++ MZ_ZIP_VALIDATION_FAILED,
++ MZ_ZIP_WRITE_CALLBACK_FAILED,
++ MZ_ZIP_TOTAL_ERRORS
++} mz_zip_error;
++
+ // Method
+ #define MZ_DEFLATED 8
+
+@@ -696,6 +736,7 @@ typedef size_t (*mz_file_read_func)(void *pOpaque, mz_uint64 file_ofs,
+ void *pBuf, size_t n);
+ typedef size_t (*mz_file_write_func)(void *pOpaque, mz_uint64 file_ofs,
+ const void *pBuf, size_t n);
++typedef mz_bool (*mz_file_needs_keepalive)(void *pOpaque);
+
+ struct mz_zip_internal_state_tag;
+ typedef struct mz_zip_internal_state_tag mz_zip_internal_state;
+@@ -707,13 +748,27 @@ typedef enum {
+ MZ_ZIP_MODE_WRITING_HAS_BEEN_FINALIZED = 3
+ } mz_zip_mode;
+
+-typedef struct mz_zip_archive_tag {
++typedef enum {
++ MZ_ZIP_TYPE_INVALID = 0,
++ MZ_ZIP_TYPE_USER,
++ MZ_ZIP_TYPE_MEMORY,
++ MZ_ZIP_TYPE_HEAP,
++ MZ_ZIP_TYPE_FILE,
++ MZ_ZIP_TYPE_CFILE,
++ MZ_ZIP_TOTAL_TYPES
++} mz_zip_type;
++
++typedef struct {
+ mz_uint64 m_archive_size;
+ mz_uint64 m_central_directory_file_ofs;
+- mz_uint m_total_files;
++
++ /* We only support up to UINT32_MAX files in zip64 mode. */
++ mz_uint32 m_total_files;
+ mz_zip_mode m_zip_mode;
++ mz_zip_type m_zip_type;
++ mz_zip_error m_last_error;
+
+- mz_uint m_file_offset_alignment;
++ mz_uint64 m_file_offset_alignment;
+
+ mz_alloc_func m_pAlloc;
+ mz_free_func m_pFree;
+@@ -722,6 +777,7 @@ typedef struct mz_zip_archive_tag {
+
+ mz_file_read_func m_pRead;
+ mz_file_write_func m_pWrite;
++ mz_file_needs_keepalive m_pNeeds_keepalive;
+ void *m_pIO_opaque;
+
+ mz_zip_internal_state *m_pState;
+@@ -1263,6 +1319,9 @@ mz_uint tdefl_create_comp_flags_from_zip_params(int level, int window_bits,
+ int strategy);
+ #endif // #ifndef MINIZ_NO_ZLIB_APIS
+
++#define MZ_UINT16_MAX (0xFFFFU)
++#define MZ_UINT32_MAX (0xFFFFFFFFU)
++
+ #ifdef __cplusplus
+ }
+ #endif
+@@ -1311,6 +1370,11 @@ typedef unsigned char mz_validate_uint64[sizeof(mz_uint64) == 8 ? 1 : -1];
+ ((mz_uint32)(((const mz_uint8 *)(p))[3]) << 24U))
+ #endif
+
++#define MZ_READ_LE64(p) \
++ (((mz_uint64)MZ_READ_LE32(p)) | \
++ (((mz_uint64)MZ_READ_LE32((const mz_uint8 *)(p) + sizeof(mz_uint32))) \
++ << 32U))
++
+ #ifdef _MSC_VER
+ #define MZ_FORCEINLINE __forceinline
+ #elif defined(__GNUC__)
+@@ -4160,6 +4224,17 @@ enum {
+ MZ_ZIP_LOCAL_DIR_HEADER_SIZE = 30,
+ MZ_ZIP_CENTRAL_DIR_HEADER_SIZE = 46,
+ MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIZE = 22,
++
++ /* ZIP64 archive identifier and record sizes */
++ MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIG = 0x06064b50,
++ MZ_ZIP64_END_OF_CENTRAL_DIR_LOCATOR_SIG = 0x07064b50,
++ MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIZE = 56,
++ MZ_ZIP64_END_OF_CENTRAL_DIR_LOCATOR_SIZE = 20,
++ MZ_ZIP64_EXTENDED_INFORMATION_FIELD_HEADER_ID = 0x0001,
++ MZ_ZIP_DATA_DESCRIPTOR_ID = 0x08074b50,
++ MZ_ZIP_DATA_DESCRIPTER_SIZE64 = 24,
++ MZ_ZIP_DATA_DESCRIPTER_SIZE32 = 16,
++
+ // Central directory header record offsets
+ MZ_ZIP_CDH_SIG_OFS = 0,
+ MZ_ZIP_CDH_VERSION_MADE_BY_OFS = 4,
+@@ -4199,6 +4274,31 @@ enum {
+ MZ_ZIP_ECDH_CDIR_SIZE_OFS = 12,
+ MZ_ZIP_ECDH_CDIR_OFS_OFS = 16,
+ MZ_ZIP_ECDH_COMMENT_SIZE_OFS = 20,
++
++ /* ZIP64 End of central directory locator offsets */
++ MZ_ZIP64_ECDL_SIG_OFS = 0, /* 4 bytes */
++ MZ_ZIP64_ECDL_NUM_DISK_CDIR_OFS = 4, /* 4 bytes */
++ MZ_ZIP64_ECDL_REL_OFS_TO_ZIP64_ECDR_OFS = 8, /* 8 bytes */
++ MZ_ZIP64_ECDL_TOTAL_NUMBER_OF_DISKS_OFS = 16, /* 4 bytes */
++
++ /* ZIP64 End of central directory header offsets */
++ MZ_ZIP64_ECDH_SIG_OFS = 0, /* 4 bytes */
++ MZ_ZIP64_ECDH_SIZE_OF_RECORD_OFS = 4, /* 8 bytes */
++ MZ_ZIP64_ECDH_VERSION_MADE_BY_OFS = 12, /* 2 bytes */
++ MZ_ZIP64_ECDH_VERSION_NEEDED_OFS = 14, /* 2 bytes */
++ MZ_ZIP64_ECDH_NUM_THIS_DISK_OFS = 16, /* 4 bytes */
++ MZ_ZIP64_ECDH_NUM_DISK_CDIR_OFS = 20, /* 4 bytes */
++ MZ_ZIP64_ECDH_CDIR_NUM_ENTRIES_ON_DISK_OFS = 24, /* 8 bytes */
++ MZ_ZIP64_ECDH_CDIR_TOTAL_ENTRIES_OFS = 32, /* 8 bytes */
++ MZ_ZIP64_ECDH_CDIR_SIZE_OFS = 40, /* 8 bytes */
++ MZ_ZIP64_ECDH_CDIR_OFS_OFS = 48, /* 8 bytes */
++ MZ_ZIP_VERSION_MADE_BY_DOS_FILESYSTEM_ID = 0,
++ MZ_ZIP_DOS_DIR_ATTRIBUTE_BITFLAG = 0x10,
++ MZ_ZIP_GENERAL_PURPOSE_BIT_FLAG_IS_ENCRYPTED = 1,
++ MZ_ZIP_GENERAL_PURPOSE_BIT_FLAG_COMPRESSED_PATCH_FLAG = 32,
++ MZ_ZIP_GENERAL_PURPOSE_BIT_FLAG_USES_STRONG_ENCRYPTION = 64,
++ MZ_ZIP_GENERAL_PURPOSE_BIT_FLAG_LOCAL_DIR_IS_MASKED = 8192,
++ MZ_ZIP_GENERAL_PURPOSE_BIT_FLAG_UTF8 = 1 << 11
+ };
+
+ typedef struct {
+@@ -4211,7 +4311,24 @@ struct mz_zip_internal_state_tag {
+ mz_zip_array m_central_dir;
+ mz_zip_array m_central_dir_offsets;
+ mz_zip_array m_sorted_central_dir_offsets;
++
++ /* The flags passed in when the archive is initially opened. */
++ uint32_t m_init_flags;
++
++ /* MZ_TRUE if the archive has a zip64 end of central directory headers, etc.
++ */
++ mz_bool m_zip64;
++
++ /* MZ_TRUE if we found zip64 extended info in the central directory (m_zip64
++ * will also be slammed to true too, even if we didn't find a zip64 end of
++ * central dir header, etc.) */
++ mz_bool m_zip64_has_extended_info_fields;
++
++ /* These fields are used by the file, FILE, memory, and memory/heap read/write
++ * helpers. */
+ MZ_FILE *m_pFile;
++ mz_uint64 m_file_archive_start_ofs;
++
+ void *m_pMem;
+ size_t m_mem_size;
+ size_t m_mem_capacity;
+@@ -4363,6 +4480,13 @@ static mz_bool mz_zip_set_file_times(const char *pFilename, time_t access_time,
+ #endif /* #ifndef MINIZ_NO_STDIO */
+ #endif /* #ifndef MINIZ_NO_TIME */
+
++static MZ_FORCEINLINE mz_bool mz_zip_set_error(mz_zip_archive *pZip,
++ mz_zip_error err_num) {
++ if (pZip)
++ pZip->m_last_error = err_num;
++ return MZ_FALSE;
++}
++
+ static mz_bool mz_zip_reader_init_internal(mz_zip_archive *pZip,
+ mz_uint32 flags) {
+ (void)flags;
+@@ -4480,127 +4604,346 @@ mz_zip_reader_sort_central_dir_offsets_by_filename(mz_zip_archive *pZip) {
+ }
+ }
+
+-static mz_bool mz_zip_reader_read_central_dir(mz_zip_archive *pZip,
+- mz_uint32 flags) {
+- mz_uint cdir_size, num_this_disk, cdir_disk_index;
+- mz_uint64 cdir_ofs;
++static mz_bool mz_zip_reader_locate_header_sig(mz_zip_archive *pZip,
++ mz_uint32 record_sig,
++ mz_uint32 record_size,
++ mz_int64 *pOfs) {
+ mz_int64 cur_file_ofs;
+- const mz_uint8 *p;
+ mz_uint32 buf_u32[4096 / sizeof(mz_uint32)];
+ mz_uint8 *pBuf = (mz_uint8 *)buf_u32;
+- mz_bool sort_central_dir =
+- ((flags & MZ_ZIP_FLAG_DO_NOT_SORT_CENTRAL_DIRECTORY) == 0);
+- // Basic sanity checks - reject files which are too small, and check the first
+- // 4 bytes of the file to make sure a local header is there.
+- if (pZip->m_archive_size < MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIZE)
++
++ /* Basic sanity checks - reject files which are too small */
++ if (pZip->m_archive_size < record_size)
+ return MZ_FALSE;
+- // Find the end of central directory record by scanning the file from the end
+- // towards the beginning.
++
++ /* Find the record by scanning the file from the end towards the beginning. */
+ cur_file_ofs =
+ MZ_MAX((mz_int64)pZip->m_archive_size - (mz_int64)sizeof(buf_u32), 0);
+ for (;;) {
+ int i,
+ n = (int)MZ_MIN(sizeof(buf_u32), pZip->m_archive_size - cur_file_ofs);
++
+ if (pZip->m_pRead(pZip->m_pIO_opaque, cur_file_ofs, pBuf, n) != (mz_uint)n)
+ return MZ_FALSE;
+- for (i = n - 4; i >= 0; --i)
+- if (MZ_READ_LE32(pBuf + i) == MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIG)
+- break;
++
++ for (i = n - 4; i >= 0; --i) {
++ mz_uint s = MZ_READ_LE32(pBuf + i);
++ if (s == record_sig) {
++ if ((pZip->m_archive_size - (cur_file_ofs + i)) >= record_size)
++ break;
++ }
++ }
++
+ if (i >= 0) {
+ cur_file_ofs += i;
+ break;
+ }
++
++ /* Give up if we've searched the entire file, or we've gone back "too far"
++ * (~64kb) */
+ if ((!cur_file_ofs) || ((pZip->m_archive_size - cur_file_ofs) >=
+- (0xFFFF + MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIZE)))
++ (MZ_UINT16_MAX + record_size)))
+ return MZ_FALSE;
++
+ cur_file_ofs = MZ_MAX(cur_file_ofs - (sizeof(buf_u32) - 3), 0);
+ }
+- // Read and verify the end of central directory record.
++
++ *pOfs = cur_file_ofs;
++ return MZ_TRUE;
++}
++
++static mz_bool mz_zip_reader_read_central_dir(mz_zip_archive *pZip,
++ mz_uint flags) {
++ mz_uint cdir_size = 0, cdir_entries_on_this_disk = 0, num_this_disk = 0,
++ cdir_disk_index = 0;
++ mz_uint64 cdir_ofs = 0;
++ mz_int64 cur_file_ofs = 0;
++ const mz_uint8 *p;
++
++ mz_uint32 buf_u32[4096 / sizeof(mz_uint32)];
++ mz_uint8 *pBuf = (mz_uint8 *)buf_u32;
++ mz_bool sort_central_dir =
++ ((flags & MZ_ZIP_FLAG_DO_NOT_SORT_CENTRAL_DIRECTORY) == 0);
++ mz_uint32 zip64_end_of_central_dir_locator_u32
++ [(MZ_ZIP64_END_OF_CENTRAL_DIR_LOCATOR_SIZE + sizeof(mz_uint32) - 1) /
++ sizeof(mz_uint32)];
++ mz_uint8 *pZip64_locator = (mz_uint8 *)zip64_end_of_central_dir_locator_u32;
++
++ mz_uint32 zip64_end_of_central_dir_header_u32
++ [(MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIZE + sizeof(mz_uint32) - 1) /
++ sizeof(mz_uint32)];
++ mz_uint8 *pZip64_end_of_central_dir =
++ (mz_uint8 *)zip64_end_of_central_dir_header_u32;
++
++ mz_uint64 zip64_end_of_central_dir_ofs = 0;
++
++ /* Basic sanity checks - reject files which are too small, and check the first
++ * 4 bytes of the file to make sure a local header is there. */
++ if (pZip->m_archive_size < MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIZE)
++ return mz_zip_set_error(pZip, MZ_ZIP_NOT_AN_ARCHIVE);
++
++ if (!mz_zip_reader_locate_header_sig(
++ pZip, MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIG,
++ MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIZE, &cur_file_ofs))
++ return mz_zip_set_error(pZip, MZ_ZIP_FAILED_FINDING_CENTRAL_DIR);
++
++ /* Read and verify the end of central directory record. */
+ if (pZip->m_pRead(pZip->m_pIO_opaque, cur_file_ofs, pBuf,
+ MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIZE) !=
+ MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIZE)
+- return MZ_FALSE;
+- if ((MZ_READ_LE32(pBuf + MZ_ZIP_ECDH_SIG_OFS) !=
+- MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIG) ||
+- ((pZip->m_total_files =
+- MZ_READ_LE16(pBuf + MZ_ZIP_ECDH_CDIR_TOTAL_ENTRIES_OFS)) !=
+- MZ_READ_LE16(pBuf + MZ_ZIP_ECDH_CDIR_NUM_ENTRIES_ON_DISK_OFS)))
+- return MZ_FALSE;
++ return mz_zip_set_error(pZip, MZ_ZIP_FILE_READ_FAILED);
++
++ if (MZ_READ_LE32(pBuf + MZ_ZIP_ECDH_SIG_OFS) !=
++ MZ_ZIP_END_OF_CENTRAL_DIR_HEADER_SIG)
++ return mz_zip_set_error(pZip, MZ_ZIP_NOT_AN_ARCHIVE);
++
++ if (cur_file_ofs >= (MZ_ZIP64_END_OF_CENTRAL_DIR_LOCATOR_SIZE +
++ MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIZE)) {
++ if (pZip->m_pRead(pZip->m_pIO_opaque,
++ cur_file_ofs - MZ_ZIP64_END_OF_CENTRAL_DIR_LOCATOR_SIZE,
++ pZip64_locator,
++ MZ_ZIP64_END_OF_CENTRAL_DIR_LOCATOR_SIZE) ==
++ MZ_ZIP64_END_OF_CENTRAL_DIR_LOCATOR_SIZE) {
++ if (MZ_READ_LE32(pZip64_locator + MZ_ZIP64_ECDL_SIG_OFS) ==
++ MZ_ZIP64_END_OF_CENTRAL_DIR_LOCATOR_SIG) {
++ zip64_end_of_central_dir_ofs = MZ_READ_LE64(
++ pZip64_locator + MZ_ZIP64_ECDL_REL_OFS_TO_ZIP64_ECDR_OFS);
++ if (zip64_end_of_central_dir_ofs >
++ (pZip->m_archive_size - MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIZE))
++ return mz_zip_set_error(pZip, MZ_ZIP_NOT_AN_ARCHIVE);
++
++ if (pZip->m_pRead(pZip->m_pIO_opaque, zip64_end_of_central_dir_ofs,
++ pZip64_end_of_central_dir,
++ MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIZE) ==
++ MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIZE) {
++ if (MZ_READ_LE32(pZip64_end_of_central_dir + MZ_ZIP64_ECDH_SIG_OFS) ==
++ MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIG) {
++ pZip->m_pState->m_zip64 = MZ_TRUE;
++ }
++ }
++ }
++ }
++ }
+
++ pZip->m_total_files = MZ_READ_LE16(pBuf + MZ_ZIP_ECDH_CDIR_TOTAL_ENTRIES_OFS);
++ cdir_entries_on_this_disk =
++ MZ_READ_LE16(pBuf + MZ_ZIP_ECDH_CDIR_NUM_ENTRIES_ON_DISK_OFS);
+ num_this_disk = MZ_READ_LE16(pBuf + MZ_ZIP_ECDH_NUM_THIS_DISK_OFS);
+ cdir_disk_index = MZ_READ_LE16(pBuf + MZ_ZIP_ECDH_NUM_DISK_CDIR_OFS);
++ cdir_size = MZ_READ_LE32(pBuf + MZ_ZIP_ECDH_CDIR_SIZE_OFS);
++ cdir_ofs = MZ_READ_LE32(pBuf + MZ_ZIP_ECDH_CDIR_OFS_OFS);
++
++ if (pZip->m_pState->m_zip64) {
++ mz_uint32 zip64_total_num_of_disks =
++ MZ_READ_LE32(pZip64_locator + MZ_ZIP64_ECDL_TOTAL_NUMBER_OF_DISKS_OFS);
++ mz_uint64 zip64_cdir_total_entries = MZ_READ_LE64(
++ pZip64_end_of_central_dir + MZ_ZIP64_ECDH_CDIR_TOTAL_ENTRIES_OFS);
++ mz_uint64 zip64_cdir_total_entries_on_this_disk = MZ_READ_LE64(
++ pZip64_end_of_central_dir + MZ_ZIP64_ECDH_CDIR_NUM_ENTRIES_ON_DISK_OFS);
++ mz_uint64 zip64_size_of_end_of_central_dir_record = MZ_READ_LE64(
++ pZip64_end_of_central_dir + MZ_ZIP64_ECDH_SIZE_OF_RECORD_OFS);
++ mz_uint64 zip64_size_of_central_directory =
++ MZ_READ_LE64(pZip64_end_of_central_dir + MZ_ZIP64_ECDH_CDIR_SIZE_OFS);
++
++ if (zip64_size_of_end_of_central_dir_record <
++ (MZ_ZIP64_END_OF_CENTRAL_DIR_HEADER_SIZE - 12))
++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED);
++
++ if (zip64_total_num_of_disks != 1U)
++ return mz_zip_set_error(pZip, MZ_ZIP_UNSUPPORTED_MULTIDISK);
++
++ /* Check for miniz's practical limits */
++ if (zip64_cdir_total_entries > MZ_UINT32_MAX)
++ return mz_zip_set_error(pZip, MZ_ZIP_TOO_MANY_FILES);
++
++ pZip->m_total_files = (mz_uint32)zip64_cdir_total_entries;
++
++ if (zip64_cdir_total_entries_on_this_disk > MZ_UINT32_MAX)
++ return mz_zip_set_error(pZip, MZ_ZIP_TOO_MANY_FILES);
++
++ cdir_entries_on_this_disk =
++ (mz_uint32)zip64_cdir_total_entries_on_this_disk;
++
++ /* Check for miniz's current practical limits (sorry, this should be enough
++ * for millions of files) */
++ if (zip64_size_of_central_directory > MZ_UINT32_MAX)
++ return mz_zip_set_error(pZip, MZ_ZIP_UNSUPPORTED_CDIR_SIZE);
++
++ cdir_size = (mz_uint32)zip64_size_of_central_directory;
++
++ num_this_disk = MZ_READ_LE32(pZip64_end_of_central_dir +
++ MZ_ZIP64_ECDH_NUM_THIS_DISK_OFS);
++
++ cdir_disk_index = MZ_READ_LE32(pZip64_end_of_central_dir +
++ MZ_ZIP64_ECDH_NUM_DISK_CDIR_OFS);
++
++ cdir_ofs =
++ MZ_READ_LE64(pZip64_end_of_central_dir + MZ_ZIP64_ECDH_CDIR_OFS_OFS);
++ }
++
++ if (pZip->m_total_files != cdir_entries_on_this_disk)
++ return mz_zip_set_error(pZip, MZ_ZIP_UNSUPPORTED_MULTIDISK);
++
+ if (((num_this_disk | cdir_disk_index) != 0) &&
+ ((num_this_disk != 1) || (cdir_disk_index != 1)))
+- return MZ_FALSE;
++ return mz_zip_set_error(pZip, MZ_ZIP_UNSUPPORTED_MULTIDISK);
+
+- if ((cdir_size = MZ_READ_LE32(pBuf + MZ_ZIP_ECDH_CDIR_SIZE_OFS)) <
+- pZip->m_total_files * MZ_ZIP_CENTRAL_DIR_HEADER_SIZE)
+- return MZ_FALSE;
++ if (cdir_size < pZip->m_total_files * MZ_ZIP_CENTRAL_DIR_HEADER_SIZE)
++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED);
+
+- cdir_ofs = MZ_READ_LE32(pBuf + MZ_ZIP_ECDH_CDIR_OFS_OFS);
+ if ((cdir_ofs + (mz_uint64)cdir_size) > pZip->m_archive_size)
+- return MZ_FALSE;
++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED);
+
+ pZip->m_central_directory_file_ofs = cdir_ofs;
+
+ if (pZip->m_total_files) {
+ mz_uint i, n;
+-
+- // Read the entire central directory into a heap block, and allocate another
+- // heap block to hold the unsorted central dir file record offsets, and
+- // another to hold the sorted indices.
++ /* Read the entire central directory into a heap block, and allocate another
++ * heap block to hold the unsorted central dir file record offsets, and
++ * possibly another to hold the sorted indices. */
+ if ((!mz_zip_array_resize(pZip, &pZip->m_pState->m_central_dir, cdir_size,
+ MZ_FALSE)) ||
+ (!mz_zip_array_resize(pZip, &pZip->m_pState->m_central_dir_offsets,
+ pZip->m_total_files, MZ_FALSE)))
+- return MZ_FALSE;
++ return mz_zip_set_error(pZip, MZ_ZIP_ALLOC_FAILED);
+
+ if (sort_central_dir) {
+ if (!mz_zip_array_resize(pZip,
+ &pZip->m_pState->m_sorted_central_dir_offsets,
+ pZip->m_total_files, MZ_FALSE))
+- return MZ_FALSE;
++ return mz_zip_set_error(pZip, MZ_ZIP_ALLOC_FAILED);
+ }
+
+ if (pZip->m_pRead(pZip->m_pIO_opaque, cdir_ofs,
+ pZip->m_pState->m_central_dir.m_p,
+ cdir_size) != cdir_size)
+- return MZ_FALSE;
++ return mz_zip_set_error(pZip, MZ_ZIP_FILE_READ_FAILED);
+
+- // Now create an index into the central directory file records, do some
+- // basic sanity checking on each record, and check for zip64 entries (which
+- // are not yet supported).
++ /* Now create an index into the central directory file records, do some
++ * basic sanity checking on each record */
+ p = (const mz_uint8 *)pZip->m_pState->m_central_dir.m_p;
+ for (n = cdir_size, i = 0; i < pZip->m_total_files; ++i) {
+- mz_uint total_header_size, comp_size, decomp_size, disk_index;
++ mz_uint total_header_size, disk_index, bit_flags, filename_size,
++ ext_data_size;
++ mz_uint64 comp_size, decomp_size, local_header_ofs;
++
+ if ((n < MZ_ZIP_CENTRAL_DIR_HEADER_SIZE) ||
+ (MZ_READ_LE32(p) != MZ_ZIP_CENTRAL_DIR_HEADER_SIG))
+- return MZ_FALSE;
++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED);
++
+ MZ_ZIP_ARRAY_ELEMENT(&pZip->m_pState->m_central_dir_offsets, mz_uint32,
+ i) =
+ (mz_uint32)(p - (const mz_uint8 *)pZip->m_pState->m_central_dir.m_p);
++
+ if (sort_central_dir)
+ MZ_ZIP_ARRAY_ELEMENT(&pZip->m_pState->m_sorted_central_dir_offsets,
+ mz_uint32, i) = i;
++
+ comp_size = MZ_READ_LE32(p + MZ_ZIP_CDH_COMPRESSED_SIZE_OFS);
+ decomp_size = MZ_READ_LE32(p + MZ_ZIP_CDH_DECOMPRESSED_SIZE_OFS);
+- if (((!MZ_READ_LE32(p + MZ_ZIP_CDH_METHOD_OFS)) &&
+- (decomp_size != comp_size)) ||
+- (decomp_size && !comp_size) || (decomp_size == 0xFFFFFFFF) ||
+- (comp_size == 0xFFFFFFFF))
+- return MZ_FALSE;
++ local_header_ofs = MZ_READ_LE32(p + MZ_ZIP_CDH_LOCAL_HEADER_OFS);
++ filename_size = MZ_READ_LE16(p + MZ_ZIP_CDH_FILENAME_LEN_OFS);
++ ext_data_size = MZ_READ_LE16(p + MZ_ZIP_CDH_EXTRA_LEN_OFS);
++
++ if ((!pZip->m_pState->m_zip64_has_extended_info_fields) &&
++ (ext_data_size) &&
++ (MZ_MAX(MZ_MAX(comp_size, decomp_size), local_header_ofs) ==
++ MZ_UINT32_MAX)) {
++ /* Attempt to find zip64 extended information field in the entry's extra
++ * data */
++ mz_uint32 extra_size_remaining = ext_data_size;
++
++ if (extra_size_remaining) {
++ const mz_uint8 *pExtra_data;
++ void *buf = NULL;
++
++ if (MZ_ZIP_CENTRAL_DIR_HEADER_SIZE + filename_size + ext_data_size >
++ n) {
++ buf = MZ_MALLOC(ext_data_size);
++ if (buf == NULL)
++ return mz_zip_set_error(pZip, MZ_ZIP_ALLOC_FAILED);
++
++ if (pZip->m_pRead(pZip->m_pIO_opaque,
++ cdir_ofs + MZ_ZIP_CENTRAL_DIR_HEADER_SIZE +
++ filename_size,
++ buf, ext_data_size) != ext_data_size) {
++ MZ_FREE(buf);
++ return mz_zip_set_error(pZip, MZ_ZIP_FILE_READ_FAILED);
++ }
++
++ pExtra_data = (mz_uint8 *)buf;
++ } else {
++ pExtra_data = p + MZ_ZIP_CENTRAL_DIR_HEADER_SIZE + filename_size;
++ }
++
++ do {
++ mz_uint32 field_id;
++ mz_uint32 field_data_size;
++
++ if (extra_size_remaining < (sizeof(mz_uint16) * 2)) {
++ MZ_FREE(buf);
++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED);
++ }
++
++ field_id = MZ_READ_LE16(pExtra_data);
++ field_data_size = MZ_READ_LE16(pExtra_data + sizeof(mz_uint16));
++
++ if ((field_data_size + sizeof(mz_uint16) * 2) >
++ extra_size_remaining) {
++ MZ_FREE(buf);
++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED);
++ }
++
++ if (field_id == MZ_ZIP64_EXTENDED_INFORMATION_FIELD_HEADER_ID) {
++ /* Ok, the archive didn't have any zip64 headers but it uses a
++ * zip64 extended information field so mark it as zip64 anyway
++ * (this can occur with infozip's zip util when it reads
++ * compresses files from stdin). */
++ pZip->m_pState->m_zip64 = MZ_TRUE;
++ pZip->m_pState->m_zip64_has_extended_info_fields = MZ_TRUE;
++ break;
++ }
++
++ pExtra_data += sizeof(mz_uint16) * 2 + field_data_size;
++ extra_size_remaining =
++ extra_size_remaining - sizeof(mz_uint16) * 2 - field_data_size;
++ } while (extra_size_remaining);
++
++ MZ_FREE(buf);
++ }
++ }
++
++ /* I've seen archives that aren't marked as zip64 that uses zip64 ext
++ * data, argh */
++ if ((comp_size != MZ_UINT32_MAX) && (decomp_size != MZ_UINT32_MAX)) {
++ if (((!MZ_READ_LE32(p + MZ_ZIP_CDH_METHOD_OFS)) &&
++ (decomp_size != comp_size)) ||
++ (decomp_size && !comp_size))
++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED);
++ }
++
+ disk_index = MZ_READ_LE16(p + MZ_ZIP_CDH_DISK_START_OFS);
+- if ((disk_index != num_this_disk) && (disk_index != 1))
+- return MZ_FALSE;
+- if (((mz_uint64)MZ_READ_LE32(p + MZ_ZIP_CDH_LOCAL_HEADER_OFS) +
+- MZ_ZIP_LOCAL_DIR_HEADER_SIZE + comp_size) > pZip->m_archive_size)
+- return MZ_FALSE;
++ if ((disk_index == MZ_UINT16_MAX) ||
++ ((disk_index != num_this_disk) && (disk_index != 1)))
++ return mz_zip_set_error(pZip, MZ_ZIP_UNSUPPORTED_MULTIDISK);
++
++ if (comp_size != MZ_UINT32_MAX) {
++ if (((mz_uint64)MZ_READ_LE32(p + MZ_ZIP_CDH_LOCAL_HEADER_OFS) +
++ MZ_ZIP_LOCAL_DIR_HEADER_SIZE + comp_size) > pZip->m_archive_size)
++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED);
++ }
++
++ bit_flags = MZ_READ_LE16(p + MZ_ZIP_CDH_BIT_FLAG_OFS);
++ if (bit_flags & MZ_ZIP_GENERAL_PURPOSE_BIT_FLAG_LOCAL_DIR_IS_MASKED)
++ return mz_zip_set_error(pZip, MZ_ZIP_UNSUPPORTED_ENCRYPTION);
++
+ if ((total_header_size = MZ_ZIP_CENTRAL_DIR_HEADER_SIZE +
+ MZ_READ_LE16(p + MZ_ZIP_CDH_FILENAME_LEN_OFS) +
+ MZ_READ_LE16(p + MZ_ZIP_CDH_EXTRA_LEN_OFS) +
+ MZ_READ_LE16(p + MZ_ZIP_CDH_COMMENT_LEN_OFS)) >
+ n)
+- return MZ_FALSE;
++ return mz_zip_set_error(pZip, MZ_ZIP_INVALID_HEADER_OR_CORRUPTED);
++
+ n -= total_header_size;
+ p += total_header_size;
+ }
+diff --git a/contrib/zip/src/zip.c b/contrib/zip/src/zip.c
+index ff3a8fe1e6..1abcfd8fd1 100644
+--- a/contrib/zip/src/zip.c
++++ b/contrib/zip/src/zip.c
+@@ -24,7 +24,6 @@
+ ((((P)[0] >= 'A' && (P)[0] <= 'Z') || ((P)[0] >= 'a' && (P)[0] <= 'z')) && \
+ (P)[1] == ':')
+ #define FILESYSTEM_PREFIX_LEN(P) (HAS_DEVICE(P) ? 2 : 0)
+-#define ISSLASH(C) ((C) == '/' || (C) == '\\')
+
+ #else
+
+@@ -48,7 +47,7 @@ int symlink(const char *target, const char *linkpath); // needed on Linux
+ #endif
+
+ #ifndef ISSLASH
+-#define ISSLASH(C) ((C) == '/')
++#define ISSLASH(C) ((C) == '/' || (C) == '\\')
+ #endif
+
+ #define CLEANUP(ptr) \
+@@ -78,26 +77,34 @@ static const char *base_name(const char *name) {
+ return base;
+ }
+
+-static int mkpath(const char *path) {
+- char const *p;
++static int mkpath(char *path) {
++ char *p;
+ char npath[MAX_PATH + 1];
+ int len = 0;
+ int has_device = HAS_DEVICE(path);
+
+ memset(npath, 0, MAX_PATH + 1);
+-
+-#ifdef _WIN32
+- // only on windows fix the path
+- npath[0] = path[0];
+- npath[1] = path[1];
+- len = 2;
+-#endif // _WIN32
+-
++ if (has_device) {
++ // only on windows
++ npath[0] = path[0];
++ npath[1] = path[1];
++ len = 2;
++ }
+ for (p = path + len; *p && len < MAX_PATH; p++) {
+ if (ISSLASH(*p) && ((!has_device && len > 0) || (has_device && len > 2))) {
+- if (MKDIR(npath) == -1)
+- if (errno != EEXIST)
++#if defined(_WIN32) || defined(__WIN32__) || defined(_MSC_VER) || \
++ defined(__MINGW32__)
++#else
++ if ('\\' == *p) {
++ *p = '/';
++ }
++#endif
++
++ if (MKDIR(npath) == -1) {
++ if (errno != EEXIST) {
+ return -1;
++ }
++ }
+ }
+ npath[len++] = *p;
+ }
+@@ -279,7 +286,14 @@ int zip_entry_open(struct zip_t *zip, const char *entryname) {
+ zip->entry.header_offset = zip->archive.m_archive_size;
+ memset(zip->entry.header, 0, MZ_ZIP_LOCAL_DIR_HEADER_SIZE * sizeof(mz_uint8));
+ zip->entry.method = 0;
++
++ // UNIX or APPLE
++#if MZ_PLATFORM == 3 || MZ_PLATFORM == 19
++ // regular file with rw-r--r-- persmissions
++ zip->entry.external_attr = (mz_uint32)(0100644) << 16;
++#else
+ zip->entry.external_attr = 0;
++#endif
+
+ num_alignment_padding_bytes =
+ mz_zip_writer_compute_padding_needed_for_file_alignment(pzip);
+@@ -660,7 +674,7 @@ ssize_t zip_entry_noallocread(struct zip_t *zip, void *buf, size_t bufsize) {
+ }
+
+ if (!mz_zip_reader_extract_to_mem_no_alloc(pzip, (mz_uint)zip->entry.index,
+- buf, bufsize, 0, NULL, 0)) {
++ buf, bufsize, 0, NULL, 0)) {
+ return -1;
+ }
+
+@@ -670,10 +684,7 @@ ssize_t zip_entry_noallocread(struct zip_t *zip, void *buf, size_t bufsize) {
+ int zip_entry_fread(struct zip_t *zip, const char *filename) {
+ mz_zip_archive *pzip = NULL;
+ mz_uint idx;
+-#if defined(_MSC_VER)
+-#else
+ mz_uint32 xattr = 0;
+-#endif
+ mz_zip_archive_file_stat info;
+
+ if (!zip) {
+@@ -875,12 +886,19 @@ int zip_extract(const char *zipname, const char *dir,
+ goto out;
+ }
+
+- if ((((info.m_version_made_by >> 8) == 3) || ((info.m_version_made_by >> 8) == 19)) // if zip is produced on Unix or macOS (3 and 19 from section 4.4.2.2 of zip standard)
+- && info.m_external_attr & (0x20 << 24)) { // and has sym link attribute (0x80 is file, 0x40 is directory)
++ if ((((info.m_version_made_by >> 8) == 3) ||
++ ((info.m_version_made_by >> 8) ==
++ 19)) // if zip is produced on Unix or macOS (3 and 19 from
++ // section 4.4.2.2 of zip standard)
++ && info.m_external_attr &
++ (0x20 << 24)) { // and has sym link attribute (0x80 is file, 0x40
++ // is directory)
+ #if defined(_WIN32) || defined(__WIN32__) || defined(_MSC_VER) || \
+ defined(__MINGW32__)
+-#else
+- if (info.m_uncomp_size > MAX_PATH || !mz_zip_reader_extract_to_mem_no_alloc(&zip_archive, i, symlink_to, MAX_PATH, 0, NULL, 0)) {
++#else
++ if (info.m_uncomp_size > MAX_PATH ||
++ !mz_zip_reader_extract_to_mem_no_alloc(&zip_archive, i, symlink_to,
++ MAX_PATH, 0, NULL, 0)) {
+ goto out;
+ }
+ symlink_to[info.m_uncomp_size] = '\0';
+diff --git a/contrib/zip/src/zip.h b/contrib/zip/src/zip.h
+index 5f39df50ad..a48d64d6de 100644
+--- a/contrib/zip/src/zip.h
++++ b/contrib/zip/src/zip.h
+@@ -20,241 +20,240 @@ extern "C" {
+ #endif
+
+ #if !defined(_SSIZE_T_DEFINED) && !defined(_SSIZE_T_DEFINED_) && \
+- !defined(_SSIZE_T) && !defined(_SSIZE_T_) && !defined(__ssize_t_defined)
+-#define _SSIZE_T
++ !defined(__DEFINED_ssize_t) && !defined(__ssize_t_defined) && \
++ !defined(_SSIZE_T) && !defined(_SSIZE_T_)
++
+ // 64-bit Windows is the only mainstream platform
+ // where sizeof(long) != sizeof(void*)
+ #ifdef _WIN64
+-typedef long long ssize_t; /* byte count or error */
++typedef long long ssize_t; /* byte count or error */
+ #else
+-typedef long ssize_t; /* byte count or error */
++typedef long ssize_t; /* byte count or error */
+ #endif
++
++#define _SSIZE_T_DEFINED
++#define _SSIZE_T_DEFINED_
++#define __DEFINED_ssize_t
++#define __ssize_t_defined
++#define _SSIZE_T
++#define _SSIZE_T_
++
+ #endif
+
+ #ifndef MAX_PATH
+ #define MAX_PATH 32767 /* # chars in a path name including NULL */
+ #endif
+
++/**
++ * @mainpage
++ *
++ * Documenation for @ref zip.
++ */
++
++/**
++ * @addtogroup zip
++ * @{
++ */
++
++/**
++ * Default zip compression level.
++ */
++
+ #define ZIP_DEFAULT_COMPRESSION_LEVEL 6
+
+-/*
+- This data structure is used throughout the library to represent zip archive
+- - forward declaration.
+-*/
++/**
++ * @struct zip_t
++ *
++ * This data structure is used throughout the library to represent zip archive -
++ * forward declaration.
++ */
+ struct zip_t;
+
+-/*
+- Opens zip archive with compression level using the given mode.
+-
+- Args:
+- zipname: zip archive file name.
+- level: compression level (0-9 are the standard zlib-style levels).
+- mode: file access mode.
+- 'r': opens a file for reading/extracting (the file must exists).
+- 'w': creates an empty file for writing.
+- 'a': appends to an existing archive.
+-
+- Returns:
+- The zip archive handler or NULL on error
+-*/
++/**
++ * Opens zip archive with compression level using the given mode.
++ *
++ * @param zipname zip archive file name.
++ * @param level compression level (0-9 are the standard zlib-style levels).
++ * @param mode file access mode.
++ * - 'r': opens a file for reading/extracting (the file must exists).
++ * - 'w': creates an empty file for writing.
++ * - 'a': appends to an existing archive.
++ *
++ * @return the zip archive handler or NULL on error
++ */
+ extern struct zip_t *zip_open(const char *zipname, int level, char mode);
+
+-/*
+- Closes the zip archive, releases resources - always finalize.
+-
+- Args:
+- zip: zip archive handler.
+-*/
++/**
++ * Closes the zip archive, releases resources - always finalize.
++ *
++ * @param zip zip archive handler.
++ */
+ extern void zip_close(struct zip_t *zip);
+
+-/*
+- Opens an entry by name in the zip archive.
+- For zip archive opened in 'w' or 'a' mode the function will append
+- a new entry. In readonly mode the function tries to locate the entry
+- in global dictionary.
+-
+- Args:
+- zip: zip archive handler.
+- entryname: an entry name in local dictionary.
+-
+- Returns:
+- The return code - 0 on success, negative number (< 0) on error.
+-*/
++/**
++ * Opens an entry by name in the zip archive.
++ *
++ * For zip archive opened in 'w' or 'a' mode the function will append
++ * a new entry. In readonly mode the function tries to locate the entry
++ * in global dictionary.
++ *
++ * @param zip zip archive handler.
++ * @param entryname an entry name in local dictionary.
++ *
++ * @return the return code - 0 on success, negative number (< 0) on error.
++ */
+ extern int zip_entry_open(struct zip_t *zip, const char *entryname);
+
+-/*
+- Opens a new entry by index in the zip archive.
+- This function is only valid if zip archive was opened in 'r' (readonly) mode.
+-
+- Args:
+- zip: zip archive handler.
+- index: index in local dictionary.
+-
+- Returns:
+- The return code - 0 on success, negative number (< 0) on error.
+-*/
++/**
++ * Opens a new entry by index in the zip archive.
++ *
++ * This function is only valid if zip archive was opened in 'r' (readonly) mode.
++ *
++ * @param zip zip archive handler.
++ * @param index index in local dictionary.
++ *
++ * @return the return code - 0 on success, negative number (< 0) on error.
++ */
+ extern int zip_entry_openbyindex(struct zip_t *zip, int index);
+
+-/*
+- Closes a zip entry, flushes buffer and releases resources.
+-
+- Args:
+- zip: zip archive handler.
+-
+- Returns:
+- The return code - 0 on success, negative number (< 0) on error.
+-*/
++/**
++ * Closes a zip entry, flushes buffer and releases resources.
++ *
++ * @param zip zip archive handler.
++ *
++ * @return the return code - 0 on success, negative number (< 0) on error.
++ */
+ extern int zip_entry_close(struct zip_t *zip);
+
+-/*
+- Returns a local name of the current zip entry.
+- The main difference between user's entry name and local entry name
+- is optional relative path.
+- Following .ZIP File Format Specification - the path stored MUST not contain
+- a drive or device letter, or a leading slash.
+- All slashes MUST be forward slashes '/' as opposed to backwards slashes '\'
+- for compatibility with Amiga and UNIX file systems etc.
+-
+- Args:
+- zip: zip archive handler.
+-
+- Returns:
+- The pointer to the current zip entry name, or NULL on error.
+-*/
++/**
++ * Returns a local name of the current zip entry.
++ *
++ * The main difference between user's entry name and local entry name
++ * is optional relative path.
++ * Following .ZIP File Format Specification - the path stored MUST not contain
++ * a drive or device letter, or a leading slash.
++ * All slashes MUST be forward slashes '/' as opposed to backwards slashes '\'
++ * for compatibility with Amiga and UNIX file systems etc.
++ *
++ * @param zip: zip archive handler.
++ *
++ * @return the pointer to the current zip entry name, or NULL on error.
++ */
+ extern const char *zip_entry_name(struct zip_t *zip);
+
+-/*
+- Returns an index of the current zip entry.
+-
+- Args:
+- zip: zip archive handler.
+-
+- Returns:
+- The index on success, negative number (< 0) on error.
+-*/
++/**
++ * Returns an index of the current zip entry.
++ *
++ * @param zip zip archive handler.
++ *
++ * @return the index on success, negative number (< 0) on error.
++ */
+ extern int zip_entry_index(struct zip_t *zip);
+
+-/*
+- Determines if the current zip entry is a directory entry.
+-
+- Args:
+- zip: zip archive handler.
+-
+- Returns:
+- The return code - 1 (true), 0 (false), negative number (< 0) on error.
+-*/
++/**
++ * Determines if the current zip entry is a directory entry.
++ *
++ * @param zip zip archive handler.
++ *
++ * @return the return code - 1 (true), 0 (false), negative number (< 0) on
++ * error.
++ */
+ extern int zip_entry_isdir(struct zip_t *zip);
+
+-/*
+- Returns an uncompressed size of the current zip entry.
+-
+- Args:
+- zip: zip archive handler.
+-
+- Returns:
+- The uncompressed size in bytes.
+-*/
++/**
++ * Returns an uncompressed size of the current zip entry.
++ *
++ * @param zip zip archive handler.
++ *
++ * @return the uncompressed size in bytes.
++ */
+ extern unsigned long long zip_entry_size(struct zip_t *zip);
+
+-/*
+- Returns CRC-32 checksum of the current zip entry.
+-
+- Args:
+- zip: zip archive handler.
+-
+- Returns:
+- The CRC-32 checksum.
+-*/
++/**
++ * Returns CRC-32 checksum of the current zip entry.
++ *
++ * @param zip zip archive handler.
++ *
++ * @return the CRC-32 checksum.
++ */
+ extern unsigned int zip_entry_crc32(struct zip_t *zip);
+
+-/*
+- Compresses an input buffer for the current zip entry.
+-
+- Args:
+- zip: zip archive handler.
+- buf: input buffer.
+- bufsize: input buffer size (in bytes).
+-
+- Returns:
+- The return code - 0 on success, negative number (< 0) on error.
+-*/
++/**
++ * Compresses an input buffer for the current zip entry.
++ *
++ * @param zip zip archive handler.
++ * @param buf input buffer.
++ * @param bufsize input buffer size (in bytes).
++ *
++ * @return the return code - 0 on success, negative number (< 0) on error.
++ */
+ extern int zip_entry_write(struct zip_t *zip, const void *buf, size_t bufsize);
+
+-/*
+- Compresses a file for the current zip entry.
+-
+- Args:
+- zip: zip archive handler.
+- filename: input file.
+-
+- Returns:
+- The return code - 0 on success, negative number (< 0) on error.
+-*/
++/**
++ * Compresses a file for the current zip entry.
++ *
++ * @param zip zip archive handler.
++ * @param filename input file.
++ *
++ * @return the return code - 0 on success, negative number (< 0) on error.
++ */
+ extern int zip_entry_fwrite(struct zip_t *zip, const char *filename);
+
+-/*
+- Extracts the current zip entry into output buffer.
+- The function allocates sufficient memory for a output buffer.
+-
+- Args:
+- zip: zip archive handler.
+- buf: output buffer.
+- bufsize: output buffer size (in bytes).
+-
+- Note:
+- - remember to release memory allocated for a output buffer.
+- - for large entries, please take a look at zip_entry_extract function.
+-
+- Returns:
+- The return code - the number of bytes actually read on success.
+- Otherwise a -1 on error.
+-*/
++/**
++ * Extracts the current zip entry into output buffer.
++ *
++ * The function allocates sufficient memory for a output buffer.
++ *
++ * @param zip zip archive handler.
++ * @param buf output buffer.
++ * @param bufsize output buffer size (in bytes).
++ *
++ * @note remember to release memory allocated for a output buffer.
++ * for large entries, please take a look at zip_entry_extract function.
++ *
++ * @return the return code - the number of bytes actually read on success.
++ * Otherwise a -1 on error.
++ */
+ extern ssize_t zip_entry_read(struct zip_t *zip, void **buf, size_t *bufsize);
+
+-/*
+- Extracts the current zip entry into a memory buffer using no memory
+- allocation.
+-
+- Args:
+- zip: zip archive handler.
+- buf: preallocated output buffer.
+- bufsize: output buffer size (in bytes).
+-
+- Note:
+- - ensure supplied output buffer is large enough.
+- - zip_entry_size function (returns uncompressed size for the current entry)
+- can be handy to estimate how big buffer is needed.
+- - for large entries, please take a look at zip_entry_extract function.
+-
+- Returns:
+- The return code - the number of bytes actually read on success.
+- Otherwise a -1 on error (e.g. bufsize is not large enough).
+-*/
+-extern ssize_t zip_entry_noallocread(struct zip_t *zip, void *buf, size_t bufsize);
+-
+-/*
+- Extracts the current zip entry into output file.
+-
+- Args:
+- zip: zip archive handler.
+- filename: output file.
+-
+- Returns:
+- The return code - 0 on success, negative number (< 0) on error.
+-*/
++/**
++ * Extracts the current zip entry into a memory buffer using no memory
++ * allocation.
++ *
++ * @param zip zip archive handler.
++ * @param buf preallocated output buffer.
++ * @param bufsize output buffer size (in bytes).
++ *
++ * @note ensure supplied output buffer is large enough.
++ * zip_entry_size function (returns uncompressed size for the current
++ * entry) can be handy to estimate how big buffer is needed. for large
++ * entries, please take a look at zip_entry_extract function.
++ *
++ * @return the return code - the number of bytes actually read on success.
++ * Otherwise a -1 on error (e.g. bufsize is not large enough).
++ */
++extern ssize_t zip_entry_noallocread(struct zip_t *zip, void *buf,
++ size_t bufsize);
++
++/**
++ * Extracts the current zip entry into output file.
++ *
++ * @param zip zip archive handler.
++ * @param filename output file.
++ *
++ * @return the return code - 0 on success, negative number (< 0) on error.
++ */
+ extern int zip_entry_fread(struct zip_t *zip, const char *filename);
+
+-/*
+- Extracts the current zip entry using a callback function (on_extract).
+-
+- Args:
+- zip: zip archive handler.
+- on_extract: callback function.
+- arg: opaque pointer (optional argument,
+- which you can pass to the on_extract callback)
+-
+- Returns:
+- The return code - 0 on success, negative number (< 0) on error.
++/**
++ * Extracts the current zip entry using a callback function (on_extract).
++ *
++ * @param zip zip archive handler.
++ * @param on_extract callback function.
++ * @param arg opaque pointer (optional argument, which you can pass to the
++ * on_extract callback)
++ *
++ * @return the return code - 0 on success, negative number (< 0) on error.
+ */
+ extern int
+ zip_entry_extract(struct zip_t *zip,
+@@ -262,53 +261,49 @@ zip_entry_extract(struct zip_t *zip,
+ const void *data, size_t size),
+ void *arg);
+
+-/*
+- Returns the number of all entries (files and directories) in the zip archive.
+-
+- Args:
+- zip: zip archive handler.
+-
+- Returns:
+- The return code - the number of entries on success,
+- negative number (< 0) on error.
+-*/
++/**
++ * Returns the number of all entries (files and directories) in the zip archive.
++ *
++ * @param zip zip archive handler.
++ *
++ * @return the return code - the number of entries on success, negative number
++ * (< 0) on error.
++ */
+ extern int zip_total_entries(struct zip_t *zip);
+
+-/*
+- Creates a new archive and puts files into a single zip archive.
+-
+- Args:
+- zipname: zip archive file.
+- filenames: input files.
+- len: number of input files.
+-
+- Returns:
+- The return code - 0 on success, negative number (< 0) on error.
+-*/
++/**
++ * Creates a new archive and puts files into a single zip archive.
++ *
++ * @param zipname zip archive file.
++ * @param filenames input files.
++ * @param len: number of input files.
++ *
++ * @return the return code - 0 on success, negative number (< 0) on error.
++ */
+ extern int zip_create(const char *zipname, const char *filenames[], size_t len);
+
+-/*
+- Extracts a zip archive file into directory.
+-
+- If on_extract_entry is not NULL, the callback will be called after
+- successfully extracted each zip entry.
+- Returning a negative value from the callback will cause abort and return an
+- error. The last argument (void *arg) is optional, which you can use to pass
+- data to the on_extract_entry callback.
+-
+- Args:
+- zipname: zip archive file.
+- dir: output directory.
+- on_extract_entry: on extract callback.
+- arg: opaque pointer.
+-
+- Returns:
+- The return code - 0 on success, negative number (< 0) on error.
+-*/
++/**
++ * Extracts a zip archive file into directory.
++ *
++ * If on_extract_entry is not NULL, the callback will be called after
++ * successfully extracted each zip entry.
++ * Returning a negative value from the callback will cause abort and return an
++ * error. The last argument (void *arg) is optional, which you can use to pass
++ * data to the on_extract_entry callback.
++ *
++ * @param zipname zip archive file.
++ * @param dir output directory.
++ * @param on_extract_entry on extract callback.
++ * @param arg opaque pointer.
++ *
++ * @return the return code - 0 on success, negative number (< 0) on error.
++ */
+ extern int zip_extract(const char *zipname, const char *dir,
+ int (*on_extract_entry)(const char *filename, void *arg),
+ void *arg);
+
++/** @} */
++
+ #ifdef __cplusplus
+ }
+ #endif
+diff --git a/contrib/zip/test/CMakeLists.txt b/contrib/zip/test/CMakeLists.txt
+index 9b2a8db106..cc060b00fe 100644
+--- a/contrib/zip/test/CMakeLists.txt
++++ b/contrib/zip/test/CMakeLists.txt
+@@ -1,19 +1,16 @@
+ cmake_minimum_required(VERSION 2.8)
+
+-if ("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_C_COMPILER_ID}" STREQUAL "Clang" OR "${CMAKE_C_COMPILER_ID}" STREQUAL "AppleClang")
+- if(ENABLE_COVERAGE)
+- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g ")
+- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O0")
+- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fprofile-arcs")
+- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ftest-coverage")
+- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage")
+- endif()
+-endif ()
+-
+ # test
+-include_directories(../src)
+-add_executable(test.exe test.c ../src/zip.c)
+-add_executable(test_miniz.exe test_miniz.c)
++set(test_out test.out)
++set(test_miniz_out test_miniz.out)
++
++add_executable(${test_out} test.c)
++target_link_libraries(${test_out} zip)
++add_executable(${test_miniz_out} test_miniz.c)
++target_link_libraries(${test_miniz_out} zip)
++
++add_test(NAME ${test_out} COMMAND ${test_out})
++add_test(NAME ${test_miniz_out} COMMAND ${test_miniz_out})
+
+-add_test(NAME test COMMAND test.exe)
+-add_test(NAME test_miniz COMMAND test_miniz.exe)
++set(test_out ${test_out} PARENT_SCOPE)
++set(test_miniz_out ${test_miniz_out} PARENT_SCOPE)
+diff --git a/contrib/zip/test/test.c b/contrib/zip/test/test.c
+index 454430533a..a9b2ddab1e 100644
+--- a/contrib/zip/test/test.c
++++ b/contrib/zip/test/test.c
+@@ -29,6 +29,8 @@
+ #define XFILE "7.txt\0"
+ #define XMODE 0100777
+
++#define UNIXMODE 0100644
++
+ #define UNUSED(x) (void)x
+
+ static int total_entries = 0;
+@@ -102,7 +104,8 @@ static void test_read(void) {
+ assert(0 == zip_entry_close(zip));
+ free(buf);
+ buf = NULL;
+-
++ bufsize = 0;
++
+ assert(0 == zip_entry_open(zip, "test/test-2.txt"));
+ assert(strlen(TESTDATA2) == zip_entry_size(zip));
+ assert(CRC32DATA2 == zip_entry_crc32(zip));
+@@ -131,7 +134,8 @@ static void test_read(void) {
+ assert(0 == zip_entry_close(zip));
+ free(buf);
+ buf = NULL;
+-
++ bufsize = 0;
++
+ buftmp = strlen(TESTDATA1);
+ buf = calloc(buftmp, sizeof(char));
+ assert(0 == zip_entry_open(zip, "test/test-1.txt"));
+@@ -433,6 +437,35 @@ static void test_mtime(void) {
+ remove(ZIPNAME);
+ }
+
++static void test_unix_permissions(void) {
++#if defined(_WIN64) || defined(_WIN32) || defined(__WIN32__)
++#else
++ // UNIX or APPLE
++ struct MZ_FILE_STAT_STRUCT file_stats;
++
++ remove(ZIPNAME);
++
++ struct zip_t *zip = zip_open(ZIPNAME, ZIP_DEFAULT_COMPRESSION_LEVEL, 'w');
++ assert(zip != NULL);
++
++ assert(0 == zip_entry_open(zip, RFILE));
++ assert(0 == zip_entry_write(zip, TESTDATA1, strlen(TESTDATA1)));
++ assert(0 == zip_entry_close(zip));
++
++ zip_close(zip);
++
++ remove(RFILE);
++
++ assert(0 == zip_extract(ZIPNAME, ".", NULL, NULL));
++
++ assert(0 == MZ_FILE_STAT(RFILE, &file_stats));
++ assert(UNIXMODE == file_stats.st_mode);
++
++ remove(RFILE);
++ remove(ZIPNAME);
++#endif
++}
++
+ int main(int argc, char *argv[]) {
+ UNUSED(argc);
+ UNUSED(argv);
+@@ -453,6 +486,7 @@ int main(int argc, char *argv[]) {
+ test_write_permissions();
+ test_exe_permissions();
+ test_mtime();
++ test_unix_permissions();
+
+ remove(ZIPNAME);
+ return 0;
+diff --git a/contrib/zip/test/test_miniz.c b/contrib/zip/test/test_miniz.c
+index ebc0564dc3..babcaecdb6 100644
+--- a/contrib/zip/test/test_miniz.c
++++ b/contrib/zip/test/test_miniz.c
+@@ -23,16 +23,39 @@ int main(int argc, char *argv[]) {
+ uint step = 0;
+ int cmp_status;
+ uLong src_len = (uLong)strlen(s_pStr);
+- uLong cmp_len = compressBound(src_len);
+ uLong uncomp_len = src_len;
++ uLong cmp_len;
+ uint8 *pCmp, *pUncomp;
++ size_t sz;
+ uint total_succeeded = 0;
+ (void)argc, (void)argv;
+
+ printf("miniz.c version: %s\n", MZ_VERSION);
+
+ do {
++ pCmp = (uint8 *)tdefl_compress_mem_to_heap(s_pStr, src_len, &cmp_len, 0);
++ if (!pCmp) {
++ printf("tdefl_compress_mem_to_heap failed\n");
++ return EXIT_FAILURE;
++ }
++ if (src_len <= cmp_len) {
++ printf("tdefl_compress_mem_to_heap failed: from %u to %u bytes\n",
++ (mz_uint32)uncomp_len, (mz_uint32)cmp_len);
++ free(pCmp);
++ return EXIT_FAILURE;
++ }
++
++ sz = tdefl_compress_mem_to_mem(pCmp, cmp_len, s_pStr, src_len, 0);
++ if (sz != cmp_len) {
++ printf("tdefl_compress_mem_to_mem failed: expected %u, got %u\n",
++ (mz_uint32)cmp_len, (mz_uint32)sz);
++ free(pCmp);
++ return EXIT_FAILURE;
++ }
++
+ // Allocate buffers to hold compressed and uncompressed data.
++ free(pCmp);
++ cmp_len = compressBound(src_len);
+ pCmp = (mz_uint8 *)malloc((size_t)cmp_len);
+ pUncomp = (mz_uint8 *)malloc((size_t)src_len);
+ if ((!pCmp) || (!pUncomp)) {
diff --git a/package/assimp/0002-contrib-zip-fix-ssize_t-typedef-mismatch-for-musl-co.patch b/package/assimp/0002-contrib-zip-fix-ssize_t-typedef-mismatch-for-musl-co.patch
deleted file mode 100644
index a9a30c4834..0000000000
--- a/package/assimp/0002-contrib-zip-fix-ssize_t-typedef-mismatch-for-musl-co.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 3fef857a570d1ef2c96401358fe8e239625b48c9 Mon Sep 17 00:00:00 2001
-From: Peter Seiderer <ps.report@gmx.net>
-Date: Fri, 10 Apr 2020 18:11:50 +0200
-Subject: [PATCH] contrib/zip: fix ssize_t typedef mismatch for musl compile
-
-Musl uses defines __DEFINED_ssize_t to indicate ssize_t
-availability. So backport this part of upstream commit [1]
-to fixl musl compile.
-
-https://github.com/assimp/assimp/commit/f78446b14aff46db2ef27d062a275b6a01fd68b1
-
-Signed-off-by: Peter Seiderer <ps.report@gmx.net>
----
- contrib/zip/src/zip.h | 13 +++++++++++--
- 1 file changed, 11 insertions(+), 2 deletions(-)
-
-diff --git a/contrib/zip/src/zip.h b/contrib/zip/src/zip.h
-index 5f39df50..4672eb3e 100644
---- a/contrib/zip/src/zip.h
-+++ b/contrib/zip/src/zip.h
-@@ -20,8 +20,9 @@ extern "C" {
- #endif
-
- #if !defined(_SSIZE_T_DEFINED) && !defined(_SSIZE_T_DEFINED_) && \
-- !defined(_SSIZE_T) && !defined(_SSIZE_T_) && !defined(__ssize_t_defined)
--#define _SSIZE_T
-+ !defined(__DEFINED_ssize_t) && !defined(__ssize_t_defined) && \
-+ !defined(_SSIZE_T) && !defined(_SSIZE_T_)
-+
- // 64-bit Windows is the only mainstream platform
- // where sizeof(long) != sizeof(void*)
- #ifdef _WIN64
-@@ -29,6 +30,14 @@ typedef long long ssize_t; /* byte count or error */
- #else
- typedef long ssize_t; /* byte count or error */
- #endif
-+
-+#define _SSIZE_T_DEFINED
-+#define _SSIZE_T_DEFINED_
-+#define __DEFINED_ssize_t
-+#define __ssize_t_defined
-+#define _SSIZE_T
-+#define _SSIZE_T_
-+
- #endif
-
- #ifndef MAX_PATH
---
-2.26.0
-
diff --git a/package/assimp/0003-closes-2954-upgrade-to-latest-greatest.patch b/package/assimp/0003-closes-2954-upgrade-to-latest-greatest.patch
new file mode 100644
index 0000000000..9bd24630c5
--- /dev/null
+++ b/package/assimp/0003-closes-2954-upgrade-to-latest-greatest.patch
@@ -0,0 +1,243 @@
+From bb3db0ebaffc6b76de256e597ec1d1e4d2a6663f Mon Sep 17 00:00:00 2001
+From: kimkulling <kim.kulling@googlemail.com>
+Date: Mon, 9 Mar 2020 10:51:26 +0100
+Subject: [PATCH] closes https://github.com/assimp/assimp/issues/2954: upgrade
+ to latest greatest.
+
+[Retrieved from:
+https://github.com/assimp/assimp/commit/bb3db0ebaffc6b76de256e597ec1d1e4d2a6663f]
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+---
+ contrib/zip/CMakeLists.txt | 8 ++----
+ contrib/zip/README.md | 51 +++++++++++++++++++++++++++++++--
+ contrib/zip/src/zip.c | 17 ++++++++++-
+ contrib/zip/src/zip.h | 13 ++++++++-
+ contrib/zip/test/CMakeLists.txt | 5 ----
+ contrib/zip/test/test.c | 4 ++-
+ 6 files changed, 81 insertions(+), 17 deletions(-)
+
+diff --git a/contrib/zip/CMakeLists.txt b/contrib/zip/CMakeLists.txt
+index 77916d2e14..f194649ede 100644
+--- a/contrib/zip/CMakeLists.txt
++++ b/contrib/zip/CMakeLists.txt
+@@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.0)
+
+ project(zip
+ LANGUAGES C
+- VERSION "0.1.15")
++ VERSION "0.1.18")
+ set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH})
+
+ option(CMAKE_DISABLE_TESTING "Disable test creation" OFF)
+@@ -16,10 +16,6 @@ elseif ("${CMAKE_C_COMPILER_ID}" STREQUAL "GNU" OR
+ "${CMAKE_C_COMPILER_ID}" STREQUAL "Clang" OR
+ "${CMAKE_C_COMPILER_ID}" STREQUAL "AppleClang")
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99 -Wall -Wextra -Werror -pedantic")
+- if(ENABLE_COVERAGE)
+- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage")
+- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage")
+- endif()
+ endif (MSVC)
+
+ # zip
+@@ -35,7 +31,7 @@ if (NOT CMAKE_DISABLE_TESTING)
+ enable_testing()
+ add_subdirectory(test)
+ find_package(Sanitizers)
+- add_sanitizers(${PROJECT_NAME} ${test_out} ${test_miniz_out})
++ add_sanitizers(${PROJECT_NAME} ${test_out})
+ endif()
+
+ ####
+diff --git a/contrib/zip/README.md b/contrib/zip/README.md
+index 14eb9a34c8..bdd0822b67 100644
+--- a/contrib/zip/README.md
++++ b/contrib/zip/README.md
+@@ -1,10 +1,8 @@
+ ### A portable (OSX/Linux/Windows), simple zip library written in C
+ This is done by hacking awesome [miniz](https://code.google.com/p/miniz) library and layering functions on top of the miniz v1.15 API.
+
+-[![Windows](https://ci.appveyor.com/api/projects/status/bph8dr3jacgmjv32/branch/master?svg=true&label=windows)](https://ci.appveyor.com/project/kuba--/zip)
+-[![Linux](https://travis-ci.org/kuba--/zip.svg?branch=master&label=linux%2fosx)](https://travis-ci.org/kuba--/zip)
++[![Build](https://github.com/kuba--/zip/workflows/build/badge.svg)](https://github.com/kuba--/zip/actions?query=workflow%3Abuild)
+ [![Version](https://badge.fury.io/gh/kuba--%2Fzip.svg)](https://github.com/kuba--/zip/releases)
+-[![Codecov](https://codecov.io/gh/kuba--/zip/branch/master/graph/badge.svg)](https://codecov.io/gh/kuba--/zip)
+
+
+ # The Idea
+@@ -213,6 +211,53 @@ func main() {
+ }
+ ```
+
++### Rust (ffi)
++```rust
++extern crate libc;
++use std::ffi::CString;
++
++#[repr(C)]
++pub struct Zip {
++ _private: [u8; 0],
++}
++
++#[link(name = "zip")]
++extern "C" {
++ fn zip_open(path: *const libc::c_char, level: libc::c_int, mode: libc::c_char) -> *mut Zip;
++ fn zip_close(zip: *mut Zip) -> libc::c_void;
++
++ fn zip_entry_open(zip: *mut Zip, entryname: *const libc::c_char) -> libc::c_int;
++ fn zip_entry_close(zip: *mut Zip) -> libc::c_int;
++ fn zip_entry_write(
++ zip: *mut Zip,
++ buf: *const libc::c_void,
++ bufsize: libc::size_t,
++ ) -> libc::c_int;
++}
++
++fn main() {
++ let path = CString::new("/tmp/test.zip").unwrap();
++ let mode: libc::c_char = 'w' as libc::c_char;
++
++ let entryname = CString::new("test.txt").unwrap();
++ let content = "test content\0";
++
++ unsafe {
++ let zip: *mut Zip = zip_open(path.as_ptr(), 5, mode);
++ {
++ zip_entry_open(zip, entryname.as_ptr());
++ {
++ let buf = content.as_ptr() as *const libc::c_void;
++ let bufsize = content.len() as libc::size_t;
++ zip_entry_write(zip, buf, bufsize);
++ }
++ zip_entry_close(zip);
++ }
++ zip_close(zip);
++ }
++}
++```
++
+ ### Ruby (ffi)
+ Install _ffi_ gem.
+ ```shell
+diff --git a/contrib/zip/src/zip.c b/contrib/zip/src/zip.c
+index 1abcfd8fd1..3b2821e6a3 100644
+--- a/contrib/zip/src/zip.c
++++ b/contrib/zip/src/zip.c
+@@ -222,6 +222,20 @@ void zip_close(struct zip_t *zip) {
+ }
+ }
+
++int zip_is64(struct zip_t *zip) {
++ if (!zip) {
++ // zip_t handler is not initialized
++ return -1;
++ }
++
++ if (!zip->archive.m_pState) {
++ // zip state is not initialized
++ return -1;
++ }
++
++ return (int)zip->archive.m_pState->m_zip64;
++}
++
+ int zip_entry_open(struct zip_t *zip, const char *entryname) {
+ size_t entrylen = 0;
+ mz_zip_archive *pzip = NULL;
+@@ -794,7 +808,8 @@ int zip_create(const char *zipname, const char *filenames[], size_t len) {
+
+ if (MZ_FILE_STAT(name, &file_stat) != 0) {
+ // problem getting information - check errno
+- return -1;
++ status = -1;
++ break;
+ }
+
+ if ((file_stat.st_mode & 0200) == 0) {
+diff --git a/contrib/zip/src/zip.h b/contrib/zip/src/zip.h
+index a48d64d6de..cd3ab5cd00 100644
+--- a/contrib/zip/src/zip.h
++++ b/contrib/zip/src/zip.h
+@@ -21,7 +21,7 @@ extern "C" {
+
+ #if !defined(_SSIZE_T_DEFINED) && !defined(_SSIZE_T_DEFINED_) && \
+ !defined(__DEFINED_ssize_t) && !defined(__ssize_t_defined) && \
+- !defined(_SSIZE_T) && !defined(_SSIZE_T_)
++ !defined(_SSIZE_T) && !defined(_SSIZE_T_) && !defined(_SSIZE_T_DECLARED)
+
+ // 64-bit Windows is the only mainstream platform
+ // where sizeof(long) != sizeof(void*)
+@@ -37,6 +37,7 @@ typedef long ssize_t; /* byte count or error */
+ #define __ssize_t_defined
+ #define _SSIZE_T
+ #define _SSIZE_T_
++#define _SSIZE_T_DECLARED
+
+ #endif
+
+@@ -90,6 +91,16 @@ extern struct zip_t *zip_open(const char *zipname, int level, char mode);
+ */
+ extern void zip_close(struct zip_t *zip);
+
++/**
++ * Determines if the archive has a zip64 end of central directory headers.
++ *
++ * @param zip zip archive handler.
++ *
++ * @return the return code - 1 (true), 0 (false), negative number (< 0) on
++ * error.
++ */
++extern int zip_is64(struct zip_t *zip);
++
+ /**
+ * Opens an entry by name in the zip archive.
+ *
+diff --git a/contrib/zip/test/CMakeLists.txt b/contrib/zip/test/CMakeLists.txt
+index cc060b00fe..1224115858 100644
+--- a/contrib/zip/test/CMakeLists.txt
++++ b/contrib/zip/test/CMakeLists.txt
+@@ -2,15 +2,10 @@ cmake_minimum_required(VERSION 2.8)
+
+ # test
+ set(test_out test.out)
+-set(test_miniz_out test_miniz.out)
+
+ add_executable(${test_out} test.c)
+ target_link_libraries(${test_out} zip)
+-add_executable(${test_miniz_out} test_miniz.c)
+-target_link_libraries(${test_miniz_out} zip)
+
+ add_test(NAME ${test_out} COMMAND ${test_out})
+-add_test(NAME ${test_miniz_out} COMMAND ${test_miniz_out})
+
+ set(test_out ${test_out} PARENT_SCOPE)
+-set(test_miniz_out ${test_miniz_out} PARENT_SCOPE)
+diff --git a/contrib/zip/test/test.c b/contrib/zip/test/test.c
+index a9b2ddab1e..9cc2248ac0 100644
+--- a/contrib/zip/test/test.c
++++ b/contrib/zip/test/test.c
+@@ -47,7 +47,7 @@ static void test_write(void) {
+ assert(CRC32DATA1 == zip_entry_crc32(zip));
+ ++total_entries;
+ assert(0 == zip_entry_close(zip));
+-
++ assert(0 == zip_is64(zip));
+ zip_close(zip);
+ }
+
+@@ -92,6 +92,7 @@ static void test_read(void) {
+ size_t buftmp;
+ struct zip_t *zip = zip_open(ZIPNAME, 0, 'r');
+ assert(zip != NULL);
++ assert(0 == zip_is64(zip));
+
+ assert(0 == zip_entry_open(zip, "test\\test-1.txt"));
+ assert(strlen(TESTDATA1) == zip_entry_size(zip));
+@@ -310,6 +311,7 @@ static void test_fwrite(void) {
+ assert(0 == zip_entry_open(zip, WFILE));
+ assert(0 == zip_entry_fwrite(zip, WFILE));
+ assert(0 == zip_entry_close(zip));
++ assert(0 == zip_is64(zip));
+
+ zip_close(zip);
+ remove(WFILE);
diff --git a/package/assimp/0003-contrib-zlib-disable-dynamic-library-building.patch b/package/assimp/0003-contrib-zlib-disable-dynamic-library-building.patch
deleted file mode 100644
index 8661311be5..0000000000
--- a/package/assimp/0003-contrib-zlib-disable-dynamic-library-building.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 2b8684aded0c383be64bac0fa59e39870252963f Mon Sep 17 00:00:00 2001
-From: Peter Seiderer <ps.report@gmx.net>
-Date: Sun, 12 Apr 2020 18:19:13 +0200
-Subject: [PATCH] contrib/zlib: disable dynamic library building
-
-Fixes compile failure for static only toolchains (and assimp
-links against the static one).
-
-Signed-off-by: Peter Seiderer <ps.report@gmx.net>
----
- contrib/zlib/CMakeLists.txt | 3 ---
- 1 file changed, 3 deletions(-)
-
-diff --git a/contrib/zlib/CMakeLists.txt b/contrib/zlib/CMakeLists.txt
-index 9d1fcc94..78346233 100644
---- a/contrib/zlib/CMakeLists.txt
-+++ b/contrib/zlib/CMakeLists.txt
-@@ -195,10 +195,7 @@ if(MINGW)
- set(ZLIB_DLL_SRCS ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj)
- endif(MINGW)
-
--add_library(zlib SHARED ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_DLL_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
- add_library(zlibstatic STATIC ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
--set_target_properties(zlib PROPERTIES DEFINE_SYMBOL ZLIB_DLL)
--set_target_properties(zlib PROPERTIES SOVERSION 1)
-
- INSTALL( TARGETS zlibstatic
- LIBRARY DESTINATION ${ASSIMP_LIB_INSTALL_DIR}
---
-2.26.0
-
diff --git a/package/assimp/Config.in b/package/assimp/Config.in
index 9bdc054909..c535240efc 100644
--- a/package/assimp/Config.in
+++ b/package/assimp/Config.in
@@ -2,6 +2,7 @@ config BR2_PACKAGE_ASSIMP
bool "assimp"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_USE_WCHAR
+ depends on BR2_PACKAGE_LIBZLIB
help
Open Asset Import Library (assimp) is a portable Open Source
library to import various well-known 3D model formats in a
@@ -12,4 +13,8 @@ config BR2_PACKAGE_ASSIMP
http://www.assimp.org
comment "assimp needs a toolchain w/ C++, wchar"
+ depends on BR2_PACKAGE_LIBZLIB
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR
+
+comment "assimp needs libzlib"
+ depends on !BR2_PACKAGE_LIBZLIB
diff --git a/package/assimp/assimp.mk b/package/assimp/assimp.mk
index e1b9a23499..eddfbc48b0 100644
--- a/package/assimp/assimp.mk
+++ b/package/assimp/assimp.mk
@@ -8,6 +8,7 @@ ASSIMP_VERSION = 5.0.1
ASSIMP_SITE = $(call github,assimp,assimp,v$(ASSIMP_VERSION))
ASSIMP_LICENSE = BSD-3-Clause
ASSIMP_LICENSE_FILES = LICENSE
+ASSIMP_DEPENDENCIES = zlib
ASSIMP_INSTALL_STAGING = YES
# relocation truncated to fit: R_68K_GOT16O. We also need to disable
@@ -36,7 +37,7 @@ ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y)
ASSIMP_CXXFLAGS += -O0
endif
-ASSIMP_CONF_OPTS += -DASSIMP_BUILD_ZLIB=ON -DASSIMP_BUILD_TESTS=OFF \
+ASSIMP_CONF_OPTS += -DASSIMP_BUILD_TESTS=OFF \
-DCMAKE_CXX_FLAGS="$(TARGET_CXXFLAGS) $(ASSIMP_CXXFLAGS)"
$(eval $(cmake-package))
diff --git a/package/audit/0001-Fix-audispd-path-in-auditd.conf.patch b/package/audit/0001-Fix-audispd-path-in-auditd.conf.patch
deleted file mode 100644
index ccf45db911..0000000000
--- a/package/audit/0001-Fix-audispd-path-in-auditd.conf.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 6e1fd09f7bc131c8f16d9cc43e2455ba4650c651 Mon Sep 17 00:00:00 2001
-From: Carlos Santos <casantos@datacom.com.br>
-Date: Sat, 3 Nov 2018 08:25:58 -0300
-Subject: [PATCH] Fix audispd path in auditd.conf
-
-audispd is installed at /usr/sbin but the configuration file pointed
-to /sbin, causing auditd to fail on startup.
-
-This patch cannot be sent upstream because audispd does not exist
-anymore on the master branch (it was merged to auditd).
-
-Signed-off-by: Carlos Santos <casantos@datacom.com.br>
----
- init.d/auditd.conf | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/init.d/auditd.conf b/init.d/auditd.conf
-index 4dcda83..998904f 100644
---- a/init.d/auditd.conf
-+++ b/init.d/auditd.conf
-@@ -13,7 +13,7 @@ max_log_file = 8
- num_logs = 5
- priority_boost = 4
- disp_qos = lossy
--dispatcher = /sbin/audispd
-+dispatcher = /usr/sbin/audispd
- name_format = NONE
- ##name = mydomain
- max_log_file_action = ROTATE
---
-2.17.1
-
diff --git a/package/audit/0002-Add-substitue-functions-for-strndupa-rawmemchr.patch b/package/audit/0002-Add-substitue-functions-for-strndupa-rawmemchr.patch
deleted file mode 100644
index ac292c57d1..0000000000
--- a/package/audit/0002-Add-substitue-functions-for-strndupa-rawmemchr.patch
+++ /dev/null
@@ -1,133 +0,0 @@
-From c39a071e7c021f6ff3554aca2758e97b47a9777c Mon Sep 17 00:00:00 2001
-From: Steve Grubb <sgrubb@redhat.com>
-Date: Tue, 26 Feb 2019 18:33:33 -0500
-Subject: [PATCH] Add substitue functions for strndupa & rawmemchr
-
-(cherry picked from commit d579a08bb1cde71f939c13ac6b2261052ae9f77e)
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
----
- auparse/auparse.c | 12 +++++++++++-
- auparse/interpret.c | 9 ++++++++-
- configure.ac | 14 +++++++++++++-
- src/ausearch-lol.c | 12 +++++++++++-
- 4 files changed, 43 insertions(+), 4 deletions(-)
-
-diff --git a/auparse/auparse.c b/auparse/auparse.c
-index 650db02..2e1c737 100644
---- a/auparse/auparse.c
-+++ b/auparse/auparse.c
-@@ -1,5 +1,5 @@
- /* auparse.c --
-- * Copyright 2006-08,2012-17 Red Hat Inc., Durham, North Carolina.
-+ * Copyright 2006-08,2012-19 Red Hat Inc., Durham, North Carolina.
- * All Rights Reserved.
- *
- * This library is free software; you can redistribute it and/or
-@@ -1118,6 +1118,16 @@ static int str2event(char *s, au_event_t *e)
- return 0;
- }
-
-+#ifndef HAVE_STRNDUPA
-+static inline char *strndupa(const char *old, size_t n)
-+{
-+ size_t len = strnlen(old, n);
-+ char *tmp = alloca(len + 1);
-+ tmp[len] = 0;
-+ return memcpy(tmp, old, len);
-+}
-+#endif
-+
- /* Returns 0 on success and 1 on error */
- static int extract_timestamp(const char *b, au_event_t *e)
- {
-diff --git a/auparse/interpret.c b/auparse/interpret.c
-index 51c4a5e..67b7b77 100644
---- a/auparse/interpret.c
-+++ b/auparse/interpret.c
-@@ -853,6 +853,13 @@ err_out:
- return print_escaped(id->val);
- }
-
-+// rawmemchr is faster. Let's use it if we have it.
-+#ifdef HAVE_RAWMEMCHR
-+#define STRCHR rawmemchr
-+#else
-+#define STRCHR strchr
-+#endif
-+
- static const char *print_proctitle(const char *val)
- {
- char *out = (char *)print_escaped(val);
-@@ -863,7 +870,7 @@ static const char *print_proctitle(const char *val)
- // Proctitle has arguments separated by NUL bytes
- // We need to write over the NUL bytes with a space
- // so that we can see the arguments
-- while ((ptr = rawmemchr(ptr, '\0'))) {
-+ while ((ptr = STRCHR(ptr, '\0'))) {
- if (ptr >= end)
- break;
- *ptr = ' ';
-diff --git a/configure.ac b/configure.ac
-index 6e345f1..6f3007e 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1,7 +1,7 @@
- dnl
- define([AC_INIT_NOTICE],
- [### Generated automatically using autoconf version] AC_ACVERSION [
--### Copyright 2005-18 Steve Grubb <sgrubb@redhat.com>
-+### Copyright 2005-19 Steve Grubb <sgrubb@redhat.com>
- ###
- ### Permission is hereby granted, free of charge, to any person obtaining a
- ### copy of this software and associated documentation files (the "Software"),
-@@ -72,6 +72,18 @@ dnl; posix_fallocate is used in audisp-remote
- AC_CHECK_FUNCS([posix_fallocate])
- dnl; signalfd is needed for libev
- AC_CHECK_FUNC([signalfd], [], [ AC_MSG_ERROR([The signalfd system call is necessary for auditd]) ])
-+dnl; check if rawmemchr is available
-+AC_CHECK_FUNCS([rawmemchr])
-+dnl; check if strndupa is available
-+AC_LINK_IFELSE(
-+ [AC_LANG_SOURCE(
-+ [[
-+ #define _GNU_SOURCE
-+ #include <string.h>
-+ int main() { (void) strndupa("test", 10); return 0; }]])],
-+ [AC_DEFINE(HAVE_STRNDUPA, 1, [Let us know if we have it or not])],
-+ []
-+)
-
- ALLWARNS=""
- ALLDEBUG="-g"
-diff --git a/src/ausearch-lol.c b/src/ausearch-lol.c
-index 5d17a72..758c33e 100644
---- a/src/ausearch-lol.c
-+++ b/src/ausearch-lol.c
-@@ -1,6 +1,6 @@
- /*
- * ausearch-lol.c - linked list of linked lists library
--* Copyright (c) 2008,2010,2014,2016 Red Hat Inc., Durham, North Carolina.
-+* Copyright (c) 2008,2010,2014,2016,2019 Red Hat Inc., Durham, North Carolina.
- * All Rights Reserved.
- *
- * This software may be freely redistributed and/or modified under the
-@@ -152,6 +152,16 @@ static int compare_event_time(event *e1, event *e2)
- return 0;
- }
-
-+#ifndef HAVE_STRNDUPA
-+static inline char *strndupa(const char *old, size_t n)
-+{
-+ size_t len = strnlen(old, n);
-+ char *tmp = alloca(len + 1);
-+ tmp[len] = 0;
-+ return memcpy(tmp, old, len);
-+}
-+#endif
-+
- /*
- * This function will look at the line and pick out pieces of it.
- */
---
-2.21.0
-
diff --git a/package/audit/0003-Header-definitions-need-to-be-external-when-building.patch b/package/audit/0003-Header-definitions-need-to-be-external-when-building.patch
deleted file mode 100644
index 9a546261df..0000000000
--- a/package/audit/0003-Header-definitions-need-to-be-external-when-building.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 017e6c6ab95df55f34e339d2139def83e5dada1f Mon Sep 17 00:00:00 2001
-From: Steve Grubb <sgrubb@redhat.com>
-Date: Fri, 10 Jan 2020 21:13:50 -0500
-Subject: [PATCH] Header definitions need to be external when building with
- -fno-common (which is default in GCC 10) - Tony Jones
-
-Patch taken from upstream: https://github.com/linux-audit/audit-userspace/commit/017e6c6ab95df55f34e339d2139def83e5dada1f
-Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
----
- src/ausearch-common.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/ausearch-common.h b/src/ausearch-common.h
-index 6669203..3040547 100644
---- a/src/ausearch-common.h
-+++ b/src/ausearch-common.h
-@@ -50,7 +50,7 @@ extern pid_t event_pid;
- extern int event_exact_match;
- extern uid_t event_uid, event_euid, event_loginuid;
- extern const char *event_tuid, *event_teuid, *event_tauid;
--slist *event_node_list;
-+extern slist *event_node_list;
- extern const char *event_comm;
- extern const char *event_filename;
- extern const char *event_hostname;
---
-2.20.1
-
diff --git a/package/audit/audit.hash b/package/audit/audit.hash
index 71e7df7dbc..4ef9a42b0d 100644
--- a/package/audit/audit.hash
+++ b/package/audit/audit.hash
@@ -1,4 +1,4 @@
#Locally computed
-sha256 0e5d4103646e00f8d1981e1cd2faea7a2ae28e854c31a803e907a383c5e2ecb7 audit-2.8.5.tar.gz
-sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING
-sha256 f18a0811fa0e220ccbc42f661545e77f0388631e209585ed582a1c693029c6aa COPYING.LIB
+sha256 994c4250d8fd43f3087a3c2ce73461832e30f1e9b278bf5bb03c3e07091155a5 audit-3.0.1.tar.gz
+sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING
+sha256 f18a0811fa0e220ccbc42f661545e77f0388631e209585ed582a1c693029c6aa COPYING.LIB
diff --git a/package/audit/audit.mk b/package/audit/audit.mk
index 05a16e6e31..df6650593d 100644
--- a/package/audit/audit.mk
+++ b/package/audit/audit.mk
@@ -4,7 +4,7 @@
#
################################################################################
-AUDIT_VERSION = 2.8.5
+AUDIT_VERSION = 3.0.1
AUDIT_SITE = http://people.redhat.com/sgrubb/audit
AUDIT_LICENSE = GPL-2.0+ (programs), LGPL-2.1+ (libraries)
AUDIT_LICENSE_FILES = COPYING COPYING.LIB
diff --git a/package/automake/automake.mk b/package/automake/automake.mk
index 89dcaa1293..ad8f0f474d 100644
--- a/package/automake/automake.mk
+++ b/package/automake/automake.mk
@@ -9,6 +9,7 @@ AUTOMAKE_SOURCE = automake-$(AUTOMAKE_VERSION).tar.xz
AUTOMAKE_SITE = $(BR2_GNU_MIRROR)/automake
AUTOMAKE_LICENSE = GPL-2.0+
AUTOMAKE_LICENSE_FILES = COPYING
+AUTOMAKE_CPE_ID_VENDOR = gnu
HOST_AUTOMAKE_DEPENDENCIES = host-autoconf
diff --git a/package/azure-iot-sdk-c/0001-Fix-redirection-of-errno-header.patch b/package/azure-iot-sdk-c/0001-Fix-redirection-of-errno-header.patch
deleted file mode 100644
index efc3d33265..0000000000
--- a/package/azure-iot-sdk-c/0001-Fix-redirection-of-errno-header.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 9ff62052a9490c96366d97096a039dca30702b2d Mon Sep 17 00:00:00 2001
-From: Sergio Prado <sergio.prado@e-labworks.com>
-Date: Fri, 3 Jul 2020 21:09:20 -0300
-Subject: [PATCH] Fix redirection of errno header
-
-The POSIX correct header to include is <errno.h>.
-
-The glibc silently redirects incorrect includes, but musl libc prints
-a warning:
- #warning redirecting incorrect #include <sys/errno.h> to <errno.h>
-
-Signed-off-by: Sergio Prado <sergio.prado@e-labworks.com>
----
- c-utility/pal/linux/socket_async_os.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/c-utility/pal/linux/socket_async_os.h b/c-utility/pal/linux/socket_async_os.h
-index bd59e487c099..1797089851e3 100644
---- a/c-utility/pal/linux/socket_async_os.h
-+++ b/c-utility/pal/linux/socket_async_os.h
-@@ -10,7 +10,7 @@
- #include <sys/select.h>
- #include <netinet/in.h>
- #include <netinet/tcp.h>
--#include <sys/errno.h>
-+#include <errno.h>
- #include <fcntl.h>
- #include <unistd.h>
- #include <netdb.h>
---
-2.17.1
-
diff --git a/package/azure-iot-sdk-c/azure-iot-sdk-c.hash b/package/azure-iot-sdk-c/azure-iot-sdk-c.hash
index 124c7a1107..72fa99c44d 100644
--- a/package/azure-iot-sdk-c/azure-iot-sdk-c.hash
+++ b/package/azure-iot-sdk-c/azure-iot-sdk-c.hash
@@ -1,5 +1,5 @@
# Locally computed:
-sha256 61874790b66c7e120550fdffff88cb1e3cbfbfebcf324e41982f04461f8793a0 azure-iot-sdk-c-LTS_07_2020_Ref02-br1.tar.gz
+sha256 987b469aa76d6c81e5dbcd62e81f4ece0620770930cf65722754c76aedd6049f azure-iot-sdk-c-LTS_01_2021_Ref01-br1.tar.gz
# Hash for license files:
sha256 be2e9913fad9ff33607287c728f392579e2a6cc83e51b203ef6274c41db02ee7 LICENSE
diff --git a/package/azure-iot-sdk-c/azure-iot-sdk-c.mk b/package/azure-iot-sdk-c/azure-iot-sdk-c.mk
index c664ad83a4..3f00db3ff4 100644
--- a/package/azure-iot-sdk-c/azure-iot-sdk-c.mk
+++ b/package/azure-iot-sdk-c/azure-iot-sdk-c.mk
@@ -4,7 +4,7 @@
#
################################################################################
-AZURE_IOT_SDK_C_VERSION = LTS_07_2020_Ref02
+AZURE_IOT_SDK_C_VERSION = LTS_01_2021_Ref01
AZURE_IOT_SDK_C_SITE = https://github.com/Azure/azure-iot-sdk-c
AZURE_IOT_SDK_C_SITE_METHOD = git
AZURE_IOT_SDK_C_GIT_SUBMODULES = YES
diff --git a/package/bash/Config.in b/package/bash/Config.in
index 5a9ebb8d02..0212df6bfd 100644
--- a/package/bash/Config.in
+++ b/package/bash/Config.in
@@ -9,3 +9,17 @@ config BR2_PACKAGE_BASH
The standard GNU Bourne again shell.
http://tiswww.case.edu/php/chet/bash/bashtop.html
+
+if BR2_PACKAGE_BASH
+
+config BR2_PACKAGE_BASH_LOADABLE_EXAMPLES
+ bool "loadable examples"
+ depends on !BR2_STATIC_LIBS
+ help
+ This option will enable the installation of the "loadable"
+ examples, which are dynamically loadable extension providing
+ additional built-ins commands to bash. There are typically
+ not needed as they are provided as regular, external
+ commands.
+
+endif
diff --git a/package/bash/bash.mk b/package/bash/bash.mk
index efe7cbbe59..7b853ece08 100644
--- a/package/bash/bash.mk
+++ b/package/bash/bash.mk
@@ -7,11 +7,16 @@
BASH_VERSION = 5.1
BASH_SITE = $(BR2_GNU_MIRROR)/bash
BASH_DEPENDENCIES = ncurses readline host-bison
-BASH_CONF_OPTS = --with-installed-readline --without-bash-malloc
BASH_LICENSE = GPL-3.0+
BASH_LICENSE_FILES = COPYING
BASH_CPE_ID_VENDOR = gnu
+# We want the bash binary in /bin
+BASH_CONF_OPTS = \
+ --bindir=/bin \
+ --with-installed-readline \
+ --without-bash-malloc
+
BASH_CONF_ENV += \
ac_cv_rl_prefix="$(STAGING_DIR)" \
ac_cv_rl_version="$(READLINE_VERSION)" \
@@ -24,7 +29,6 @@ BASH_CONF_ENV += \
# The static build needs some trickery
ifeq ($(BR2_STATIC_LIBS),y)
BASH_CONF_OPTS += --enable-static-link
-BASH_CONF_ENV += SHOBJ_STATUS=unsupported
# bash wants to redefine the getenv() function. To check whether this is
# possible, AC_TRY_RUN is used which is not possible in
# cross-compilation.
@@ -38,11 +42,23 @@ BASH_CONF_ENV += bash_cv_getenv_redef=yes
endif
endif
-define BASH_INSTALL_TARGET_CMDS
- $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \
- DESTDIR=$(TARGET_DIR) exec_prefix=/ install
+define BASH_REMOVE_UNUSED_FILES
rm -f $(TARGET_DIR)/bin/bashbug
endef
+BASH_POST_INSTALL_TARGET_HOOKS += BASH_REMOVE_UNUSED_FILES
+
+ifeq ($(BR2_PACKAGE_BASH_LOADABLE_EXAMPLES